kellex

config.h dwm

Jul 28th, 2014
386
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 9.01 KB | None | 0 0
  1. #define NUMCOLORS       13
  2. #define MODKEY          Mod1Mask
  3. #define MONKEY          Mod4Mask
  4. #define TAGKEYS(KEY,TAG) \
  5.     { MODKEY,                       KEY,      view,           {.ui = 1 << TAG} }, \
  6.     { MODKEY|ControlMask,           KEY,      toggleview,     {.ui = 1 << TAG} }, \
  7.     { MODKEY|ShiftMask,             KEY,      tag,            {.ui = 1 << TAG} }, \
  8.     { MODKEY|ControlMask|ShiftMask, KEY,      toggletag,      {.ui = 1 << TAG} },
  9.  
  10. static const unsigned int tagspacing = 3;       /* space between tags */
  11. static const unsigned int tagpadding = 25;      /* inner padding of tags */
  12. static const unsigned int taglinepx = 2;        /* height of tag underline */
  13. static const unsigned int systrayspacing = 2;   /* systray spacing */
  14. static const Bool showsystray = True;           /* false means no systray */
  15. static const unsigned int gappx = 10;            /* gaps between windows */
  16. static const unsigned int borderpx = 3;         /* border pixel of windows */
  17. static const unsigned int snap = 32;            /* snap pixel */
  18. static const Bool showbar = True;               /* false means no bar */
  19. static const Bool topbar = True;                /* false means bottom bar */
  20. static const float mfact = 0.50;                /* factor of master area size [0.05..0.95] */
  21. static const int nmaster = 1;                   /* number of clients in master area */
  22. static const Bool resizehints = False;          /* true means respect size hints in tiled resizals */
  23. //static const char font[] = "-*-ohsnap.icons-medium-r-*-*-14-*-*-*-*-*-*-*";
  24.  
  25. //added the next line in the original edition has an "-" before static...
  26. //static const char font[] = "-*-terminus-medium-r-normal-*-14-*-*-*-*-*-*-*";
  27.  
  28. static const char font[] = "-dec-*-*-*-*-*-*-*-100-100-*-*-*-*";
  29.  
  30. //+static const char font[] = "-misc-fixed-medium-r-semicondensed--13-100-100-100-c-60-iso8859-1";
  31. //static const char normbordercolor[] = "#cccccc";
  32. //static const char normbgcolor[]     = "#cccccc";
  33. //static const char normfgcolor[]     = "#000000";
  34.  
  35. static const char selbgcolor[] = "#177245";
  36.  
  37. static const char colors[NUMCOLORS][ColLast][13] = {
  38.     /* border    fg         bg */
  39.     { "#ffc703", "#FFFFFF", "#2D2D2D" },        /* 01 - regular */
  40.     { "#D64937", "#FFFFFF", "#000000" },        /* 02 - selected */
  41.     { "#2D2D2D", "#FF0000", "#2D2D2D" },        /* 03 - urgent */
  42.     { "#2D2D2D", "#666666", "#2D2D2D" },        /* 04 - occupied */
  43.     { "#2D2D2D", "#A82222", "#2D2D2D" },        /* 05 - red */
  44.     { "#2D2D2D", "#1F7B94", "#2D2D2D" },        /* 06 - blue */
  45.     { "#2D2D2D", "#349147", "#2D2D2D" },        /* 07 - green */
  46.     { "#2D2D2D", "#666666", "#2D2D2D" },        /* 08 - dark grey */
  47.     { "#2D2D2D", "#DCDCDC", "#2D2D2D" },        /* 09 - light grey */
  48.     { "#D64937", "#D64937", "#D64937" },        /* 0A - orange */
  49.     { "#2D2D2D", "#B86A6A", "#2D2D2D" },        /* 0B - pink */
  50.     { "#2D2D2D", "#FFFFFF", "#2D2D2D" },        /* 0C - white */
  51.     { "#2D2D2D", "#000000", "#2D2D2D" },        /* 0D - black */
  52. };
  53.  
  54. static const Layout layouts[] = {
  55.     /* symbol   gaps    arrange */
  56.     { "þ",      True,   tile },
  57.     { "ü",      True,   bstack },
  58.     { "ÿ",      False,  monocle },
  59.     { "ý",      False,  NULL },
  60. };
  61.  
  62. static const Tag tags[] = {
  63.     /* name     layout          mfact   nmaster */
  64.     { "term",    &layouts[0],    -1,     -1 },
  65.     { "code",   &layouts[0],    -1,     -1 },
  66.     { "web",   &layouts[3],    -1,     -1 },
  67.     { "chat",   &layouts[0],    -1,     -1 },
  68.     { "media",  &layouts[0],    -1,     -1 },
  69.     { "misc",   &layouts[0],    -1,     -1 },
  70. };
  71.  
  72. static const Rule rules[] = {
  73.     /* class                instance    title       tags mask       isfloating      iscentred       monitor */
  74.     { "Google-chrome",      NULL,       NULL,       1 << 3,         False,          False,          -1 },
  75.     { "Skype",              NULL,       NULL,       1 << 5,         False,          False,          -1 },
  76.     { "URxvt",              NULL,       NULL,       1 << 1,         True,           True,           -1 },
  77.     { "Geany",              NULL,       NULL,       1 << 1,         False,          False,          -1 },
  78.     { "Vlc",                NULL,       NULL,       1 << 4,         False,          False,          -1 },
  79.     { "Pcmanfm",            NULL,       NULL,       1 << 5,         False,          False,          -1 },
  80.     { "Transmission-gtk",   NULL,       NULL,       1 << 5,         False,          False,          -1 },
  81. };
  82.  
  83. static const char *menu[] = { "dmenu_run", "-i", "-fn", font, "-nb", colors[0][ColBG], "-nf", colors[0][ColFG], "-sb", colors[1][ColBG], "-sf", colors[9][ColFG], NULL };
  84. static const char *webb[] = { "google-chrome", NULL, "Google-chrome" };
  85. static const char *chat[] = { "skype", NULL, "Skype" };
  86. static const char *term[] = { "urxvtc", NULL, "URxvt" };
  87. static const char *edit[] = { "geany", NULL, "Geany" };
  88. static const char *mdia[] = { "vlc", NULL, "Vlc" };
  89. static const char *file[] = { "pcmanfm", NULL, "Pcmanfm" };
  90. static const char *prts[] = { "scrot", NULL };
  91. static const char *play[] = { "ncmpcpp", "toggle" };
  92. static const char *stop[] = { "ncmpcpp", "stop" };
  93. static const char *prev[] = { "ncmpcpp", "prev" };
  94. static const char *next[] = { "ncmpcpp", "next" };
  95. static const char *mute[] = { "amixer", "-q", "set", "PCM", "toggle", NULL };
  96. static const char *volu[] = { "amixer", "-q", "set", "PCM", "5%+", "unmute", NULL };
  97. static const char *vold[] = { "amixer", "-q", "set", "PCM", "5%-", "unmute", NULL };
  98.  
  99. static Key keys[] = {
  100.     { MONKEY,           XK_p,       spawn,          {.v = menu } },
  101.     { MONKEY,           XK_w,       runorraise,     {.v = webb } },
  102.     { MONKEY,           XK_s,       runorraise,     {.v = chat } },
  103.     { MONKEY,           XK_Return,  runorraise,     {.v = term } },
  104.     { MONKEY,           XK_e,       runorraise,     {.v = edit } },
  105.     { MONKEY,           XK_m,       runorraise,     {.v = mdia } },
  106.     { MONKEY,           XK_f,       runorraise,     {.v = file } },
  107.     { MONKEY,           XK_Print,   spawn,          {.v = prts } },
  108.     { MONKEY,           XK_F5,      spawn,          {.v = play } },
  109.     { MONKEY,           XK_F6,      spawn,          {.v = stop } },
  110.     { MONKEY,           XK_F7,      spawn,          {.v = prev } },
  111.     { MONKEY,           XK_F8,      spawn,          {.v = next } },
  112.     { MONKEY,           XK_F10,     spawn,          {.v = mute } },
  113.     { MONKEY,           XK_F11,     spawn,          {.v = vold } },
  114.     { MONKEY,           XK_F12,     spawn,          {.v = volu } },
  115.     { MODKEY|ShiftMask, XK_q,       quit,           {0} },
  116.     { MODKEY|ShiftMask, XK_b,       togglebar,      {0} },
  117.     { MODKEY|ShiftMask, XK_c,       killclient,     {0} },
  118.     { MODKEY,           XK_Return,  zoom,           {0} },
  119.     { MODKEY,           XK_Tab,     view,           {0} },
  120.     { MODKEY|ShiftMask, XK_f,       togglefloating, {0} },
  121.     { MODKEY,           XK_space,   setlayout,      {0} },
  122.     { MODKEY,           XK_t,       setlayout,      {.v = &layouts[0] } },
  123.     { MODKEY,           XK_b,       setlayout,      {.v = &layouts[1] } },
  124.     { MODKEY,           XK_m,       setlayout,      {.v = &layouts[2] } },
  125.     { MODKEY,           XK_f,       setlayout,      {.v = &layouts[3] } },
  126.     { MODKEY,           XK_Right,   focusstack,     {.i = +1 } },
  127.     { MODKEY,           XK_Left,    focusstack,     {.i = -1 } },
  128.     { MODKEY,           XK_h,       setmfact,       {.f = -0.05 } },
  129.     { MODKEY,           XK_l,       setmfact,       {.f = +0.05 } },
  130.     { MODKEY,           XK_equal,   incnmaster,     {.i = +1 } },
  131.     { MODKEY,           XK_minus,   incnmaster,     {.i = -1 } },
  132.     { MODKEY,           XK_Down,    focusstack,     {.i = +1 } },
  133.     { MODKEY,           XK_Up,      focusstack,     {.i = -1 } },
  134.     { MODKEY,           XK_0,       view,           {.ui = ~0 } },
  135.     { MODKEY|ShiftMask, XK_0,       tag,            {.ui = ~0 } },
  136.     { MODKEY,           XK_comma,   focusmon,       {.i = -1 } },
  137.     { MODKEY,           XK_period,  focusmon,       {.i = +1 } },
  138.     { MODKEY|ShiftMask, XK_comma,   tagmon,         {.i = -1 } },
  139.     { MODKEY|ShiftMask, XK_period,  tagmon,         {.i = +1 } },
  140.     TAGKEYS(            XK_1,       0)
  141.     TAGKEYS(            XK_2,       1)
  142.     TAGKEYS(            XK_3,       2)
  143.     TAGKEYS(            XK_4,       3)
  144.     TAGKEYS(            XK_5,       4)
  145.     TAGKEYS(            XK_6,       5)
  146. };
  147.  
  148. static Button buttons[] = {
  149.     { ClkLtSymbol,      0,          Button1,        setlayout,      {0} },
  150.     { ClkClientWin,     MODKEY,     Button1,        movemouse,      {0} },
  151.     { ClkClientWin,     MODKEY,     Button2,        togglefloating, {0} },
  152.     { ClkClientWin,     MODKEY,     Button3,        resizemouse,    {0} },
  153.     { ClkTagBar,        0,          Button1,        view,           {0} },
  154.     { ClkTagBar,        0,          Button3,        toggleview,     {0} },
  155.     { ClkTagBar,        MODKEY,     Button1,        tag,            {0} },
  156.     { ClkTagBar,        MODKEY,     Button3,        toggletag,      {0} },
  157. };
Advertisement
Add Comment
Please, Sign In to add comment