JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
changing Key.func into Key.func[NFUNCS], this allows sequences execution of functions...
[dwm.git] / config.arg.h
1 /* (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
2  * See LICENSE file for license details.
3  */
4
5 #define TAGS \
6 const char *tags[] = { "dev", "work", "net", "fnord", NULL };
7
8 #define DEFMODE                 dotile          /* dofloat */
9 #define FLOATSYMBOL             "><>"
10 #define TILESYMBOL              "[]="
11
12 #define FONT                    "-*-terminus-medium-*-*-*-14-*-*-*-*-*-iso10646-*"
13 #define NORMBGCOLOR             "#333333"
14 #define NORMFGCOLOR             "#dddddd"
15 #define SELBGCOLOR              "#336699"
16 #define SELFGCOLOR              "#eeeeee"
17 #define STATUSBGCOLOR           "#222222"
18 #define STATUSFGCOLOR           "#99ccff"
19
20 #define MASTER                  600             /* per thousand */
21 #define MODKEY                  Mod1Mask
22 #define NFUNCS                  1               /* number of funcs per key */
23 #define SNAP                    40              /* pixel */
24
25 #define KEYS \
26 static Key key[] = { \
27         /* modifier                     key             functions               arguments */ \
28         { MODKEY|ShiftMask,             XK_Return,      { spawn }, \
29                 { .cmd = "exec urxvtc -tr -bg black -fg '#eeeeee' -cr '#eeeeee' +sb -fn '"FONT"'" } }, \
30         { MODKEY,                       XK_p,           { spawn }, \
31                 { .cmd = "exe=\"$(lsx `echo $PATH | sed 's/:/ /g'` | sort -u " \
32                         " | dmenu -font '"FONT"' -normbg '"NORMBGCOLOR"' -normfg '"NORMFGCOLOR"' " \
33                         "-selbg '"SELBGCOLOR"' -selfg '"SELFGCOLOR"')\" && exec $exe" } }, \
34         { MODKEY,                       XK_j,           { focusnext },          { 0 } }, \
35         { MODKEY,                       XK_k,           { focusprev },          { 0 } }, \
36         { MODKEY,                       XK_Return,      { zoom },               { 0 } }, \
37         { MODKEY,                       XK_g,           { resizemaster },       { .i = 15 } }, \
38         { MODKEY,                       XK_s,           { resizemaster },       { .i = -15 } }, \
39         { MODKEY|ShiftMask,             XK_1,           { tag },                { .i = 0 } }, \
40         { MODKEY|ShiftMask,             XK_2,           { tag },                { .i = 1 } }, \
41         { MODKEY|ShiftMask,             XK_3,           { tag },                { .i = 2 } }, \
42         { MODKEY|ShiftMask,             XK_4,           { tag },                { .i = 3 } }, \
43         { MODKEY|ControlMask|ShiftMask, XK_1,           { toggletag },          { .i = 0 } }, \
44         { MODKEY|ControlMask|ShiftMask, XK_2,           { toggletag },          { .i = 1 } }, \
45         { MODKEY|ControlMask|ShiftMask, XK_3,           { toggletag },          { .i = 2 } }, \
46         { MODKEY|ControlMask|ShiftMask, XK_4,           { toggletag },          { .i = 3 } }, \
47         { MODKEY|ShiftMask,             XK_c,           { killclient },         { 0 } }, \
48         { MODKEY,                       XK_space,       { togglemode },         { 0 } }, \
49         { MODKEY|ShiftMask,             XK_space,       { togglefloat },        { 0 } }, \
50         { MODKEY,                       XK_0,           { viewall },            { 0 } }, \
51         { MODKEY,                       XK_1,           { view },               { .i = 0 } }, \
52         { MODKEY,                       XK_2,           { view },               { .i = 1 } }, \
53         { MODKEY,                       XK_3,           { view },               { .i = 2 } }, \
54         { MODKEY,                       XK_4,           { view },               { .i = 3 } }, \
55         { MODKEY|ControlMask,           XK_1,           { toggleview },         { .i = 0 } }, \
56         { MODKEY|ControlMask,           XK_2,           { toggleview },         { .i = 1 } }, \
57         { MODKEY|ControlMask,           XK_3,           { toggleview },         { .i = 2 } }, \
58         { MODKEY|ControlMask,           XK_4,           { toggleview },         { .i = 3 } }, \
59         { MODKEY|ShiftMask,             XK_q,           { quit },               { 0 } }, \
60 };
61
62 #define RULES \
63 static Rule rule[] = { \
64         /* class:instance:title regex   tags regex      isfloat */ \
65         { "Firefox.*",                  "net",          False }, \
66         { "Gimp.*",                     NULL,           True }, \
67         { "MPlayer.*",                  NULL,           True }, \
68         { "Acroread.*",                 NULL,           True }, \
69 };