9wm

9wm
Developer(s) David Hogan (dhog)
Initial release 1994 (1994)
Stable release
1.3.7 / August 4, 2016 (2016-08-04)[1]
Repository Edit this at Wikidata
Written in C
Operating system Unix-like
Type Window manager
License MIT License
Website unauthorised.org/dhog/9wm.html

9wm is an open source stacking window manager for X11, written by David Hogan (dhog) in 1994 to emulate the Plan 9 Second Edition window manager, . Many later minimalist window managers for X were either inspired by, or directly derived from, 9wm. 9wm takes only 0.4 MB in RAM.[2]

The README file in the 9wm source distribution describes it like so:

9wm is an X window manager which attempts to emulate the Plan 9 window manager 8½ as far as possible within the constraints imposed by X. It provides a simple yet comfortable user interface, without garish decorations or title-bars. Or icons. And it's click-to-type.

9wm has an undocumented -nostalgia option, for a Blit cursor, which John Mackin insisted on.

Features

  • Written in C using the Xlib toolkit. No other dependencies.
  • A right click on the root window gives a menu that provides window operations (Move, Resize, Delete, Hide), a list of hidden windows which may be unhidden by selecting from the menu, and a command to launch a terminal emulator, typically 9term. There are no keyboard controls.
  • Window borders originally did nothing but indicate focus—draggable borders for move and resize were eventually added to rio in Plan 9 from Bell Labs and Plan 9 from User Space
  • Has a limit of 32 hidden windows.
  • New windows are drawn by prompting the user to "sweep out" a screen rectangle for the window, which may be considered focus stealing if an application unexpectedly requests a new window.
  • A right click on the desktop gives a context menu that provides window motion and the facility to launch a terminal emulator.
  • No menubar
  • No titlebars
  • No multiple desktops
  • No maximize facility
  • No desktop shortcuts
  • No desktop wallpaper
  • No theme support
  • No XKeys support
  • A three button mouse is required
  • Uses a click to focus model
  • No additional task switching facility
  • Applications are launched via a terminal only
  • Supports focus stealing by failing the launch test, giving focus to window placement facility
  • Not accessibility friendly - utilizes middle click, and right click functionality and has no keyboard equivalents for some operations

Resizing windows

Window geometry is described by "sweeping out" a rectangle on the screen. To sweep, click and hold the right button at one corner of the desired rectangle, move the mouse to the diagonally opposite corner, and release the button. Placing new windows and resizing existing windows are done by sweep operations.

9wm derivatives and 9wm-inspired window managers

References

  1. https://github.com/nealey/9wm/releases
  2. "A Memory Comparison of Light Linux Desktops | l3net a layer 3 networking blog". l3net.wordpress.com. Retrieved 2016-09-28.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.