JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
some changes towards 4.9
[dwm.git] / config.anselm.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 /* geometry function */
25 void (*setgeoms)(void) = setdefgeoms;
26
27 void
28 setanselmgeoms(void) {
29
30         /* screen dimensions */
31         sx = 0;
32         sy = 0;
33         sw = DisplayWidth(dpy, screen);
34         sh = DisplayHeight(dpy, screen);
35
36         /* bar position */
37         bx = sx;
38         by = sy;
39         bw = 1280;
40         bh = dc.font.height + 2;
41
42         /* window area */
43         wx = sx;
44         wy = sy + bh;
45         ww = sw;
46         wh = sh - bh;
47
48         /* master area */
49         mx = wx;
50         my = wy;
51         mw = 1280;
52         mh = 800 - bh;
53
54         /* tile area */
55         tx = 1280;
56         ty = 0;
57         tw = sw - 1280;
58         th = sh;
59
60         /* monocle area */
61         mox = mx;
62         moy = my;
63         mow = mw;
64         moh = mh;
65 }
66
67 void
68 anselmgeoms(const char *arg) {
69         setgeoms = setanselmgeoms;
70         setgeoms();
71         updatebarpos();
72         setlayout("[]|");
73 }
74
75 void
76 defgeoms(const char *arg) {
77         setgeoms = setdefgeoms;
78         setgeoms();
79         updatebarpos();
80         setlayout("[]=");
81 }
82
83 /* layout(s) */
84 #define RESIZEHINTS             True    /* False - respect size hints in tiled resizals */
85 #define SNAP                    32      /* snap pixel */
86
87 Layout layouts[] = {
88         /* symbol               function        isfloating */
89         { "[]|",                tileh,          False }, /* first entry is default */
90         { "[]=",                tilev,          False },
91         { "><>",                floating,       True },
92         { "[M]",                monocle,        True },
93 };
94
95 /* key definitions */
96 #define MODKEY                  Mod1Mask
97 Key keys[] = {
98         /* modifier                     key             function        argument */
99         { MODKEY,                       XK_p,           spawn,
100                 "exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"' -x 0 -y 0 -w 1280" },
101         { MODKEY|ShiftMask,             XK_Return,      spawn, "exec uxterm" },
102         { MODKEY,                       XK_a,           anselmgeoms,    NULL },
103         { MODKEY,                       XK_d,           defgeoms,       NULL },
104         { MODKEY,                       XK_j,           focusnext,      NULL },
105         { MODKEY,                       XK_k,           focusprev,      NULL },
106         { MODKEY,                       XK_r,           reapply,        NULL },
107         { MODKEY,                       XK_Return,      zoom,           NULL },
108         { MODKEY,                       XK_Tab,         viewprevtag,    NULL },
109         { MODKEY,                       XK_m,           setlayout,      "[M]" },
110         { MODKEY,                       XK_f,           setlayout,      "><>" },
111         { MODKEY,                       XK_v,           setlayout,      "[]=" },
112         { MODKEY,                       XK_h,           setlayout,      "[]|" },
113         { MODKEY|ShiftMask,             XK_space,       togglefloating, NULL },
114         { MODKEY|ShiftMask,             XK_c,           killclient,     NULL },
115         { MODKEY,                       XK_0,           view,           NULL },
116         { MODKEY,                       XK_1,           view,           tags[0] },
117         { MODKEY,                       XK_2,           view,           tags[1] },
118         { MODKEY,                       XK_3,           view,           tags[2] },
119         { MODKEY,                       XK_4,           view,           tags[3] },
120         { MODKEY,                       XK_5,           view,           tags[4] },
121         { MODKEY,                       XK_6,           view,           tags[5] },
122         { MODKEY,                       XK_7,           view,           tags[6] },
123         { MODKEY,                       XK_8,           view,           tags[7] },
124         { MODKEY,                       XK_9,           view,           tags[8] },
125         { MODKEY|ControlMask,           XK_1,           toggleview,     tags[0] },
126         { MODKEY|ControlMask,           XK_2,           toggleview,     tags[1] },
127         { MODKEY|ControlMask,           XK_3,           toggleview,     tags[2] },
128         { MODKEY|ControlMask,           XK_4,           toggleview,     tags[3] },
129         { MODKEY|ControlMask,           XK_5,           toggleview,     tags[4] },
130         { MODKEY|ControlMask,           XK_6,           toggleview,     tags[5] },
131         { MODKEY|ControlMask,           XK_7,           toggleview,     tags[6] },
132         { MODKEY|ControlMask,           XK_8,           toggleview,     tags[7] },
133         { MODKEY|ControlMask,           XK_9,           toggleview,     tags[8] },
134         { MODKEY|ShiftMask,             XK_0,           tag,            NULL },
135         { MODKEY|ShiftMask,             XK_1,           tag,            tags[0] },
136         { MODKEY|ShiftMask,             XK_2,           tag,            tags[1] },
137         { MODKEY|ShiftMask,             XK_3,           tag,            tags[2] },
138         { MODKEY|ShiftMask,             XK_4,           tag,            tags[3] },
139         { MODKEY|ShiftMask,             XK_5,           tag,            tags[4] },
140         { MODKEY|ShiftMask,             XK_6,           tag,            tags[5] },
141         { MODKEY|ShiftMask,             XK_7,           tag,            tags[6] },
142         { MODKEY|ShiftMask,             XK_8,           tag,            tags[7] },
143         { MODKEY|ShiftMask,             XK_9,           tag,            tags[8] },
144         { MODKEY|ControlMask|ShiftMask, XK_1,           toggletag,      tags[0] },
145         { MODKEY|ControlMask|ShiftMask, XK_2,           toggletag,      tags[1] },
146         { MODKEY|ControlMask|ShiftMask, XK_3,           toggletag,      tags[2] },
147         { MODKEY|ControlMask|ShiftMask, XK_4,           toggletag,      tags[3] },
148         { MODKEY|ControlMask|ShiftMask, XK_5,           toggletag,      tags[4] },
149         { MODKEY|ControlMask|ShiftMask, XK_6,           toggletag,      tags[5] },
150         { MODKEY|ControlMask|ShiftMask, XK_7,           toggletag,      tags[6] },
151         { MODKEY|ControlMask|ShiftMask, XK_8,           toggletag,      tags[7] },
152         { MODKEY|ControlMask|ShiftMask, XK_9,           toggletag,      tags[8] },
153         { MODKEY|ShiftMask,             XK_q,           quit,           NULL },
154 };