X-Git-Url: https://code.delx.au/spectrwm/blobdiff_plain/f78f487b205ca3e8130550b5d29fabbf45f13960..ac945112ba4384fc68fea1e2ee387c5407b05bbb:/spectrwm.1 diff --git a/spectrwm.1 b/spectrwm.1 index 837b5db..6e7f521 100644 --- a/spectrwm.1 +++ b/spectrwm.1 @@ -1,6 +1,6 @@ .\" Copyright (c) 2009-2012 Marco Peereboom .\" Copyright (c) 2009 Darrin Chandler -.\" Copyright (c) 2011-2014 Reginald Kennedy +.\" Copyright (c) 2011-2015 Reginald Kennedy .\" Copyright (c) 2011-2012 Lawrence Teo .\" Copyright (c) 2011-2012 Tiago Cunha .\" Copyright (c) 2012 David Hill @@ -50,16 +50,12 @@ Meta .It Cm S Shift .It Aq Cm Name -Named key -.It Cm M1 -Mouse button 1 -.It Cm M3 -Mouse button 3 +Named key or button .El .Pp .Nm is very simple in its use. -Most of the actions are initiated via key or mouse bindings. +Most of the actions are initiated via key or pointer bindings. See the .Sx BINDINGS section below for defaults and customizations. @@ -235,7 +231,7 @@ See the .Ic bar_format option for more details. .It Ic bind Ns Bq Ar x -Bind key combo to action +Bind key or button combo to action .Ar x . See the .Sx BINDINGS @@ -245,9 +241,8 @@ Set window border thickness in pixels. Disable all borders by setting to 0. .It Ic boundary_width Set region containment boundary width in pixels. -This is how far a window must be dragged/resized beyond the region edge -before it is allowed outside the region. -This has no effect when manipulating the window with key bindings. +This is how far a window must be dragged/resized (with the pointer) +beyond the region edge before it is allowed outside the region. Disable the window containment effect by setting to 0. .It Ic clock_enabled Enable or disable displaying the clock in the status bar. @@ -302,7 +297,7 @@ and .Ar last (default). .It Ic focus_mode -Window focus behavior with respect to the mouse cursor. +Window focus behavior with respect to the pointer. Possible values: .Pp .Bl -tag -width "default" -offset indent -compact @@ -315,12 +310,18 @@ and changes to layout. .It Ar manual Set window focus on window interaction only. .El +.It Ic maximize_hide_bar +When set to 1, +.Ic maximize_toggle +will also hide/restore the bar visibility of the affected workspace. +Defaults to 0. .It Ic java_workaround Workaround a Java GUI rendering issue on non-reparenting window managers by impersonating the LG3D window manager, written by Sun. Default is 1. .It Ic keyboard_mapping -Clear all key bindings and load new key bindings from the specified file. +Clear all key bindings (not button bindings) and load new bindings from the +specified file. This allows you to load pre-defined key bindings for your keyboard layout. See the .Sx KEYBOARD MAPPING FILES @@ -364,12 +365,6 @@ This setting is not retained at restart. .It Ic modkey Change mod key. Mod1 is generally the ALT key and Mod4 is the windows key on a PC. -.It Ic move_button -Change mouse button used for moving windows. -But1 is the left, But2 is the middle and But3 is the right mouse button. -.It Ic resize_button -Change mouse button used for resizing windows. -But1 is the left, But2 is the middle and But3 is the right mouse button. .It Ic name Set the name of a workspace at start-of-day. Defined in the format @@ -446,8 +441,9 @@ Set this to the opposite of to collapse the border between tiles. Disable by setting to 0. .It Ic urgent_collapse -Enables hiding of placeholders in the urgency hint indicator for workspaces that -do not have any urgent windows. +Minimizes the space consumed by the urgency hint indicator by removing the +placeholders for non-urgent workspaces, the trailing space when there are +urgent windows and the default leading space. Enable by setting to 1. .It Ic urgent_enabled Enable or disable the urgency hint indicator in the status bar. @@ -471,6 +467,15 @@ See and .Ar stack_dec for more information. +.It Ic workspace_clamp +Prevents workspaces from being swapped when attempting to switch to a workspace +that is mapped to another region. +Use +.Ar warp_focus +if you want to focus on the region containing the workspace and +.Ar warp_pointer +if you want to also send the pointer. +Enable by setting to 1. .It Ic window_class_enabled Enable or disable displaying the window class name (from WM_CLASS) in the status bar. @@ -489,8 +494,15 @@ the bar, it's limited to 64 characters, by default. See the .Ic bar_format option for more details. +.It Ic warp_focus +Focus on the target window/workspace/region when clamped. +For example, when attempting to switch to a workspace that is mapped on another +region and +.Ar workspace_clamp +is enabled, focus on the region with the target workspace. +Enable by setting to 1. .It Ic warp_pointer -Centers the mouse pointer on the focused window when using key bindings to +Centers the pointer on the focused window when using bindings to change focus, switch workspaces, change regions, etc. Enable by setting to 1. .It Ic workspace_limit @@ -569,7 +581,7 @@ screenshot.sh window # optional Note that optional default programs will not be validated unless overridden. If a default program fails validation, you can resolve the exception by installing the program, modifying the program call or disabling the program -by freeing the respective key binding. +by freeing the respective binding. .Pp For example, to override .Ic lock : @@ -585,24 +597,19 @@ bind[] = MOD+Shift+Delete .Ed .Sh BINDINGS .Nm -provides many functions (or actions) accessed via key or mouse bindings. -.Pp -The current mouse bindings are described below: -.Pp -.Bl -tag -width "M-j, M-XXX" -offset indent -compact -.It Cm M1 -Focus window -.It Cm M-M1 -Move window -.It Cm M-M3 -Resize window -.It Cm M-S-M3 -Resize window while maintaining it centered -.El +provides many functions (or actions) accessed via key or pointer bindings. .Pp -The default key bindings are described below: +The default bindings are listed below: .Pp .Bl -tag -width "M-j, M-XXXXXX" -offset indent -compact +.It Cm Ns Aq Cm Button1 +focus +.It Cm M- Ns Aq Cm Button1 +move +.It Cm M- Ns Aq Cm Button3 +resize +.It Cm M-S- Ns Aq Cm Button3 +resize_centered .It Cm M-S- Ns Aq Cm Return term .It Cm M-p @@ -617,7 +624,7 @@ cycle_layout flip_layout .It Cm M-S- Ns Aq Cm Space stack_reset -.It Cm M-S-h +.It Cm Aq Ar unbound stack_balance .It Cm M-h master_shrink @@ -667,6 +674,10 @@ wind_kill .Pf rg_ Aq Ar 1-9 .It Cm M-S- Ns Aq Ar Keypad 1-9 .Pf mvrg_ Aq Ar 1-9 +.It Cm Aq Ar unbound +mvrg_next +.It Cm Aq Ar unbound +mvrg_prev .It Cm M- Ns Aq Cm Right ws_next .It Cm M- Ns Aq Cm Left @@ -677,7 +688,7 @@ ws_next_all ws_prev_all .It Cm M-a ws_prior -.It Cm M-S- Ns Aq Cm Left +.It Cm M-S- Ns Aq Cm Down ws_prev_move .It Cm M-S- Ns Aq Cm Up ws_next_move @@ -685,6 +696,10 @@ ws_next_move rg_next .It Cm M-S- Ns Aq Cm Left rg_prev +.It Cm Aq Ar unbound +rg_move_next +.It Cm Aq Ar unbound +rg_move_prev .It Cm M-s screenshot_all .It Cm M-S-s @@ -703,6 +718,10 @@ iconify uniconify .It Cm M-e maximize_toggle +.It Cm M-S-e +fullscreen_toggle +.It Cm M-r +raise .It Cm M-S-r always_raise .It Cm M-v @@ -734,6 +753,16 @@ search_win The action names and descriptions are listed below: .Pp .Bl -tag -width "M-j, M-XXXX" -offset indent -compact +.It Cm focus +Focus window/region under pointer. +.It Cm move +Move window with pointer while binding is pressed. +.It Cm resize +Resize window with pointer while binding is pressed. +.It Cm resize_centered +Same as +.Ic resize +but keep window centered. .It Cm term Spawn a new terminal (see @@ -819,6 +848,10 @@ Move current window to region where .Ar n is 1 through 9. +.It Cm mvrg_next +Move current window to workspace in next region. +.It Cm mvrg_prev +Move current window to workspace in previous region. .It Cm ws_next Switch to next workspace with a window in it. .It Cm ws_prev @@ -837,6 +870,10 @@ Switch to last visited workspace. Switch to next region. .It Cm rg_prev Switch to previous region. +.It Cm rg_move_next +Switch region to next screen. +.It Cm rg_move_prev +Switch region to previous screen. .It Cm screenshot_all Take screenshot of entire screen (if enabled) (see @@ -869,10 +906,14 @@ Restore (map) window returned by selection. .It Cm maximize_toggle Toggle maximization of focused window. +.It Cm fullscreen_toggle +Toggle fullscreen state of focused window. +.It Cm raise +Raise the current window. .It Cm always_raise When set tiled windows are allowed to obscure floating windows. .It Cm button2 -Fake a middle mouse button click (mouse button 2). +Fake a middle mouse button click (Button2). .It Cm width_shrink Shrink the width of a floating window. .It Cm width_grow @@ -899,27 +940,67 @@ Search the windows in the current workspace. .Pp Custom bindings in the configuration file are specified as follows: .Pp -.Dl bind Ns Bo Ar action Bc = Ar keys +.Dl bind Ns Bo Ar action Bc = Ar combo .Pp .Ar action is one of the actions listed above (or empty to unbind) and -.Ar keys -is in the form of zero or more modifier keys -(MOD, Mod1, Shift, etc.) and one or more normal keys -(b, Space, etc.), separated by +.Ar combo +is in the form of zero or more modifier keys and/or special arguments +(Mod1, Shift, MOD, etc.) and a normal key (b, Space, etc.) +or a button (Button1 .. Button255), separated by .Ql + . +Multiple key/button combinations may be bound to the same action. +.Pp +Special arguments: +.Bl -tag -width "anymodxxxx" -offset indent -compact +.It Cm MOD +Substituted for the currently defined +.Ic modkey . +.It Cm ANYMOD +Select all modifier combinations not handled by another binding. +.It Cm REPLAY +Reprocess binding press/release events for other programs to handle. Unavailable for +.Ic move , +.Ic resize +and +.Ic resize_centered . +.El .Pp -Example: +.Cm MOD +example: .Bd -literal -offset indent bind[reset] = Mod4+q # bind Windows-key + q to reset bind[] = Mod1+q # unbind Alt + q +bind[move] = MOD+Button3 # Bind move to M-Button3 +bind[] = MOD+Button1 # Unbind default move binding. .Ed .Pp -To use the currently defined -.Ic modkey , -specify MOD as the modifier key. +.Cm ANYMOD +example: +.Bd -literal -offset indent +bind[focus] = ANYMOD+Button3 +bind[move] = MOD+Button3 +.Ed .Pp -Multiple key combinations may be bound to the same action. +In the above example, +.Cm M- Ns Aq Cm Button3 +initiates +.Ic move +and +.Cm Aq Cm Button3 +pressed with any other combination of modifiers +sets focus to the window/region under the pointer. +.Pp +.Cm REPLAY +example: +.Bd -literal -offset indent +bind[focus] = REPLAY+Button3 +.Ed +.Pp +In the above example, when +.Cm Aq Cm Button3 +is pressed without any modifier(s), focus is set to the window under the +pointer and the button press is passed to the window. .Pp To bind non-latin characters such as \[oa] or \[*p] you must enter the xkb character name instead of the character itself. @@ -1006,24 +1087,31 @@ XTERM_FONTADJ The quirks themselves are described below: .Pp .Bl -tag -width "XTERM_FONTADJXXX" -offset indent -compact -.It FLOAT -This window should not be tiled, but allowed to float freely. -.It TRANSSZ -Adjusts size on transient windows that are too small using -.Ic dialog_ratio -(see -.Sx CONFIGURATION FILES ) . .It ANYWHERE Allow window to position itself, uncentered. -.It XTERM_FONTADJ -Adjust -.Xr xterm 1 -fonts when resizing. -.It FULLSCREEN -Remove border to allow window to use full region size. +.It FLOAT +This window should not be tiled, but allowed to float freely. +.It FOCUSONMAP_SINGLE +When the window first appears on the screen, change focus to the window +if there are no other windows on the workspace with the same WM_CLASS +class/instance value. +Has no effect when +.Ic focus_mode +is set to +.Ar follow . .It FOCUSPREV On exit force focus on previously focused application not previous application in the stack. +.It FULLSCREEN +Remove border to allow window to use full region size. +.It IGNOREPID +Ignore the PID when determining the initial workspace for a new window. +Especially useful for terminal windows that share a process. +.It IGNORESPAWNWS +Ignore the spawn workspace when determining the initial workspace for a +new window. +.It MINIMALBORDER +Remove border when window is unfocused and floating. .It NOFOCUSCYCLE Remove from normal focus cycle (focus_prev or focus_next). The window can still be focused using search_win. @@ -1033,28 +1121,23 @@ Has no effect when .Ic focus_mode is set to .Ar follow . -.It FOCUSONMAP_SINGLE -When the window first appears on the screen, change focus to the window -if there are no other windows on the workspace with the same WM_CLASS -class/instance value. -Has no effect when -.Ic focus_mode -is set to -.Ar follow . .It OBEYAPPFOCUSREQ When an application requests focus on the window via a _NET_ACTIVE_WINDOW client message (source indication of 1), comply with the request. Note that a source indication of 0 (unspecified) or 2 (pager) are always obeyed. -.It IGNOREPID -Ignore the PID when determining the initial workspace for a new window. -Especially useful for terminal windows that share a process. -.It IGNORESPAWNWS -Ignore the spawn workspace when determining the initial workspace for a -new window. +.It TRANSSZ +Adjusts size on transient windows that are too small using +.Ic dialog_ratio +(see +.Sx CONFIGURATION FILES ) . .It WS Ns Bq Ar n Force a new window to appear on workspace .Ar n . +.It XTERM_FONTADJ +Adjust +.Xr xterm 1 +fonts when resizing. .El .Pp Custom quirks in the configuration file are specified as follows: