gappx from xresources
[dwm.git] / dwm.1
1 .TH DWM 1 dwm\-VERSION
2 .SH NAME
3 dwm \- dynamic window manager
4 .SH SYNOPSIS
5 .B dwm
6 .RB [ \-v ]
7 .SH DESCRIPTION
8 dwm is a dynamic window manager for X. It manages windows in tiled, monocle
9 and floating layouts. Either layout can be applied dynamically, optimising the
10 environment for the application in use and the task performed.
11 .P
12 In tiled layouts windows are managed in a master and stacking area. The master
13 area on the left contains one window by default, and the stacking area on the
14 right contains all other windows. The number of master area windows can be
15 adjusted from zero to an arbitrary number. In monocle layout all windows are
16 maximised to the screen size. In floating layout windows can be resized and
17 moved freely. Dialog windows are always managed floating, regardless of the
18 layout applied.
19 .P
20 Windows are grouped by tags. Each window can be tagged with one or multiple
21 tags. Selecting certain tags displays all windows with these tags.
22 .P
23 Each screen contains a small status bar which displays all available tags, the
24 layout, the title of the focused window, and the text read from the root window
25 name property, if the screen is focused. A floating window is indicated with an
26 empty square and a maximised floating window is indicated with a filled square
27 before the windows title.  The selected tags are indicated with a different
28 color. The tags of the focused window are indicated with a filled square in the
29 top left corner.  The tags which are applied to one or more windows are
30 indicated with an empty square in the top left corner.
31 .P
32 dwm draws a small border around windows to indicate the focus state.
33 .P
34 On start, dwm can start additional programs that may be specified in two special
35 shell scripts (see the FILES section below), autostart_blocking.sh and
36 autostart.sh.  The former is executed first and dwm will wait for its
37 termination before starting.  The latter is executed in the background before
38 dwm enters its handler loop.
39 .P
40 Either of these files may be omitted.
41 .SH OPTIONS
42 .TP
43 .B \-v
44 prints version information to stderr, then exits.
45 .SH USAGE
46 .SS Status bar
47 .TP
48 .B X root window name
49 is read and displayed in the status text area. It can be set with the
50 .BR xsetroot (1)
51 command.
52 .TP
53 .B Button1
54 click on a tag label to display all windows with that tag, click on the layout
55 label toggles between tiled and floating layout.
56 .TP
57 .B Button3
58 click on a tag label adds/removes all windows with that tag to/from the view.
59 .TP
60 .B Mod1\-Button1
61 click on a tag label applies that tag to the focused window.
62 .TP
63 .B Mod1\-Button3
64 click on a tag label adds/removes that tag to/from the focused window.
65 .SS Keyboard commands
66 .TP
67 .B Mod1\-Shift\-Return
68 Start
69 .BR st(1).
70 .TP
71 .B Mod1\-p
72 Spawn
73 .BR dmenu(1)
74 for launching other programs.
75 .TP
76 .B Mod1\-,
77 Focus previous screen, if any.
78 .TP
79 .B Mod1\-.
80 Focus next screen, if any.
81 .TP
82 .B Mod1\-Shift\-,
83 Send focused window to previous screen, if any.
84 .TP
85 .B Mod1\-Shift\-.
86 Send focused window to next screen, if any.
87 .TP
88 .B Mod1\-b
89 Toggles bar on and off.
90 .TP
91 .B Mod1\-t
92 Sets tiled layout.
93 .TP
94 .B Mod1\-f
95 Sets floating layout.
96 .TP
97 .B Mod1\-m
98 Sets monocle layout.
99 .TP
100 .B Mod1\-space
101 Toggles between current and previous layout.
102 .TP
103 .B Mod1\-j
104 Focus next window.
105 .TP
106 .B Mod1\-k
107 Focus previous window.
108 .TP
109 .B Mod1\-i
110 Increase number of windows in master area.
111 .TP
112 .B Mod1\-d
113 Decrease number of windows in master area.
114 .TP
115 .B Mod1\-l
116 Increase master area size.
117 .TP
118 .B Mod1\-h
119 Decrease master area size.
120 .TP
121 .B Mod1\-Return
122 Zooms/cycles focused window to/from master area (tiled layouts only).
123 .TP
124 .B Mod1\-Shift\-c
125 Close focused window.
126 .TP
127 .B Mod1\-Shift\-space
128 Toggle focused window between tiled and floating state.
129 .TP
130 .B Mod1\-Tab
131 Toggles to the previously selected tags.
132 .TP
133 .B Mod1\-Shift\-[1..n]
134 Apply nth tag to focused window.
135 .TP
136 .B Mod1\-Shift\-0
137 Apply all tags to focused window.
138 .TP
139 .B Mod1\-Control\-Shift\-[1..n]
140 Add/remove nth tag to/from focused window.
141 .TP
142 .B Mod1\-[1..n]
143 View all windows with nth tag.
144 .TP
145 .B Mod1\-0
146 View all windows with any tag.
147 .TP
148 .B Mod1\-Control\-[1..n]
149 Add/remove all windows with nth tag to/from the view.
150 .TP
151 .B Mod1\--
152 Decrease the gaps around windows.
153 .TP
154 .B Mod1\-=
155 Increase the gaps around windows.
156 .TP
157 .B Mod1\-Shift-=
158 Reset the gaps around windows to
159 .BR 0 .
160 .TP
161 .B Mod1\-Shift\-q
162 Quit dwm.
163 .SS Mouse commands
164 .TP
165 .B Mod1\-Button1
166 Move focused window while dragging. Tiled windows will be toggled to the floating state.
167 .TP
168 .B Mod1\-Button2
169 Toggles focused window between floating and tiled state.
170 .TP
171 .B Mod1\-Button3
172 Resize focused window while dragging. Tiled windows will be toggled to the floating state.
173 .SH FILES
174 The files containing programs to be started along with dwm are searched for in
175 the following directories:
176 .IP "1. $XDG_DATA_HOME/dwm"
177 .IP "2. $HOME/.local/share/dwm"
178 .IP "3. $HOME/.dwm"
179 .P
180 The first existing directory is scanned for any of the autostart files below.
181 .TP 15
182 autostart.sh
183 This file is started as a shell background process before dwm enters its handler
184 loop.
185 .TP 15
186 autostart_blocking.sh
187 This file is started before any autostart.sh; dwm waits for its termination.
188 .SH CUSTOMIZATION
189 dwm is customized by creating a custom config.h and (re)compiling the source
190 code. This keeps it fast, secure and simple.
191 .SH SEE ALSO
192 .BR dmenu (1),
193 .BR st (1)
194 .SH ISSUES
195 Java applications which use the XToolkit/XAWT backend may draw grey windows
196 only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early
197 JDK 1.6 versions, because it assumes a reparenting window manager. Possible workarounds
198 are using JDK 1.4 (which doesn't contain the XToolkit/XAWT backend) or setting the
199 environment variable
200 .BR AWT_TOOLKIT=MToolkit
201 (to use the older Motif backend instead) or running
202 .B xprop -root -f _NET_WM_NAME 32a -set _NET_WM_NAME LG3D
203 or
204 .B wmname LG3D
205 (to pretend that a non-reparenting window manager is running that the
206 XToolkit/XAWT backend can recognize) or when using OpenJDK setting the environment variable
207 .BR _JAVA_AWT_WM_NONREPARENTING=1 .
208 .SH BUGS
209 Send all bug reports with a patch to hackers@suckless.org.