garbeam@34:
garbeam@34:
garbeam@34: dwm - dynamic window manager
garbeam@34:
garbeam@34:
garbeam@34:
garbeam@34:
garbeam@34:
garbeam@34:
garbeam@34:
garbeam@35:
arg@118: dynamic window manager
garbeam@36:
arg@118: Description
garbeam@34:
garbeam@34: dwm is a dynamic window manager for X11.
garbeam@34:
garbeam@90: Philosophy
garbeam@47:
garbeam@47: As founder and main developer of wmii I came to the conclusion that
garbeam@47: wmii is too clunky for my needs. I don't need so many funky features
garbeam@47: and all this hype about remote control through a 9P service, I only
garbeam@47: want to manage my windows in a simple, but dynamic way. wmii never got
garbeam@47: finished because I listened to users, who proposed arbitrary ideas I
garbeam@88: considered useful. This resulted in an extreme CADT development model,
garbeam@88: which was a mistake. Thus the philosophy of dwm is simply to fit my
garbeam@88: needs (maybe yours as well). That's it.
garbeam@47:
garbeam@90: Differences to ion, larswm, and wmii
garbeam@34:
garbeam@88: In contrast to ion, larswm, and wmii, dwm is much smaller, faster and simpler.
garbeam@34:
garbeam@34:
garbeam@36: -
garbeam@88: dwm has no Lua integration, no 9P support, no menu, no editable
garbeam@88: tagbars, no shell-based configuration, no remote control, and comes
garbeam@88: without any additional tools like printing the selection or warping
garbeam@88: the mouse.
garbeam@36:
garbeam@36: -
garbeam@36: dwm is only a single binary, it's source code is intended to never
garbeam@36: exceed 2000 SLOC.
garbeam@36:
garbeam@36: -
garbeam@88: dwm is based on tagging and dynamic window management (however
garbeam@88: simpler than ion, wmii or larswm). It manages windows in
garbeam@88: tiling and floating modes. Either mode can be applied dynamically,
garbeam@88: depending on the application in use and the task performed.
garbeam@36:
garbeam@36: -
garbeam@36: dwm don't distinguishes between layers, there is no floating or
garbeam@88: tiled layer. Wether the clients of currently selected tag are in
garbeam@88: tiled mode or not, you can re-arrange all clients on the fly.
garbeam@88: Popup- and fixed-size windows are treated floating, however.
garbeam@88:
garbeam@88: -
garbeam@88: dwm is customized through editing its source code, that makes it
garbeam@88: extremely fast and secure - it does not process any input data
garbeam@88: which hasn't been known at compile time, except window title names
garbeam@88: and status text read from standard input. You don't have to learn
garbeam@88: Lua/sh/ruby or some weird configuration file format (like X
garbeam@88: resource files), beside C to customize it for your needs,
garbeam@88: you only have to learn C.
garbeam@88:
garbeam@88: -
garbeam@88: Because dwm is customized through editing its source code, it's
garbeam@88: pointless to make binary packages of it. This keeps its userbase
garbeam@88: small and elitist. No novices asking stupid questions.
garbeam@36:
garbeam@36: -
garbeam@36: dwm uses 1-pixel borders to provide the maximum of screen real
garbeam@88: estate to clients. Small titlebars are only drawn in front of
garbeam@88: unfocused clients.
garbeam@36:
garbeam@36: -
garbeam@88: dwm reads from standard input to print arbitrary status text (like
garbeam@88: the date, load, battery charge). That's much simpler than
garbeam@88: larsremote, wmiir and what not...
garbeam@58:
garbeam@58: -
garbeam@90: It can be downloaded and distributed under the conditions
garbeam@96: of the MIT/X Consortium license.
garbeam@36:
garbeam@34:
garbeam@90: Links
garbeam@89:
arg@118: Development
garbeam@34:
garbeam@96: dwm is actively developed in parallel to wmii. You can browse its source code repository or get a copy using Mercurial with following command:
garbeam@34:
garbeam@34:
garbeam@96: hg clone http://10kloc.org/cgi-bin/hgwebdir.cgi/dwm
garbeam@34:
arg@118: Download
garbeam@68:
arg@108: - dwm 0.3 (13kb) (20060719)
garbeam@68:
arg@118: Miscellaneous
garbeam@58:
garbeam@58: You can purchase this tricot
garbeam@78: if you like dwm and the dwm logo, which has been designed by Anselm.
garbeam@58:
arg@108: --Anselm (20060719)
garbeam@34:
garbeam@34: