Original author(s) | Anselm R. Garbe |
---|---|
Developer(s) | suckless.org |
Initial release | July 14, 2006 |
Stable release |
6.1 / November 9, 2015
|
Repository | git |
Written in | C |
Operating system | Unix-like |
Size | 20 KB (source code) |
Type | Window manager |
License | MIT License |
Website | dwm |
dwm is a dynamic, minimalist tiling window manager for the X Window System that has influenced the development of several other X window managers, including xmonad and awesome. It is externally similar to wmii, but internally much simpler. dwm is written purely in C for performance and security in addition to simplicity, and lacks any configuration interface besides editing the source code. One of the project's guidelines is that the source code will never exceed 2000 lines, and options meant to be user-configurable are all contained in a single header file.
dwm supports multiple workspaces and, unlike ratpoison, allows moving and resizing windows with the mouse. Older versions of dwm displayed their stdin in a status bar, along the edge of the screen. Recent versions instead display the root window's name, which can be set by independent processes. This is often used to show information that would appear in the notification area of other desktop environments—a clock, system load info, laptop battery and network status, music player information and the like. This status line is often complemented with dmenu, a textual application launcher from the same developer as dwm. dwm uses a focus-follows-mouse model and lacks any window decoration other than a border to show focus.
dmenu is a keyboard-driven menu utility developed as part of the dwm project. When invoked, usually by a user-configured key combination, dmenu displays a horizontal menu of its stdin stream at the top edge of the screen. This is usually used to pipe in a list of executable names from the user's $PATH, but dmenu can be used for any purpose where a menu is required. The user can start typing a program name, and dmenu will narrow the list to show only substring matches for what the user typed. The user can also use the arrow keys to navigate the menu. When a choice is made, dmenu sends the selected text to stdout, which is usually piped into a shell to launch the program. Command-line options can alter the font and colors of the menu, make the search case-insensitive, as well as switch the menu to a vertical orientation or place it at the bottom of the screen. By default, only X Font Server fonts are supported although a patch exists to enable TrueType fonts using Xft.