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.default.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[] = { "1", "2", "3", "4", "5", NULL };
7
8 #define DEFMODE                 dotile /* dofloat */
9 #define FLOATSYMBOL             "><>"
10 #define TILESYMBOL              "[]="
11
12 #define FONT                    "fixed"
13 #define NORMBGCOLOR             "#333366"
14 #define NORMFGCOLOR             "#cccccc"
15 #define SELBGCOLOR              "#666699"
16 #define SELFGCOLOR              "#eeeeee"
17 #define STATUSBGCOLOR           "#dddddd"
18 #define STATUSFGCOLOR           "#222222"
19
20 #define MASTER                  600             /* per thousand */
21 #define MODKEY                  Mod1Mask
22 #define NFUNCS                  1               /* number of funcs per key */
23 #define SNAP                    20              /* pixel */
24
25 #define KEYS \
26 static Key key[] = { \
27         /* modifier                     key             functions               arguments */ \
28         { MODKEY|ShiftMask,             XK_Return,      { spawn },              { .cmd = "exec xterm" } }, \
29         { MODKEY,                       XK_Tab,         { focusnext },          { 0 } }, \
30         { MODKEY|ShiftMask,             XK_Tab,         { focusprev },          { 0 } }, \
31         { MODKEY,                       XK_Return,      { zoom },               { 0 } }, \
32         { MODKEY,                       XK_g,           { resizemaster },       { .i = 15 } }, \
33         { MODKEY,                       XK_s,           { resizemaster },       { .i = -15 } }, \
34         { MODKEY|ShiftMask,             XK_1,           { tag },                { .i = 0 } }, \
35         { MODKEY|ShiftMask,             XK_2,           { tag },                { .i = 1 } }, \
36         { MODKEY|ShiftMask,             XK_3,           { tag },                { .i = 2 } }, \
37         { MODKEY|ShiftMask,             XK_4,           { tag },                { .i = 3 } }, \
38         { MODKEY|ShiftMask,             XK_5,           { tag },                { .i = 4 } }, \
39         { MODKEY|ControlMask|ShiftMask, XK_1,           { toggletag },          { .i = 0 } }, \
40         { MODKEY|ControlMask|ShiftMask, XK_2,           { toggletag },          { .i = 1 } }, \
41         { MODKEY|ControlMask|ShiftMask, XK_3,           { toggletag },          { .i = 2 } }, \
42         { MODKEY|ControlMask|ShiftMask, XK_4,           { toggletag },          { .i = 3 } }, \
43         { MODKEY|ControlMask|ShiftMask, XK_5,           { toggletag },          { .i = 4 } }, \
44         { MODKEY|ShiftMask,             XK_c,           { killclient },         { 0 } }, \
45         { MODKEY,                       XK_space,       { togglemode },         { 0 } }, \
46         { MODKEY|ShiftMask,             XK_space,       { togglefloat },        { 0 } }, \
47         { MODKEY,                       XK_0,           { viewall },            { 0 } }, \
48         { MODKEY,                       XK_1,           { view },               { .i = 0 } }, \
49         { MODKEY,                       XK_2,           { view },               { .i = 1 } }, \
50         { MODKEY,                       XK_3,           { view },               { .i = 2 } }, \
51         { MODKEY,                       XK_4,           { view },               { .i = 3 } }, \
52         { MODKEY,                       XK_5,           { view },               { .i = 4 } }, \
53         { MODKEY|ControlMask,           XK_1,           { toggleview },         { .i = 0 } }, \
54         { MODKEY|ControlMask,           XK_2,           { toggleview },         { .i = 1 } }, \
55         { MODKEY|ControlMask,           XK_3,           { toggleview },         { .i = 2 } }, \
56         { MODKEY|ControlMask,           XK_4,           { toggleview },         { .i = 3 } }, \
57         { MODKEY|ControlMask,           XK_5,           { toggleview },         { .i = 4 } }, \
58         { MODKEY|ShiftMask,             XK_q,           { quit },               { 0 } }, \
59 };
60
61 /* Query class:instance:title for regex matching info with following command:
62  * xprop | awk -F '"' '/^WM_CLASS/ { printf("%s:%s:",$4,$2) }; /^WM_NAME/ { printf("%s\n",$2) }' */
63 #define RULES \
64 static Rule rule[] = { \
65         /* class:instance:title regex   tags regex      isfloat */ \
66         { "Firefox.*",                  "2",            False }, \
67         { "Gimp.*",                     NULL,           True }, \
68 };