X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=scrotwm.1;h=39c7a41ea452ac07081c8a4da239d781ea96d2b5;hb=c2adf746f6c01b3d919f9505c67bc7526f39e3db;hp=133fea929671e9b58f7469fb04dd28bd11e4ca4b;hpb=26fa228650f79b639e4b92c577e7c981db65ab5d;p=spectrwm.git diff --git a/scrotwm.1 b/scrotwm.1 index 133fea9..39c7a41 100644 --- a/scrotwm.1 +++ b/scrotwm.1 @@ -78,7 +78,13 @@ Enabling or disabling an option is done by using 1 or 0 respectively. .Pp The file supports the following keywords: .Pp -.Bl -tag -width "screenshot_enabledXXX" -offset indent -compact +.Bl -tag -width "title_class_enabledXXX" -offset indent -compact +.It Cm autorun +Launch an application in a specified workspace at start-of-day. +Currently this option does not support arguments so if those are required one +must use a wrapper script. +Defined in the format ws[]:application, e.g. ws[2]:xterm launches and +xterm in workspace 2 .It Cm color_focus Border color of the currently focussed window. .It Cm color_unfocus @@ -87,6 +93,9 @@ Border color of unfocussed windows. Enable or disable status bar. .It Cm bar_border Ns Bq Ar x Color of the status bar border in screen +.It Cm bar_border_width +Set status bar border thickness in pixels. +Disable border by setting to 0 .Ar x . .It Cm bar_color Ns Bq Ar x Color of the status bar window in screen @@ -101,14 +110,14 @@ External script that populates additional information in the status bar, such as battery life. .It Cm bar_delay Update frequency, in seconds, of external script that populates the status bar. +.It Cm bar_at_bottom +Place the statusbar at the bottom of each region instead of the top. +.It Cm stack_enabled +Enable or disable displaying the current stacking algorithm in the status bar. .It Cm clock_enabled Enable or disable displaying the clock in the status bar. Disable by setting to 0 so a custom clock could be used in the bar_action script. -.It Cm spawn_term -External application that gets spawned when -.Cm M-S- Ns Aq Cm Return -is used. .It Cm dialog_ratio Some applications have dialogue windows that are too small to be useful. This ratio is the screen size to what they will be resized. @@ -118,13 +127,6 @@ Allocates a custom region, removing any autodetected regions which occupy the sa space on the screen. Defined in the format screen[]:WIDTHxHEIGHT+X+Y, e.g.\& screen[1]:800x1200+0+0. -.It Cm screenshot_enabled -Enable or disable screenshot capability. -.It Cm screenshot_app -Set to the script that will take screenshots. -It will be called with "full" or "window" as parameter 1 to indicate what -screenshot action is expected. -The script shall handle those cases accordingly. .It Cm term_width Set a preferred minimum width for the terminal If this value is greater than 0, @@ -137,12 +139,37 @@ is currently supported. The .Xr xterm 1 binary must not be setuid or setgid, which it is by default on most systems. -Users may need to set spawn term to use an alternate copy of the +Users may need to set program[term] (see the +.Sx PROGRAMS +section) to use an alternate copy of the .Xr xterm 1 binary without the setgid bit set. +.It Cm title_class_enabled +Enable or disable displaying the window class in the status bar. +Enable by setting to 1 +.It Cm title_name_enabled +Enable or disable displaying the window title in the status bar. +Enable by setting to 1 +.It Cm window_name_enabled +Enable or disable displaying the window name in the status bar. +Enable by setting to 1 .It Cm modkey Change mod key. Mod1 is generally the ALT key and Mod4 is the windows key on a PC. +.It Cm focus_mode +Using a value of follow_cursor will make the window manager focus the window +under the mouse when switching workspaces and creating windows. +.It Cm disable_border +Remove border when bar is disabled and there is only one window on the screen. +.It Cm border_width +Set window border thickness in pixels. +Disable all borders by setting to 0 +.It Cm program Ns Bq Ar p +Define new action to spawn a program +.Ar p . +See the +.Sx PROGRAMS +section below. .It Cm bind Ns Bq Ar x Bind key combo to action .Ar x . @@ -164,6 +191,82 @@ Colors need to be specified per the specification and fonts need to be specified per the .Xr XQueryFont 3 specification. +.Pp +To list the available fonts in your system see +.Xr fc-list 1 +or +.Xr xlsfonts 1 +manpages. +The +.Xr xfontsel 1 +application can help you to show the X Logical Font Description ("XLFD") used +as setting in the keyword bar_font. +.Sh PROGRAMS +.Nm +allows you to define custom actions to launch programs of your choice and then +bind them the same as with built-in actions. +See the +.Sx BINDINGS +section below. +.Pp +The default programs are described below: +.Pp +.Bl -tag -width "screenshot_wind" -offset indent -compact +.It Cm term +xterm +.It Cm screenshot_all +screenshot.sh full +.It Cm screenshot_wind +screenshot.sh window +.It Cm lock +xlock +.It Cm initscr +initscreen.sh +.It Cm menu +dmenu_run \-fn $bar_font \-nb $bar_color \-nf $bar_font_color \-sb $bar_border \-sf $bar_color +.El +.Pp +Custom programs in the configuration file are specified as follows: +.Pp +.Dl program[] = [ [... ]] +.Pp +.Aq name +is any identifier that does not conflict with a built-in action or keyword, +.Aq progpath +is the desired program, and +.Aq arg +is zero or more arguments to the program. +.Pp +The following variables represent settable values in +.Nm +(see the +.Sx CONFIGURATION FILES +section above), +and may be used in the +.Aq arg +fields and will be substituted for values at the time the program is spawned: +.Pp +.Bl -tag -width "$bar_font_color" -offset indent -compact +.It Cm $bar_border +.It Cm $bar_color +.It Cm $bar_font +.It Cm $bar_font_color +.It Cm $color_focus +.It Cm $color_unfocus +.El +.Pp +Example: +.Bd -literal -offset indent +program[ff] = /usr/local/bin/firefox http://scrotwm.org/ +bind[ff] = Mod+f # Now Mod+F launched firefox +.Ed +.Pp +To undo the previous: +.Bd -literal -offset indent +bind[] = Mod+f +program[ff] = +.Ed +.Pp .Sh BINDINGS .Nm provides many functions (or actions) accessed via key or mouse bindings. @@ -185,9 +288,9 @@ The default key bindings are described below: .Pp .Bl -tag -width "M-j, M-XXX" -offset indent -compact .It Cm M-S- Ns Aq Cm Return -spawn_term +term .It Cm M-p -spawn_menu +menu .It Cm M-S-q quit .It Cm M-q @@ -241,6 +344,8 @@ wind_kill ws_next .It Cm M- Ns Aq Cm Left ws_prev +.It Cm M-a +ws_prior .It Cm M-S- Ns Aq Cm Right screen_next .It Cm M-S- Ns Aq Cm Left @@ -253,19 +358,29 @@ screenshot_wind version .It Cm M-t float_toggle -.It Cm M-S Aq Cm Delete -spawn_lock +.It Cm M-S- Ns Aq Cm Delete +lock .It Cm M-S-i -spawn_initscr +initscr +.It Cm M-w +iconify +.It Cm M-S-w +uniconify .El .Pp The action names and descriptions are listed below: .Pp .Bl -tag -width "M-j, M-XXX" -offset indent -compact -.It Cm spawn_term +.It Cm term Spawn a new terminal -.It Cm spawn_menu +(see +.Sx PROGRAMS +above) +.It Cm menu Menu +(see +.Sx PROGRAMS +above) .It Cm quit Quit .Nm @@ -322,22 +437,40 @@ is 1 through 10 Switch to next workspace with a window in it .It Cm ws_prev Switch to previous workspace with a window in it +.It Cm ws_prior +Switch to last visited workspace .It Cm screen_next Move pointer to next region .It Cm screen_prev Move pointer to previous region .It Cm screenshot_all Take screenshot of entire screen (if enabled) +(see +.Sx PROGRAMS +above) .It Cm screenshot_wind Take screenshot of selected window (if enabled) +(see +.Sx PROGRAMS +above) .It Cm version Toggle version in status bar .It Cm float_toggle Toggle focused window between tiled and floating -.It Cm spawn_lock +.It Cm lock Lock screen -.It Cm spawn_initscr +(see +.Sx PROGRAMS +above) +.It Cm initscr Reinitialize physical screens +(see +.Sx PROGRAMS +above) +.It Cm iconify +Minimize (unmap) currently focused window. +.It Cm uniconify +Maximize (map) window returned by dmenu selection. .El .Pp Custom bindings in the configuration file are specified as follows: @@ -365,14 +498,14 @@ in a tiling window manager, such as some dialogs and fullscreen apps. The default quirks are described below: .Pp .Bl -tag -width "OpenOffice.org N.M:VCLSalFrameXXX" -offset indent -compact -.It Firefox-bin:firefox-bin +.It Firefox\-bin:firefox\-bin TRANSSZ .It Firefox:Dialog FLOAT .It Gimp:gimp -FLOAT | ANYWHERE +FLOAT + ANYWHERE .It MPlayer:xv -FLOAT | FULLSCREEN +FLOAT + FULLSCREEN + FOCUSPREV .It OpenOffice.org 2.4:VCLSalFrame FLOAT .It OpenOffice.org 3.1:VCLSalFrame @@ -380,15 +513,15 @@ FLOAT .It pcb:pcb FLOAT .It xine:Xine Window -FLOAT | ANYWHERE +FLOAT + ANYWHERE .It xine:xine Panel -FLOAT | ANYWHERE +FLOAT + ANYWHERE .It xine:xine Video Fullscreen Window -FULLSCREEN | FLOAT +FULLSCREEN + FLOAT .It Xitk:Xitk Combo -FLOAT | ANYWHERE +FLOAT + ANYWHERE .It Xitk:Xine Window -FLOAT | ANYWHERE +FLOAT + ANYWHERE .It XTerm:xterm XTERM_FONTADJ .El @@ -408,11 +541,14 @@ Allow window to position itself, uncentered. Adjust xterm fonts when resizing. .It FULLSCREEN Remove border to allow window to use full screen size. +.It FOCUSPREV +On exit force focus on previously focused application not previous application +in the stack. .El .Pp Custom quirks in the configuration file are specified as follows: .Pp -.Dl quirk[:] = [ | ... ] +.Dl quirk[:] = [ + ... ] .Pp .Aq class and @@ -422,20 +558,10 @@ specify the window to which the quirk(s) apply, and is one of the quirks from the list above. For example: .Bd -literal -offset indent -quirk[MPlayer:xv] = FLOAT | FULLSCREEN # let mplayer play +quirk[MPlayer:xv] = FLOAT + FULLSCREEN + FOCUSPREV quirk[pcb:pcb] = NONE # remove existing quirk .Ed .Pp -Note that spaces in -.Aq class -or -.Aq name -must be replaced by an underscore in the configuration. -The config entry for "xine:Xine Panel" would be: -.Bd -literal -offset indent -quirk[xine:Xine_Panel] = FLOAT -.Ed -.Pp You can obtain .Aq class and @@ -446,6 +572,16 @@ In the following example the main window of Firefox was clicked: $ xprop | grep WM_CLASS WM_CLASS(STRING) = "Navigator", "Firefox" .Ed +.Pp +Note that grepping for WM_CLASS flips class and name. +In the example above the quirk entry would be: +.Bd -literal -offset indent +quirk[Firefox:Navigator] = FLOAT +.Ed +.Sh SIGNALS +Sending +.Nm +a HUP signal will retstart it. .Sh FILES .Bl -tag -width "/etc/scrotwm.confXXX" -compact .It Pa ~/.scrotwm.conf