tconfig.h - dwm - [fork] customized build of dwm, the dynamic window manager | |
git clone git://src.adamsgaard.dk/dwm | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
tconfig.h (18661B) | |
--- | |
1 /* See LICENSE file for copyright and license details. */ | |
2 | |
3 /* appearance */ | |
4 static const unsigned int borderpx = 2; /* border pixel of windo… | |
5 static const unsigned int snap = 32; /* snap pixel */ | |
6 static const int showbar = 1; /* 0 means no bar */ | |
7 static const int topbar = 1; /* 0 means bottom bar */ | |
8 /* static const char *fonts[] = { "dina:size=9:antialias=false"… | |
9 /* static const char *fonts[] = { "terminus:size=12" }; */ | |
10 static const char *fonts[] = { "pragmatapro:size=11" }; | |
11 static const char col_gray1[] = "#000000"; | |
12 static const char col_gray2[] = "#444444"; | |
13 static const char col_gray3[] = "#ffffff"; | |
14 static const char col_gray4[] = "#1d1f21"; | |
15 static const char *colors[][3] = { | |
16 /* fg bg border */ | |
17 [SchemeNorm] = { col_gray3, col_gray1, col_gray1 }, | |
18 [SchemeSel] = { col_gray1, col_gray3, col_gray3 }, | |
19 }; | |
20 | |
21 /* tagging */ | |
22 static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9… | |
23 /* static const char *tags[] = { "一", "二", "三", "四", "五", "六… | |
24 | |
25 | |
26 /* floatpos: | |
27 * 1--2--3 | |
28 * 4--5--6 | |
29 * 7--8--9 | |
30 * 0: disabled */ | |
31 static const Rule rules[] = { | |
32 /* xprop(1): | |
33 * WM_CLASS(STRING) = instance, class | |
34 * WM_NAME(STRING) = title | |
35 */ | |
36 /* class instance title tags floatpos isfloat… | |
37 { "Tor Browser", NULL, NULL, 0, 5, 1, … | |
38 { "tabbed", NULL, NULL, 1<<1, 0, 0, … | |
39 { "Firefox", NULL, NULL, 1<<1, 0, 0, … | |
40 { "Chromium-browser", NULL, NULL, 1<<1, 0, 0, … | |
41 { "Evolution", NULL, NULL, 1<<7, 0, 0, … | |
42 { NULL, NULL, "video", ~0, 9, 1, … | |
43 { NULL, "topleft", NULL, 0, 1, 1, … | |
44 { NULL, "topcenter", NULL, 0, 2, 1, … | |
45 { NULL, "topright", NULL, 0, 3, 1, … | |
46 { NULL, "midleft", NULL, 0, 4, 1, … | |
47 { NULL, "midcenter", NULL, 0, 5, 1, … | |
48 { NULL, "midright", NULL, 0, 6, 1, … | |
49 { NULL, "botleft", NULL, 0, 7, 1, … | |
50 { NULL, "botcenter", NULL, 0, 8, 1, … | |
51 { NULL, "botright", NULL, 0, 9, 1, … | |
52 }; | |
53 | |
54 /* layout(s) */ | |
55 static const float mfact = 0.50; /* factor of master area size [0.05… | |
56 static const int nmaster = 1; /* number of clients in master area… | |
57 static const int resizehints = 0; /* 1 means respect size hints in ti… | |
58 | |
59 static const Layout layouts[] = { | |
60 /* symbol arrange function */ | |
61 { "", tile }, /* first entry is default */ | |
62 { "F", NULL }, /* no layout function means floating beha… | |
63 { "M", monocle }, | |
64 }; | |
65 | |
66 /* key definitions */ | |
67 #define MODKEY Mod1Mask | |
68 #define MODALTKEY Mod4Mask | |
69 #define TAGKEYS(KEY,TAG) \ | |
70 { MODKEY, KEY, view, {.ui =… | |
71 { MODKEY|ControlMask, KEY, toggleview, {.ui =… | |
72 { MODKEY|ShiftMask, KEY, tag, {.ui =… | |
73 { MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui =… | |
74 | |
75 | |
76 static char dmenumon[2] = "0"; | |
77 | |
78 #define HOME "/home/ad" | |
79 #define TERMINAL HOME "/bin/x-terminal-emulator" | |
80 #define BROWSER "ungoogled-chromium" | |
81 #define MPD_REMOTE "mini" | |
82 | |
83 #define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } } | |
84 #define TERMCMD(...) {TERMINAL, "-e", __VA_ARGS__, NULL} | |
85 #define ALTTERMCMD(...) {ALTTERMINAL, "-e", __VA_ARGS__, NULL} | |
86 #define DUPLEXCMD(cmd) {TERMINAL, "-e", "tmux", "new-session", cmd, NULL} | |
87 #define DUPLEXATTACHCMD(name, cmd) {TERMINAL, "-e", "tmux", "new-session… | |
88 | |
89 /* commands */ | |
90 static const char *termcmd[] = TERMCMD("ksh", "-l"); | |
91 static const char *termplexcmd[] = TERMCMD("tmux"); | |
92 | |
93 static const char *acmecmd[] = {"a", NULL}; | |
94 static const char *dmenucmd[] = {"dmenu_run", NULL}; | |
95 static const char *searchcmd[] = {"search", NULL}; | |
96 static const char *articlesearchcmd[] = {"articlesearch", NULL}; | |
97 static const char *jabbrevcmd[] = {"jabbrev", "-c", NULL}; | |
98 static const char *unicodecmd[] = {"unicodepick", NULL}; | |
99 static const char *definecmd[] = {"define", "--gui", NULL}; | |
100 static const char *passcmd[] = {"passmenu", "-t", "-n", NULL}; | |
101 static const char *passemailcmd[] = {"passmenu", "-t", "-u", "ander… | |
102 static const char *displaycmd[] = {"displayselect", NULL}; | |
103 static const char *displayintcmd[] = {"mon", "int", NULL}; | |
104 static const char *textcmd[] = {"text.sh", "-i", NULL}; | |
105 static const char *videocmd[] = {"videotoggle", NULL}; | |
106 static const char *screenrecordcmd[] = {"screenrecord", NULL}; | |
107 static const char *castcmd[] = {"adcast", NULL}; | |
108 static const char *plumbcmd[] = {"clipplumb", NULL}; | |
109 static const char *plumb2cmd[] = {"clipplumb", "-c", NULL}; | |
110 static const char *plumbremotecmd[] = {"clipplumb", "-r", NULL}; | |
111 static const char *plumb2remotecmd[] = {"clipplumb", "-c", "-r", NULL}; | |
112 static const char *ytdlaudiocmd[] = {"youtube-dl-music", "-t", "-a"… | |
113 static const char *showclipcmd[] = {"showclip", NULL}; | |
114 static const char *xlockcmd[] = {"xlock", NULL}; | |
115 static const char *printscreenicmd[] = {"maimpick", NULL}; | |
116 static const char *keyboardlayoutcmd[] = {"keyboard-layout-switch.sh", N… | |
117 static const char *torbrowsercmd[] = {"tor-browser", NULL}; | |
118 static const char *showcalcmd[] = {"showcalendar", NULL}; | |
119 static const char *mancmd[] = {"manpick", NULL}; | |
120 static const char *weathercmd[] = {"weather", NULL}; | |
121 static const char *memeselectcmd[] = {"tardis", "-c", NULL}; | |
122 static const char *contactscmd[] = {"contacts", NULL}; | |
123 | |
124 static const char *browsercmd[] = {BROWSER, HOME "/doc/pages/book… | |
125 static const char *journalcmd[] = TERMCMD("tmux-journal.sh"); | |
126 static const char *topcmd[] = TERMCMD("htop", "-C"); | |
127 static const char *mailcmd[] = DUPLEXCMD("mutt"); | |
128 /* static const char *filecmd[] = TERMCMD("sh", "-c", "cd ~/tm… | |
129 static const char *newscmd[] = DUPLEXCMD("sfeed_curses $HOME/.… | |
130 static const char *newsrefreshcmd[] = DUPLEXCMD("sfeed_sync"); | |
131 static const char *irccmd[] = DUPLEXATTACHCMD("irc", "irc.sh"… | |
132 static const char *todocmd[] = DUPLEXATTACHCMD("todo", "todo.s… | |
133 static const char *calendarcmd[] = DUPLEXATTACHCMD("calendar", "ca… | |
134 static const char *mixercmd[] = TERMCMD("audiomixer"); | |
135 static const char *musiccmd[] = TERMCMD("ncmpc"); | |
136 static const char *music_remote_cmd[] = TERMCMD("ncmpc", "-h", MPD_REMO… | |
137 | |
138 static const char *mpdtogglecmd[] = {"mpc", "toggle", "-q", NULL}; | |
139 static const char *mpdnextcmd[] = {"mpc", "next", "-q", NULL}; | |
140 static const char *mpdprevcmd[] = {"mpc", "prev", "-q", NULL}; | |
141 static const char *mpdstopcmd[] = {"mpc", "stop", "-q", NULL}; | |
142 | |
143 static const char *mpd_remote_togglecmd[] = {"mpc", "toggle", "-q", "-… | |
144 static const char *mpd_remote_nextcmd[] = {"mpc", "next", "-q", "-h"… | |
145 static const char *mpd_remote_prevcmd[] = {"mpc", "prev", "-q", "-h"… | |
146 static const char *mpd_remote_stopcmd[] = {"mpc", "stop", "-q", "-h"… | |
147 | |
148 static const char *mpdremotevolupcmd[] = {"mpc", "-q", "-h", MPD_REM… | |
149 static const char *mpdremotevoldncmd[] = {"mpc", "-q", "-h", MPD_REM… | |
150 | |
151 static const char *audioextvolupcmd[] = {"sndioctl", "output.level… | |
152 static const char *audioextvoldncmd[] = {"sndioctl", "output.level… | |
153 static const char *audioextmutecmd[] = {"sndioctl", "output.mute=… | |
154 | |
155 static const char *mouseleftcmd[] = {"xdotool", "mousemove_relative… | |
156 static const char *mouserightcmd[] = {"xdotool", "mousemove_relative… | |
157 static const char *mouseupcmd[] = {"xdotool", "mousemove_relative… | |
158 static const char *mousedowncmd[] = {"xdotool", "mousemove_relative… | |
159 | |
160 static const char *mousefineleftcmd[] = {"xdotool", "mousemove_relative… | |
161 static const char *mousefinerightcmd[] = {"xdotool", "mousemove_relative… | |
162 static const char *mousefineupcmd[] = {"xdotool", "mousemove_relative… | |
163 static const char *mousefinedowncmd[] = {"xdotool", "mousemove_relative… | |
164 | |
165 static const char *mouseleftclickcmd[] = {"xdotool", "click", "1", NULL}; | |
166 static const char *mouserightclickcmd[]= {"xdotool", "click", "3", NULL}; | |
167 | |
168 static const char *showkeyscmd[] = {"screenkey-toggle", NULL}; | |
169 static const char *goatcmd[] = { "sh", "-c", "mpv \"$(hurl gopher://bit… | |
170 | |
171 /* see key names in /usr/include/X11/keysymdef.h */ | |
172 static Key keys[] = { | |
173 /* modifier key function argum… | |
174 { MODKEY, XK_Return, spawn, {.v =… | |
175 { MODKEY|ShiftMask, XK_Return, spawn, {.v =… | |
176 { MODKEY, XK_space, spawn, {.v =… | |
177 { MODKEY|ShiftMask, XK_space, spawn, {.v =… | |
178 { MODKEY, XK_grave, spawn, {.v =… | |
179 { MODKEY, XK_slash, spawn, {.v =… | |
180 { 0, XK_Print, spawn, SHCMD… | |
181 { ShiftMask, XK_Print, spawn, {.v =… | |
182 { MODKEY, XK_period, focusmon, {.i =… | |
183 { MODKEY|ShiftMask, XK_period, tagmon, {.i =… | |
184 { MODKEY, XK_comma, focusmon, {.i =… | |
185 { MODKEY|ShiftMask, XK_comma, tagmon, {.i =… | |
186 { MODKEY, XK_Tab, view, {0} }, | |
187 { MODKEY|ShiftMask, XK_Tab, tag, {0} }, | |
188 | |
189 { MODKEY, XK_Left, spawn, {.v =… | |
190 { MODKEY, XK_Right, spawn, {.v =… | |
191 { MODKEY, XK_Up, spawn, {.v =… | |
192 { MODKEY, XK_Down, spawn, {.v =… | |
193 | |
194 { MODKEY|ShiftMask, XK_Left, spawn, {.v =… | |
195 { MODKEY|ShiftMask, XK_Right, spawn, {.v =… | |
196 { MODKEY|ShiftMask, XK_Up, spawn, {.v =… | |
197 { MODKEY|ShiftMask, XK_Down, spawn, {.v =… | |
198 | |
199 { MODKEY|ShiftMask|ControlMask, XK_Left, spawn, {.v =… | |
200 { MODKEY|ShiftMask|ControlMask, XK_Right, spawn, {.v =… | |
201 | |
202 { ShiftMask, XF86XK_AudioRaiseVolume, spawn, {.v =… | |
203 { ShiftMask, XF86XK_AudioLowerVolume, spawn, {.v =… | |
204 { ShiftMask, XF86XK_AudioMute, spawn, {.v =… | |
205 | |
206 { ControlMask|ShiftMask, XF86XK_AudioRaiseVolume, spawn, {.v =… | |
207 { ControlMask|ShiftMask, XF86XK_AudioLowerVolume, spawn, {.v =… | |
208 | |
209 { MODKEY, XK_F1, spawn, {.v =… | |
210 { MODKEY, XK_F7, spawn, {.v =… | |
211 { MODKEY|ShiftMask, XK_F7, spawn, {.v =… | |
212 { MODKEY, XK_F9, spawn, {.v =… | |
213 | |
214 { MODKEY, XK_a, spawn, {.v =… | |
215 { MODKEY|ShiftMask, XK_a, spawn, {.v =… | |
216 { MODKEY|ControlMask|ShiftMask, XK_a, spawn, {.v =… | |
217 { MODKEY|MODALTKEY, XK_b, togglebar, {0} }, | |
218 { MODKEY|ControlMask|ShiftMask, XK_b, spawn, {.v =… | |
219 { MODKEY|ControlMask, XK_b, spawn, {.v =… | |
220 { MODKEY, XK_c, spawn, {.v =… | |
221 { MODKEY|ShiftMask, XK_c, spawn, {.v =… | |
222 { MODKEY, XK_d, spawn, {.v =… | |
223 { MODKEY|ShiftMask, XK_d, spawn, {.v =… | |
224 { MODKEY, XK_e, spawn, {.v =… | |
225 { MODKEY, XK_f, zoom, {0} }, | |
226 { MODKEY|ShiftMask, XK_f, togglefloating, {0} }, | |
227 { MODKEY|ControlMask|ShiftMask, XK_g, spawn, {.v =… | |
228 { MODKEY, XK_h, setmfact, {.f =… | |
229 { MODKEY, XK_i, spawn, {.v =… | |
230 { MODKEY|ShiftMask, XK_i, spawn, {.v =… | |
231 { MODKEY, XK_j, focusstack, {.i =… | |
232 { MODKEY|ShiftMask, XK_j, incnmaster, {.i =… | |
233 { MODKEY, XK_k, focusstack, {.i =… | |
234 { MODKEY|ShiftMask, XK_k, incnmaster, {.i =… | |
235 { MODKEY, XK_l, setmfact, {.f =… | |
236 { MODKEY|ShiftMask, XK_l, setlayout, {.v =… | |
237 { MODKEY|ControlMask|ShiftMask, XK_l, spawn, {.v =… | |
238 { MODKEY, XK_m, spawn, {.v =… | |
239 { MODKEY|ShiftMask, XK_m, setlayout, {.v =… | |
240 { MODKEY|ControlMask|ShiftMask, XK_m, spawn, {.v =… | |
241 { MODKEY|ControlMask, XK_m, spawn, {.v =… | |
242 { MODKEY, XK_n, spawn, {.v =… | |
243 { MODKEY|ShiftMask, XK_n, spawn, {.v =… | |
244 { MODKEY|ControlMask|ShiftMask, XK_n, spawn, {.v =… | |
245 { MODKEY|ControlMask, XK_n, spawn, {.v =… | |
246 { MODKEY, XK_o, spawn, {.v =… | |
247 { MODKEY|ShiftMask, XK_o, spawn, {.v =… | |
248 { MODKEY, XK_p, spawn, {.v =… | |
249 { MODKEY|ShiftMask, XK_p, spawn, {.v =… | |
250 { MODKEY|ControlMask|ShiftMask, XK_p, spawn, {.v =… | |
251 { MODKEY|ControlMask, XK_p, spawn, {.v =… | |
252 { MODKEY, XK_q, killclient, {0} }, | |
253 { MODKEY|ShiftMask, XK_q, quit, {0} }, | |
254 { MODKEY, XK_r, spawn, {.v =… | |
255 { MODKEY|ShiftMask, XK_s, spawn, {.v =… | |
256 { MODKEY|ControlMask|ShiftMask, XK_s, spawn, {.v =… | |
257 { MODKEY|ControlMask, XK_s, spawn, {.v =… | |
258 { MODKEY, XK_t, spawn, {.v =… | |
259 { MODKEY|ShiftMask, XK_t, setlayout, {.v =… | |
260 { MODKEY, XK_u, spawn, {.v =… | |
261 { MODKEY|ShiftMask, XK_u, spawn, {.v =… | |
262 { MODKEY|ControlMask, XK_u, spawn, {.v =… | |
263 { MODKEY|ControlMask|ShiftMask, XK_u, spawn, {.v =… | |
264 { MODKEY, XK_v, spawn, {.v =… | |
265 { MODKEY, XK_w, spawn, {.v =… | |
266 { MODKEY|ShiftMask, XK_w, spawn, {.v =… | |
267 { MODKEY|ControlMask|ShiftMask, XK_w, spawn, {.v =… | |
268 { MODKEY, XK_z, spawn, {.v =… | |
269 | |
270 { MODKEY, XK_0, view, {.ui … | |
271 { MODKEY|ShiftMask, XK_0, tag, {.ui … | |
272 TAGKEYS( XK_1, 0) | |
273 TAGKEYS( XK_2, 1) | |
274 TAGKEYS( XK_3, 2) | |
275 TAGKEYS( XK_4, 3) | |
276 TAGKEYS( XK_5, 4) | |
277 TAGKEYS( XK_6, 5) | |
278 TAGKEYS( XK_7, 6) | |
279 TAGKEYS( XK_8, 7) | |
280 TAGKEYS( XK_9, 8) | |
281 }; | |
282 | |
283 /* button definitions */ | |
284 /* click can be ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkC… | |
285 static Button buttons[] = { | |
286 /* click event mask button function… | |
287 { ClkLtSymbol, 0, Button1, setlayou… | |
288 { ClkLtSymbol, 0, Button3, setlayou… | |
289 { ClkWinTitle, 0, Button2, zoom, … | |
290 { ClkStatusText, 0, Button2, spawn, … | |
291 { ClkClientWin, MODKEY, Button1, movemous… | |
292 { ClkClientWin, MODKEY, Button2, togglefl… | |
293 { ClkClientWin, MODKEY, Button3, resizemo… | |
294 { ClkTagBar, 0, Button1, view, … | |
295 { ClkTagBar, 0, Button3, togglevi… | |
296 { ClkTagBar, MODKEY, Button1, tag, … | |
297 { ClkTagBar, MODKEY, Button3, toggleta… | |
298 }; |