renamed setlayout into togglelayout 349d768b
Anselm R Garbe · 2008-05-17 14:04 2 file(s) · +97 −98
config.def.h +73 −74
1 1
/* See LICENSE file for copyright and license details. */
2 2
3 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"
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 12
13 13
/* tagging */
14 14
const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
15 15
16 16
Rule rules[] = {
17 -
	/* class	instance	title		tags ref	isfloating */
18 -
	{ "Gimp",	NULL,		NULL,		NULL,		True },
17 +
	/* class      instance    title       tags ref      isfloating */
18 +
	{ "Gimp",     NULL,       NULL,       NULL,         True },
19 19
};
20 20
21 21
/* layout(s) */
22 -
#define MFACT			0.55	/* master width factor [0.1 .. 0.9] */
23 -
#define RESIZEHINTS		True	/* False - respect size hints in tiled resizals */
24 -
#define SNAP			32	/* snap pixel */
22 +
#define MFACT       0.55  /* master factor [0.1 .. 0.9] */
23 +
#define RESIZEHINTS True  /* False - respect size hints in tiled resizals */
24 +
#define SNAP        32    /* snap pixel */
25 25
26 26
Layout layouts[] = {
27 -
	/* symbol		function	isfloating */
28 -
	{ "[]=",		tilev,		False }, /* first entry is default */
29 -
	{ "><>",		NULL,		True },
30 -
	{ "<M>",		monocle,	True },
27 +
	/* symbol     function    isfloating */
28 +
	{ "[]=",      tilev,      False }, /* first entry is default */
29 +
	{ "><>",      NULL,       True },
30 +
	{ "<M>",      monocle,    True },
31 31
};
32 32
33 33
/* key definitions */
34 -
#define MODKEY			Mod1Mask
34 +
#define MODKEY Mod1Mask
35 35
Key keys[] = {
36 -
	/* modifier			key		function	argument */
37 -
	{ MODKEY,			XK_p,		spawn,
38 -
		"exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'" },
39 -
	{ MODKEY|ShiftMask,		XK_Return,	spawn,		"exec uxterm" },
40 -
	{ MODKEY,			XK_j,		focusnext,	NULL },
41 -
	{ MODKEY|ShiftMask,		XK_j,		focusnext,	"exact" },
42 -
	{ MODKEY,			XK_k,		focusprev,	NULL },
43 -
	{ MODKEY|ShiftMask,		XK_k,		focusprev,	"exact" },
44 -
	{ MODKEY,			XK_r,		reapply,	NULL },
45 -
	{ MODKEY,			XK_h,		setmfact,	"-0.05" },
46 -
	{ MODKEY,			XK_l,		setmfact,	"+0.05" },
47 -
	{ MODKEY,			XK_Return,	zoom,		NULL },
48 -
	{ MODKEY,			XK_m,		setlayout,	"<M>" },
49 -
	{ MODKEY,			XK_Tab,		viewprevtag,	NULL },
50 -
	{ MODKEY|ShiftMask,		XK_c,		killclient,	NULL },
51 -
	{ MODKEY,			XK_space,	setlayout,	NULL },
52 -
	{ MODKEY|ShiftMask,		XK_space,	togglefloating,	NULL },
53 -
	{ MODKEY,			XK_0,		view,		NULL },
54 -
	{ MODKEY,			XK_1,		view,		tags[0] },
55 -
	{ MODKEY,			XK_2,		view,		tags[1] },
56 -
	{ MODKEY,			XK_3,		view,		tags[2] },
57 -
	{ MODKEY,			XK_4,		view,		tags[3] },
58 -
	{ MODKEY,			XK_5,		view,		tags[4] },
59 -
	{ MODKEY,			XK_6,		view,		tags[5] },
60 -
	{ MODKEY,			XK_7,		view,		tags[6] },
61 -
	{ MODKEY,			XK_8,		view,		tags[7] },
62 -
	{ MODKEY,			XK_9,		view,		tags[8] },
63 -
	{ MODKEY|ControlMask,		XK_1,		toggleview,	tags[0] },
64 -
	{ MODKEY|ControlMask,		XK_2,		toggleview,	tags[1] },
65 -
	{ MODKEY|ControlMask,		XK_3,		toggleview,	tags[2] },
66 -
	{ MODKEY|ControlMask,		XK_4,		toggleview,	tags[3] },
67 -
	{ MODKEY|ControlMask,		XK_5,		toggleview,	tags[4] },
68 -
	{ MODKEY|ControlMask,		XK_6,		toggleview,	tags[5] },
69 -
	{ MODKEY|ControlMask,		XK_7,		toggleview,	tags[6] },
70 -
	{ MODKEY|ControlMask,		XK_8,		toggleview,	tags[7] },
71 -
	{ MODKEY|ControlMask,		XK_9,		toggleview,	tags[8] },
72 -
	{ MODKEY|ShiftMask,		XK_0,		tag,		NULL },
73 -
	{ MODKEY|ShiftMask,		XK_1,		tag,		tags[0] },
74 -
	{ MODKEY|ShiftMask,		XK_2,		tag,		tags[1] },
75 -
	{ MODKEY|ShiftMask,		XK_3,		tag,		tags[2] },
76 -
	{ MODKEY|ShiftMask,		XK_4,		tag,		tags[3] },
77 -
	{ MODKEY|ShiftMask,		XK_5,		tag,		tags[4] },
78 -
	{ MODKEY|ShiftMask,		XK_6,		tag,		tags[5] },
79 -
	{ MODKEY|ShiftMask,		XK_7,		tag,		tags[6] },
80 -
	{ MODKEY|ShiftMask,		XK_8,		tag,		tags[7] },
81 -
	{ MODKEY|ShiftMask,		XK_9,		tag,		tags[8] },
82 -
	{ MODKEY|ControlMask|ShiftMask,	XK_1,		toggletag,	tags[0] },
83 -
	{ MODKEY|ControlMask|ShiftMask,	XK_2,		toggletag,	tags[1] },
84 -
	{ MODKEY|ControlMask|ShiftMask,	XK_3,		toggletag,	tags[2] },
85 -
	{ MODKEY|ControlMask|ShiftMask,	XK_4,		toggletag,	tags[3] },
86 -
	{ MODKEY|ControlMask|ShiftMask,	XK_5,		toggletag,	tags[4] },
87 -
	{ MODKEY|ControlMask|ShiftMask,	XK_6,		toggletag,	tags[5] },
88 -
	{ MODKEY|ControlMask|ShiftMask,	XK_7,		toggletag,	tags[6] },
89 -
	{ MODKEY|ControlMask|ShiftMask,	XK_8,		toggletag,	tags[7] },
90 -
	{ MODKEY|ControlMask|ShiftMask,	XK_9,		toggletag,	tags[8] },
91 -
	{ MODKEY|ShiftMask,		XK_q,		quit,		NULL },
36 +
	/* modifier                     key        function        argument */
37 +
	{ MODKEY,                       XK_p,      spawn,          "exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'" },
38 +
	{ MODKEY|ShiftMask,             XK_Return, spawn,          "exec uxterm" },
39 +
	{ MODKEY,                       XK_j,      focusnext,      NULL },
40 +
	{ MODKEY|ShiftMask,             XK_j,      focusnext,      "exact" },
41 +
	{ MODKEY,                       XK_k,      focusprev,      NULL },
42 +
	{ MODKEY|ShiftMask,             XK_k,      focusprev,      "exact" },
43 +
	{ MODKEY,                       XK_r,      reapply,        NULL },
44 +
	{ MODKEY,                       XK_h,      setmfact,       "-0.05" },
45 +
	{ MODKEY,                       XK_l,      setmfact,       "+0.05" },
46 +
	{ MODKEY,                       XK_Return, zoom,           NULL },
47 +
	{ MODKEY,                       XK_m,      togglelayout,   "<M>" },
48 +
	{ MODKEY,                       XK_Tab,    viewprevtag,    NULL },
49 +
	{ MODKEY|ShiftMask,             XK_c,      killclient,     NULL },
50 +
	{ MODKEY,                       XK_space,  togglelayout,   NULL },
51 +
	{ MODKEY|ShiftMask,             XK_space,  togglefloating, NULL },
52 +
	{ MODKEY,                       XK_0,      view,           NULL },
53 +
	{ MODKEY,                       XK_1,      view,           tags[0] },
54 +
	{ MODKEY,                       XK_2,      view,           tags[1] },
55 +
	{ MODKEY,                       XK_3,      view,           tags[2] },
56 +
	{ MODKEY,                       XK_4,      view,           tags[3] },
57 +
	{ MODKEY,                       XK_5,      view,           tags[4] },
58 +
	{ MODKEY,                       XK_6,      view,           tags[5] },
59 +
	{ MODKEY,                       XK_7,      view,           tags[6] },
60 +
	{ MODKEY,                       XK_8,      view,           tags[7] },
61 +
	{ MODKEY,                       XK_9,      view,           tags[8] },
62 +
	{ MODKEY|ControlMask,           XK_1,      toggleview,     tags[0] },
63 +
	{ MODKEY|ControlMask,           XK_2,      toggleview,     tags[1] },
64 +
	{ MODKEY|ControlMask,           XK_3,      toggleview,     tags[2] },
65 +
	{ MODKEY|ControlMask,           XK_4,      toggleview,     tags[3] },
66 +
	{ MODKEY|ControlMask,           XK_5,      toggleview,     tags[4] },
67 +
	{ MODKEY|ControlMask,           XK_6,      toggleview,     tags[5] },
68 +
	{ MODKEY|ControlMask,           XK_7,      toggleview,     tags[6] },
69 +
	{ MODKEY|ControlMask,           XK_8,      toggleview,     tags[7] },
70 +
	{ MODKEY|ControlMask,           XK_9,      toggleview,     tags[8] },
71 +
	{ MODKEY|ShiftMask,             XK_0,      tag,            NULL },
72 +
	{ MODKEY|ShiftMask,             XK_1,      tag,            tags[0] },
73 +
	{ MODKEY|ShiftMask,             XK_2,      tag,            tags[1] },
74 +
	{ MODKEY|ShiftMask,             XK_3,      tag,            tags[2] },
75 +
	{ MODKEY|ShiftMask,             XK_4,      tag,            tags[3] },
76 +
	{ MODKEY|ShiftMask,             XK_5,      tag,            tags[4] },
77 +
	{ MODKEY|ShiftMask,             XK_6,      tag,            tags[5] },
78 +
	{ MODKEY|ShiftMask,             XK_7,      tag,            tags[6] },
79 +
	{ MODKEY|ShiftMask,             XK_8,      tag,            tags[7] },
80 +
	{ MODKEY|ShiftMask,             XK_9,      tag,            tags[8] },
81 +
	{ MODKEY|ControlMask|ShiftMask, XK_1,      toggletag,      tags[0] },
82 +
	{ MODKEY|ControlMask|ShiftMask, XK_2,      toggletag,      tags[1] },
83 +
	{ MODKEY|ControlMask|ShiftMask, XK_3,      toggletag,      tags[2] },
84 +
	{ MODKEY|ControlMask|ShiftMask, XK_4,      toggletag,      tags[3] },
85 +
	{ MODKEY|ControlMask|ShiftMask, XK_5,      toggletag,      tags[4] },
86 +
	{ MODKEY|ControlMask|ShiftMask, XK_6,      toggletag,      tags[5] },
87 +
	{ MODKEY|ControlMask|ShiftMask, XK_7,      toggletag,      tags[6] },
88 +
	{ MODKEY|ControlMask|ShiftMask, XK_8,      toggletag,      tags[7] },
89 +
	{ MODKEY|ControlMask|ShiftMask, XK_9,      toggletag,      tags[8] },
90 +
	{ MODKEY|ShiftMask,             XK_q,      quit,           NULL },
92 91
};
dwm.c +24 −24
165 165
void run(void);
166 166
void scan(void);
167 167
void setclientstate(Client *c, long state);
168 -
void setlayout(const char *arg);
169 168
void setmfact(const char *arg);
170 169
void setup(void);
171 170
void spawn(const char *arg);
179 178
void tilev(void);
180 179
void tilevstack(unsigned int n);
181 180
void togglefloating(const char *arg);
181 +
void togglelayout(const char *arg);
182 182
void toggletag(const char *arg);
183 183
void toggleview(const char *arg);
184 184
void unban(Client *c);
335 335
			}
