-/*
- * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
- * See LICENSE file for license details.
- */
+/* See LICENSE file for copyright and license details. */
+/* appearance */
+#define BARPOS BarTop /* BarBot, BarOff */
+#define BORDERPX 1
+#define FONT "-*-terminus-medium-r-*-*-12-*-*-*-*-*-iso10646-*"
+#define NORMBORDERCOLOR "#cccc99"
+#define NORMFGCOLOR "#000000"
+#define NORMBGCOLOR "#ffffea"
+#define SELBORDERCOLOR "#669966"
+#define SELFGCOLOR "#000000"
+#define SELBGCOLOR "#99cc99"
+
+/* tagging */
#define TAGS \
-const char *tags[] = { "work", "net", "fnord", NULL };
+const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9", NULL };
+#define RULES \
+static Rule rules[] = { \
+ /* class:instance:title regex tags regex isfloating */ \
+ { "Firefox", "3", False }, \
+ { "Gimp", NULL, True }, \
+ { "MPlayer", NULL, True }, \
+ { "Acroread", NULL, True }, \
+};
-#define DEFMODE dotile /* dofloat */
-#define FONT "-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*"
-#define NORMBGCOLOR "#666699"
-#define NORMFGCOLOR "#eeeeee"
-#define SELBGCOLOR "#eeeeee"
-#define SELFGCOLOR "#000088"
-#define MODKEY Mod1Mask
-#define MASTERW 60 /* percent */
+/* layout(s) */
+#include "tile.h"
+#define LAYOUTS \
+static Layout layouts[] = { \
+ /* symbol function */ \
+ { "[]=", tile }, /* first entry is default */ \
+ { "><>", floating }, \
+};
+#define RESIZEHINTS True /* False - respect size hints in tiled resizals */
+#define MWFACT 0.6 /* master width factor [0.1 .. 0.9] */
+#define SNAP 32 /* snap pixel */
+/* key definitions */
+#define MODKEY Mod1Mask
#define KEYS \
-static Key key[] = { \
- /* modifier key function arguments */ \
- { MODKEY|ShiftMask, XK_Return, spawn, \
- { .cmd = "exec uxterm -bg '#e0e0e0' -fg '#000000' -cr '#000000' +sb -fn '"FONT"'" } }, \
+Key keys[] = { \
+ /* modifier key function argument */ \
{ MODKEY, XK_p, spawn, \
- { .cmd = "exec `ls -lL /usr/bin /usr/X11R6/bin /usr/local/bin 2>/dev/null | " \
- "awk 'NF>2 && $1 ~ /^[^d].*x/ {print $NF}' | sort -u | dmenu`" } }, \
- { MODKEY, XK_j, focusnext, { 0 } }, \
- { MODKEY, XK_k, focusprev, { 0 } }, \
- { MODKEY, XK_Return, zoom, { 0 } }, \
- { MODKEY, XK_m, togglemax, { 0 } }, \
- { MODKEY|ShiftMask, XK_1, tag, { .i = 0 } }, \
- { MODKEY|ShiftMask, XK_2, tag, { .i = 1 } }, \
- { MODKEY|ShiftMask, XK_3, tag, { .i = 2 } }, \
- { 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|ShiftMask, XK_c, killclient, { 0 } }, \
- { MODKEY, XK_space, togglemode, { 0 } }, \
- { MODKEY, XK_1, view, { .i = 0 } }, \
- { MODKEY, XK_2, view, { .i = 1 } }, \
- { MODKEY, XK_3, view, { .i = 2 } }, \
- { MODKEY|ControlMask, XK_1, toggleview, { .i = 0 } }, \
- { MODKEY|ControlMask, XK_2, toggleview, { .i = 1 } }, \
- { MODKEY|ControlMask, XK_3, toggleview, { .i = 2 } }, \
- { MODKEY|ShiftMask, XK_q, quit, { 0 } }, \
-};
-
-#define RULES \
-static Rule rule[] = { \
- /* class:instance:title regex tags regex isfloat */ \
- { "Firefox.*", "net", False }, \
- { "Gimp.*", NULL, True}, \
- { "MPlayer.*", NULL, True}, \
- { "Acroread.*", NULL, True}, \
+ "exe=`dmenu_path | dmenu -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"'" \
+ " -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'` && exec $exe" }, \
+ { MODKEY|ShiftMask, XK_Return, spawn, \
+ "exec xterm -bg '"NORMBGCOLOR"' -fg '"NORMFGCOLOR"' -cr '"NORMFGCOLOR"' +sb -fn '"FONT"'" }, \
+ { MODKEY, XK_space, setlayout, NULL }, \
+ { MODKEY, XK_b, togglebar, NULL }, \
+ { MODKEY, XK_j, focusnext, NULL }, \
+ { MODKEY, XK_k, focusprev, NULL }, \
+ { MODKEY, XK_h, setmwfact, "-0.05" }, \
+ { MODKEY, XK_l, setmwfact, "+0.05" }, \
+ { MODKEY, XK_m, togglemax, NULL }, \
+ { MODKEY, XK_Return, zoom, NULL }, \
+ { MODKEY|ShiftMask, XK_space, togglefloating, NULL }, \
+ { MODKEY|ShiftMask, XK_c, killclient, NULL }, \
+ { MODKEY, XK_0, view, NULL }, \
+ { MODKEY, XK_1, view, tags[0] }, \
+ { MODKEY, XK_2, view, tags[1] }, \
+ { MODKEY, XK_3, view, tags[2] }, \
+ { MODKEY, XK_4, view, tags[3] }, \
+ { MODKEY, XK_5, view, tags[4] }, \
+ { MODKEY, XK_6, view, tags[5] }, \
+ { MODKEY, XK_7, view, tags[6] }, \
+ { MODKEY, XK_8, view, tags[7] }, \
+ { MODKEY, XK_9, view, tags[8] }, \
+ { MODKEY|ControlMask, XK_1, toggleview, tags[0] }, \
+ { MODKEY|ControlMask, XK_2, toggleview, tags[1] }, \
+ { MODKEY|ControlMask, XK_3, toggleview, tags[2] }, \
+ { MODKEY|ControlMask, XK_4, toggleview, tags[3] }, \
+ { MODKEY|ControlMask, XK_5, toggleview, tags[4] }, \
+ { MODKEY|ControlMask, XK_6, toggleview, tags[5] }, \
+ { MODKEY|ControlMask, XK_7, toggleview, tags[6] }, \
+ { MODKEY|ControlMask, XK_8, toggleview, tags[7] }, \
+ { MODKEY|ControlMask, XK_9, toggleview, tags[8] }, \
+ { MODKEY|ShiftMask, XK_0, tag, NULL }, \
+ { MODKEY|ShiftMask, XK_1, tag, tags[0] }, \
+ { MODKEY|ShiftMask, XK_2, tag, tags[1] }, \
+ { MODKEY|ShiftMask, XK_3, tag, tags[2] }, \
+ { MODKEY|ShiftMask, XK_4, tag, tags[3] }, \
+ { MODKEY|ShiftMask, XK_5, tag, tags[4] }, \
+ { MODKEY|ShiftMask, XK_6, tag, tags[5] }, \
+ { MODKEY|ShiftMask, XK_7, tag, tags[6] }, \
+ { MODKEY|ShiftMask, XK_8, tag, tags[7] }, \
+ { MODKEY|ShiftMask, XK_9, tag, tags[8] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_1, toggletag, tags[0] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_2, toggletag, tags[1] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_3, toggletag, tags[2] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_4, toggletag, tags[3] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_5, toggletag, tags[4] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_6, toggletag, tags[5] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_7, toggletag, tags[6] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_8, toggletag, tags[7] }, \
+ { MODKEY|ControlMask|ShiftMask, XK_9, toggletag, tags[8] }, \
+ { MODKEY|ShiftMask, XK_q, quit, NULL }, \
};