dwm/dwm.html

4.7 KiB

<html> <head> </head>

dynamic window manager

Description

dwm is a dynamic window manager for X11.

Philosophy

As founder and main developer of wmii I came to the conclusion that wmii is too clunky for my needs. I don't need so many funky features and all this hype about remote control through a 9P service, I only want to manage my windows in a simple, but dynamic way. wmii never got finished because I listened to users, who proposed arbitrary ideas I considered useful. This resulted in an extreme CADT development model, which was a mistake. Thus the philosophy of dwm is simply to fit my needs (maybe yours as well). That's it.

Differences to ion, larswm, and wmii

In contrast to ion, larswm, and wmii, dwm is much smaller, faster and simpler.

  • dwm has no Lua integration, no 9P support, no menu, no editable tagbars, no shell-based configuration, no remote control, and comes without any additional tools like printing the selection or warping the mouse.
  • dwm is only a single binary, it's source code is intended to never exceed 2000 SLOC.
  • dwm is based on tagging and dynamic window management (however simpler than ion, wmii or larswm). It manages windows in tiling and floating modes. Either mode can be applied dynamically, depending on the application in use and the task performed.
  • dwm don't distinguishes between layers, there is no floating or tiled layer. Wether the clients of currently selected tag are in tiled mode or not, you can re-arrange all clients on the fly. Popup- and fixed-size windows are treated floating, however.
  • dwm is customized through editing its source code, that makes it extremely fast and secure - it does not process any input data which hasn't been known at compile time, except window title names and status text read from standard input. You don't have to learn Lua/sh/ruby or some weird configuration file format (like X resource files), beside C to customize it for your needs, you only have to learn C.
  • Because dwm is customized through editing its source code, it's pointless to make binary packages of it. This keeps its userbase small and elitist. No novices asking stupid questions.
  • dwm uses 1-pixel borders to provide the maximum of screen real estate to clients. Small titlebars are only drawn in front of unfocused clients.
  • dwm reads from standard input to print arbitrary status text (like the date, load, battery charge). That's much simpler than larsremote, wmiir and what not...
  • It can be downloaded and distributed under the conditions of the MIT/X Consortium license.

Links

Development

dwm is actively developed in parallel to wmii. You can browse its source code repository or get a copy using Mercurial with following command:

hg clone http://10kloc.org/cgi-bin/hgwebdir.cgi/dwm

Download

Miscellaneous

You can purchase this tricot if you like dwm and the dwm logo, which has been designed by Anselm.

--Anselm (20060714)

</html>