cwm
—
a lightweight and efficient window manager for X11
cwm |
[-nv ] [-c
file] [-d
display] |
cwm
is a window manager for X11 which contains many
features that concentrate on the efficiency and transparency of window
management, while maintaining the simplest and most pleasant aesthetic.
The options are as follows:
-c
file
- Specify an alternative configuration file. By default,
cwm
loads ~/.cwmrc, if
present. Any error messages from lines in the configuration file will be
sent to stderr; however, cwm
will continue to process the rest of the configuration file.
-d
display
- Specify the display to use.
-n
- Configtest mode. Only check the configuration file for validity.
-v
- Verbose mode. Multiple
-v
options increase the
verbosity.
cwm
actions are initiated either via key
or mouse bindings. The following notations are used throughout this
page:
C
- Control key.
M
- Meta key.
S
- Shift key.
4
- Mod4 (windows) key.
M1
- Left mouse button.
M2
- Middle mouse button.
M3
- Right mouse button.
The default key bindings are:
CM-Return
- Spawn a new terminal.
CM-Delete
- Lock the screen.
M-Return
- Hide current window.
M-Down
- Lower current window.
M-Up
- Raise current window.
M-slash
- Search for windows.
C-slash
- Search for applications.
CM-n
- Label current window.
M-Tab
- Cycle through currently visible windows.
MS-Tab
- Reverse cycle through currently visible windows.
CM-x
- Close current window.
CM-[n]
- Toggle visibility of group n, where n is 1-9.
CM-a
- Toggle visibility of all groups.
CM-g
- Toggle group membership of current window.
M-Right
- Cycle through active groups.
M-Left
- Reverse cycle through active groups.
CMS-f
- Toggle freezing geometry of current window.
CM-s
- Toggle stickiness of current window.
CM-f
- Toggle full-screen mode of current window.
CM-m
- Toggle maximization of current window.
CM-equal
- Toggle vertical maximization of current window.
CMS-equal
- Toggle horizontal maximization of current window.
M-[hjkl]
- Move window by a small amount.
MS-[hjkl]
- Move window by a large amount; see
cwmrc(5).
CM-[hjkl]
- Resize window by a small amount.
CMS-[hjkl]
- Resize window by a large amount; see
cwmrc(5).
M-question
- Spawn “exec program” dialog.
M-period
- Spawn “ssh to” dialog. This parses
$HOME/.ssh/known_hosts to provide host
auto-completion.
ssh(1)
will be executed via the configured terminal emulator.
CM-w
- Spawn “exec WindowManager” menu, allowing a switch to
another window manager.
CMS-r
- Restart.
CMS-q
- Quit.
The default mouse bindings are:
M-M1
- Move current window.
CM-M1
- Toggle group membership of current window.
M-M2
- Resize current window
M-M3
- Lower current window.
CMS-M3
- Hide current window.
The following key bindings may be used to navigate search and exec
dialogs:
cwm
rereads its configuration file when it
receives a hangup signal, SIGHUP
, by executing
itself with the name and arguments with which it was started. This is
equivalent to the restart function.
cwm
features the ability to search for windows by their
current title, old titles, and by their label. The priority for the search
results are: label, current title, old titles in reverse order, and finally
window class name. cwm
keeps a history of the 5
previous titles of a window.
When searching, the leftmost character of the result list may show
a flag:
- !
- Window is currently focused.
- &
- Window is hidden.
cwm
manages a list of applications defined with the
command
configuration option.
cwm
has the ability to group windows together, and use
the groups to perform operations on the entire group instead of just one
window. Together with the sticky option, this can be
used to emulate virtual desktops.
To edit groups, use the group selection commands to toggle
membership of a group. A blue border will be shown briefly on windows added
to the current group, and a red border will be shown on those just
removed.
Menus are recalled by clicking the mouse on the root window:
M1
- Show list of currently defined windows. Selecting an item will warp to
that window, unhiding it if necessary.
M2
- Show list of currently defined groups. Selecting an item will hide/unhide
that group.
M3
- Show list of applications as defined in the configuration file. Selecting
an item will spawn that application.
- DISPLAY
cwm
starts on this display unless the
-d
option is given.
- ~/.cwmrc
- Default
cwm
configuration file.
cwm
was originally inspired by evilwm, but was rewritten
from scratch due to limitations in the evilwm codebase. The from-scratch
rewrite borrowed some code from 9wm, however that code has since been removed
or rewritten.
cwm
first appeared in
OpenBSD 4.2.
cwm
was developed by Marius Aamodt
Eriksen ⟨marius@monkey.org⟩ with contributions from
Andy Adamson ⟨dros@monkey.org⟩,
Niels Provos ⟨provos@monkey.org⟩, and
Antti Nykänen ⟨aon@iki.fi⟩.
Ideas, discussion with many others.