Development of cwm started from patches to evilwm by Marius Aamodt Eriksen.[4] To ease the implementation of new features, cwm was eventually rewritten using some code from 9wm.[5] The last release by the original author came out in August 2005.[4]
In April 2007, cwm was imported into the OpenBSD source tree.[6] By January 2008, a substantial part of the original source code, including all of the 9wm code, was rewritten.[7]
cwm has been distributed with OpenBSD since version 4.2, where it replaced wm2.[8] A third-party Linux port also exists.[9]
Description
cwm is a stacking window manager oriented towards heavy keyboard usage,[10][11] small footprint and ease of use. While it lacks explicit virtual desktops functionality, it can be emulated by using the window groups mechanism.[12] cwm does not draw window decorations except for a border around windows.
All these menus operate in a "search as you type" manner.[11]
cwm allows raising, hiding, switching between, and searching for windows using just the keyboard, making it suitable to use as terminal emulator multiplexer.[13] Furthermore, it allows manipulating pointing devices, such as mice, with the keyboard.[2]
Additional key bindings and configuration options can be specified in the configuration file ~/.cwmrc.
cwm is noted to be used mainly due to its status as one of the default window managers in OpenBSD,[14] though other reasons are sometimes cited.[15][16] cwm is also praised for its flexibility, ease of use, and the fact that it can be used without a mouse.[13][17]