changing Key.func into Key.func[NFUNCS], this allows sequences execution of functions per keypress (avoids implementing useless masterfunctions which call atomic ones)

This commit is contained in:
arg@mig29
2006-11-27 13:21:38 +01:00
parent 8dc86051df
commit 19390b1a91
3 changed files with 72 additions and 69 deletions

View File

@ -17,44 +17,45 @@ const char *tags[] = { "1", "2", "3", "4", "5", NULL };
#define STATUSBGCOLOR "#dddddd"
#define STATUSFGCOLOR "#222222"
#define MASTER 600 /* per thousand */
#define MASTER 600 /* per thousand */
#define MODKEY Mod1Mask
#define SNAP 20 /* pixel */
#define NFUNCS 1 /* number of funcs per key */
#define SNAP 20 /* pixel */
#define KEYS \
static Key key[] = { \
/* modifier key function arguments */ \
{ MODKEY|ShiftMask, XK_Return, spawn, { .cmd = "exec xterm" } }, \
{ MODKEY, XK_Tab, focusnext, { 0 } }, \
{ MODKEY|ShiftMask, XK_Tab, focusprev, { 0 } }, \
{ MODKEY, XK_Return, zoom, { 0 } }, \
{ MODKEY, XK_g, resizemaster, { .i = 15 } }, \
{ MODKEY, XK_s, resizemaster, { .i = -15 } }, \
{ MODKEY|ShiftMask, XK_1, tag, { .i = 0 } }, \
{ MODKEY|ShiftMask, XK_2, tag, { .i = 1 } }, \
{ MODKEY|ShiftMask, XK_3, tag, { .i = 2 } }, \
{ MODKEY|ShiftMask, XK_4, tag, { .i = 3 } }, \
{ MODKEY|ShiftMask, XK_5, tag, { .i = 4 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_1, toggletag, { .i = 0 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_2, toggletag, { .i = 1 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_3, toggletag, { .i = 2 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_4, toggletag, { .i = 3 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_5, toggletag, { .i = 4 } }, \
{ MODKEY|ShiftMask, XK_c, killclient, { 0 } }, \
{ MODKEY, XK_space, togglemode, { 0 } }, \
{ MODKEY|ShiftMask, XK_space, togglefloat, { 0 } }, \
{ MODKEY, XK_0, viewall, { 0 } }, \
{ MODKEY, XK_1, view, { .i = 0 } }, \
{ MODKEY, XK_2, view, { .i = 1 } }, \
{ MODKEY, XK_3, view, { .i = 2 } }, \
{ MODKEY, XK_4, view, { .i = 3 } }, \
{ MODKEY, XK_5, view, { .i = 4 } }, \
{ MODKEY|ControlMask, XK_1, toggleview, { .i = 0 } }, \
{ MODKEY|ControlMask, XK_2, toggleview, { .i = 1 } }, \
{ MODKEY|ControlMask, XK_3, toggleview, { .i = 2 } }, \
{ MODKEY|ControlMask, XK_4, toggleview, { .i = 3 } }, \
{ MODKEY|ControlMask, XK_5, toggleview, { .i = 4 } }, \
{ MODKEY|ShiftMask, XK_q, quit, { 0 } }, \
/* modifier key functions arguments */ \
{ MODKEY|ShiftMask, XK_Return, { spawn }, { .cmd = "exec xterm" } }, \
{ MODKEY, XK_Tab, { focusnext }, { 0 } }, \
{ MODKEY|ShiftMask, XK_Tab, { focusprev }, { 0 } }, \
{ MODKEY, XK_Return, { zoom }, { 0 } }, \
{ MODKEY, XK_g, { resizemaster }, { .i = 15 } }, \
{ MODKEY, XK_s, { resizemaster }, { .i = -15 } }, \
{ MODKEY|ShiftMask, XK_1, { tag }, { .i = 0 } }, \
{ MODKEY|ShiftMask, XK_2, { tag }, { .i = 1 } }, \
{ MODKEY|ShiftMask, XK_3, { tag }, { .i = 2 } }, \
{ MODKEY|ShiftMask, XK_4, { tag }, { .i = 3 } }, \
{ MODKEY|ShiftMask, XK_5, { tag }, { .i = 4 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_1, { toggletag }, { .i = 0 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_2, { toggletag }, { .i = 1 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_3, { toggletag }, { .i = 2 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_4, { toggletag }, { .i = 3 } }, \
{ MODKEY|ControlMask|ShiftMask, XK_5, { toggletag }, { .i = 4 } }, \
{ MODKEY|ShiftMask, XK_c, { killclient }, { 0 } }, \
{ MODKEY, XK_space, { togglemode }, { 0 } }, \
{ MODKEY|ShiftMask, XK_space, { togglefloat }, { 0 } }, \
{ MODKEY, XK_0, { viewall }, { 0 } }, \
{ MODKEY, XK_1, { view }, { .i = 0 } }, \
{ MODKEY, XK_2, { view }, { .i = 1 } }, \
{ MODKEY, XK_3, { view }, { .i = 2 } }, \
{ MODKEY, XK_4, { view }, { .i = 3 } }, \
{ MODKEY, XK_5, { view }, { .i = 4 } }, \
{ MODKEY|ControlMask, XK_1, { toggleview }, { .i = 0 } }, \
{ MODKEY|ControlMask, XK_2, { toggleview }, { .i = 1 } }, \
{ MODKEY|ControlMask, XK_3, { toggleview }, { .i = 2 } }, \
{ MODKEY|ControlMask, XK_4, { toggleview }, { .i = 3 } }, \
{ MODKEY|ControlMask, XK_5, { toggleview }, { .i = 4 } }, \
{ MODKEY|ShiftMask, XK_q, { quit }, { 0 } }, \
};
/* Query class:instance:title for regex matching info with following command: