JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
added sample of {grow,shrink}master to config.def.h
[dwm.git] / config.def.h
1 /* See LICENSE file for copyright and license details. */
2
3 /* appearance */
4 #define BORDERPX                1
5 #define FONT                    "-*-terminus-medium-r-normal-*-14-*-*-*-*-*-*-*"
6 #define NORMBORDERCOLOR         "#cccccc"
7 #define NORMBGCOLOR             "#cccccc"
8 #define NORMFGCOLOR             "#000000"
9 #define SELBORDERCOLOR          "#0066ff"
10 #define SELBGCOLOR              "#0066ff"
11 #define SELFGCOLOR              "#ffffff"
12
13 /* tagging */
14 const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
15
16 Rule rules[] = {
17         /* class        instance        title           tags ref        isfloating */
18         { NULL,         NULL,           "Firefox",      tags[8],        False },
19         { NULL,         NULL,           "Gimp",         NULL,           True },
20         { NULL,         NULL,           "MPlayer",      NULL,           True },
21         { NULL,         NULL,           "Acroread",     NULL,           True },
22 };
23
24 /* geometries, s{x,y,w,h} and bh are already initualized here */
25 /*   func name  bx  by  bw  wx  wy  ww     wh  mx  my       mw  mh     tx  ty     tw  th  mox moy mow moh */
26 DEFGEOM(single,  0,  0, sw,  0, bh, sw, sh-bh, wx, wy, 0.55*sw, wh, mx+mw, wy, ww-mw, wh,  wx, wy, ww, wh)
27 DEFGEOM(dual,    0,  0,1280, 0, bh, ww, wh-bh, wx, wy, 1280,800-bh,  1280,  0, ww-mw, sh,  mx, my, mw, mh)
28 /* DEFGEOM(growmaster, bx, by, bw, wx, wy, ww, wh, mx, my, mw+20, mh, mx+mw, ty, tw-20, th, mox, moy, mow, moh) */
29 /* DEFGEOM(shrinkmaster, bx, by, bw, wx, wy, ww, wh, mx, my, mw-20, mh, mx+mw, ty, tw+20, th, mox, moy, mow, moh) */
30
31 Geom geoms[] = {
32         /* symbol       function */
33         { "<>",         single },       /* first entry is default */
34         { ")(",         dual },
35 /*      { "+|",         growmaster },*/
36 /*      { "|-",         shrinkmaster },*/
37 };
38
39 /* layout(s) */
40 #define RESIZEHINTS             True    /* False - respect size hints in tiled resizals */
41 #define SNAP                    32      /* snap pixel */
42
43 Layout layouts[] = {
44         /* symbol               function        isfloating */
45         { "[]=",                tilev,          False }, /* first entry is default */
46         { "[]|",                tileh,          False },
47         { "><>",                floating,       True },
48         { "[M]",                monocle,        True },
49 };
50
51 /* key definitions */
52 #define MODKEY                  Mod1Mask
53 Key keys[] = {
54         /* modifier                     key             function        argument */
55         { MODKEY,                       XK_a,           setgeom,        ")(" },
56         { MODKEY,                       XK_d,           setgeom,        "<>" },
57         { MODKEY,                       XK_p,           spawn,
58                 "exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'" },
59         { MODKEY|ShiftMask,             XK_Return,      spawn, "exec uxterm" },
60         { MODKEY,                       XK_j,           focusnext,      NULL },
61         { MODKEY,                       XK_k,           focusprev,      NULL },
62         { MODKEY,                       XK_r,           reapply,        NULL },
63         { MODKEY,                       XK_Return,      zoom,           NULL },
64         { MODKEY,                       XK_Tab,         viewprevtag,    NULL },
65         { MODKEY,                       XK_m,           setlayout,      "[M]" },
66         { MODKEY,                       XK_f,           setlayout,      "><>" },
67         { MODKEY,                       XK_v,           setlayout,      "[]=" },
68         { MODKEY,                       XK_h,           setlayout,      "[]|" },
69         { MODKEY|ShiftMask,             XK_space,       togglefloating, NULL },
70         { MODKEY|ShiftMask,             XK_c,           killclient,     NULL },
71         { MODKEY,                       XK_0,           view,           NULL },
72         { MODKEY,                       XK_1,           view,           tags[0] },
73         { MODKEY,                       XK_2,           view,           tags[1] },
74         { MODKEY,                       XK_3,           view,           tags[2] },
75         { MODKEY,                       XK_4,           view,           tags[3] },
76         { MODKEY,                       XK_5,           view,           tags[4] },
77         { MODKEY,                       XK_6,           view,           tags[5] },
78         { MODKEY,                       XK_7,           view,           tags[6] },
79         { MODKEY,                       XK_8,           view,           tags[7] },
80         { MODKEY,                       XK_9,           view,           tags[8] },
81         { MODKEY|ControlMask,           XK_1,           toggleview,     tags[0] },
82         { MODKEY|ControlMask,           XK_2,           toggleview,     tags[1] },
83         { MODKEY|ControlMask,           XK_3,           toggleview,     tags[2] },
84         { MODKEY|ControlMask,           XK_4,           toggleview,     tags[3] },
85         { MODKEY|ControlMask,           XK_5,           toggleview,     tags[4] },
86         { MODKEY|ControlMask,           XK_6,           toggleview,     tags[5] },
87         { MODKEY|ControlMask,           XK_7,           toggleview,     tags[6] },
88         { MODKEY|ControlMask,           XK_8,           toggleview,     tags[7] },
89         { MODKEY|ControlMask,           XK_9,           toggleview,     tags[8] },
90         { MODKEY|ShiftMask,             XK_0,           tag,            NULL },
91         { MODKEY|ShiftMask,             XK_1,           tag,            tags[0] },
92         { MODKEY|ShiftMask,             XK_2,           tag,            tags[1] },
93         { MODKEY|ShiftMask,             XK_3,           tag,            tags[2] },
94         { MODKEY|ShiftMask,             XK_4,           tag,            tags[3] },
95         { MODKEY|ShiftMask,             XK_5,           tag,            tags[4] },
96         { MODKEY|ShiftMask,             XK_6,           tag,            tags[5] },
97         { MODKEY|ShiftMask,             XK_7,           tag,            tags[6] },
98         { MODKEY|ShiftMask,             XK_8,           tag,            tags[7] },
99         { MODKEY|ShiftMask,             XK_9,           tag,            tags[8] },
100         { MODKEY|ControlMask|ShiftMask, XK_1,           toggletag,      tags[0] },
101         { MODKEY|ControlMask|ShiftMask, XK_2,           toggletag,      tags[1] },
102         { MODKEY|ControlMask|ShiftMask, XK_3,           toggletag,      tags[2] },
103         { MODKEY|ControlMask|ShiftMask, XK_4,           toggletag,      tags[3] },
104         { MODKEY|ControlMask|ShiftMask, XK_5,           toggletag,      tags[4] },
105         { MODKEY|ControlMask|ShiftMask, XK_6,           toggletag,      tags[5] },
106         { MODKEY|ControlMask|ShiftMask, XK_7,           toggletag,      tags[6] },
107         { MODKEY|ControlMask|ShiftMask, XK_8,           toggletag,      tags[7] },
108         { MODKEY|ControlMask|ShiftMask, XK_9,           toggletag,      tags[8] },
109         { MODKEY|ShiftMask,             XK_q,           quit,           NULL },
110 };