Cwm (window manager)

{{Short description|Stacking window manager}}

{{lowercase title}}

{{use dmy dates|date=October 2018}}

{{infobox software

| name = OpenBSD

| title = cwm

| logo =

| screenshot = Cwm (window manager).png

| caption = cwm running on OpenBSD

| collapsible =

| author = Marius Aamodt Eriksen

| developer = Marius Aamodt Eriksen, Andy Adamson, Niels Provos, Martin Murray, Dimitris Economou, Antti Nykänen

| released = {{Start date and age|2004|07|10|df=yes}}

| latest release version = {{wikidata|property|preferred|references|edit|Q5197178|P348|P548=Q2804309}}

| latest release date = {{wikidata|qualifier|preferred|single|Q5197178|P348|P548=Q2804309|P577}}

| latest preview version = {{wikidata|property|preferred|references|edit|Q5197178|P348|P548=Q51930650}}

| latest preview date = {{wikidata|qualifier|preferred|single|Q5197178|P348|P548=Q51930650|P577}}

| programming language = C

| operating system = Unix-like

| platform =

| size =

| language =

| genre = Window manager

| license = ISC License

}}

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

History

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

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

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

Description

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

cwm includes several menus:

  • 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.

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

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

Reception

cwm is generally well received in software minimalist communities.

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

See also

{{Portal|Free and open-source software}}

References

{{Reflist|30em|refs=

{{citation

|title = xenocara/app/cwm/calmwm.c

|url = https://cvsweb.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/calmwm.c?rev=1.1.1.1&content-type=text/x-cvsweb-markup

|work = OpenBSD CVS

|publisher = OpenBSD

|date = 2007-04-27

|access-date = 2017-04-30

}}

{{citation

|title = The X Window System

|url = http://openbsd.org/faq/faq11.html#Intro

|work = OpenBSD Frequently Asked Questions

|publisher = OpenBSD

|access-date = 2016-05-07

}}

{{citation

|url = http://www.osnews.com/story/25359/Introduction_calm_window_manager

|title = Introduction: calm window manager

|first = Dmitrij D.

|last = Czarkoff

|work = OSNews

|date = 2011-11-22

|access-date = 2011-11-23

}}

{{citation

|url=http://monkey.org/~marius/pages/?page=cwm

|title=Old home page

|first=Marius Aamodt

|last=Eriksen

|access-date=2011-11-16

|url-status=dead

|archive-url=https://web.archive.org/web/20111118065946/http://monkey.org/~marius/pages/?page=cwm

|archive-date=2011-11-18

}}

{{citation

|url = http://man.openbsd.org/OpenBSD-5.9/man1/cwm.1

|title = cwm — a lightweight and efficient window manager for X11

|work = OpenBSD manual pages

|publisher = The OpenBSD project

|access-date = 2011-11-16

|quote = The from-scratch rewrite borrowed some code from 9wm, however that code has since been removed or rewritten.

}}

{{citation

|url = http://www.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/LICENSE

|archive-url = https://archive.today/20121220222016/http://www.openbsd.org/cgi-bin/cvsweb/xenocara/app/cwm/LICENSE

|url-status = dead

|archive-date = 20 December 2012

|title = OpenBSD CVS log

|publisher = The OpenBSD CVS

|access-date = 2011-11-16

}}

{{citation

|url = https://www.openbsd.org/42.html

|title = OpenBSD 4.2

|work = OpenBSD

|date = 2007-11-01

|access-date = 2017-04-30

}}

{{citation

|url = https://github.com/chneukirchen/cwm

|title = portable version of OpenBSD's cwm(1) window manager

|publisher = GitHub

|first = Leah

|last = Neukirchen

|access-date = 2011-11-16

}}

{{citation

|url = http://undeadly.org/cgi?action=article&sid=20070712103624

|title = cwm in Xenocara

|first = Jasper Lievisse

|last = Adriaanse

|publisher = OpenBSD Journal

|date = 2007-07-11

|access-date = 2011-10-05

}}

{{citation

|url = http://niallohiggins.com/2007/07/09/keyboard-only-x-cwm-hacks-and-vimperator/

|title = Keyboard-only X, cwm hacks and Vimperator

|first = Niall

|last = O'Higgins

|date = 2007-07-09

|access-date = 2011-11-16

}}

{{citation

|url = http://undeadly.org/cgi?action=article&sid=20090502141551

|title = Getting started with cwm

|first = Rodolfo

|last = Gouveia

|publisher = OpenBSD Journal

|date = 2009-05-02

|access-date = 2011-10-05

}}

{{citation

|url = http://niallohiggins.com/2007/06/19/typing-window-managers-and-sore-hands/

|title = Typing, window managers and sore hands

|first = Niall

|last = O'Higgins

|date = 2007-06-19

|access-date = 2011-10-05

}}

{{citation

|url = http://skinwalker.wordpress.com/2011/09/13/openbsd-eeepc/

|title = OpenBSD – EEEPC

|author = Skinwalker

|date = 2011-09-13

|access-date = 2011-11-16

}}

{{citation

|url = http://kmandla.wordpress.com/2010/06/18/short-and-sweet-cwm/

|title = Short and sweet: cwm

|first = K.

|last = Mandla

|date = 2010-06-18

|access-date = 2011-11-16

}}

{{citation

|url = http://vinci.wordpress.com/2008/05/03/virtualized-servers-openbsd/

|title = Virtualized servers & OpenBSD

|first = Thilo

|last = Pfennigs

|date = 2008-05-03

|access-date = 2011-11-16

|archive-date = 15 October 2014

|archive-url = https://web.archive.org/web/20141015070142/http://vinci.wordpress.com/2008/05/03/virtualized-servers-openbsd/

|url-status = dead

}}

{{citation

|url = http://blather.michaelwlucas.com/archives/873

|title = my .cwmrc

|first = Michael W.

|last = Lucas

|date = 2011-05-31

|access-date = 2011-11-16

}}

}}