Compare commits
376 Commits
Author | SHA1 | Date | |
---|---|---|---|
76d7e80fc4 | |||
af8049bce8 | |||
2bb51b3246 | |||
b16d8282be | |||
fef4614772 | |||
be39dddcc5 | |||
6d209b9b29 | |||
57a0788bd8 | |||
3ad906eede | |||
0be9fb8797 | |||
62a491e36d | |||
0b5dcf229f | |||
fda92f46aa | |||
a62ea4062f | |||
7dc28d130f | |||
fbce733532 | |||
e7572804fa | |||
ed1bef1241 | |||
2b047e460b | |||
5f74dc5e78 | |||
ea8a4ca46a | |||
4883a06221 | |||
4dea5324c0 | |||
53cac17692 | |||
83abfc05eb | |||
862b0d541d | |||
c1c6fdc5d8 | |||
9a4d07d9de | |||
30410108eb | |||
753e0e048e | |||
d15d4ba45a | |||
815f9c054d | |||
addc52c948 | |||
26f41c9055 | |||
73ec124ae9 | |||
ec11a3470c | |||
4b3b597da3 | |||
288cf78b18 | |||
6411aa921b | |||
db5db8806f | |||
258c338030 | |||
85da537856 | |||
2b4157eccd | |||
0f26de991f | |||
840f937a98 | |||
6975a7e31a | |||
47f63dce55 | |||
02a8ca95cf | |||
2ce50a9cad | |||
bfa5869da1 | |||
087a55f8d3 | |||
6d7285fd6e | |||
69c7b4b0ba | |||
97699e5b1b | |||
2dc7f42fd7 | |||
9f3a5cb754 | |||
b48fa3f101 | |||
051a404b66 | |||
d8d733c34f | |||
bb01e5a16f | |||
06f7eed103 | |||
0ffa6d1393 | |||
15ce143620 | |||
63d7190231 | |||
b279cef670 | |||
6254ef9dc7 | |||
4a2902efe4 | |||
6fad4c49f1 | |||
78f0f8595f | |||
7ecadcee39 | |||
c86ed46a1b | |||
9086f98068 | |||
9aa4a9043d | |||
d5893f55be | |||
f529d41ca1 | |||
45768ee04b | |||
a6d23fb61c | |||
bf76cefe47 | |||
9bb0f20515 | |||
2431ae7df7 | |||
829b6b57e7 | |||
7b4c512e62 | |||
7f7c3140a9 | |||
277155cf77 | |||
0c38ec7cd6 | |||
deef4c9bfd | |||
b86c818599 | |||
c2a916bf30 | |||
2bd46d1ce6 | |||
6e0ce46365 | |||
c853d5e9bb | |||
31da0b7525 | |||
12ea925076 | |||
79ecbeca7e | |||
cf98ea2a9c | |||
d8fad9bf7a | |||
f25cc5678f | |||
5a92420fce | |||
ae1d865ac0 | |||
1ce173402f | |||
a06b9193c7 | |||
43bb77a569 | |||
e3da222c1e | |||
66608a60fe | |||
b6aa84e51b | |||
9ff5143acb | |||
1edf6a7866 | |||
4db2f44277 | |||
1f1a132784 | |||
512541bfbd | |||
709da0b858 | |||
5cd65f8cd8 | |||
e3838e8585 | |||
016dca4f69 | |||
8f052596b2 | |||
9463d5354b | |||
d662f98d89 | |||
e5a965a274 | |||
5d422bb1ce | |||
38a43c2dcc | |||
c56533615f | |||
a8e0772c4d | |||
98e7950be8 | |||
88e6eb4a3a | |||
0840c1367c | |||
077d3e435b | |||
d26b60b43e | |||
32f36ab2d5 | |||
08bcf721b4 | |||
fc578c57e4 | |||
c8eaab21b6 | |||
c26e22ccee | |||
c2784e4a38 | |||
6e9387793b | |||
92f3c181c3 | |||
d589f7679a | |||
75690c808d | |||
fde58d5e63 | |||
e1002745fa | |||
940a4cc6c6 | |||
64243ab05b | |||
32c5046635 | |||
6c8618f502 | |||
9189f7a12d | |||
2d4faae522 | |||
5d2385b636 | |||
0fe2e783e9 | |||
cd3d83f571 | |||
0a9ef560c0 | |||
0528a37c79 | |||
56b2fece9e | |||
9f569fac74 | |||
48d0c56eac | |||
825d6cb93a | |||
f852504014 | |||
c3fa9e879f | |||
8e05f6c592 | |||
39d1ecd5b0 | |||
103fb58a44 | |||
5f55af40ae | |||
f806a17692 | |||
822101dd5b | |||
6bdef73a4f | |||
234b12eb73 | |||
bd4deaebfc | |||
499315c22c | |||
f22d047d41 | |||
4a5c8d84db | |||
71365a524f | |||
3afca3e6a1 | |||
bdc80bdad6 | |||
64707da963 | |||
549726869b | |||
42cb2bd3be | |||
585294ce0f | |||
a864a82b34 | |||
bd67a82fb5 | |||
14d8d828ab | |||
4246affc15 | |||
42c4b31003 | |||
a785a0d712 | |||
489ac07e83 | |||
349d768b57 | |||
6dfa7cac56 | |||
71681c21a5 | |||
704781875c | |||
d7cc0f6416 | |||
6b79f3f326 | |||
446fa8c671 | |||
fa244aa7fb | |||
7ac4f8a4af | |||
7eb26288fc | |||
93a4fe1052 | |||
5602f44b29 | |||
b848f4bda8 | |||
86c4797f2c | |||
c094ed2473 | |||
bfd6079a15 | |||
7f70d90219 | |||
858251de46 | |||
d26c28c1e7 | |||
b6335776e4 | |||
c059625128 | |||
874837f653 | |||
5fa559dbfc | |||
146ff227fe | |||
bb0a328978 | |||
721b208478 | |||
6229ed20c2 | |||
940240e5e6 | |||
08c596ed10 | |||
9ce6abb95c | |||
0e21794e02 | |||
d477fb6927 | |||
3d6630b7d2 | |||
c982bb1389 | |||
6cf73e706a | |||
a520ba3c0b | |||
0c71b16b92 | |||
00c28a7ef2 | |||
5a3a2d6b63 | |||
a355782a77 | |||
20cd336087 | |||
a6a216f28c | |||
2c2063bc75 | |||
e6ede461a9 | |||
6877205e9d | |||
fb5f99d935 | |||
7ebab7533a | |||
9fa5ca3538 | |||
fe6b0c0fc1 | |||
aa2395b6a8 | |||
dba22848c7 | |||
33b1960220 | |||
e237b2a76f | |||
dd9ee6d248 | |||
1380569133 | |||
831428b00c | |||
69439715c0 | |||
f2e98f48fb | |||
c19d4b2930 | |||
f77a3d0a62 | |||
8aa1533879 | |||
2fc9cffdeb | |||
3c5b6f03ba | |||
02673538bc | |||
95eae7b9d2 | |||
59107755c8 | |||
d05d09b205 | |||
47b1974446 | |||
247ba66c08 | |||
d7b074fcce | |||
c9170189bf | |||
f7a45ff28b | |||
add7df6e9b | |||
3a79b82721 | |||
b31b430592 | |||
88c8ead3e8 | |||
2e95837220 | |||
5d9ae3f3b7 | |||
2e38296edd | |||
59aa02a075 | |||
e3c2d327f6 | |||
295ad21092 | |||
39af3c2607 | |||
96ee9d888c | |||
a82cba2759 | |||
f7c097e802 | |||
da1b3fa437 | |||
ad0a2fa042 | |||
9804726c82 | |||
7bc272a4e4 | |||
f1719ac2de | |||
d99ec61482 | |||
2f70a14ee1 | |||
00ca643bd7 | |||
0271ac0ed7 | |||
d5178292ed | |||
2bfd3fffbf | |||
a3d8c05a95 | |||
fd01413fae | |||
d6e24f7116 | |||
c43d7b7587 | |||
de5b294edc | |||
8e0f8ffcc6 | |||
dd21823536 | |||
9cb9c32ee7 | |||
4076e2ff60 | |||
55edd2d6ec | |||
2e8e5509d9 | |||
4426032450 | |||
e0f0397896 | |||
ca3e847e45 | |||
c2737b7b93 | |||
191cb9ce28 | |||
6ab163c695 | |||
e8244395e4 | |||
954db46bac | |||
508922b90d | |||
4adfdc9d95 | |||
c619363d15 | |||
012710a3ce | |||
c2c54cc0fa | |||
a62630ae92 | |||
62b18fb9d4 | |||
e0d6451086 | |||
7a496e9777 | |||
308f95ae5a | |||
40a734bca9 | |||
985e330524 | |||
5f19423c7b | |||
d66ad1457e | |||
8497f9f781 | |||
91bb749e97 | |||
68ff133857 | |||
4380db468a | |||
123a565bb9 | |||
d0e0505301 | |||
762b66ae7c | |||
cb4951dd54 | |||
667da18b31 | |||
e9a0733506 | |||
198502f41d | |||
35efafe8ac | |||
951d022dfc | |||
54bde0f9d7 | |||
260a55ef62 | |||
0e98090d65 | |||
af4667a85a | |||
a98b5e5935 | |||
b8985dc7bb | |||
6f60b2e1cd | |||
3033d45d1c | |||
34e7872c89 | |||
c36f7c3c5e | |||
3fd39feb41 | |||
93eee247ca | |||
d5e8edcbcb | |||
13577b15e5 | |||
5473e763f6 | |||
cdd6c3e820 | |||
29f2b15ddc | |||
7b65b763bc | |||
e94774dd69 | |||
af0034f3a5 | |||
cd7ebaad25 | |||
8dc03d6e6b | |||
1dcb18c124 | |||
206eb344e2 | |||
04de5720e6 | |||
5a04edecb1 | |||
24c125cc8a | |||
0453c1d180 | |||
0b5c14cf59 | |||
a73de0cff4 | |||
eeea4ef583 | |||
883e09b2eb | |||
7e25897f11 | |||
95091dcad4 | |||
57676994ea | |||
60adbab726 | |||
c3eca4d14f | |||
d1f4fbb469 | |||
635b64384d | |||
bedbe59aaa | |||
3f3086f8b8 | |||
f92a4e45c4 | |||
2fc8a13588 | |||
63725004f5 | |||
e9348dcaca | |||
fa857b2896 | |||
c77663fcb4 | |||
17d39ee014 | |||
8d1810c85b | |||
60444daa70 | |||
b0477c3017 |
10
.hgtags
10
.hgtags
@ -48,3 +48,13 @@ c13cb8c6b7a56af74cc88346e71d2490470b546f 4.2
|
||||
e0ec0d5d8b1ef3ee04a83c7c0fee5853aa2ac6a6 4.3
|
||||
408014d2126153d2b0fce26a13ba707db222b7b9 4.4
|
||||
7c117df5d202530e85066d8b1ab02cef605c79ad 4.4.1
|
||||
2acc60d6dfe28c101a8cd44a8aa710a38ae3607c 4.5
|
||||
bcd7e18e196a00cc2e97ff3a4a58f3cdaba13856 4.6
|
||||
d6d3085307d8d98b8b012b669e858fd787befeb1 4.7
|
||||
607015ddb091d49cbd3457af41713691aa69f4d6 4.8
|
||||
22c669b2dd3673785c3476b9976da21e8783f745 4.9
|
||||
06eb9644e2dad7667d97495eb7d7bc62aa0429e8 5.0
|
||||
ce355cea9bb89e162f61913737a46908cdfa7e45 5.1
|
||||
e4bcaca8e6ef13d2c3b81f1218ad15e5da4d68bd 5.2
|
||||
4004d61160355d869a7d2672561caad440751ba0 5.3
|
||||
335301ed102fec9b1a15d06bfa0184d53b38fa54 5.3.1
|
||||
|
25
LICENSE
25
LICENSE
@ -1,25 +1,30 @@
|
||||
MIT/X Consortium License
|
||||
|
||||
© 2006-2007 Anselm R. Garbe <garbeam at gmail dot com>
|
||||
© 2006-2008 Anselm R Garbe <garbeam at gmail dot com>
|
||||
© 2006-2007 Sander van Dijk <a dot h dot vandijk at gmail dot com>
|
||||
© 2006-2007 Jukka Salmi <jukka at salmi dot ch>
|
||||
© 2007 Premysl Hruby <dfenze at gmail dot com>
|
||||
© 2007 Szabolcs Nagy <nszabolcs at gmail dot com>
|
||||
© 2007 Christof Musik <christof at sendfax dot de>
|
||||
© 2007-2008 Enno Gottox Boland <gottox at s01 dot de>
|
||||
© 2007-2008 Peter Hartlich <sgkkr at hartlich dot com>
|
||||
© 2008 Martin Hurton <martin dot hurton at gmail dot com>
|
||||
© 2008 Neale Pickett <neale dot woozle dot org>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
to deal in the Software without restriction, including without limitation
|
||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
and/or sell copies of the Software, and to permit persons to whom the
|
||||
and/or sell copies of the Software, and to permit persons to whom the
|
||||
Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
DEALINGS IN THE SOFTWARE.
|
||||
|
10
Makefile
10
Makefile
@ -1,9 +1,9 @@
|
||||
# dwm - dynamic window manager
|
||||
# © 2006-2007 Anselm R. Garbe, Sander van Dijk
|
||||
# See LICENSE file for copyright and license details.
|
||||
|
||||
include config.mk
|
||||
|
||||
SRC += dwm.c
|
||||
SRC = dwm.c
|
||||
OBJ = ${SRC:.c=.o}
|
||||
|
||||
all: options dwm
|
||||
@ -20,6 +20,10 @@ options:
|
||||
|
||||
${OBJ}: config.h config.mk
|
||||
|
||||
config.h:
|
||||
@echo creating $@ from config.def.h
|
||||
@cp config.def.h $@
|
||||
|
||||
dwm: ${OBJ}
|
||||
@echo CC -o $@
|
||||
@${CC} -o $@ ${OBJ} ${LDFLAGS}
|
||||
@ -31,7 +35,7 @@ clean:
|
||||
dist: clean
|
||||
@echo creating dist tarball
|
||||
@mkdir -p dwm-${VERSION}
|
||||
@cp -R LICENSE Makefile README config.h config.mk \
|
||||
@cp -R LICENSE Makefile README config.def.h config.mk \
|
||||
dwm.1 ${SRC} dwm-${VERSION}
|
||||
@tar -cf dwm-${VERSION}.tar dwm-${VERSION}
|
||||
@gzip dwm-${VERSION}.tar
|
||||
|
8
README
8
README
@ -18,6 +18,9 @@ necessary as root):
|
||||
|
||||
make clean install
|
||||
|
||||
If you are going to use the default bluegray color scheme it is highly
|
||||
recommended to also install the bluegray files shipped in the dextra package.
|
||||
|
||||
|
||||
Running dwm
|
||||
-----------
|
||||
@ -37,9 +40,10 @@ like this in your .xinitrc:
|
||||
|
||||
while true
|
||||
do
|
||||
echo `date` `uptime | sed 's/.*,//'`
|
||||
xsetroot -name "`date` `uptime | sed 's/.*,//'`"
|
||||
sleep 1
|
||||
done | dwm
|
||||
done &
|
||||
exec dwm
|
||||
|
||||
|
||||
Configuration
|
||||
|
102
config.def.h
Normal file
102
config.def.h
Normal file
@ -0,0 +1,102 @@
|
||||
/* See LICENSE file for copyright and license details. */
|
||||
|
||||
/* appearance */
|
||||
static const char font[] = "-*-terminus-medium-r-normal-*-14-*-*-*-*-*-*-*";
|
||||
static const char normbordercolor[] = "#cccccc";
|
||||
static const char normbgcolor[] = "#cccccc";
|
||||
static const char normfgcolor[] = "#000000";
|
||||
static const char selbordercolor[] = "#0066ff";
|
||||
static const char selbgcolor[] = "#0066ff";
|
||||
static const char selfgcolor[] = "#ffffff";
|
||||
static unsigned int borderpx = 1; /* border pixel of windows */
|
||||
static unsigned int snap = 32; /* snap pixel */
|
||||
static Bool showbar = True; /* False means no bar */
|
||||
static Bool topbar = True; /* False means bottom bar */
|
||||
static Bool usegrab = False; /* True means grabbing the X server
|
||||
during mouse-based resizals */
|
||||
|
||||
/* tagging */
|
||||
static const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
|
||||
static unsigned int tagset[] = {1, 1}; /* after start, first tag is selected */
|
||||
|
||||
static Rule rules[] = {
|
||||
/* class instance title tags mask isfloating */
|
||||
{ "Gimp", NULL, NULL, 0, True },
|
||||
{ "Firefox", NULL, NULL, 1 << 8, True },
|
||||
};
|
||||
|
||||
/* layout(s) */
|
||||
static float mfact = 0.55; /* factor of master area size [0.05..0.95] */
|
||||
static Bool resizehints = True; /* False means respect size hints in tiled resizals */
|
||||
|
||||
static Layout layouts[] = {
|
||||
/* symbol arrange function */
|
||||
{ "[]=", tile }, /* first entry is default */
|
||||
{ "><>", NULL }, /* no layout function means floating behavior */
|
||||
{ "[M]", monocle },
|
||||
};
|
||||
|
||||
/* key definitions */
|
||||
#define MODKEY Mod1Mask
|
||||
#define TAGKEYS(KEY,TAG) \
|
||||
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
|
||||
|
||||
/* helper for spawning shell commands in the pre dwm-5.0 fashion */
|
||||
#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
|
||||
|
||||
/* commands */
|
||||
static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
|
||||
static const char *termcmd[] = { "uxterm", NULL };
|
||||
|
||||
static Key keys[] = {
|
||||
/* modifier key function argument */
|
||||
{ MODKEY, XK_p, spawn, {.v = dmenucmd } },
|
||||
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } },
|
||||
{ MODKEY, XK_b, togglebar, {0} },
|
||||
{ MODKEY, XK_j, focusstack, {.i = +1 } },
|
||||
{ MODKEY, XK_k, focusstack, {.i = -1 } },
|
||||
{ MODKEY, XK_h, setmfact, {.f = -0.05} },
|
||||
{ MODKEY, XK_l, setmfact, {.f = +0.05} },
|
||||
{ MODKEY, XK_Return, zoom, {0} },
|
||||
{ MODKEY, XK_Tab, view, {0} },
|
||||
{ MODKEY|ShiftMask, XK_c, killclient, {0} },
|
||||
{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
|
||||
{ MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
|
||||
{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
|
||||
{ MODKEY, XK_space, setlayout, {0} },
|
||||
{ MODKEY|ShiftMask, XK_space, togglefloating, {0} },
|
||||
{ MODKEY, XK_0, view, {.ui = ~0 } },
|
||||
{ MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
|
||||
TAGKEYS( XK_1, 0)
|
||||
TAGKEYS( XK_2, 1)
|
||||
TAGKEYS( XK_3, 2)
|
||||
TAGKEYS( XK_4, 3)
|
||||
TAGKEYS( XK_5, 4)
|
||||
TAGKEYS( XK_6, 5)
|
||||
TAGKEYS( XK_7, 6)
|
||||
TAGKEYS( XK_8, 7)
|
||||
TAGKEYS( XK_9, 8)
|
||||
{ MODKEY|ShiftMask, XK_q, quit, {0} },
|
||||
};
|
||||
|
||||
/* button definitions */
|
||||
/* click can be a tag number (starting at 0),
|
||||
* ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
|
||||
static Button buttons[] = {
|
||||
/* click event mask button function argument */
|
||||
{ ClkLtSymbol, 0, Button1, setlayout, {0} },
|
||||
{ ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} },
|
||||
{ ClkWinTitle, 0, Button2, zoom, {0} },
|
||||
{ ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
|
||||
{ ClkClientWin, MODKEY, Button1, movemouse, {0} },
|
||||
{ ClkClientWin, MODKEY, Button2, togglefloating, {0} },
|
||||
{ ClkClientWin, MODKEY, Button3, resizemouse, {0} },
|
||||
{ ClkTagBar, 0, Button1, view, {0} },
|
||||
{ ClkTagBar, 0, Button3, toggleview, {0} },
|
||||
{ ClkTagBar, MODKEY, Button1, tag, {0} },
|
||||
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
|
||||
};
|
||||
|
93
config.h
93
config.h
@ -1,93 +0,0 @@
|
||||
/* See LICENSE file for copyright and license details. */
|
||||
|
||||
/* appearance */
|
||||
#define BARPOS BarTop /* BarBot, BarOff */
|
||||
#define BORDERPX 1
|
||||
#define FONT "-*-terminus-medium-r-*-*-12-*-*-*-*-*-iso10646-*"
|
||||
#define NORMBORDERCOLOR "#333"
|
||||
#define NORMBGCOLOR "#000"
|
||||
#define NORMFGCOLOR "#ccc"
|
||||
#define SELBORDERCOLOR "#f00"
|
||||
#define SELBGCOLOR "#00f"
|
||||
#define SELFGCOLOR "#fff"
|
||||
|
||||
/* tagging */
|
||||
const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9", NULL };
|
||||
Rule rules[] = {
|
||||
/* class:instance:title regex tags regex isfloating */
|
||||
{ "Firefox", "3", False },
|
||||
{ "Gimp", NULL, True },
|
||||
{ "MPlayer", NULL, True },
|
||||
{ "Acroread", NULL, True },
|
||||
};
|
||||
|
||||
/* layout(s) */
|
||||
Layout layouts[] = {
|
||||
/* symbol function */
|
||||
{ "[]=", tile }, /* first entry is default */
|
||||
{ "><>", floating },
|
||||
};
|
||||
#define RESIZEHINTS True /* False - respect size hints in tiled resizals */
|
||||
#define MWFACT 0.6 /* master width factor [0.1 .. 0.9] */
|
||||
#define SNAP 32 /* snap pixel */
|
||||
|
||||
/* key definitions */
|
||||
#define MODKEY Mod1Mask
|
||||
#define KEYS \
|
||||
Key keys[] = { \
|
||||
/* modifier key function argument */ \
|
||||
{ MODKEY, XK_p, spawn, \
|
||||
"exe=`dmenu_path | dmenu -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"'" \
|
||||
" -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'` && exec $exe" }, \
|
||||
{ MODKEY|ShiftMask, XK_Return, spawn, \
|
||||
"exec xterm -bg '"NORMBGCOLOR"' -fg '"NORMFGCOLOR"' -cr '"NORMFGCOLOR"' +sb -fn '"FONT"'" }, \
|
||||
{ MODKEY, XK_space, setlayout, NULL }, \
|
||||
{ MODKEY, XK_b, togglebar, NULL }, \
|
||||
{ MODKEY, XK_j, focusnext, NULL }, \
|
||||
{ MODKEY, XK_k, focusprev, NULL }, \
|
||||
{ MODKEY, XK_h, setmwfact, "-0.05" }, \
|
||||
{ MODKEY, XK_l, setmwfact, "+0.05" }, \
|
||||
{ MODKEY, XK_m, togglemax, NULL }, \
|
||||
{ MODKEY, XK_Return, zoom, NULL }, \
|
||||
{ MODKEY|ShiftMask, XK_space, togglefloating, NULL }, \
|
||||
{ MODKEY|ShiftMask, XK_c, killclient, NULL }, \
|
||||
{ MODKEY, XK_0, view, NULL }, \
|
||||
{ MODKEY, XK_1, view, tags[0] }, \
|
||||
{ MODKEY, XK_2, view, tags[1] }, \
|
||||
{ MODKEY, XK_3, view, tags[2] }, \
|
||||
{ MODKEY, XK_4, view, tags[3] }, \
|
||||
{ MODKEY, XK_5, view, tags[4] }, \
|
||||
{ MODKEY, XK_6, view, tags[5] }, \
|
||||
{ MODKEY, XK_7, view, tags[6] }, \
|
||||
{ MODKEY, XK_8, view, tags[7] }, \
|
||||
{ MODKEY, XK_9, view, tags[8] }, \
|
||||
{ MODKEY|ControlMask, XK_1, toggleview, tags[0] }, \
|
||||
{ MODKEY|ControlMask, XK_2, toggleview, tags[1] }, \
|
||||
{ MODKEY|ControlMask, XK_3, toggleview, tags[2] }, \
|
||||
{ MODKEY|ControlMask, XK_4, toggleview, tags[3] }, \
|
||||
{ MODKEY|ControlMask, XK_5, toggleview, tags[4] }, \
|
||||
{ MODKEY|ControlMask, XK_6, toggleview, tags[5] }, \
|
||||
{ MODKEY|ControlMask, XK_7, toggleview, tags[6] }, \
|
||||
{ MODKEY|ControlMask, XK_8, toggleview, tags[7] }, \
|
||||
{ MODKEY|ControlMask, XK_9, toggleview, tags[8] }, \
|
||||
{ MODKEY|ShiftMask, XK_0, tag, NULL }, \
|
||||
{ MODKEY|ShiftMask, XK_1, tag, tags[0] }, \
|
||||
{ MODKEY|ShiftMask, XK_2, tag, tags[1] }, \
|
||||
{ MODKEY|ShiftMask, XK_3, tag, tags[2] }, \
|
||||
{ MODKEY|ShiftMask, XK_4, tag, tags[3] }, \
|
||||
{ MODKEY|ShiftMask, XK_5, tag, tags[4] }, \
|
||||
{ MODKEY|ShiftMask, XK_6, tag, tags[5] }, \
|
||||
{ MODKEY|ShiftMask, XK_7, tag, tags[6] }, \
|
||||
{ MODKEY|ShiftMask, XK_8, tag, tags[7] }, \
|
||||
{ MODKEY|ShiftMask, XK_9, tag, tags[8] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_1, toggletag, tags[0] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_2, toggletag, tags[1] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_3, toggletag, tags[2] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_4, toggletag, tags[3] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_5, toggletag, tags[4] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_6, toggletag, tags[5] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_7, toggletag, tags[6] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_8, toggletag, tags[7] }, \
|
||||
{ MODKEY|ControlMask|ShiftMask, XK_9, toggletag, tags[8] }, \
|
||||
{ MODKEY|ShiftMask, XK_q, quit, NULL }, \
|
||||
};
|
14
config.mk
14
config.mk
@ -1,5 +1,5 @@
|
||||
# dwm version
|
||||
VERSION = 4.5
|
||||
VERSION = 5.4
|
||||
|
||||
# Customize below to fit your system
|
||||
|
||||
@ -10,20 +10,22 @@ MANPREFIX = ${PREFIX}/share/man
|
||||
X11INC = /usr/X11R6/include
|
||||
X11LIB = /usr/X11R6/lib
|
||||
|
||||
# Xinerama, un-comment if you want it
|
||||
#XINERAMALIBS = -L${X11LIB} -lXinerama
|
||||
#XINERAMAFLAGS = -DXINERAMA
|
||||
|
||||
# includes and libs
|
||||
INCS = -I. -I/usr/include -I${X11INC}
|
||||
LIBS = -L/usr/lib -lc -L${X11LIB} -lX11
|
||||
LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${XINERAMALIBS}
|
||||
|
||||
# flags
|
||||
CFLAGS = -Os ${INCS} -DVERSION=\"${VERSION}\"
|
||||
CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
|
||||
CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
|
||||
LDFLAGS = -s ${LIBS}
|
||||
#CFLAGS = -g -Wall -O2 ${INCS} -DVERSION=\"${VERSION}\"
|
||||
#LDFLAGS = -g ${LIBS}
|
||||
|
||||
# Solaris
|
||||
#CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
|
||||
#LDFLAGS = ${LIBS}
|
||||
#CFLAGS += -xtarget=ultra
|
||||
|
||||
# compiler and linker
|
||||
CC = cc
|
||||
|
96
dwm.1
96
dwm.1
@ -1,31 +1,32 @@
|
||||
.TH DWM 1 dwm\-4.3
|
||||
.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 and
|
||||
floating layouts. Either layout can be applied dynamically, optimizing the
|
||||
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 layout windows are managed in a master and stacking area. The master
|
||||
In tiled layouts windows are managed in a master and stacking area. The master
|
||||
area contains the window which currently needs most attention, whereas the
|
||||
stacking area contains all other windows. In floating layout windows can be
|
||||
resized and moved freely. Dialog windows are always managed floating,
|
||||
regardless of the layout applied.
|
||||
stacking area contains all other windows. 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
|
||||
dwm contains a small status bar which displays all available tags, the layout,
|
||||
the title of the focused window, and the text read from standard input. A
|
||||
floating window is indicated with an empty square and a maximized
|
||||
floating window is indicated with a filled square before the windows
|
||||
title. The selected tags are indicated with a different color. The tags of
|
||||
the focused window are indicated with a filled square in the top left
|
||||
corner. The tags which are applied to one or more windows are indicated
|
||||
with an empty square in the top left corner.
|
||||
the title of the focused window, and the text read from the root window name
|
||||
property. A floating window is indicated with an empty square and a maximised
|
||||
floating window is indicated with a filled square before the windows title.
|
||||
The selected tags are indicated with a different color. The tags of the focused
|
||||
window are indicated with a filled square in the top left corner. The tags
|
||||
which are applied to one or more windows are indicated with an empty square in
|
||||
the top left corner.
|
||||
.P
|
||||
dwm draws a small border around windows to indicate the focus state.
|
||||
.SH OPTIONS
|
||||
@ -56,14 +57,20 @@ click on a tag label adds/removes that tag to/from the focused window.
|
||||
Start
|
||||
.BR xterm.
|
||||
.TP
|
||||
.B Mod1\-Return
|
||||
Zooms/cycles current window to/from master area (tiled layout only).
|
||||
.TP
|
||||
.B Mod1\-b
|
||||
Shows/hides the status bar.
|
||||
Toggles bar on and off.
|
||||
.TP
|
||||
.B Mod1\-h
|
||||
Decreases the master area width about 5% (tiled layout only).
|
||||
.B Mod1\-t
|
||||
Sets tiled layout.
|
||||
.TP
|
||||
.B Mod1\-f
|
||||
Sets floating layout.
|
||||
.TP
|
||||
.B Mod1\-m
|
||||
Sets monocle layout.
|
||||
.TP
|
||||
.B Mod1\-space
|
||||
Toggles between current and previous layout.
|
||||
.TP
|
||||
.B Mod1\-j
|
||||
Focus next window.
|
||||
@ -71,34 +78,37 @@ Focus next window.
|
||||
.B Mod1\-k
|
||||
Focus previous window.
|
||||
.TP
|
||||
.B Mod1\-h
|
||||
Decrease master area size.
|
||||
.TP
|
||||
.B Mod1\-l
|
||||
Increases the master area width about 5% (tiled layout only).
|
||||
Increase master area size.
|
||||
.TP
|
||||
.B Mod1\-m
|
||||
Toggles maximization of current window.
|
||||
.TP
|
||||
.B Mod1\-Shift\-[1..n]
|
||||
Apply
|
||||
.RB nth
|
||||
tag to current window.
|
||||
.TP
|
||||
.B Mod1\-Shift\-0
|
||||
Apply all tags to current window.
|
||||
.TP
|
||||
.B Mod1\-Control\-Shift\-[1..n]
|
||||
Add/remove
|
||||
.B nth
|
||||
tag to/from current window.
|
||||
.B Mod1\-Return
|
||||
Zooms/cycles focused window to/from master area (tiled layouts only).
|
||||
.TP
|
||||
.B Mod1\-Shift\-c
|
||||
Close focused window.
|
||||
.TP
|
||||
.B Mod1\-space
|
||||
Toggle between tiled and floating layout (affects all windows).
|
||||
.TP
|
||||
.B Mod1\-Shift\-space
|
||||
Toggle focused window between tiled and floating state.
|
||||
.TP
|
||||
.B Mod1\-Tab
|
||||
Toggles to the previously selected tags.
|
||||
.TP
|
||||
.B Mod1\-Shift\-[1..n]
|
||||
Apply
|
||||
.RB nth
|
||||
tag to focused window.
|
||||
.TP
|
||||
.B Mod1\-Shift\-0
|
||||
Apply all tags to focused window.
|
||||
.TP
|
||||
.B Mod1\-Control\-Shift\-[1..n]
|
||||
Add/remove
|
||||
.B nth
|
||||
tag to/from focused window.
|
||||
.TP
|
||||
.B Mod1\-[1..n]
|
||||
View all windows with
|
||||
.BR nth
|
||||
@ -117,13 +127,13 @@ Quit dwm.
|
||||
.SS Mouse commands
|
||||
.TP
|
||||
.B Mod1\-Button1
|
||||
Move current window while dragging. Tiled windows will be toggled to the floating state.
|
||||
Move focused window while dragging. Tiled windows will be toggled to the floating state.
|
||||
.TP
|
||||
.B Mod1\-Button2
|
||||
Zooms/cycles current window to/from master area. If it is floating (but not fixed) it will be toggled to the tiled state instead.
|
||||
Toggles focused window between floating and tiled state.
|
||||
.TP
|
||||
.B Mod1\-Button3
|
||||
Resize current window while dragging. Tiled windows will be toggled to the floating state.
|
||||
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.
|
||||
@ -144,7 +154,7 @@ can set the following environment variable (to use the older Motif
|
||||
backend instead):
|
||||
.BR AWT_TOOLKIT=MToolkit .
|
||||
.P
|
||||
Recent GTK 2.10.9+ versions contain a broken
|
||||
GTK 2.10.9+ versions contain a broken
|
||||
.BR Save\-As
|
||||
file dialog implementation,
|
||||
which requests to reconfigure its window size in an endless loop. However, its
|
||||
|
Reference in New Issue
Block a user