JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
18e26430e3e227ce95ae7659061e3bec5085018b
[spectrwm.git] / scrotwm.1
1 .\"     $scrotwm$
2 .\"
3 .\" Copyright (c) 2009 Marco Peereboom <marco@peereboom.us>
4 .\" Copyright (c) 2009 Darrin Chandler <dwchandler@stilyagin.com>
5 .\"
6 .\" Permission to use, copy, modify, and distribute this software for any
7 .\" purpose with or without fee is hereby granted, provided that the above
8 .\" copyright notice and this permission notice appear in all copies.
9 .\"
10 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 .\"
18 .Dd $Mdocdate$
19 .Dt SCROTWM 1
20 .Os
21 .Sh NAME
22 .Nm scrotwm
23 .Nd window manager for X11
24 .Sh SYNOPSIS
25 .Nm scrotwm
26 .Sh DESCRIPTION
27 .Nm
28 is a minimalistic window manager that tries to stay out of the way so that
29 valuable screen real estate can be used for much more important stuff.
30 It has sane defaults and does not require one to learn a language to do any
31 configuration.
32 It was written by hackers for hackers and it strives to be small, compact and
33 fast.
34 .Pp
35 When
36 .Nm
37 starts up, it reads settings from its configuration file,
38 .Pa scrotwm.conf .
39 See the
40 .Sx CONFIGURATION FILES
41 section below.
42 .Pp
43 The following notation is used throughout this page:
44 .Pp
45 .Bl -tag -width Ds -offset indent -compact
46 .It Cm M
47 Meta
48 .It Cm S
49 Shift
50 .It Aq Cm Name
51 Named key
52 .It Cm M1
53 Mouse button 1
54 .It Cm M3
55 Mouse button 3
56 .El
57 .Pp
58 .Nm
59 is very simple in its use.
60 Most of the actions are initiated via key or mouse bindings.
61 See the
62 .Sx BINDINGS
63 section below for defaults and customizations.
64 .Sh CONFIGURATION FILES
65 .Nm
66 first tries to open the user specific file,
67 .Pa ~/.scrotwm.conf .
68 If that file is unavailable,
69 it then tries to open the global configuration file
70 .Pa /etc/scrotwm.conf .
71 .Pp
72 The format of the file is \*(Ltkeyword\*(Gt = \*(Ltsetting\*(Gt.
73 For example:
74 .Pp
75 .Dl color_focus = red
76 .Pp
77 Enabling or disabling an option is done by using 1 or 0 respectively.
78 .Pp
79 The file supports the following keywords:
80 .Pp
81 .Bl -tag -width "title_class_enabledXXX" -offset indent -compact
82 .It Cm autorun
83 Launch an application in a specified workspace at start-of-day.
84 Defined in the format ws[<idx>]:application, e.g. ws[2]:xterm launches and
85 xterm in workspace 2
86 .It Cm color_focus
87 Border color of the currently focussed window.
88 .It Cm color_unfocus
89 Border color of unfocussed windows.
90 .It Cm bar_enabled
91 Enable or disable status bar.
92 .It Cm bar_border Ns Bq Ar x
93 Color of the status bar border in screen
94 .It Cm bar_border_width
95 Set status bar border thickness in pixels.
96 Disable border by setting to 0
97 .Ar x .
98 .It Cm bar_color Ns Bq Ar x
99 Color of the status bar window in screen
100 .Ar x .
101 .It Cm bar_font_color Ns Bq Ar x
102 Color of the font in status bar in screen
103 .Ar x .
104 .It Cm bar_font
105 Status bar font.
106 .It Cm bar_action
107 External script that populates additional information in the status bar,
108 such as battery life.
109 .It Cm bar_delay
110 Update frequency, in seconds, of external script that populates the status bar.
111 .It Cm bar_at_bottom
112 Place the statusbar at the bottom of each region instead of the top.
113 .It Cm stack_enabled
114 Enable or disable displaying the current stacking algorithm in the status bar.
115 .It Cm clock_enabled
116 Enable or disable displaying the clock in the status bar.
117 Disable by setting to 0
118 so a custom clock could be used in the bar_action script.
119 .It Cm dialog_ratio
120 Some applications have dialogue windows that are too small to be useful.
121 This ratio is the screen size to what they will be resized.
122 For example, 0.6 is 60% of the physical screen size.
123 .It Cm layout
124 select layout to use at start-of-day.
125 Defined in the format
126 ws[idx]:master_grow:master_add:stack_inc:layout:always_raise:stack_mode, e.g.
127 ws[2]:-4:0:1:0:horizontal sets worskspace 2 to the horizontal stack mode and
128 shrinks the master area by 4 ticks and adds one window to the stack, while
129 maintaining default floating window behavior.
130 Possible stack_mode values are
131 .Pa vertical ,
132 .Pa horizontal
133 and
134 .Pa fullscreen .
135 .Pp
136 See
137 .Pa master_grow ,
138 .Pa master_shrink ,
139 .Pa master_add ,
140 .Pa master_del ,
141 .Pa stack_inc ,
142 .Pa stack_del ,
143 and
144 .Pa always_raise
145 for more information.
146 Note that the stacking options are complicated and have side-effects.
147 One should familiarize oneself with these commands before experimenting with the
148 .Pa layout
149 option.
150 .Pp
151 This setting is not retained at restart.
152 .It Cm region
153 Allocates a custom region, removing any autodetected regions which occupy the same
154 space on the screen.
155 Defined in the format screen[<idx>]:WIDTHxHEIGHT+X+Y,
156 e.g.\& screen[1]:800x1200+0+0.
157 .It Cm term_width
158 Set a preferred minimum width for the terminal
159 If this value is greater than 0,
160 .Nm
161 will attempt to adjust the font sizes in the terminal to keep the terminal
162 width above this number as the window is resized.
163 Only
164 .Xr xterm 1
165 is currently supported.
166 The
167 .Xr xterm 1
168 binary must not be setuid or setgid, which it is by default on most systems.
169 Users may need to set program[term] (see the
170 .Sx PROGRAMS
171 section) to use an alternate copy of the
172 .Xr xterm 1
173 binary without the setgid bit set.
174 .It Cm title_class_enabled
175 Enable or disable displaying the window class in the status bar.
176 Enable by setting to 1
177 .It Cm title_name_enabled
178 Enable or disable displaying the window title in the status bar.
179 Enable by setting to 1
180 .It Cm window_name_enabled
181 Enable or disable displaying the window name in the status bar.
182 Enable by setting to 1
183 .It Cm verbose_layout
184 Enable or disable displaying the current master and stack values in the status
185 bar.
186 Enable by setting to 1
187 .It Cm modkey
188 Change mod key.
189 Mod1 is generally the ALT key and Mod4 is the windows key on a PC.
190 .It Cm focus_mode
191 Using a value of follow_cursor will make the window manager focus the window
192 under the mouse when switching workspaces and creating windows.
193 .It Cm disable_border
194 Remove border when bar is disabled and there is only one window on the screen.
195 .It Cm border_width
196 Set window border thickness in pixels.
197 Disable all borders by setting to 0
198 .It Cm program Ns Bq Ar p
199 Define new action to spawn a program
200 .Ar p .
201 See the
202 .Sx PROGRAMS
203 section below.
204 .It Cm bind Ns Bq Ar x
205 Bind key combo to action
206 .Ar x .
207 See the
208 .Sx BINDINGS
209 section below.
210 .It Cm quirk Ns Bq Ar c:n
211 Add "quirk" for windows with class
212 .Ar c
213 and name
214 .Ar n .
215 See the
216 .Sx QUIRKS
217 section below.
218 .El
219 .Pp
220 Colors need to be specified per the
221 .Xr XQueryColor 3
222 specification and fonts need to be specified per the
223 .Xr XQueryFont 3
224 specification.
225 .Pp
226 To list the available fonts in your system see
227 .Xr fc-list 1
228 or
229 .Xr xlsfonts 1
230 manpages.
231 The 
232 .Xr xfontsel 1
233 application can help you to show the X Logical Font Description ("XLFD") used
234 as setting in the keyword bar_font.
235 .Sh PROGRAMS
236 .Nm
237 allows you to define custom actions to launch programs of your choice and then
238 bind them the same as with built-in actions.
239 See the
240 .Sx BINDINGS
241 section below.
242 .Pp
243 The default programs are described below:
244 .Pp
245 .Bl -tag -width "screenshot_wind" -offset indent -compact
246 .It Cm term
247 xterm
248 .It Cm screenshot_all
249 screenshot.sh full
250 .It Cm screenshot_wind
251 screenshot.sh window
252 .It Cm lock
253 xlock
254 .It Cm initscr
255 initscreen.sh
256 .It Cm menu
257 dmenu_run \-fn $bar_font \-nb $bar_color \-nf $bar_font_color \-sb $bar_border \-sf $bar_color
258 .El
259 .Pp
260 Custom programs in the configuration file are specified as follows:
261 .Pp
262 .Dl program[<name>] = <progpath> [<arg> [... <arg>]]
263 .Pp
264 .Aq name
265 is any identifier that does not conflict with a built-in action or keyword,
266 .Aq progpath
267 is the desired program, and
268 .Aq arg
269 is zero or more arguments to the program.
270 .Pp
271 The following variables represent settable values in
272 .Nm
273 (see the
274 .Sx CONFIGURATION FILES
275 section above),
276 and may be used in the
277 .Aq arg
278 fields and will be substituted for values at the time the program is spawned:
279 .Pp
280 .Bl -tag -width "$bar_font_color" -offset indent -compact
281 .It Cm $bar_border
282 .It Cm $bar_color
283 .It Cm $bar_font
284 .It Cm $bar_font_color
285 .It Cm $color_focus
286 .It Cm $color_unfocus
287 .El
288 .Pp
289 Example:
290 .Bd -literal -offset indent
291 program[ff] = /usr/local/bin/firefox http://scrotwm.org/
292 bind[ff] = Mod+f # Now Mod+F launched firefox
293 .Ed
294 .Pp
295 To undo the previous:
296 .Bd -literal -offset indent
297 bind[] = Mod+f
298 program[ff] =
299 .Ed
300 .Pp
301 .Sh BINDINGS
302 .Nm
303 provides many functions (or actions) accessed via key or mouse bindings.
304 .Pp
305 The current mouse bindings are described below:
306 .Pp
307 .Bl -tag -width "M-j, M-<TAB>XXX" -offset indent -compact
308 .It Cm M1
309 Focus window
310 .It Cm M-M1
311 Move window
312 .It Cm M-M3
313 Resize window
314 .It Cm M-S-M3
315 Resize window while maintaining it centered
316 .El
317 .Pp
318 The default key bindings are described below:
319 .Pp
320 .Bl -tag -width "M-j, M-<TAB>XXX" -offset indent -compact
321 .It Cm M-S- Ns Aq Cm Return
322 term
323 .It Cm M-p
324 menu
325 .It Cm M-S-q
326 quit
327 .It Cm M-q
328 restart
329 .Nm
330 .It Cm M- Ns Aq Cm Space
331 cycle_layout
332 .It Cm M-S- Ns Aq Cm Space
333 reset_layout
334 .It Cm M-h
335 master_shrink
336 .It Cm M-l
337 master_grow
338 .It Cm M-,
339 master_add
340 .It Cm M-.
341 master_del
342 .It Cm M-S-,
343 stack_inc
344 .It Cm M-S-.
345 stack_del
346 .It Cm M- Ns Aq Cm Return
347 swap_main
348 .It Xo
349 .Cm M-j ,
350 .Cm M- Ns Aq Cm TAB
351 .Xc
352 focus_next
353 .It Xo
354 .Cm M-k ,
355 .Cm M-S- Ns Aq Cm TAB
356 .Xc
357 focus_prev
358 .It Cm M-m
359 focus_main
360 .It Cm M-S-j
361 swap_next
362 .It Cm M-S-k
363 swap_prev
364 .It Cm M-b
365 bar_toggle
366 .It Cm M-x
367 wind_del
368 .It Cm M-S-x
369 wind_kill
370 .It Cm M- Ns Aq Ar n
371 .Ns ws_ Ns Ar n
372 .It Cm M-S- Ns Aq Ar n
373 .Ns mvws_ Ns Ar n
374 .It Cm M- Ns Aq Cm Right
375 ws_next
376 .It Cm M- Ns Aq Cm Left
377 ws_prev
378 .It Cm M-a
379 ws_prior
380 .It Cm M-S- Ns Aq Cm Right
381 screen_next
382 .It Cm M-S- Ns Aq Cm Left
383 screen_prev
384 .It Cm M-s
385 screenshot_all
386 .It Cm M-S-s
387 screenshot_wind
388 .It Cm M-S-v
389 version
390 .It Cm M-t
391 float_toggle
392 .It Cm M-S- Ns Aq Cm Delete
393 lock
394 .It Cm M-S-i
395 initscr
396 .It Cm M-w
397 iconify
398 .It Cm M-S-w
399 uniconify
400 .It Cm M-S-r
401 toggle always_raised
402 .El
403 .Pp
404 The action names and descriptions are listed below:
405 .Pp
406 .Bl -tag -width "M-j, M-<TAB>XXX" -offset indent -compact
407 .It Cm term
408 Spawn a new terminal
409 (see
410 .Sx PROGRAMS
411 above)
412 .It Cm menu
413 Menu
414 (see
415 .Sx PROGRAMS
416 above)
417 .It Cm quit
418 Quit
419 .Nm
420 .It Cm restart
421 Restart
422 .Nm
423 .It Cm cycle_layout
424 Cycle layout
425 .It Cm reset_layout
426 Reset layout
427 .It Cm master_shrink
428 Shrink master area
429 .It Cm master_grow
430 Grow master area
431 .It Cm master_add
432 Add windows to master area
433 .It Cm master_del
434 Remove windows from master area
435 .It Cm stack_inc
436 Add columns/rows to stacking area
437 .It Cm stack_del
438 Remove columns/rows from stacking area
439 .It Cm swap_main
440 Move current window to master area
441 .It Cm focus_next
442 Focus next window in workspace
443 .It Cm focus_prev
444 Focus previous window in workspace
445 .It Cm focus_main
446 Focus on main window in workspace
447 .It Cm swap_next
448 Swap with next window in workspace
449 .It Cm swap_prev
450 Swap with previous window in workspace
451 .It Cm bar_toggle
452 Toggle status bar in all workspaces
453 .It Cm wind_del
454 Delete current window in workspace
455 .It Cm wind_kill
456 Destroy current window in workspace
457 .It Cm ws_ Ns Ar n
458 Switch to workspace
459 .Ar n ,
460 where
461 .Ar n
462 is 1 through 10
463 .It Cm mvws_ Ns Ar n
464 Move current window to workspace
465 .Ar n ,
466 where
467 .Ar n
468 is 1 through 10
469 .It Cm ws_next
470 Switch to next workspace with a window in it
471 .It Cm ws_prev
472 Switch to previous workspace with a window in it
473 .It Cm ws_prior
474 Switch to last visited workspace
475 .It Cm screen_next
476 Move pointer to next region
477 .It Cm screen_prev
478 Move pointer to previous region
479 .It Cm screenshot_all
480 Take screenshot of entire screen (if enabled)
481 (see
482 .Sx PROGRAMS
483 above)
484 .It Cm screenshot_wind
485 Take screenshot of selected window (if enabled)
486 (see
487 .Sx PROGRAMS
488 above)
489 .It Cm version
490 Toggle version in status bar
491 .It Cm float_toggle
492 Toggle focused window between tiled and floating
493 .It Cm lock
494 Lock screen
495 (see
496 .Sx PROGRAMS
497 above)
498 .It Cm initscr
499 Reinitialize physical screens
500 (see
501 .Sx PROGRAMS
502 above)
503 .It Cm iconify
504 Minimize (unmap) currently focused window.
505 .It Cm uniconify
506 Maximize (map) window returned by dmenu selection.
507 .It Cm always_raise
508 When set tiled windows are allowed to obscure floating windows.
509 .El
510 .Pp
511 Custom bindings in the configuration file are specified as follows:
512 .Pp
513 .Dl bind[<action>] = <keys>
514 .Pp
515 .Aq action
516 is one of the actions listed above (or empty) and
517 .Aq keys
518 is in the form of zero or more modifier keys
519 (MOD, Mod1, Shift, etc.) and one or more normal keys
520 (b, space, etc.), separated by "+".
521 For example:
522 .Bd -literal -offset indent
523 bind[reset] = Mod4+q # bind Windows-key + q to reset
524 bind[] = Mod1+q # unbind Alt + q
525 .Ed
526 .Pp
527 Multiple key combinations may be bound to the same action.
528 .Sh QUIRKS
529 .Nm
530 provides "quirks" which handle windows that must be treated specially
531 in a tiling window manager, such as some dialogs and fullscreen apps.
532 .Pp
533 The default quirks are described below:
534 .Pp
535 .Bl -tag -width "OpenOffice.org N.M:VCLSalFrame<TAB>XXX" -offset indent -compact
536 .It Firefox\-bin:firefox\-bin
537 TRANSSZ
538 .It Firefox:Dialog
539 FLOAT
540 .It Gimp:gimp
541 FLOAT + ANYWHERE
542 .It MPlayer:xv
543 FLOAT + FULLSCREEN + FOCUSPREV
544 .It OpenOffice.org 2.4:VCLSalFrame
545 FLOAT
546 .It OpenOffice.org 3.1:VCLSalFrame
547 FLOAT
548 .It pcb:pcb
549 FLOAT
550 .It xine:Xine Window
551 FLOAT + ANYWHERE
552 .It xine:xine Panel
553 FLOAT + ANYWHERE
554 .It xine:xine Video Fullscreen Window
555 FULLSCREEN + FLOAT
556 .It Xitk:Xitk Combo
557 FLOAT + ANYWHERE
558 .It Xitk:Xine Window
559 FLOAT + ANYWHERE
560 .It XTerm:xterm
561 XTERM_FONTADJ
562 .El
563 .Pp
564 The quirks themselves are described below:
565 .Pp
566 .Bl -tag -width "XTERM_FONTADJ<TAB>XXX" -offset indent -compact
567 .It FLOAT
568 This window should not be tiled, but allowed to float freely.
569 .It TRANSSZ
570 Adjusts size on transient windows that are too small using dialog_ratio
571 (see
572 .Sx CONFIGURATION FILES ) .
573 .It ANYWHERE
574 Allow window to position itself, uncentered.
575 .It XTERM_FONTADJ
576 Adjust xterm fonts when resizing.
577 .It FULLSCREEN
578 Remove border to allow window to use full screen size.
579 .It FOCUSPREV
580 On exit force focus on previously focused application not previous application
581 in the stack.
582 .El
583 .Pp
584 Custom quirks in the configuration file are specified as follows:
585 .Pp
586 .Dl quirk[<class>:<name>] = <quirk> [ + <quirk> ... ]
587 .Pp
588 .Aq class
589 and
590 .Aq name
591 specify the window to which the quirk(s) apply, and
592 .Aq quirk
593 is one of the quirks from the list above.
594 For example:
595 .Bd -literal -offset indent
596 quirk[MPlayer:xv] = FLOAT + FULLSCREEN + FOCUSPREV
597 quirk[pcb:pcb] = NONE  # remove existing quirk
598 .Ed
599 .Pp
600 You can obtain
601 .Aq class
602 and
603 .Aq name
604 by running xprop(1) and then clicking on the desired window.
605 In the following example the main window of Firefox was clicked:
606 .Bd -literal -offset indent
607 $ xprop | grep WM_CLASS
608 WM_CLASS(STRING) = "Navigator", "Firefox"
609 .Ed
610 .Pp
611 Note that grepping for WM_CLASS flips class and name.
612 In the example above the quirk entry would be:
613 .Bd -literal -offset indent
614 quirk[Firefox:Navigator] = FLOAT
615 .Ed
616 .Pp
617 .Nm
618 also automatically assigns quirks to windows based on the value 
619 of the window's _NET_WM_WINDOW_TYPE property as follows:
620 .Pp
621 .Bl -tag -width "_NET_WM_WINDOW_TYPE_TOOLBAR<TAB>XXX" -offset indent -compact
622 .It _NET_WM_WINDOW_TYPE_DOCK
623 FLOAT + ANYWHERE
624 .It _NET_WM_WINDOW_TYPE_TOOLBAR
625 FLOAT + ANYWHERE
626 .It _NET_WM_WINDOW_TYPE_UTILITY
627 FLOAT + ANYWHERE
628 .It _NET_WM_WINDOW_TYPE_SPLASH
629 FLOAT
630 .It _NET_WM_WINDOW_TYPE_DIALOG
631 FLOAT
632 .El
633 .Pp
634 In all other cases, no automatic quirks are assigned to the window. 
635 Quirks specified in the configuration file override the automatic quirks.
636 .Sh EWMH
637 .Nm
638 partially implements the Extended Window Manager Hints (EWMH) specification. 
639 This enables controlling windows as well as
640 .Nm
641 itself from external scripts and programs. This is achieved by 
642 .Nm
643 responding to certain ClientMessage events. From the terminal these events 
644 can be conveniently sent using tools such as wmctrl and xdotool. For the 
645 actual format of these ClientMessage events, see the EWMH specification.
646 .Pp
647 The id of the currently focused window is stored in the _NET_ACTIVE_WINDOW 
648 property of the root window. This can be used for example to retrieve the 
649 title of the currently active window with xprop(1) and grep(1):
650 .Bd -literal -offset indent
651 $ WINDOWID=`xprop -root _NET_ACTIVE_WINDOW | grep -o "0x.*"`
652 $ xprop -id $WINDOWID WM_NAME | grep -o "\\".*\\""
653 .Ed
654 .Pp
655 A window can be focused by sending a _NET_ACTIVE_WINDOW client message 
656 to the root window. For example, using wmctrl to send the message 
657 (assuming 0x4a0000b is the id of the window to be focused):
658 .Bd -literal -offset indent
659 $ wmctrl -i -a 0x4a0000b
660 .Ed
661 .Pp
662 Windows can be closed by sending a _NET_CLOSE_WINDOW client message 
663 to the root window. For example, using wmctrl to send the message 
664 (assuming 0x4a0000b is the id of the window to be closed):
665 .Bd -literal -offset indent
666 $ wmctrl -i -c 0x4a0000b
667 .Ed
668 .Pp
669 Windows can be floated and un-floated by adding or removing the 
670 _NET_WM_STATE_ABOVE atom from the _NET_WM_STATE property of the window. 
671 This can be achieved by sending a _NET_WM_STATE client message to the 
672 root window. For example, the following toggles the floating state of 
673 a window using wmctrl to send the message (assuming 0x4a0000b is the 
674 id of the window floated or un-floated):
675 .Bd -literal -offset indent
676 $ wmctrl -i -r 0x4a0000b -b toggle,_NET_WM_STATE_ABOVE
677 .Ed
678 .Pp
679 Floating windows can also be resized and moved by sending a 
680 _NET_MOVERESIZE_WINDOW client message to the root window. For example, 
681 using wmctrl to send the message (assuming 0x4a0000b is the id of 
682 the window to be resize/moved):
683 .Bd -literal -offset indent
684 $ wmctrl -i -r 0x4a0000b -e 0,100,50,640,480
685 .Ed
686 .Pp
687 This moves the window to (100,50) and resizes it to 640x480.
688 .Pp
689 Any _NET_MOVERESIZE_WINDOW events received for stacked windows are ignored.
690 .Pp
691 .Sh SIGNALS
692 Sending
693 .Nm
694 a HUP signal will restart it.
695 .Sh FILES
696 .Bl -tag -width "/etc/scrotwm.confXXX" -compact
697 .It Pa ~/.scrotwm.conf
698 .Nm
699 user specific settings.
700 .It Pa /etc/scrotwm.conf
701 .Nm
702 global settings.
703 .El
704 .Sh HISTORY
705 .Nm
706 was inspired by xmonad & dwm.
707 .Sh AUTHORS
708 .An -nosplit
709 .Nm
710 was written by:
711 .Pp
712 .Bl -tag -width "Ryan Thomas McBride Aq mcbride@countersiege.com " -offset indent -compact
713 .It Cm Marco Peereboom Aq marco@peereboom.us
714 .It Cm Ryan Thomas McBride Aq mcbride@countersiege.com
715 .It Cm Darrin Chandler Aq dwchandler@stilyagin.com
716 .It Cm Pierre-Yves Ritschard Aq pyr@spootnik.org
717 .It Cm Tuukka Kataja Aq stuge@xor.fi
718 .It Cm Jason L. Wright Aq jason@thought.net
719 .El
720 .Sh BUGS
721 Currently the menu, invoked with
722 .Cm M-p ,
723 depends on dmenu.