Compare commits
291 Commits
Author | SHA1 | Date | |
---|---|---|---|
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 |
5
.hgtags
5
.hgtags
@ -50,3 +50,8 @@ e0ec0d5d8b1ef3ee04a83c7c0fee5853aa2ac6a6 4.3
|
|||||||
7c117df5d202530e85066d8b1ab02cef605c79ad 4.4.1
|
7c117df5d202530e85066d8b1ab02cef605c79ad 4.4.1
|
||||||
2acc60d6dfe28c101a8cd44a8aa710a38ae3607c 4.5
|
2acc60d6dfe28c101a8cd44a8aa710a38ae3607c 4.5
|
||||||
bcd7e18e196a00cc2e97ff3a4a58f3cdaba13856 4.6
|
bcd7e18e196a00cc2e97ff3a4a58f3cdaba13856 4.6
|
||||||
|
d6d3085307d8d98b8b012b669e858fd787befeb1 4.7
|
||||||
|
607015ddb091d49cbd3457af41713691aa69f4d6 4.8
|
||||||
|
22c669b2dd3673785c3476b9976da21e8783f745 4.9
|
||||||
|
06eb9644e2dad7667d97495eb7d7bc62aa0429e8 5.0
|
||||||
|
ce355cea9bb89e162f61913737a46908cdfa7e45 5.1
|
||||||
|
24
LICENSE
24
LICENSE
@ -1,25 +1,29 @@
|
|||||||
MIT/X Consortium License
|
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 Sander van Dijk <a dot h dot vandijk at gmail dot com>
|
||||||
© 2006-2007 Jukka Salmi <jukka at salmi dot ch>
|
© 2006-2007 Jukka Salmi <jukka at salmi dot ch>
|
||||||
© 2007 Premysl Hruby <dfenze at gmail dot com>
|
© 2007 Premysl Hruby <dfenze at gmail dot com>
|
||||||
© 2007 Szabolcs Nagy <nszabolcs 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>
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
copy of this software and associated documentation files (the "Software"),
|
copy of this software and associated documentation files (the "Software"),
|
||||||
to deal in the Software without restriction, including without limitation
|
to deal in the Software without restriction, including without limitation
|
||||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
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:
|
Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in
|
The above copyright notice and this permission notice shall be included in
|
||||||
all copies or substantial portions of the Software.
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
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
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
DEALINGS IN THE SOFTWARE.
|
DEALINGS IN THE SOFTWARE.
|
||||||
|
2
Makefile
2
Makefile
@ -1,5 +1,5 @@
|
|||||||
# dwm - dynamic window manager
|
# dwm - dynamic window manager
|
||||||
# © 2006-2007 Anselm R. Garbe, Sander van Dijk
|
# See LICENSE file for copyright and license details.
|
||||||
|
|
||||||
include config.mk
|
include config.mk
|
||||||
|
|
||||||
|
170
config.def.h
170
config.def.h
@ -1,93 +1,101 @@
|
|||||||
/* See LICENSE file for copyright and license details. */
|
/* See LICENSE file for copyright and license details. */
|
||||||
|
|
||||||
/* appearance */
|
/* appearance */
|
||||||
#define BARPOS BarTop /* BarBot, BarOff */
|
static const char font[] = "-*-terminus-medium-r-normal-*-14-*-*-*-*-*-*-*";
|
||||||
#define BORDERPX 1
|
static const char normbordercolor[] = "#cccccc";
|
||||||
#define FONT "-*-terminus-medium-*-*-*-*-*-*-*-*-*-*-*"
|
static const char normbgcolor[] = "#cccccc";
|
||||||
#define NORMBORDERCOLOR "#cccccc"
|
static const char normfgcolor[] = "#000000";
|
||||||
#define NORMBGCOLOR "#cccccc"
|
static const char selbordercolor[] = "#0066ff";
|
||||||
#define NORMFGCOLOR "#000000"
|
static const char selbgcolor[] = "#0066ff";
|
||||||
#define SELBORDERCOLOR "#0066ff"
|
static const char selfgcolor[] = "#ffffff";
|
||||||
#define SELBGCOLOR "#0066ff"
|
static unsigned int borderpx = 1; /* border pixel of windows */
|
||||||
#define SELFGCOLOR "#ffffff"
|
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 readin = True; /* False means do not read stdin */
|
||||||
|
|
||||||
/* tagging */
|
/* tagging */
|
||||||
const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "www" };
|
static const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
|
||||||
Bool seltags[LENGTH(tags)] = {[0] = True};
|
static unsigned int tagset[] = {1, 1}; /* after start, first tag is selected */
|
||||||
Rule rules[] = {
|
|
||||||
/* class:instance:title regex tags regex isfloating */
|
static Rule rules[] = {
|
||||||
{ "Firefox", "www", False },
|
/* class instance title tags mask isfloating */
|
||||||
{ "Gimp", NULL, True },
|
{ "Gimp", NULL, NULL, 0, True },
|
||||||
{ "MPlayer", NULL, True },
|
{ "Firefox", NULL, NULL, 1 << 8, True },
|
||||||
{ "Acroread", NULL, True },
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* layout(s) */
|
/* layout(s) */
|
||||||
#define MWFACT 0.6 /* master width factor [0.1 .. 0.9] */
|
static float mfact = 0.55; /* factor of master area size [0.05..0.95] */
|
||||||
#define RESIZEHINTS True /* False - respect size hints in tiled resizals */
|
static Bool resizehints = True; /* False means respect size hints in tiled resizals */
|
||||||
#define SNAP 32 /* snap pixel */
|
|
||||||
Layout layouts[] = {
|
static Layout layouts[] = {
|
||||||
/* symbol function */
|
/* symbol arrange function */
|
||||||
{ "[]=", tile }, /* first entry is default */
|
{ "[]=", tile }, /* first entry is default */
|
||||||
{ "><>", floating },
|
{ "><>", NULL }, /* no layout function means floating behavior */
|
||||||
|
{ "[M]", monocle },
|
||||||
};
|
};
|
||||||
|
|
||||||
/* key definitions */
|
/* key definitions */
|
||||||
#define MODKEY Mod1Mask
|
#define MODKEY Mod1Mask
|
||||||
Key keys[] = {
|
#define TAGKEYS(KEY,TAG) \
|
||||||
/* modifier key function argument */
|
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
|
||||||
{ MODKEY, XK_p, spawn,
|
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
|
||||||
"exe=`dmenu_path | dmenu -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"'"
|
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
|
||||||
" -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'` && exec $exe" },
|
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
|
||||||
{ MODKEY|ShiftMask, XK_Return, spawn, "exec uxterm" },
|
|
||||||
{ MODKEY, XK_space, setlayout, NULL },
|
/* helper for spawning shell commands in the pre dwm-5.0 fashion */
|
||||||
{ MODKEY, XK_b, togglebar, NULL },
|
#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
|
||||||
{ MODKEY, XK_j, focusnext, NULL },
|
|
||||||
{ MODKEY, XK_k, focusprev, NULL },
|
/* commands */
|
||||||
{ MODKEY, XK_h, setmwfact, "-0.05" },
|
static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
|
||||||
{ MODKEY, XK_l, setmwfact, "+0.05" },
|
static const char *termcmd[] = { "uxterm", NULL };
|
||||||
{ MODKEY, XK_m, togglemax, NULL },
|
|
||||||
{ MODKEY, XK_Return, zoom, NULL },
|
static Key keys[] = {
|
||||||
{ MODKEY, XK_Tab, viewprevtag, NULL },
|
/* modifier key function argument */
|
||||||
{ MODKEY|ShiftMask, XK_space, togglefloating, NULL },
|
{ MODKEY, XK_p, spawn, {.v = dmenucmd } },
|
||||||
{ MODKEY|ShiftMask, XK_c, killclient, NULL },
|
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } },
|
||||||
{ MODKEY, XK_0, view, NULL },
|
{ MODKEY, XK_b, togglebar, {0} },
|
||||||
{ MODKEY, XK_1, view, tags[0] },
|
{ MODKEY, XK_j, focusstack, {.i = +1 } },
|
||||||
{ MODKEY, XK_2, view, tags[1] },
|
{ MODKEY, XK_k, focusstack, {.i = -1 } },
|
||||||
{ MODKEY, XK_3, view, tags[2] },
|
{ MODKEY, XK_h, setmfact, {.f = -0.05} },
|
||||||
{ MODKEY, XK_4, view, tags[3] },
|
{ MODKEY, XK_l, setmfact, {.f = +0.05} },
|
||||||
{ MODKEY, XK_5, view, tags[4] },
|
{ MODKEY, XK_Return, zoom, {0} },
|
||||||
{ MODKEY, XK_6, view, tags[5] },
|
{ MODKEY, XK_Tab, view, {0} },
|
||||||
{ MODKEY, XK_7, view, tags[6] },
|
{ MODKEY|ShiftMask, XK_c, killclient, {0} },
|
||||||
{ MODKEY, XK_8, view, tags[7] },
|
{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
|
||||||
{ MODKEY, XK_9, view, tags[8] },
|
{ MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
|
||||||
{ MODKEY|ControlMask, XK_1, toggleview, tags[0] },
|
{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
|
||||||
{ MODKEY|ControlMask, XK_2, toggleview, tags[1] },
|
{ MODKEY, XK_space, setlayout, {0} },
|
||||||
{ MODKEY|ControlMask, XK_3, toggleview, tags[2] },
|
{ MODKEY|ShiftMask, XK_space, togglefloating, {0} },
|
||||||
{ MODKEY|ControlMask, XK_4, toggleview, tags[3] },
|
{ MODKEY, XK_0, view, {.ui = ~0 } },
|
||||||
{ MODKEY|ControlMask, XK_5, toggleview, tags[4] },
|
{ MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
|
||||||
{ MODKEY|ControlMask, XK_6, toggleview, tags[5] },
|
TAGKEYS( XK_1, 0)
|
||||||
{ MODKEY|ControlMask, XK_7, toggleview, tags[6] },
|
TAGKEYS( XK_2, 1)
|
||||||
{ MODKEY|ControlMask, XK_8, toggleview, tags[7] },
|
TAGKEYS( XK_3, 2)
|
||||||
{ MODKEY|ControlMask, XK_9, toggleview, tags[8] },
|
TAGKEYS( XK_4, 3)
|
||||||
{ MODKEY|ShiftMask, XK_0, tag, NULL },
|
TAGKEYS( XK_5, 4)
|
||||||
{ MODKEY|ShiftMask, XK_1, tag, tags[0] },
|
TAGKEYS( XK_6, 5)
|
||||||
{ MODKEY|ShiftMask, XK_2, tag, tags[1] },
|
TAGKEYS( XK_7, 6)
|
||||||
{ MODKEY|ShiftMask, XK_3, tag, tags[2] },
|
TAGKEYS( XK_8, 7)
|
||||||
{ MODKEY|ShiftMask, XK_4, tag, tags[3] },
|
TAGKEYS( XK_9, 8)
|
||||||
{ MODKEY|ShiftMask, XK_5, tag, tags[4] },
|
{ MODKEY|ShiftMask, XK_q, quit, {0} },
|
||||||
{ 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 },
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* 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
|
# dwm version
|
||||||
VERSION = 4.7
|
VERSION = 5.2
|
||||||
|
|
||||||
# Customize below to fit your system
|
# Customize below to fit your system
|
||||||
|
|
||||||
@ -10,20 +10,22 @@ MANPREFIX = ${PREFIX}/share/man
|
|||||||
X11INC = /usr/X11R6/include
|
X11INC = /usr/X11R6/include
|
||||||
X11LIB = /usr/X11R6/lib
|
X11LIB = /usr/X11R6/lib
|
||||||
|
|
||||||
|
# Xinerama, comment if you don't want it
|
||||||
|
XINERAMALIBS = -L${X11LIB} -lXinerama
|
||||||
|
XINERAMAFLAGS = -DXINERAMA
|
||||||
|
|
||||||
# includes and libs
|
# includes and libs
|
||||||
INCS = -I. -I/usr/include -I${X11INC}
|
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
|
# flags
|
||||||
CFLAGS = -Os ${INCS} -DVERSION=\"${VERSION}\"
|
CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
|
||||||
|
CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
|
||||||
LDFLAGS = -s ${LIBS}
|
LDFLAGS = -s ${LIBS}
|
||||||
#CFLAGS = -g -std=c99 -pedantic -Wall -O2 ${INCS} -DVERSION=\"${VERSION}\"
|
|
||||||
#LDFLAGS = -g ${LIBS}
|
|
||||||
|
|
||||||
# Solaris
|
# Solaris
|
||||||
#CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
|
#CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
|
||||||
#LDFLAGS = ${LIBS}
|
#LDFLAGS = ${LIBS}
|
||||||
#CFLAGS += -xtarget=ultra
|
|
||||||
|
|
||||||
# compiler and linker
|
# compiler and linker
|
||||||
CC = cc
|
CC = cc
|
||||||
|
85
dwm.1
85
dwm.1
@ -5,22 +5,23 @@ dwm \- dynamic window manager
|
|||||||
.B dwm
|
.B dwm
|
||||||
.RB [ \-v ]
|
.RB [ \-v ]
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
dwm is a dynamic window manager for X. It manages windows in tiled and
|
dwm is a dynamic window manager for X. It manages windows in tiled, monocle
|
||||||
floating layouts. Either layout can be applied dynamically, optimizing the
|
and floating layouts. Either layout can be applied dynamically, optimising the
|
||||||
environment for the application in use and the task performed.
|
environment for the application in use and the task performed.
|
||||||
.P
|
.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
|
area contains the window which currently needs most attention, whereas the
|
||||||
stacking area contains all other windows. In floating layout windows can be
|
stacking area contains all other windows. In monocle layout all windows are
|
||||||
resized and moved freely. Dialog windows are always managed floating,
|
maximised to the screen size. In floating layout windows can be resized and
|
||||||
regardless of the layout applied.
|
moved freely. Dialog windows are always managed floating, regardless of the
|
||||||
|
layout applied.
|
||||||
.P
|
.P
|
||||||
Windows are grouped by tags. Each window can be tagged with one or multiple
|
Windows are grouped by tags. Each window can be tagged with one or multiple
|
||||||
tags. Selecting certain tags displays all windows with these tags.
|
tags. Selecting certain tags displays all windows with these tags.
|
||||||
.P
|
.P
|
||||||
dwm contains a small status bar which displays all available tags, the layout,
|
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
|
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 an empty square and a maximised
|
||||||
floating window is indicated with a filled square before the windows
|
floating window is indicated with a filled square before the windows
|
||||||
title. The selected tags are indicated with a different color. The tags of
|
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
|
the focused window are indicated with a filled square in the top left
|
||||||
@ -56,17 +57,20 @@ click on a tag label adds/removes that tag to/from the focused window.
|
|||||||
Start
|
Start
|
||||||
.BR xterm.
|
.BR xterm.
|
||||||
.TP
|
.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
|
.B Mod1\-b
|
||||||
Shows/hides the status bar.
|
Toggles bar on and off.
|
||||||
.TP
|
.TP
|
||||||
.B Mod1\-h
|
.B Mod1\-t
|
||||||
Decreases the master area width about 5% (tiled layout only).
|
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
|
.TP
|
||||||
.B Mod1\-j
|
.B Mod1\-j
|
||||||
Focus next window.
|
Focus next window.
|
||||||
@ -74,34 +78,37 @@ Focus next window.
|
|||||||
.B Mod1\-k
|
.B Mod1\-k
|
||||||
Focus previous window.
|
Focus previous window.
|
||||||
.TP
|
.TP
|
||||||
|
.B Mod1\-h
|
||||||
|
Decrease master area size.
|
||||||
|
.TP
|
||||||
.B Mod1\-l
|
.B Mod1\-l
|
||||||
Increases the master area width about 5% (tiled layout only).
|
Increase master area size.
|
||||||
.TP
|
.TP
|
||||||
.B Mod1\-m
|
.B Mod1\-Return
|
||||||
Toggles maximization of current window.
|
Zooms/cycles focused window to/from master area (tiled layouts only).
|
||||||
.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.
|
|
||||||
.TP
|
.TP
|
||||||
.B Mod1\-Shift\-c
|
.B Mod1\-Shift\-c
|
||||||
Close focused window.
|
Close focused window.
|
||||||
.TP
|
.TP
|
||||||
.B Mod1\-space
|
|
||||||
Toggle between tiled and floating layout (affects all windows).
|
|
||||||
.TP
|
|
||||||
.B Mod1\-Shift\-space
|
.B Mod1\-Shift\-space
|
||||||
Toggle focused window between tiled and floating state.
|
Toggle focused window between tiled and floating state.
|
||||||
.TP
|
.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]
|
.B Mod1\-[1..n]
|
||||||
View all windows with
|
View all windows with
|
||||||
.BR nth
|
.BR nth
|
||||||
@ -120,13 +127,13 @@ Quit dwm.
|
|||||||
.SS Mouse commands
|
.SS Mouse commands
|
||||||
.TP
|
.TP
|
||||||
.B Mod1\-Button1
|
.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
|
.TP
|
||||||
.B Mod1\-Button2
|
.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
|
.TP
|
||||||
.B Mod1\-Button3
|
.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
|
.SH CUSTOMIZATION
|
||||||
dwm is customized by creating a custom config.h and (re)compiling the source
|
dwm is customized by creating a custom config.h and (re)compiling the source
|
||||||
code. This keeps it fast, secure and simple.
|
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):
|
backend instead):
|
||||||
.BR AWT_TOOLKIT=MToolkit .
|
.BR AWT_TOOLKIT=MToolkit .
|
||||||
.P
|
.P
|
||||||
Recent GTK 2.10.9+ versions contain a broken
|
GTK 2.10.9+ versions contain a broken
|
||||||
.BR Save\-As
|
.BR Save\-As
|
||||||
file dialog implementation,
|
file dialog implementation,
|
||||||
which requests to reconfigure its window size in an endless loop. However, its
|
which requests to reconfigure its window size in an endless loop. However, its
|
||||||
|
Reference in New Issue
Block a user