JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
using execl now, argv changed, using cmd and const char defs directly in the KEYS...
[dwm.git] / config.arg.h
1 /*
2  * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
3  * See LICENSE file for license details.
4  */
5
6 #define TAGS \
7 const char *tags[] = { "fnord", "dev", "net", "work", "misc", NULL };
8
9 #define DEFMODE                 dotile /* dofloat */
10 #define DEFTAG                  1 /* index */
11 #define FONT                    "-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*"
12 #define BGCOLOR                 "#0a2c2d"
13 #define FGCOLOR                 "#ddeeee"
14 #define BORDERCOLOR             "#176164"
15 #define MODKEY                  Mod1Mask
16 #define NUMLOCKMASK             Mod2Mask
17 #define MASTERW                 60 /* percent */
18
19 #define KEYS \
20 static Key key[] = { \
21         /* modifier             key             function        arguments */ \
22         { MODKEY,               XK_0,           view,           { .i = 0 } }, \
23         { MODKEY,               XK_1,           view,           { .i = 1 } }, \
24         { MODKEY,               XK_2,           view,           { .i = 2 } }, \
25         { MODKEY,               XK_3,           view,           { .i = 3 } }, \
26         { MODKEY,               XK_4,           view,           { .i = 4 } }, \
27         { MODKEY,               XK_h,           viewprev,       { 0 } }, \
28         { MODKEY,               XK_j,           focusnext,      { 0 } }, \
29         { MODKEY,               XK_k,           focusprev,      { 0 } }, \
30         { MODKEY,               XK_l,           viewnext,       { 0 } }, \
31         { MODKEY,               XK_m,           togglemax,      { 0 } }, \
32         { MODKEY,               XK_space,       togglemode,     { 0 } }, \
33         { MODKEY,               XK_Return,      zoom,           { 0 } }, \
34         { MODKEY|ControlMask,   XK_0,           appendtag,      { .i = 0 } }, \
35         { MODKEY|ControlMask,   XK_1,           appendtag,      { .i = 1 } }, \
36         { MODKEY|ControlMask,   XK_2,           appendtag,      { .i = 2 } }, \
37         { MODKEY|ControlMask,   XK_3,           appendtag,      { .i = 3 } }, \
38         { MODKEY|ControlMask,   XK_4,           appendtag,      { .i = 4 } }, \
39         { MODKEY|ShiftMask,     XK_0,           replacetag,     { .i = 0 } }, \
40         { MODKEY|ShiftMask,     XK_1,           replacetag,     { .i = 1 } }, \
41         { MODKEY|ShiftMask,     XK_2,           replacetag,     { .i = 2 } }, \
42         { MODKEY|ShiftMask,     XK_3,           replacetag,     { .i = 3 } }, \
43         { MODKEY|ShiftMask,     XK_4,           replacetag,     { .i = 5 } }, \
44         { MODKEY|ShiftMask,     XK_c,           killclient,     { 0 } }, \
45         { MODKEY|ShiftMask,     XK_q,           quit,           { 0 } }, \
46         { MODKEY|ShiftMask,     XK_x,           spawn, \
47                 { .cmd = "exec `ls -lL /usr/bin /usr/local/bin 2>/dev/null |" \
48                 " awk 'NF>2 && $1 ~ /^[^d].*x/ {print $NF}' | sort | uniq | dmenu`" } }, \
49         { MODKEY|ShiftMask,     XK_Return,      spawn, \
50                 { .cmd = "exec urxvt -tr +sb -bg black -fg white -cr white " \
51                         "-fn '-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*'" } }, \
52 };
53
54 #define RULES \
55         const unsigned int two[] = { 2 }; \
56 static Rule rule[] = { \
57         /* class:instance       tags            isfloat */ \
58         { "Firefox.*",          two,            False }, \
59         { "Gimp.*",             NULL,           True}, \
60         { "MPlayer.*",          NULL,           True}, \
61         { "Acroread.*",         NULL,           True}, \
62 };