You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.7 KiB

19 years ago
19 years ago
18 years ago
  1. /*
  2. * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
  3. * See LICENSE file for license details.
  4. */
  5. #define TAGS \
  6. const char *tags[] = { "dev", "work", "net", "fnord", NULL };
  7. #define DEFMODE dotile /* dofloat */
  8. #define FLOATSYMBOL "><>"
  9. #define STACKPOS StackRight /* StackLeft */
  10. #define BSTACKSYMBOL "==="
  11. #define VSTACKSYMBOL "[]="
  12. #define FONT "-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*"
  13. #define NORMBGCOLOR "#333333"
  14. #define NORMFGCOLOR "#dddddd"
  15. #define SELBGCOLOR "#333366"
  16. #define SELFGCOLOR "#eeeeee"
  17. #define STATUSBGCOLOR "#222222"
  18. #define STATUSFGCOLOR "#9999cc"
  19. #define MASTER 60 /* percent */
  20. #define MODKEY Mod1Mask
  21. #define KEYS \
  22. static Key key[] = { \
  23. /* modifier key function arguments */ \
  24. { MODKEY|ShiftMask, XK_Return, spawn, \
  25. { .cmd = "exec uxterm -bg '#111111' -fg '#eeeeee' -cr '#eeeeee' +sb -fn '"FONT"'" } }, \
  26. { MODKEY, XK_p, spawn, \
  27. { .cmd = "exe=\"$(IFS=:; for dir in $PATH; do " \
  28. "for file in \"$dir\"/*; do [ -x \"$file\" ] && echo \"${file##*/}\"; done; done " \
  29. "| sort -u | dmenu -font '"FONT"' -normbg '"NORMBGCOLOR"' -normfg '"NORMFGCOLOR"' " \
  30. "-selbg '"SELBGCOLOR"' -selfg '"SELFGCOLOR"')\" && exec $exe" } }, \
  31. { MODKEY, XK_j, focusnext, { 0 } }, \
  32. { MODKEY, XK_k, focusprev, { 0 } }, \
  33. { MODKEY, XK_Return, zoom, { 0 } }, \
  34. { MODKEY, XK_b, togglestackpos, { 0 } }, \
  35. { MODKEY, XK_g, resizecol, { .i = 20 } }, \
  36. { MODKEY, XK_s, resizecol, { .i = -20 } }, \
  37. { MODKEY|ShiftMask, XK_1, tag, { .i = 0 } }, \
  38. { MODKEY|ShiftMask, XK_2, tag, { .i = 1 } }, \
  39. { MODKEY|ShiftMask, XK_3, tag, { .i = 2 } }, \
  40. { MODKEY|ShiftMask, XK_4, tag, { .i = 3 } }, \
  41. { MODKEY|ControlMask|ShiftMask, XK_1, toggletag, { .i = 0 } }, \
  42. { MODKEY|ControlMask|ShiftMask, XK_2, toggletag, { .i = 1 } }, \
  43. { MODKEY|ControlMask|ShiftMask, XK_3, toggletag, { .i = 2 } }, \
  44. { MODKEY|ControlMask|ShiftMask, XK_4, toggletag, { .i = 3 } }, \
  45. { MODKEY|ShiftMask, XK_c, killclient, { 0 } }, \
  46. { MODKEY, XK_space, togglemode, { 0 } }, \
  47. { MODKEY, XK_0, viewall, { 0 } }, \
  48. { MODKEY, XK_1, view, { .i = 0 } }, \
  49. { MODKEY, XK_2, view, { .i = 1 } }, \
  50. { MODKEY, XK_3, view, { .i = 2 } }, \
  51. { MODKEY, XK_4, view, { .i = 3 } }, \
  52. { MODKEY|ControlMask, XK_1, toggleview, { .i = 0 } }, \
  53. { MODKEY|ControlMask, XK_2, toggleview, { .i = 1 } }, \
  54. { MODKEY|ControlMask, XK_3, toggleview, { .i = 2 } }, \
  55. { MODKEY|ControlMask, XK_4, toggleview, { .i = 3 } }, \
  56. { MODKEY|ShiftMask, XK_q, quit, { 0 } }, \
  57. };
  58. #define RULES \
  59. static Rule rule[] = { \
  60. /* class:instance:title regex tags regex isfloat */ \
  61. { "Firefox.*", "net", True}, \
  62. { "Gimp.*", NULL, True}, \
  63. { "MPlayer.*", NULL, True}, \
  64. { "Acroread.*", NULL, True}, \
  65. };