arg@146: /* arg@146: * (C)opyright MMVI Anselm R. Garbe arg@146: * See LICENSE file for license details. arg@146: */ arg@146: arg@160: enum { Tfnord, Tdev, Tnet, Twork, Tmisc, TLast }; arg@146: #define TAGS \ arg@146: char *tags[TLast] = { \ arg@146: [Tfnord] = "fnord", \ arg@146: [Tdev] = "dev", \ arg@146: [Tnet] = "net", \ arg@146: [Twork] = "work", \ arg@146: [Tmisc] = "misc", \ arg@146: }; arg@164: arg@164: #define DEFMODE dotile /* dofloat */ arg@160: #define DEFTAG Tdev arg@164: #define FONT "-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*" arg@164: #define BGCOLOR "#0a2c2d" arg@164: #define FGCOLOR "#ddeeee" arg@164: #define BORDERCOLOR "#176164" arg@164: #define MODKEY Mod1Mask arg@164: #define NUMLOCKMASK Mod2Mask arg@164: #define MASTERW 52 /* percent */ arg@146: arg@152: #define KEYS \ arg@146: const char *browse[] = { "firefox", NULL }; \ arg@146: const char *gimp[] = { "gimp", NULL }; \ arg@146: const char *term[] = { \ arg@146: "urxvt", "-tr", "+sb", "-bg", "black", "-fg", "white", "-cr", "white", \ arg@146: "-fn", "-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*", NULL \ arg@146: }; \ arg@152: const char *xlock[] = { "xlock", NULL }; \ arg@146: static Key key[] = { \ arg@146: /* modifier key function arguments */ \ arg@146: { MODKEY, XK_0, view, { .i = Tfnord } }, \ arg@146: { MODKEY, XK_1, view, { .i = Tdev } }, \ arg@146: { MODKEY, XK_2, view, { .i = Tnet } }, \ arg@146: { MODKEY, XK_3, view, { .i = Twork } }, \ arg@146: { MODKEY, XK_4, view, { .i = Tmisc} }, \ arg@146: { MODKEY, XK_h, viewprev, { 0 } }, \ arg@146: { MODKEY, XK_j, focusnext, { 0 } }, \ arg@146: { MODKEY, XK_k, focusprev, { 0 } }, \ arg@146: { MODKEY, XK_l, viewnext, { 0 } }, \ arg@146: { MODKEY, XK_m, togglemax, { 0 } }, \ arg@146: { MODKEY, XK_space, togglemode, { 0 } }, \ arg@146: { MODKEY, XK_Return, zoom, { 0 } }, \ arg@146: { MODKEY|ControlMask, XK_0, appendtag, { .i = Tfnord } }, \ arg@146: { MODKEY|ControlMask, XK_1, appendtag, { .i = Tdev } }, \ arg@146: { MODKEY|ControlMask, XK_2, appendtag, { .i = Tnet } }, \ arg@146: { MODKEY|ControlMask, XK_3, appendtag, { .i = Twork } }, \ arg@146: { MODKEY|ControlMask, XK_4, appendtag, { .i = Tmisc } }, \ arg@146: { MODKEY|ShiftMask, XK_0, replacetag, { .i = Tfnord } }, \ arg@146: { MODKEY|ShiftMask, XK_1, replacetag, { .i = Tdev } }, \ arg@146: { MODKEY|ShiftMask, XK_2, replacetag, { .i = Tnet } }, \ arg@146: { MODKEY|ShiftMask, XK_3, replacetag, { .i = Twork } }, \ arg@146: { MODKEY|ShiftMask, XK_4, replacetag, { .i = Tmisc } }, \ arg@146: { MODKEY|ShiftMask, XK_c, killclient, { 0 } }, \ arg@146: { MODKEY|ShiftMask, XK_q, quit, { 0 } }, \ arg@146: { MODKEY|ShiftMask, XK_Return, spawn, { .argv = term } }, \ arg@146: { MODKEY|ShiftMask, XK_g, spawn, { .argv = gimp } }, \ arg@146: { MODKEY|ShiftMask, XK_l, spawn, { .argv = xlock } }, \ arg@146: { MODKEY|ShiftMask, XK_w, spawn, { .argv = browse } }, \ arg@146: }; arg@146: arg@146: #define RULES \ arg@146: static Rule rule[] = { \ arg@146: /* class:instance tags isfloat */ \ arg@146: { "Firefox.*", { [Tnet] = "net" }, False }, \ arg@146: { "Gimp.*", { 0 }, True}, \ arg@146: };