mirror of
git://git.suckless.org/dwm
synced 2025-07-27 02:02:08 -07:00
Compare commits
340 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
90687482ad | ||
|
5ab627c06c | ||
|
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 |
10
.hgtags
10
.hgtags
@@ -49,3 +49,13 @@ 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
|
||||
8b7836a471f8f9ee61bec980df00971888d76343 5.4
|
||||
|
7
LICENSE
7
LICENSE
@@ -1,10 +1,15 @@
|
||||
MIT/X Consortium License
|
||||
|
||||
© 2006-2007 Anselm R. Garbe <garbeam at gmail dot com>
|
||||
© 2006-2009 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"),
|
||||
|
2
Makefile
2
Makefile
@@ -1,5 +1,5 @@
|
||||
# dwm - dynamic window manager
|
||||
# © 2006-2007 Anselm R. Garbe, Sander van Dijk
|
||||
# See LICENSE file for copyright and license details.
|
||||
|
||||
include config.mk
|
||||
|
||||
|
5
README
5
README
@@ -40,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
|
||||
|
167
config.def.h
167
config.def.h
@@ -1,93 +1,102 @@
|
||||
/* See LICENSE file for copyright and license details. */
|
||||
|
||||
/* appearance */
|
||||
#define BARPOS BarTop /* BarBot, BarOff */
|
||||
#define BORDERPX 1
|
||||
#define FONT "-*-terminus-medium-*-*-*-*-*-*-*-*-*-*-*"
|
||||
#define NORMBORDERCOLOR "#cccccc"
|
||||
#define NORMBGCOLOR "#cccccc"
|
||||
#define NORMFGCOLOR "#000000"
|
||||
#define SELBORDERCOLOR "#0066ff"
|
||||
#define SELBGCOLOR "#0066ff"
|
||||
#define SELFGCOLOR "#ffffff"
|
||||
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 */
|
||||
const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "www" };
|
||||
Rule rules[] = {
|
||||
/* class:instance:title regex tags regex isfloating */
|
||||
{ "Firefox", "www", False },
|
||||
{ "Gimp", NULL, True },
|
||||
{ "MPlayer", NULL, True },
|
||||
{ "Acroread", NULL, True },
|
||||
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) */
|
||||
#define ISTILE isarrange(tile) /* || isarrange(<custom>) */
|
||||
#define MWFACT 0.6 /* master width factor [0.1 .. 0.9] */
|
||||
#define SNAP 32 /* snap pixel */
|
||||
Layout layouts[] = {
|
||||
/* symbol function */
|
||||
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 */
|
||||
{ "><>", floating },
|
||||
{ "><>", NULL }, /* no layout function means floating behavior */
|
||||
{ "[M]", monocle },
|
||||
};
|
||||
|
||||
/* 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 uxterm" }, \
|
||||
{ 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, XK_Tab, viewprevtag, 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 }, \
|
||||
#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} },
|
||||
};
|
||||
|
||||
|
14
config.mk
14
config.mk
@@ -1,5 +1,5 @@
|
||||
# dwm version
|
||||
VERSION = 4.6
|
||||
VERSION = 5.4.1
|
||||
|
||||
# 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 -std=c99 -pedantic -Wall -O2 ${INCS} -DVERSION=\"${VERSION}\"
|
||||
#LDFLAGS = -g ${LIBS}
|
||||
|
||||
# Solaris
|
||||
#CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
|
||||
#LDFLAGS = ${LIBS}
|
||||
#CFLAGS += -xtarget=ultra
|
||||
|
||||
# compiler and linker
|
||||
CC = cc
|
||||
|
97
dwm.1
97
dwm.1
@@ -5,27 +5,28 @@ dwm \- dynamic window manager
|
||||
.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,17 +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\-Tab
|
||||
Toggles to the previously selected tags.
|
||||
.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.
|
||||
@@ -74,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
|
||||
@@ -120,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.
|
||||
@@ -147,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