summaryrefslogtreecommitdiff
path: root/dwm.1
blob: a9f276c2db814da65022e1a872880ba9ab3fe274 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
.TH DWM 1 dwm\-VERSION
.SH NAME
dwm \- dynamic window manager
.SH SYNOPSIS
.B dwm
.RB [ \-v ]
.SH DESCRIPTION
dwm is a dynamic window manager for X. It manages windows in tiled, monocle
and floating layouts. Either layout can be applied dynamically, optimising the
environment for the application in use and the task performed.
.P
In tiled layouts windows are managed in a master and stacking area. The master
area on the left contains one window by default, and the stacking area on the
right contains all other windows. The number of master area windows can be
adjusted from zero to an arbitrary number. Windows in both the master and stack
can be resized vertically, as well as resizing the master area. In monocle 
layout all windows are maximised to the screen size. In floating layout windows
can be resized and moved freely. Dialog windows are always managed floating,
regardless of the layout applied.
.P
Windows are grouped by tags. Each window can be tagged with one or multiple
tags. Selecting certain tags displays all windows with these tags.
.P
Each screen contains a small status bar which displays all available tags, the
layout, the title of the focused window, and the text read from the root window
name property, if the screen is focused. A floating window is indicated with an
empty square and a maximised floating window is indicated with a filled square
before the window's title.  The selected tags are indicated with a different
color. The focused window is represented by a long line before the tags which
are applied to it, and all other windows are represented by dots for all their
corresponding tags.
.P
The attach below patch makes newly spawned windows attach after the currently
selected window
.P
dwm draws a small border around windows to indicate the focus state.
.SH OPTIONS
.TP
.B \-v
prints version information to standard output, then exits.
.SH USAGE
.SS Status bar
.TP
.B X root window name
is read and displayed in the status text area. It can be set with the
.BR xsetroot (1)
command.
.TP
.B Button1
click on a tag label to display all windows with that tag, click on the layout
label toggles between tiled and floating layout.
.TP
.B Button3
click on a tag label adds/removes all windows with that tag to/from the view.
.TP
.B Mod1\-Button1
click on a tag label applies that tag to the focused window.
.TP
.B Mod1\-Button3
click on a tag label adds/removes that tag to/from the focused window.
.SS Keyboard commands
.TP
.B Mod1\-Return
Start
.BR tabbed(1)
Running
.BR st(1).
.TP
.B Mod1\-p
Spawn passmenu.
.TP
.B Mod1\-d
Spawn
.BR dmenu(1)
for launching other programs.
.TP
.B Mod1\-c
Spawn xidletog to change caffeine/xautolock state.
.TP
.B Mod1\-x
Spawn
.BR xkill(1)
to kill any selected window.
.TP
.B AudioPlay
Spawn
.BR playerctl(1)
to toggle (in order, if not found) 
.BR mpd(1),
.BR mpv(1),
or any other MPRIS compatible media player
.TP
.B AudioNext
Spawn
.BR playerctl(1)
to go to next track of (in order, if not found) 
.BR mpd(1),
.BR mpv(1),
or any other MPRIS compatible media player
.TP
.B AudioPrev
Spawn
.BR playerctl(1)
to go to previous track of (in order, if not found) 
.BR mpd(1),
.BR mpv(1),
or any other MPRIS compatible media player
.TP
.B Shift\-AudioPlay
Spawn
.BR playerctl(1)
to toggle (in order, if not found) any other MPRIS compatible media player, pr
.BR mpd(1).
.TP
.B Shift\-AudioNext
Spawn
.BR playerctl(1)
to skip forward in (in order, if not found) any other MPRIS compatible media player, pr
.BR mpd(1).
.TP
.B Shift\-AudioPrev
Spawn
.BR playerctl(1)
to toggle (in order, if not found) any other MPRIS compatible media player, pr
.BR mpd(1).
.TP
.B MonBrightnessUp
Spawn
.BR light(1)
to turn the backlight brightness up
.TP
.B MonBrightnessDown
Spawn
.BR light(1)
to turn the backlight brightness down
.TP
.B AudioLowerVolume
Spawn volsv to turn the volume (pulseaudio first, alsa if not found) down
.TP
.B AudioRaiseVolume
Spawn volsv to turn the volume (pulseaudio first, alsa if not found) up
.TP
.B AudioMute
Spawn volsv to mute the volume (pulseaudio first, alsa if not found)
.TP
.B AudioMicMute
Spawn
.BR pamixer(1)
to mute the microphone.
.TP
.B Mod4\-l
Spawn
.BR i3lock-fancy(1)
to lock the screen.
.TP
.B Mod1\-b
Toggles bar on and off.
.TP
.B Mod1\-Shift\-j
Push the selected client window down the stack
.TP
.B Mod1\-Shift\-k
Push the selected client window up the stack
.TP
.B Mod1\-j
Focus next window.
.TP
.B Mod1\-k
Focus previous window.
.TP
.B Mod1\-,
Increase the number of master windows.
.TP
.B Mod1\-.
Decrease the number of master windows.
.TP
.B Mod1\-h
Decrease master area size.
.TP
.B Mod1\-l
Increase master area size.
.TP
.B Mod1\-Shift\-h
Increase the size ratio of the selected client
.TP
.B Mod1\-Shift\-l
Decrease the size ratio of the selected client
.B Mod1\-Shift\-o
Reset the size ratio of the selected client
.TP
.B Mod1\-Shift\-Return
Zooms/cycles focused window to/from master area (tiled layouts only).
.TP
.B Mod1\-Tab
Toggles to the previously selected tags.
.TP
.B Mod1\-Shift\-q
Close focused window.
.TP
.B Mod1\-t
Sets tiled layout.
.TP
.B Mod1\-s
Sets floating layout.
.TP
.B Mod1\-m
Sets monocle layout.
.TP
.B Mod1\-Shift\-space
Toggles between current and previous layout.
.TP
.B Mod1\-space
Toggles the selected window into the floating state.
.TP
.B Mod1\-f
Toggle the selected window into the fullscreen state.
.TP
.B Mod1\-0
View all windows with any tag.
.TP
.B Mod1\-Shift\-0
Apply all tags to focused window.
.TP
.B Mod1\-Shift\-,
Change focus to previous screen, if any.
.TP
.B Mod1\-Shift\-.
Change focus to next screen, if any.
.TP
.B Mod1\-Control\-Shift\-,
Send focused window to previous screen, if any.
.TP
.B Mod1\-Control\-Shift\-.
Send focused window to next screen, if any.
.TP
.B Mod1\-Shift\-[1..n]
Apply nth tag to focused window.
.TP
.B Mod1\-Control\-Shift\-[1..n]
Add/remove nth tag to/from focused window.
.TP
.B Mod1\-[1..n]
View all windows with nth tag.
.TP
.B Mod1\-Control\-[1..n]
Add/remove all windows with nth tag to/from the view.
.TP
.B Mod1\-Shift\-e
Quit dwm.
.TP
.B Mod1\-Shift\-r
Restart dwm.
.TP
.B Mod1\-Shift\-Tab
Toggle AttachBelow patch
.SS Mouse commands
.TP
.B Mod1\-Button1
Move focused window while dragging. Tiled windows will be toggled to the floating state.
.TP
.B Mod1\-Button2
Toggles focused window between floating and tiled state.
.TP
.B Mod1\-Button3
Resize focused window while dragging. Tiled windows will be toggled to the floating state.
.SH CUSTOMIZATION
dwm is customized by creating a custom config.h and (re)compiling the source
code. This keeps it fast, secure and simple.
.SH SIGNALS
.TP
.B SIGHUP - 1
Restart the dwm process.
.TP
.B SIGTERM - 15
Cleanly terminate the dwm process.
.SH PATCHES
This version of dwm was compiled using the:
.TP
.B dwm-actualfullscreen-20191112-cb3f58a.diff
.TP
.B dwm-attachbelow-toggleable-6.2.diff
.TP
.B dwm-autostart-20161205-bb3bd6f.diff
.TP
.B dwm-cfacts-20200913-61bb8b2.diff
.TP
.B dwm-clientindicators-6.2.diff
.TP
.B dwm-dwmc-6.2.diff
.TP
.B dwm-push_no_master-6.2.diff
.TP
.B dwm-restartsig-20180523-6.2.diff
.TP
.B dwm-statuscmd-signal-6.2.diff
.TP
.B dwm-swallow-20200522-7accbcf.diff
.TP
.B dwm-systray-6.2.diff
.TP
.B dwm-uselessgap-6.2.diff
.TP
.B dwm-zoomswap-6.2.diff
.SH SEE ALSO
.BR dmenu (1),
.BR st (1)
.SH ISSUES
Java applications which use the XToolkit/XAWT backend may draw grey windows
only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early
JDK 1.6 versions, because it assumes a reparenting window manager. Possible workarounds
are using JDK 1.4 (which doesn't contain the XToolkit/XAWT backend) or setting the
environment variable
.BR AWT_TOOLKIT=MToolkit
(to use the older Motif backend instead) or running
.B xprop -root -f _NET_WM_NAME 32a -set _NET_WM_NAME LG3D
or
.B wmname LG3D
(to pretend that a non-reparenting window manager is running that the
XToolkit/XAWT backend can recognize) or when using OpenJDK setting the environment variable
.BR _JAVA_AWT_WM_NONREPARENTING=1 .
.SH BUGS
Send all bug reports with a patch to hackers@suckless.org.