Software:cwm (window manager)

From HandWiki
Revision as of 13:52, 9 February 2024 by WikiGary (talk | contribs) (fix)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

cwm
Cwm (window manager).png
cwm running on OpenBSD
Original author(s)Marius Aamodt Eriksen
Developer(s)Marius Aamodt Eriksen, Andy Adamson, Niels Provos, Martin Murray, Dimitris Economou, Antti Nykänen
Initial release10 July 2004; 19 years ago (2004-07-10)
Stable release7.4 (16 October 2023; 7 months ago (2023-10-16)) [±]
Written inC
Operating systemUnix-like
TypeWindow manager
LicenseISC License

cwm (Calm Window Manager)[1] is a stacking window manager for the X Window System. While it is primarily developed as a part of OpenBSD's base system,[2] portable versions are available on other Unix-like operating systems.

History

Development of cwm started from patches to evilwm by Marius Aamodt Eriksen.[3] To ease the implementation of new features, cwm was eventually rewritten using some code from 9wm.[4] The last release by the original author came out in August 2005.[3]

In April 2007, cwm was imported into OpenBSD source tree.[5] By January 2008, a substantial part of the original source code, including all of the 9wm code, was rewritten.[6]

cwm has been distributed with OpenBSD since version 4.2, where it replaced wm2.[7] A third-party Linux port also exists.[8]

Description

cwm is a stacking window manager oriented towards heavy keyboard usage,[9][10] small footprint and ease of use. While it lacks explicit virtual desktops functionality, it can be emulated by using the window groups mechanism.[11] cwm does not draw window decorations except for a border around windows.

cwm includes several menus:[10]

  • exec menu (launch an application)
  • window menu (search for a running application)
  • ssh to menu (start a Secure Shell session)
  • exec wm menu (switch to a different window manager)

All these menus operate in a "search as you type" manner.[10]

cwm allows raising, hiding, switching between, and searching for windows using just the keyboard, making it suitable to use as terminal emulator multiplexer.[12] Furthermore, it allows manipulating pointing devices, such as mice, with the keyboard.[1]

Additional key bindings and configuration options can be specified in the configuration file ~/.cwmrc.

Reception

cwm is generally well received in software minimalist communities.[10]

cwm is noted to be used mainly due to its status as one of the default window managers in OpenBSD,[13] though other reasons are sometimes cited.[14][15] cwm is also praised for its flexibility, ease of use, and the fact that it can be used without a mouse.[12][16]

See also

References

  1. 1.0 1.1 Czarkoff, Dmitrij D. (2011-11-22), "Introduction: calm window manager", OSNews, http://www.osnews.com/story/25359/Introduction_calm_window_manager, retrieved 2011-11-23 
  2. "The X Window System", OpenBSD Frequently Asked Questions (OpenBSD), http://openbsd.org/faq/faq11.html#Intro, retrieved 2016-05-07 
  3. 3.0 3.1 Eriksen, Marius Aamodt, Old home page, http://monkey.org/~marius/pages/?page=cwm, retrieved 2011-11-16 
  4. "cwm — a lightweight and efficient window manager for X11", OpenBSD manual pages (The OpenBSD project), http://man.openbsd.org/OpenBSD-5.9/man1/cwm.1, retrieved 2011-11-16, "The from-scratch rewrite borrowed some code from 9wm, however that code has since been removed or rewritten." 
  5. "xenocara/app/cwm/calmwm.c", OpenBSD CVS (OpenBSD), 2007-04-27, https://cvsweb.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/calmwm.c?rev=1.1.1.1&content-type=text/x-cvsweb-markup, retrieved 2017-04-30 
  6. OpenBSD CVS log, The OpenBSD CVS, http://www.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/LICENSE, retrieved 2011-11-16 
  7. "OpenBSD 4.2", OpenBSD, 2007-11-01, https://www.openbsd.org/42.html, retrieved 2017-04-30 
  8. Neukirchen, Leah, portable version of OpenBSD's cwm(1) window manager, GitHub, https://github.com/chneukirchen/cwm, retrieved 2011-11-16 
  9. Adriaanse, Jasper Lievisse (2007-07-11), cwm in Xenocara, OpenBSD Journal, http://undeadly.org/cgi?action=article&sid=20070712103624, retrieved 2011-10-05 
  10. 10.0 10.1 10.2 10.3 O'Higgins, Niall (2007-07-09), Keyboard-only X, cwm hacks and Vimperator, http://niallohiggins.com/2007/07/09/keyboard-only-x-cwm-hacks-and-vimperator/, retrieved 2011-11-16 
  11. Gouveia, Rodolfo (2009-05-02), Getting started with cwm, OpenBSD Journal, http://undeadly.org/cgi?action=article&sid=20090502141551, retrieved 2011-10-05 
  12. 12.0 12.1 O'Higgins, Niall (2007-06-19), Typing, window managers and sore hands, http://niallohiggins.com/2007/06/19/typing-window-managers-and-sore-hands/, retrieved 2011-10-05 
  13. Skinwalker (2011-09-13), OpenBSD – EEEPC, http://skinwalker.wordpress.com/2011/09/13/openbsd-eeepc/, retrieved 2011-11-16 
  14. Mandla, K. (2010-06-18), Short and sweet: cwm, http://kmandla.wordpress.com/2010/06/18/short-and-sweet-cwm/, retrieved 2011-11-16 
  15. Pfennigs, Thilo (2008-05-03), Virtualized servers & OpenBSD, http://vinci.wordpress.com/2008/05/03/virtualized-servers-openbsd/, retrieved 2011-11-16 
  16. Lucas, Michael W. (2011-05-31), my .cwmrc, http://blather.michaelwlucas.com/archives/873, retrieved 2011-11-16 

External links