2 * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com> |
2 * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com> |
3 * See LICENSE file for license details. |
3 * See LICENSE file for license details. |
4 */ |
4 */ |
5 |
5 |
6 #define TAGS \ |
6 #define TAGS \ |
7 const char *tags[] = { "work", "net", "fnord", NULL }; |
7 const char *tags[] = { "1", "2", "3", "4", "5", NULL }; |
8 |
8 |
9 #define DEFMODE dotile /* dofloat */ |
9 #define DEFMODE dotile /* dofloat */ |
10 #define FONT "-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*" |
10 |
11 #define BGCOLOR "#666699" |
11 #define FONT "fixed" |
12 #define FGCOLOR "#eeeeee" |
12 #define SELBGCOLOR "#666699" |
13 #define BORDERCOLOR "#9999CC" |
13 #define SELFGCOLOR "#eeeeee" |
|
14 #define NORMBGCOLOR "#333366" |
|
15 #define NORMFGCOLOR "#cccccc" |
|
16 #define STATUSBGCOLOR "#dddddd" |
|
17 #define STATUSFGCOLOR "#222222" |
|
18 |
14 #define MODKEY Mod1Mask |
19 #define MODKEY Mod1Mask |
15 #define MASTERW 60 /* percent */ |
20 #define MASTERW 60 /* percent */ |
16 |
21 |
17 #define KEYS \ |
22 #define KEYS \ |
18 static Key key[] = { \ |
23 static Key key[] = { \ |
19 /* modifier key function arguments */ \ |
24 /* modifier key function arguments */ \ |
20 { MODKEY|ShiftMask, XK_Return, spawn, \ |
25 { MODKEY|ShiftMask, XK_Return, spawn, { .cmd = "exec xterm" } }, \ |
21 { .cmd = "exec uxterm -bg '#e0e0e0' -fg '#000000' -cr '#000000' +sb -fn '"FONT"'" } }, \ |
26 { MODKEY, XK_Tab, focusnext, { 0 } }, \ |
22 { MODKEY, XK_p, spawn, \ |
27 { MODKEY|ShiftMask, XK_Tab, focusprev, { 0 } }, \ |
23 { .cmd = "exec `ls -lL /usr/bin /usr/X11R6/bin /usr/local/bin 2>/dev/null | " \ |
|
24 "awk 'NF>2 && $1 ~ /^[^d].*x/ {print $NF}' | sort -u | dmenu`" } }, \ |
|
25 { MODKEY, XK_j, focusnext, { 0 } }, \ |
|
26 { MODKEY, XK_k, focusprev, { 0 } }, \ |
|
27 { MODKEY, XK_Return, zoom, { 0 } }, \ |
28 { MODKEY, XK_Return, zoom, { 0 } }, \ |
28 { MODKEY, XK_m, togglemax, { 0 } }, \ |
29 { MODKEY, XK_m, togglemax, { 0 } }, \ |
29 { MODKEY|ShiftMask, XK_1, tag, { .i = 0 } }, \ |
30 { MODKEY|ShiftMask, XK_1, tag, { .i = 0 } }, \ |
30 { MODKEY|ShiftMask, XK_2, tag, { .i = 1 } }, \ |
31 { MODKEY|ShiftMask, XK_2, tag, { .i = 1 } }, \ |
31 { MODKEY|ShiftMask, XK_3, tag, { .i = 2 } }, \ |
32 { MODKEY|ShiftMask, XK_3, tag, { .i = 2 } }, \ |
|
33 { MODKEY|ShiftMask, XK_4, tag, { .i = 3 } }, \ |
|
34 { MODKEY|ShiftMask, XK_5, tag, { .i = 4 } }, \ |
32 { MODKEY|ControlMask|ShiftMask, XK_1, toggletag, { .i = 0 } }, \ |
35 { MODKEY|ControlMask|ShiftMask, XK_1, toggletag, { .i = 0 } }, \ |
33 { MODKEY|ControlMask|ShiftMask, XK_2, toggletag, { .i = 1 } }, \ |
36 { MODKEY|ControlMask|ShiftMask, XK_2, toggletag, { .i = 1 } }, \ |
34 { MODKEY|ControlMask|ShiftMask, XK_3, toggletag, { .i = 2 } }, \ |
37 { MODKEY|ControlMask|ShiftMask, XK_3, toggletag, { .i = 2 } }, \ |
|
38 { MODKEY|ControlMask|ShiftMask, XK_4, toggletag, { .i = 3 } }, \ |
|
39 { MODKEY|ControlMask|ShiftMask, XK_5, toggletag, { .i = 4 } }, \ |
35 { MODKEY|ShiftMask, XK_c, killclient, { 0 } }, \ |
40 { MODKEY|ShiftMask, XK_c, killclient, { 0 } }, \ |
36 { MODKEY, XK_space, togglemode, { 0 } }, \ |
41 { MODKEY, XK_space, togglemode, { 0 } }, \ |
37 { MODKEY, XK_1, view, { .i = 0 } }, \ |
42 { MODKEY, XK_1, view, { .i = 0 } }, \ |
38 { MODKEY, XK_2, view, { .i = 1 } }, \ |
43 { MODKEY, XK_2, view, { .i = 1 } }, \ |
39 { MODKEY, XK_3, view, { .i = 2 } }, \ |
44 { MODKEY, XK_3, view, { .i = 2 } }, \ |
|
45 { MODKEY, XK_4, view, { .i = 3 } }, \ |
|
46 { MODKEY, XK_5, view, { .i = 4 } }, \ |
40 { MODKEY|ControlMask, XK_1, toggleview, { .i = 0 } }, \ |
47 { MODKEY|ControlMask, XK_1, toggleview, { .i = 0 } }, \ |
41 { MODKEY|ControlMask, XK_2, toggleview, { .i = 1 } }, \ |
48 { MODKEY|ControlMask, XK_2, toggleview, { .i = 1 } }, \ |
42 { MODKEY|ControlMask, XK_3, toggleview, { .i = 2 } }, \ |
49 { MODKEY|ControlMask, XK_3, toggleview, { .i = 2 } }, \ |
|
50 { MODKEY|ControlMask, XK_4, toggleview, { .i = 3 } }, \ |
|
51 { MODKEY|ControlMask, XK_5, toggleview, { .i = 4 } }, \ |
43 { MODKEY|ShiftMask, XK_q, quit, { 0 } }, \ |
52 { MODKEY|ShiftMask, XK_q, quit, { 0 } }, \ |
44 }; |
53 }; |
45 |
54 |
|
55 /* Query class:instance:title for regex matching info with following command: |
|
56 * xprop | awk -F '"' '/^WM_CLASS/ { printf("%s:%s:",$4,$2) }; /^WM_NAME/{ printf("%s\n",$2) }' */ |
46 #define RULES \ |
57 #define RULES \ |
47 static Rule rule[] = { \ |
58 static Rule rule[] = { \ |
48 /* class:instance:title regex tags regex isfloat */ \ |
59 /* class:instance:title regex tags regex isfloat */ \ |
49 { "Firefox.*", "net", False }, \ |
60 { "Firefox.*", "2", False }, \ |
50 { "Gimp.*", NULL, True}, \ |
61 { "Gimp.*", NULL, True}, \ |
51 { "MPlayer.*", NULL, True}, \ |
|
52 { "Acroread.*", NULL, True}, \ |
|
53 }; |
62 }; |