CWM(1)

πŸ“¦
version 7.9 Β· 3 versions
, in alpine 3.24, epel 10, epel 9, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable

πŸ’– CWM(1) πŸ’–

General Commands Manual Β· the cwm page Β· yes bestie, this is the window manager one


✨ NAME ✨

cwm β€” a lightweight and efficient window manager for X11 πŸ¦‹


✨ SYNOPSIS ✨

cwm [-nv] [-c file] [-d display]

✨ DESCRIPTION ✨

okay so cwm is a window manager for X11 and she is that girl πŸ’…. She's packed with features that are all about the efficiency and transparency of window management, while keeping the absolute simplest and most pleasant aesthetic. Like, no clutter, no drama, just vibes 🌸.

The options are as follows, bestie:

  • -c file β€” pick an alternative configuration file. By default cwm loads ~/.cwmrc, if present. Any error messages from lines in the configuration file get sent to stderr; but cwm will keep processing the rest of the configuration file anyway (she's forgiving like that 🫢).
  • -d display β€” specify the display to use.
  • -n β€” Configtest mode. Only checks the configuration file for validity. no notes, just a vibe check βœ….
  • -v β€” Verbose mode. Multiple -v options increase the verbosity. the way that stacks... πŸ’€

πŸŽ€ The Notations (memorize these, iykyk)

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

these are iconic, periodt:

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.
M-grave         Cycle through currently visible windows of the
                same window class.
MS-grave        Reverse cycle through currently visible windows of
                the same window class.
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

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:

[Return]              Select item.
[Down], C-s or M-j    Next item.
[Up], C-r or M-k      Previous item.
[Backspace] or C-h    Backspace.
C-u                   Clear input.
C-a                   List all available items.
[Esc]                 Cancel.

🌈 The Reload Glow-Up

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. literally a rebirth moment ✨


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. And she keeps a history of the 5 previous titles of a window. memory queen πŸ‘‘

When searching, the leftmost character of the result list may show a flag:

  • ! β€” Window is currently focused.
  • & β€” Window is hidden.

πŸ“ APPLICATIONS πŸ“

cwm manages a list of applications defined with the command configuration option.


🫢 GROUPS 🫢

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. it's giving organized πŸ’œ

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. color-coded communication, we love to see it 🌈


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.

🌸 ENVIRONMENT 🌸

  • DISPLAY β€” cwm starts on this display unless the -d option is given.

⭐ FILES ⭐

  • ~/.cwmrc β€” Default cwm configuration file.

πŸ’– SEE ALSO πŸ’–

cwmrc(5)


πŸ“œ HISTORY πŸ“œ

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. a true glow-up arc 😭

cwm first appeared in OpenBSD 4.2.


πŸ‘‘ AUTHORS πŸ‘‘

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. legends only, no cap πŸ’…


and that's the whole page bestie!! now go bind some keys and slay πŸ¦‹

Debian Β· $Mdocdate$ Β· CWM(1) β€” ok love u bye πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from