#define TAGS \ const char *tags[] = { "work", "net", "dev", "p2p", "misc", NULL }; #define DEFMODE dotile /* dofloat */ #define FLOATSYMBOL "F" #define TILESYMBOL "T" #define WIDESYMBOL "W" #define FONT "-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*" #define SELBGCOLOR "#3a588e" #define SELFGCOLOR "#eeeeee" //#define NORMBGCOLOR "#4d4e4f" #define NORMBGCOLOR "#05090E" #define NORMFGCOLOR "#ababab" #define STATUSFGCOLOR "#5785d6" //#define STATUSBGCOLOR "#4d4e4f" #define STATUSBGCOLOR "#05090E" #define MODKEY Mod1Mask #define MASTER 600 /* per thousand */ #define KEYS \ static Key key[] = { \ /* modifier key function arguments */ \ { MODKEY, XK_Return, spawn, { .cmd = "exec urxvtc" } }, \ { MODKEY|ControlMask, XK_f, spawn, { .cmd = "exec firefox2" } }, \ { MODKEY|ControlMask, XK_n, spawn, { .cmd = "exec nicotine" } }, \ { MODKEY|ControlMask, XK_a, spawn, { .cmd = "exec azureus" } }, \ { MODKEY|ControlMask, XK_m, spawn, { .cmd = "exec urxvtc -e mocp" } }, \ { MODKEY|ControlMask, XK_h, spawn, { .cmd = "exec urxvtc -e htop" } }, \ { MODKEY|ControlMask, XK_i, spawn, { .cmd = "exec urxvtc -e irssi" } }, \ { MODKEY|ControlMask, XK_u, spawn, { .cmd = "exec urxvtc -e muttngcheck.sh" } }, \ { MODKEY, XK_Down, focusnext, { 0 } }, \ { MODKEY, XK_Up, focusprev, { 0 } }, \ { MODKEY, XK_Left, focusprev, { 0 } }, \ { MODKEY, XK_Right, focusnext, { 0 } }, \ { MODKEY, XK_m, zoom, { 0 } }, \ /* { MODKEY, XK_o, togglelayout, { 0 } }, */ \ { MODKEY, XK_period, resizecol, { .i = 20 } }, \ { MODKEY, XK_comma, resizecol, { .i = -20 } }, \ { 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, 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 } }, \ { MODKEY, XK_p, spawn, \ { .cmd = "exe=$(echo ""| dmenu -font '"FONT"' -normbg '"NORMBGCOLOR"' -normfg '"NORMFGCOLOR"' -selbg '"SELBGCOLOR"' -selfg '"SELFGCOLOR"') && exec $exe " } }, \ { 0, 0x1008ff12, spawn, { .cmd = "if amixer get PCM,0|grep \"\\[on\\]\" - > /dev/null; then amixer set PCM,0 mute > /dev/null; else amixer set PCM,0 unmute > /dev/null; fi" } }, \ { 0 , 0x1008ff11, spawn, { .cmd = "amixer set PCM,0 1-" } }, \ { 0 , 0x1008ff13, spawn, { .cmd = "amixer set PCM,0 1+" } }, \ { 0 , 0x1008ff14, spawn, { .cmd = "mocp --toggle-pause" } }, \ { 0 , 0x1008ff16, spawn, { .cmd = "mocp --previous" } }, \ { 0 , 0x1008ff17, spawn, { .cmd = "mocp --next" } }, \ /* { 0 , 0x1008ff18, spawn, { .cmd = "mocp --stop" } } */ \ }; /* Query class:instance:title for regex matching info with following command: * xprop | awk -F '"' '/^WM_CLASS/ { printf("%s:%s:",$4,$2) }; /^WM_NAME/ { printf("%s\n",$2) }' */ #define RULES \ static Rule rule[] = { \ /* class:instance:title regex tags regex isfloat */ \ { "Firefox.*", "net", False }, \ { "Azureus.*", "p2p", False }, \ { "Nicotine.*", "p2p", False }, \ { "Gimp.*", NULL, True }, \ { "MPlayer.*", NULL, True }, \ { "feh.*", NULL, True }, \ };