16 #define NUMLOCKMASK Mod2Mask |
16 #define NUMLOCKMASK Mod2Mask |
17 #define MASTERW 60 /* percent */ |
17 #define MASTERW 60 /* percent */ |
18 |
18 |
19 #define KEYS \ |
19 #define KEYS \ |
20 static Key key[] = { \ |
20 static Key key[] = { \ |
21 /* modifier key function arguments */ \ |
21 /* modifier key function arguments */ \ |
22 { MODKEY, XK_0, view, { .i = 0 } }, \ |
22 { MODKEY, XK_0, view, { .i = 0 } }, \ |
23 { MODKEY, XK_1, view, { .i = 1 } }, \ |
23 { MODKEY, XK_1, view, { .i = 1 } }, \ |
24 { MODKEY, XK_2, view, { .i = 2 } }, \ |
24 { MODKEY, XK_2, view, { .i = 2 } }, \ |
25 { MODKEY, XK_3, view, { .i = 3 } }, \ |
25 { MODKEY, XK_3, view, { .i = 3 } }, \ |
26 { MODKEY, XK_4, view, { .i = 4 } }, \ |
26 { MODKEY, XK_4, view, { .i = 4 } }, \ |
27 { MODKEY, XK_h, viewprev, { 0 } }, \ |
27 { MODKEY, XK_h, viewprev, { 0 } }, \ |
28 { MODKEY, XK_j, focusnext, { 0 } }, \ |
28 { MODKEY, XK_j, focusnext, { 0 } }, \ |
29 { MODKEY, XK_k, focusprev, { 0 } }, \ |
29 { MODKEY, XK_k, focusprev, { 0 } }, \ |
30 { MODKEY, XK_l, viewnext, { 0 } }, \ |
30 { MODKEY, XK_l, viewnext, { 0 } }, \ |
31 { MODKEY, XK_m, togglemax, { 0 } }, \ |
31 { MODKEY, XK_m, togglemax, { 0 } }, \ |
32 { MODKEY, XK_space, togglemode, { 0 } }, \ |
32 { MODKEY, XK_space, togglemode, { 0 } }, \ |
33 { MODKEY, XK_Return, zoom, { 0 } }, \ |
33 { MODKEY, XK_Return, zoom, { 0 } }, \ |
34 { MODKEY|ControlMask, XK_0, appendtag, { .i = 0 } }, \ |
34 { MODKEY|ControlMask, XK_0, appendtag, { .i = 0 } }, \ |
35 { MODKEY|ControlMask, XK_1, appendtag, { .i = 1 } }, \ |
35 { MODKEY|ControlMask, XK_1, appendtag, { .i = 1 } }, \ |
36 { MODKEY|ControlMask, XK_2, appendtag, { .i = 2 } }, \ |
36 { MODKEY|ControlMask, XK_2, appendtag, { .i = 2 } }, \ |
37 { MODKEY|ControlMask, XK_3, appendtag, { .i = 3 } }, \ |
37 { MODKEY|ControlMask, XK_3, appendtag, { .i = 3 } }, \ |
38 { MODKEY|ControlMask, XK_4, appendtag, { .i = 4 } }, \ |
38 { MODKEY|ControlMask, XK_4, appendtag, { .i = 4 } }, \ |
39 { MODKEY|ShiftMask, XK_0, replacetag, { .i = 0 } }, \ |
39 { MODKEY|ShiftMask, XK_0, replacetag, { .i = 0 } }, \ |
40 { MODKEY|ShiftMask, XK_1, replacetag, { .i = 1 } }, \ |
40 { MODKEY|ShiftMask, XK_1, replacetag, { .i = 1 } }, \ |
41 { MODKEY|ShiftMask, XK_2, replacetag, { .i = 2 } }, \ |
41 { MODKEY|ShiftMask, XK_2, replacetag, { .i = 2 } }, \ |
42 { MODKEY|ShiftMask, XK_3, replacetag, { .i = 3 } }, \ |
42 { MODKEY|ShiftMask, XK_3, replacetag, { .i = 3 } }, \ |
43 { MODKEY|ShiftMask, XK_4, replacetag, { .i = 4 } }, \ |
43 { MODKEY|ShiftMask, XK_4, replacetag, { .i = 4 } }, \ |
44 { MODKEY|ShiftMask, XK_c, killclient, { 0 } }, \ |
44 { MODKEY|ShiftMask, XK_c, killclient, { 0 } }, \ |
45 { MODKEY|ShiftMask, XK_q, quit, { 0 } }, \ |
45 { MODKEY|ShiftMask, XK_q, quit, { 0 } }, \ |
46 { MODKEY|ShiftMask, XK_Return, spawn, { .cmd = "exec xterm" } }, \ |
46 { MODKEY|ShiftMask, XK_Return, spawn, { .cmd = "exec xterm" } }, \ |
|
47 { MODKEY|ControlMask|ShiftMask, XK_0, viewextend, { .i = 0 } }, \ |
|
48 { MODKEY|ControlMask|ShiftMask, XK_1, viewextend, { .i = 1 } }, \ |
|
49 { MODKEY|ControlMask|ShiftMask, XK_2, viewextend, { .i = 2 } }, \ |
|
50 { MODKEY|ControlMask|ShiftMask, XK_3, viewextend, { .i = 3 } }, \ |
|
51 { MODKEY|ControlMask|ShiftMask, XK_4, viewextend, { .i = 4 } }, \ |
47 }; |
52 }; |
48 |
53 |
49 #define RULES \ |
54 #define RULES \ |
50 static Rule rule[] = { \ |
55 static Rule rule[] = { \ |
51 /* class:instance regex tags regex isfloat */ \ |
56 /* class:instance regex tags regex isfloat */ \ |