To launch dwm, ideally you should setup a
~/.xinitrc with at least
Using dwm can be done in pure keyboard control or through some extra mouse handling. See the config.def.h for what are the default bindings. They are used in this tutorial.
[Shift]+[Alt]+[Enter] - launch terminal [Alt]+[p] - dmenu for running programs like the x-www-browser
By default there are 9 tags.
Launch a few terminals with
[Shift]+[Alt]+[Enter] and dwm will tile the
windows between the master and stack. A new terminal appears on the
master window. Existing windows are pushed upon a stack to the right of
[Alt]+[Enter] toggles windows between master and stack.
+------+----------------------------------+--------+ | tags | title | status | +------+---------------------+------------+--------+ | | | | | | | | | | | | | master | stack | | | | | | | | | | | | | +----------------------------+---------------------+
To move to another terminal, press
To move a terminal to another tag, hover to the terminal and press
[Shift]+[Alt]+. Note! If you are a frequent user of the text editor 'nano'
the key sequence [Shift]+[Alt]+ will stomp on nano's softwrap M-$. To get
around this you can unbind nano's M-$ in .nanorc thus:
unbind M-$ all
and rebind it to a new sequence thus (here bind it to 'Meta Key' + ';'):
bind M-; softwrap all
There are several other nano key sequences that dwm will stomp on - use the above example to fix nano up.
To focus on another tag, press
To change the amount of windows in the master area, press
[Alt]+[d] (Decrease) or
To toggle a window between the master and stack area, press
As stated in the dwm manpage, you can click tags with the left mouse button and simulating
[Alt]+[tag number], but you can also click another tag with the right mouse button in order to bring those windows additionally
into your current focus.
To kill a window, press
By default dwm is in tiled layout mode. Ensure it is tiled mode with:
You should also notice the
= symbol between the tag numbers and the title
dwm has two further layout modes, floating
[Alt]+[m]. Monocle is good for ensuring a window is kept
maximized and focused. This is useful in web kiosk environments and watching
flash videos. Further layout modes can be included through
Floating layout will be familiar to Windows users. Use
button] to resize the floating window and
[Alt]+[left mouse button] to move
it around. This can also be used to raise a floating window.
There are several ways to get specific windows into being managed as a floating
window, despite the tiled layout being activated. First there is
[Alt]+[Shift]+[space], which will toggle floating mode on the active window.
Second method is to simply resize the window using
[Alt]+[right mouse button].
The last method is to
[Alt]+[middle mouse button] onto the window, to toggle
it in being floating. These floating windows then can be used to force certain
window sizes, when some application requires this for aesthetics or simply to
If you want to set some type of window to be always floating, look at the
config.def.h and the
array, where the last but one element defines this behaviour.
To quit dwm cleanly:
By default dwm is showing
dwm-X.X in its statusbar. This text can be changed
by setting the
WM_NAME property of the root window.
Using the tools of X.org, this can be set using:
% xsetroot -name "Some Text"
% xprop -root -set WM_NAME "Some Text"
There are various tools and methods to populate this text with useful information from your system or services running on your system. A barebone for doing this in C is dwmstatus. See the xinitrc example for how to do it using a script.