cwmrc(5) calm window manager configuration file

DESCRIPTION

This manual page describes the openbsd-cwm1 configuration file.

The current line can be extended over multiple lines using a backslash (`\' ) Comments can be put anywhere in the file using a hash mark (`#' ) and extend to the end of the current line. Care should be taken when commenting out multi-line text: the comment is effective until the end of the entire block.

Arguments containing whitespace should be surrounded by double quotes ()

The following options are accepted:

autogroup group windowclass
autogroup group windowname,windowclass
Automatically add new windows to group if their class property matches windowclass or if their name and class properties match windowname and windowclass respectively. The more specific last match wins. group is a number between 0 and 9. If group is 0, matching windows will not be added to any group; this may be used to override ``sticky group mode''

The name and class values, respectively, for existing windows are both set in the WM_CLASS property and may be obtained using xprop(1).

bind keys command
Cause the creation of a key binding, or replacement of a default key binding. The modifier keys come first, followed by a `-'

The following modifiers are recognised:

C
The Control key.
M
The Meta key.
S
The Shift key.
4
The Mod4 key (normally the windows key).

The `-' should be followed by a keysym name, taken from /usr/X11R6/include/X11/keysymdef.h The command may either be one from the Sx BIND COMMAND LIST (see below) or the command line that is to be executed.

A special command keyword ``unmap'' can be used to remove the named key binding. This can be used to remove a binding which conflicts with an application.

borderwidth pixels
Set the window border width to pixels

color activeborder color
Set the color of the active border.

color font color
Set menu font color.

color selfont color
Set font color for selected menu item.

color groupborder color
Set the color of the border while grouping a window.

color inactiveborder color
Set the color of the inactive border.

color menubg color
Set menu background color.

color menufg color
Set menu foreground color.

color urgencyborder color
Set the color of the border of a window indicating urgency.

color ungroupborder color
Set the color of the border while ungrouping a window.

command name path
Every name entry is shown in the application menu. When selected, the defined path is executed with execve(2).

The name entries term and lock have a special meaning. They point to the terminal and screen locking programs specified by key bindings. The defaults are xterm(1) and xlock(1), respectively.

fontname font
Change the default font for Xft(3).

gap top bottom left right
Define a ``gap'' in pixels at the edge of the screen, so that when a window is maximized it will not overlap this area. This ``gap'' can be used for applications such as xclock(1), where the user may wish to remain visible.

ignore windowname
Ignore, and do not warp to, windows with the name windowname when drawing borders and cycling through windows.

mousebind buttons command
Cause the creation of a mouse binding, or replacement of a default mouse binding. The modifier keys come first, followed by a `-'

The following modifiers are recognised:

C
The Control key.
M
The Meta key.
S
The Shift key.
4
The Mod4 key (normally the windows key).

The `-' should be followed by number:

1
Left mouse button.
2
Middle mouse button.
3
Right mouse button.
4
Scroll up mouse button.
5
Scroll down mouse button.

The command may be taken from the Sx MOUSEBIND COMMAND LIST (see below).

moveamount pixels
Set a default size for the keyboard movement bindings, in pixels. The default is 1.

snapdist pixels
Minimum distance to snap-to adjacent edge, in pixels. The default is 0.

sticky yes | no
Toggle sticky group mode. The default behavior for new windows is to not assign any group. By enabling sticky group mode, openbsd-cwm1 will assign new windows to the currently selected group.

EXAMPLE CONFIGURATION

# Set default Xft(3) font
fontname "sans-serif:pixelsize=14:bold"
# Turn on sticky-group mode
sticky yes
# Any entry here is shown in the application menu
command firefox         firefox
command xmms            xmms
command top             "xterm -e top"
# Autogroup definitions
autogroup 3 "aterm,XTerm"
autogroup 3 "xterm,XTerm"
# Ignore programs by that name by not drawing borders around them.
ignore XMMS
ignore xwi
ignore xapm
ignore xclock
# Key bindings
bind CM-r       label
bind CS-Return  "xterm -e top"
bind 4-o        unmap
bind CM-equal   unmap
bind CMS-equal  unmap
bind C4-equal   vmaximize
bind C4S-equal  hmaximize
bind M-1        grouponly1
bind M-2        grouponly2
bind M-3        grouponly3
bind MS-1       movetogroup1
bind MS-2       movetogroup2
bind MS-3       movetogroup3
# Mouse bindings
mousebind M-2   window_lower
mousebind M-3   window_resize

BIND COMMAND LIST

restart
Restart the running openbsd-cwm1.
quit
Quit openbsd-cwm1.
terminal
Spawn a new terminal.
lock
Lock the screen.
search
Launch window search menu.
menusearch
Launch application search menu.
exec
Launch ``exec program'' menu.
exec_wm
Launch ``exec WindowManager'' menu.
ssh
Launch ``ssh'' menu.
group[n]
Select group n, where n is 1-9.
grouponly[n]
Like group[n] but also hides the other groups.
nogroup
Select all groups.
grouptoggle
Toggle group membership of current window.
movetogroup[n]
Hide current window from display and move to group n, where n is 1-9.
cyclegroup
Forward cycle through groups.
rcyclegroup
Reverse cycle through groups.
cycle
Forward cycle through windows.
rcycle
Reverse cycle through windows.
cycleingroup
Forward cycle through windows in current group.
rcycleingroup
Reverse cycle through windows in current group.
delete
Delete current window.
hide
Hide current window.
lower
Lower current window.
raise
Raise current window.
label
Label current window.
freeze
Freeze current window geometry.
fullscreen
Full-screen current window (gap + border removed).
maximize
Maximize current window (gap + border honored).
vmaximize
Vertically maximize current window (gap + border honored).
hmaximize
Horizontally maximize current window (gap + border honored).
moveup
Move window moveamount pixels up.
movedown
Move window moveamount pixels down.
moveright
Move window moveamount pixels right.
moveleft
Move window moveamount pixels left.
bigmoveup
Move window 10 times moveamount pixels up.
bigmovedown
Move window 10 times moveamount pixels down.
bigmoveright
Move window 10 times moveamount pixels right.
bigmoveleft
Move window 10 times moveamount pixels left.
resizeup
Resize window moveamount pixels up.
resizedown
Resize window moveamount pixels down.
resizeright
Resize window moveamount pixels right.
resizeleft
Resize window moveamount pixels left.
bigresizeup
Resize window 10 times moveamount pixels up.
bigresizedown
Resize window 10 times moveamount pixels down.
bigresizeright
Resize window 10 times moveamount pixels right.
bigresizeleft
Resize window 10 times moveamount pixels left.
ptrmoveup
Move pointer moveamount pixels up.
ptrmovedown
Move pointer moveamount pixels down.
ptrmoveright
Move pointer moveamount pixels right.
ptrmoveleft
Move pointer moveamount pixels left.
bigptrmoveup
Move pointer 10 times moveamount pixels up.
bigptrmovedown
Move pointer 10 times moveamount pixels down.
bigptrmoveright
Move pointer 10 times moveamount pixels right.
bigptrmoveleft
Move pointer 10 times moveamount pixels left.
htile
Current window is placed at the top of the screen and maximized horizontally, other windows in its group share remaining screen space.
vtile
Current window is placed on the left of the screen and maximized vertically, other windows in its group share remaining screen space.

MOUSEBIND COMMAND LIST

window_move
Move current window.
window_resize
Resize current window.
window_lower
Lower current window.
window_raise
Raise current window.
window_hide
Hide current window.
window_grouptoggle
Toggle group membership of current window.
cyclegroup
Forward cycle through groups.
rcyclegroup
Reverse cycle through groups.
menu_group
Launch group list.
menu_unhide
Launch hidden window list.
menu_cmd
Launch command list.

FILES

~/.cwmrc
default openbsd-cwm1 configuration file

HISTORY

The file format first appeared in Ox 4.4 .