1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
4 <title>~/scrotwm.~.html</title>
5 <meta name="Generator" content="Vim/7.2">
6 <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
8 <body text="#ffffff" bgcolor="#000000"><font face="monospace">
9 <font color="#ff40ff">SCROTWM(1) OpenBSD Reference Manual SCROTWM(1)</font><br>
11 <font color="#ffff00">NAME</font><br>
12 scrotwm - window manager for X11<br>
14 <font color="#ffff00">SYNOPSIS</font><br>
15 scrotwm<br>
17 <font color="#ffff00">DESCRIPTION</font><br>
18 scrotwm is a minimalistic window manager that tries to stay out of the<br>
19 way so that valuable screen real estate can be used for much more impor-<br>
20 tant stuff. It has sane defaults and does not require one to learn a<br>
21 language to do any configuration. It was written by hackers for hackers<br>
22 and it strives to be small, compact and fast.<br>
24 When scrotwm starts up, it reads settings from its configuration file,<br>
25 scrotwm.conf. See the CONFIGURATION FILES section below.<br>
27 The following notation is used throughout this page:<br>
29 M Meta<br>
30 S Shift<br>
31 <Name> Named key<br>
32 M1 Mouse button 1<br>
33 M3 Mouse button 3<br>
35 scrotwm is very simple in its use. Most of the actions are initiated via<br>
36 key or mouse bindings. See the BINDINGS section below for defaults and<br>
37 customizations.<br>
39 <font color="#ffff00">CONFIGURATION FILES</font><br>
40 scrotwm first tries to open the user specific file, ~/.scrotwm.conf. If<br>
41 that file is unavailable, it then tries to open the global configuration<br>
42 file /etc/scrotwm.conf.<br>
44 The format of the file is <keyword> = <setting>. For example:<br>
46 color_focus = red<br>
48 Enabling or disabling an option is done by using 1 or 0 respectively.<br>
50 The file supports the following keywords:<br>
52 color_focus Border color of the currently focussed win-<br>
53 dow.<br>
54 color_unfocus Border color of unfocussed windows.<br>
55 bar_enabled Enable or disable status bar.<br>
56 bar_border[x] Color of the status bar border in screen x.<br>
57 bar_color[x] Color of the status bar window in screen x.<br>
58 bar_font_color[x] Color of the font in status bar in screen x.<br>
59 bar_font Status bar font.<br>
60 bar_action External script that populates additional<br>
61 information in the status bar, such as bat-<br>
62 tery life.<br>
63 bar_delay Update frequency, in seconds, of external<br>
64 script that populates the status bar.<br>
65 clock_enabled Enable or disable displaying the clock in<br>
66 the status bar. Disable by setting to 0 so<br>
67 a custom clock could be used in the bar_ac-<br>
68 tion script.<br>
69 spawn_term External application that gets spawned when<br>
70 M-S-<Return> is used.<br>
71 dialog_ratio Some applications have dialogue windows that<br>
72 are too small to be useful. This ratio is<br>
73 the screen size to what they will be re-<br>
74 sized. For example, 0.6 is 60% of the phys-<br>
75 ical screen size.<br>
76 region Allocates a custom region, removing any au-<br>
77 todetected regions which occupy the same<br>
78 space on the screen. Defined in the format<br>
79 screen[<idx>]:WIDTHxHEIGHT+X+Y, e.g.<br>
80 screen[1]:800x1200+0+0.<br>
81 screenshot_enabled Enable or disable screenshot capability.<br>
82 screenshot_app Set to the script that will take screen-<br>
83 shots. It will be called with "full" or<br>
84 "window" as parameter 1 to indicate what<br>
85 screenshot action is expected. The script<br>
86 shall handle those cases accordingly.<br>
87 term_width Set a preferred minimum width for the termi-<br>
88 nal If this value is greater than 0, scrotwm<br>
89 will attempt to adjust the font sizes in the<br>
90 terminal to keep the terminal width above<br>
91 this number as the window is resized. Only<br>
92 <font color="#ff40ff">xterm(1)</font> is currently supported. The<br>
93 <font color="#ff40ff">xterm(1)</font> binary must not be setuid or set-<br>
94 gid, which it is by default on most systems.<br>
95 Users may need to set spawn term to use an<br>
96 alternate copy of the <font color="#ff40ff">xterm(1)</font> binary with-<br>
97 out the setgid bit set.<br>
98 modkey Change mod key. Mod1 is generally the ALT<br>
99 key and Mod4 is the windows key on a PC.<br>
100 bind[x] Bind key combo to action x. See the<br>
101 BINDINGS section below.<br>
102 quirk[c:n] Add "quirk" for windows with class c and<br>
103 name n. See the QUIRKS section below.<br>
105 Colors need to be specified per the <font color="#ff40ff">XQueryColor(3)</font> specification and<br>
106 fonts need to be specified per the <font color="#ff40ff">XQueryFont(3)</font> specification.<br>
108 <font color="#ffff00">BINDINGS</font><br>
109 scrotwm provides many functions (or actions) accessed via key or mouse<br>
110 bindings.<br>
112 The current mouse bindings are described below:<br>
114 M1 Focus window<br>
115 M-M1 Move window<br>
116 M-M3 Resize window<br>
117 M-S-M3 Resize window while maintaining it centered<br>
119 The default key bindings are described below:<br>
121 M-S-<Return> spawn_term<br>
122 M-p spawn_menu<br>
123 M-S-q quit<br>
124 M-q restart scrotwm<br>
125 M-<Space> cycle_layout<br>
126 M-S-<Space> reset_layout<br>
127 M-h master_shrink<br>
128 M-l master_grow<br>
129 M-, master_add<br>
130 M-. master_del<br>
131 M-S-, stack_inc<br>
132 M-S-. stack_del<br>
133 M-<Return> swap_main<br>
134 M-j, M-<TAB> focus_next<br>
135 M-k, M-S-<TAB> focus_prev<br>
136 M-m focus_main<br>
137 M-S-j swap_next<br>
138 M-S-k swap_prev<br>
139 M-b bar_toggle<br>
140 M-x wind_del<br>
141 M-S-x wind_kill<br>
142 M-<n> ws_n<br>
143 M-S-<n> mvws_n<br>
144 M-<Right> ws_next<br>
145 M-<Left> ws_prev<br>
146 M-S-<Right> screen_next<br>
147 M-S-<Left> screen_prev<br>
148 M-s screenshot_all<br>
149 M-S-s screenshot_wind<br>
150 M-S-v version<br>
151 M-t float_toggle<br>
152 M-S <Delete> spawn_lock<br>
153 M-S-i spawn_initscr<br>
155 The action names and descriptions are listed below:<br>
157 spawn_term Spawn a new terminal<br>
158 spawn_menu Menu<br>
159 quit Quit scrotwm<br>
160 restart Restart scrotwm<br>
161 cycle_layout Cycle layout<br>
162 reset_layout Reset layout<br>
163 master_shrink Shrink master area<br>
164 master_grow Grow master area<br>
165 master_add Add windows to master area<br>
166 master_del Remove windows from master area<br>
167 stack_inc Add columns/rows to stacking area<br>
168 stack_del Remove columns/rows from stacking area<br>
169 swap_main Move current window to master area<br>
170 focus_next Focus next window in workspace<br>
171 focus_prev Focus previous window in workspace<br>
172 focus_main Focus on main window in workspace<br>
173 swap_next Swap with next window in workspace<br>
174 swap_prev Swap with previous window in workspace<br>
175 bar_toggle Toggle status bar in all workspaces<br>
176 wind_del Delete current window in workspace<br>
177 wind_kill Destroy current window in workspace<br>
178 ws_n Switch to workspace n, where n is 1 through 10<br>
179 mvws_n Move current window to workspace n, where n is 1<br>
180 through 10<br>
181 ws_next Switch to next workspace with a window in it<br>
182 ws_prev Switch to previous workspace with a window in it<br>
183 screen_next Move pointer to next region<br>
184 screen_prev Move pointer to previous region<br>
185 screenshot_all Take screenshot of entire screen (if enabled)<br>
186 screenshot_wind Take screenshot of selected window (if enabled)<br>
187 version Toggle version in status bar<br>
188 float_toggle Toggle focused window between tiled and floating<br>
189 spawn_lock Lock screen<br>
190 spawn_initscr Reinitialize physical screens<br>
192 Custom bindings in the configuration file are specified as follows:<br>
194 bind[<action>] = <keys><br>
196 <action> is one of the actions listed above (or empty) and <keys> is in<br>
197 the form of zero or more modifier keys (MOD, Mod1, Shift, etc.) and one<br>
198 or more normal keys (b, space, etc.), separated by "+". For example:<br>
200 bind[reset] = Mod4+q # bind Windows-key + q to reset<br>
201 bind[] = Mod1+q # unbind Alt + q<br>
203 Multiple key combinations may be bound to the same action.<br>
205 <font color="#ffff00">QUIRKS</font><br>
206 scrotwm provides "quirks" which handle windows that must be treated spe-<br>
207 cially in a tiling window manager, such as some dialogs and fullscreen<br>
208 apps.<br>
210 The default quirks are described below:<br>
212 Firefox-bin:firefox-bin TRANSSZ<br>
213 Firefox:Dialog FLOAT<br>
214 Gimp:gimp FLOAT | ANYWHERE<br>
215 MPlayer:xv FLOAT | FULLSCREEN<br>
216 OpenOffice.org 2.4:VCLSalFrame FLOAT<br>
217 OpenOffice.org 3.1:VCLSalFrame FLOAT<br>
218 pcb:pcb FLOAT<br>
219 xine:Xine Window FLOAT | ANYWHERE<br>
220 xine:xine Panel FLOAT | ANYWHERE<br>
221 xine:xine Video Fullscreen Window FULLSCREEN | FLOAT<br>
222 Xitk:Xitk Combo FLOAT | ANYWHERE<br>
223 Xitk:Xine Window FLOAT | ANYWHERE<br>
224 XTerm:xterm XTERM_FONTADJ<br>
226 The quirks themselves are described below:<br>
228 FLOAT This window should not be tiled, but allowed<br>
229 to float freely.<br>
230 TRANSSZ Adjusts size on transient windows that are<br>
231 too small using dialog_ratio (see<br>
232 CONFIGURATION FILES).<br>
233 ANYWHERE Allow window to position itself, uncentered.<br>
234 XTERM_FONTADJ Adjust xterm fonts when resizing.<br>
235 FULLSCREEN Remove border to allow window to use full<br>
236 screen size.<br>
238 Custom quirks in the configuration file are specified as follows:<br>
240 quirk[<class>:<name>] = <quirk> [| <quirk> ...]<br>
242 <class> and <name> specify the window to which the quirk(s) apply, and<br>
243 <quirk> is one of the quirks from the list above. For example:<br>
245 quirk[MPlayer:xv] = FLOAT | FULLSCREEN # let mplayer play<br>
246 quirk[pcb:pcb] = NONE # remove existing quirk<br>
248 Note that spaces in <class> or <name> must be replaced by an underscore<br>
249 in the configuration. The config entry for "xine:Xine Panel" would be:<br>
251 quirk[xine:Xine_Panel] = FLOAT<br>
253 You can obtain <class> and <name> by running <font color="#ff40ff">xprop(1)</font> and then clicking<br>
254 on the desired window. In the following example the main window of Fire-<br>
255 fox was clicked:<br>
257 $ xprop | grep WM_CLASS<br>
258 WM_CLASS(STRING) = "Navigator", "Firefox"<br>
260 <font color="#ffff00">FILES</font><br>
261 ~/.scrotwm.conf scrotwm user specific settings.<br>
262 /etc/scrotwm.conf scrotwm global settings.<br>
264 <font color="#ffff00">HISTORY</font><br>
265 scrotwm was inspired by xmonad & dwm.<br>
267 <font color="#ffff00">AUTHORS</font><br>
268 scrotwm was written by Marco Peereboom <marco@peereboom.us>, Ryan Thomas<br>
269 McBride <mcbride@countersiege.com> and Darrin Chandler<br>
270 <dwchandler@stilyagin.com>.<br>
272 <font color="#ffff00">BUGS</font><br>
273 Currently the menu, invoked with M-p, depends on dmenu.<br>
275 OpenBSD 4.5 May 25, 2009 5<br>