336 336
		}
337 337
		if((ev->x < x + blw) && ev->button == Button1) 
338 -
			setlayout(NULL);
338 +
			togglelayout(NULL);
339 339
	}
340 340
	else if((c = getclient(ev->window))) {
341 341
		focus(c);
1376 1376
}
1377 1377
1378 1378
void
1379 -
setlayout(const char *arg) {
1380 -
	unsigned int i;
1381 -
1382 -
	if(!arg) {
1383 -
		if(++lt == &layouts[LENGTH(layouts)])
1384 -
			lt = &layouts[0];
1385 -
	}
1386 -
	else {
1387 -
		for(i = 0; i < LENGTH(layouts); i++)
1388 -
			if(!strcmp(arg, layouts[i].symbol))
1389 -
				break;
1390 -
		if(i == LENGTH(layouts))
1391 -
			return;
1392 -
		lt = &layouts[i];
1393 -
	}
1394 -
	if(sel)
1395 -
		arrange();
1396 -
	else
1397 -
		drawbar();
1398 -
}
1399 -
1400 -
void
1401 1379
setmfact(const char *arg) {
1402 1380
	double d;
1403 1381
1633 1611
	if(sel->isfloating)
1634 1612
		resize(sel, sel->x, sel->y, sel->w, sel->h, True);
1635 1613
	arrange();
1614 +
}
1615 +
1616 +
void
1617 +
togglelayout(const char *arg) {
1618 +
	unsigned int i;
1619 +
1620 +
	if(!arg) {
1621 +
		if(++lt == &layouts[LENGTH(layouts)])
1622 +
			lt = &layouts[0];
1623 +
	}
1624 +
	else {
1625 +
		for(i = 0; i < LENGTH(layouts); i++)
1626 +
			if(!strcmp(arg, layouts[i].symbol))
1627 +
				break;
1628 +
		if(i == LENGTH(layouts))
1629 +
			return;
1630 +
		lt = &layouts[i];
1631 +
	}
1632 +
	if(sel)
1633 +
		arrange();
1634 +
	else
1635 +
		drawbar();
1636 1636
}
1637 1637
1638 1638
void