new stuff
							parent
							
								
									c9170189bf
								
							
						
					
					
						commit
						d7b074fcce
					
				|  | @ -0,0 +1,127 @@ | |||
| /* See LICENSE file for copyright and license details. */ | ||||
| 
 | ||||
| /* appearance */ | ||||
| #define BORDERPX		1 | ||||
| #define FONT			"-*-terminus-medium-r-normal-*-14-*-*-*-*-*-*-*" | ||||
| #define NORMBORDERCOLOR		"#cccccc" | ||||
| #define NORMBGCOLOR		"#cccccc" | ||||
| #define NORMFGCOLOR		"#000000" | ||||
| #define SELBORDERCOLOR		"#0066ff" | ||||
| #define SELBGCOLOR		"#0066ff" | ||||
| #define SELFGCOLOR		"#ffffff" | ||||
| 
 | ||||
| /* bar position */ | ||||
| #define BX 0 | ||||
| #define BY 0 | ||||
| #define BW 1280 | ||||
| 
 | ||||
| /* window area, including floating windows */ | ||||
| #define WX 0 | ||||
| #define WY bh | ||||
| #define WW sw | ||||
| #define WH sh - bh | ||||
| 
 | ||||
| /* master area */ | ||||
| #define MX WX | ||||
| #define MY bh | ||||
| #define MW 1280 | ||||
| #define MH 800 - bh | ||||
| 
 | ||||
| /* tile area, might be on a different screen */ | ||||
| #define TX 1280 | ||||
| #define TY 0 | ||||
| #define TW 1680 | ||||
| #define TH 1050 | ||||
| 
 | ||||
| /* monocle area, might be restricted to a specific screen */ | ||||
| #define MOX MX | ||||
| #define MOY MY | ||||
| #define MOW MW | ||||
| #define MOH MH | ||||
| 
 | ||||
| /* tagging */ | ||||
| const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" }; | ||||
| 
 | ||||
| Rule rules[] = { | ||||
| 	/* class:instance:title substr	tags ref	isfloating */ | ||||
| 	{ "Firefox",			tags[8],	False }, | ||||
| 	{ "Gimp",			NULL,		True }, | ||||
| 	{ "MPlayer",			NULL,		True }, | ||||
| 	{ "Acroread",			NULL,		True }, | ||||
| }; | ||||
| 
 | ||||
| /* layout(s) */ | ||||
| #define RESIZEHINTS		True	/* False - respect size hints in tiled resizals */ | ||||
| #define SNAP			32	/* snap pixel */ | ||||
| 
 | ||||
| Layout layouts[] = { | ||||
| 	/* symbol		function	isfloating */ | ||||
| 	{ "[]|",		tileh,		False }, /* first entry is default */ | ||||
| 	{ "[]=",		tilev,		False }, | ||||
| 	{ "><>",		floating,	True }, | ||||
| 	{ "[M]",		monocle,	True }, | ||||
| }; | ||||
| 
 | ||||
| /* key definitions */ | ||||
| #define MODKEY			Mod1Mask | ||||
| Key keys[] = { | ||||
| 	/* modifier			key		function	argument */ | ||||
| #if ANSELM_OFFICE | ||||
| 	{ MODKEY,			XK_p,		spawn, | ||||
| 		"exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"' -x 0 -y 0 -w 1280" }, | ||||
| #else | ||||
| 	{ MODKEY,			XK_p,		spawn, | ||||
| 		"exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'" }, | ||||
| #endif | ||||
| 	{ MODKEY|ShiftMask,		XK_Return,	spawn, "exec uxterm" }, | ||||
| 	{ MODKEY,			XK_j,		focusnext,	NULL }, | ||||
| 	{ MODKEY,			XK_k,		focusprev,	NULL }, | ||||
| 	{ MODKEY,			XK_r,		reapply,	NULL }, | ||||
| 	{ MODKEY,			XK_Return,	zoom,		NULL }, | ||||
| 	{ MODKEY,			XK_Tab,		viewprevtag,	NULL }, | ||||
| 	{ MODKEY,			XK_m,		setlayout,	"[M]" }, | ||||
| 	{ MODKEY,			XK_f,		setlayout,	"><>" }, | ||||
| 	{ MODKEY,			XK_v,		setlayout,	"[]=" }, | ||||
| 	{ MODKEY,			XK_h,		setlayout,	"[]|" }, | ||||
| 	{ MODKEY|ShiftMask,		XK_space,	togglefloating,	NULL }, | ||||
| 	{ MODKEY|ShiftMask,		XK_c,		killclient,	NULL }, | ||||
| 	{ MODKEY,			XK_0,		view,		NULL }, | ||||
| 	{ MODKEY,			XK_1,		view,		tags[0] }, | ||||
| 	{ MODKEY,			XK_2,		view,		tags[1] }, | ||||
| 	{ MODKEY,			XK_3,		view,		tags[2] }, | ||||
| 	{ MODKEY,			XK_4,		view,		tags[3] }, | ||||
| 	{ MODKEY,			XK_5,		view,		tags[4] }, | ||||
| 	{ MODKEY,			XK_6,		view,		tags[5] }, | ||||
| 	{ MODKEY,			XK_7,		view,		tags[6] }, | ||||
| 	{ MODKEY,			XK_8,		view,		tags[7] }, | ||||
| 	{ MODKEY,			XK_9,		view,		tags[8] }, | ||||
| 	{ MODKEY|ControlMask,		XK_1,		toggleview,	tags[0] }, | ||||
| 	{ MODKEY|ControlMask,		XK_2,		toggleview,	tags[1] }, | ||||
| 	{ MODKEY|ControlMask,		XK_3,		toggleview,	tags[2] }, | ||||
| 	{ MODKEY|ControlMask,		XK_4,		toggleview,	tags[3] }, | ||||
| 	{ MODKEY|ControlMask,		XK_5,		toggleview,	tags[4] }, | ||||
| 	{ MODKEY|ControlMask,		XK_6,		toggleview,	tags[5] }, | ||||
| 	{ MODKEY|ControlMask,		XK_7,		toggleview,	tags[6] }, | ||||
| 	{ MODKEY|ControlMask,		XK_8,		toggleview,	tags[7] }, | ||||
| 	{ MODKEY|ControlMask,		XK_9,		toggleview,	tags[8] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_0,		tag,		NULL }, | ||||
| 	{ MODKEY|ShiftMask,		XK_1,		tag,		tags[0] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_2,		tag,		tags[1] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_3,		tag,		tags[2] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_4,		tag,		tags[3] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_5,		tag,		tags[4] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_6,		tag,		tags[5] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_7,		tag,		tags[6] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_8,		tag,		tags[7] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_9,		tag,		tags[8] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_1,		toggletag,	tags[0] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_2,		toggletag,	tags[1] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_3,		toggletag,	tags[2] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_4,		toggletag,	tags[3] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_5,		toggletag,	tags[4] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_6,		toggletag,	tags[5] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_7,		toggletag,	tags[6] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_8,		toggletag,	tags[7] }, | ||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_9,		toggletag,	tags[8] }, | ||||
| 	{ MODKEY|ShiftMask,		XK_q,		quit,		NULL }, | ||||
| }; | ||||
							
								
								
									
										10
									
								
								config.def.h
								
								
								
								
							
							
						
						
									
										10
									
								
								config.def.h
								
								
								
								
							|  | @ -56,9 +56,10 @@ Rule rules[] = { | |||
| 
 | ||||
| Layout layouts[] = { | ||||
| 	/* symbol		function	isfloating */ | ||||
| 	{ "[]=",		tile,		False }, /* first entry is default */ | ||||
| 	{ "><>",		floating	True }, | ||||
| 	{ "[M]",		monocle		True }, | ||||
| 	{ "[]|",		tileh,		False }, /* first entry is default */ | ||||
| 	{ "[]=",		tilev,		False }, | ||||
| 	{ "><>",		floating,	True }, | ||||
| 	{ "[M]",		monocle,	True }, | ||||
| }; | ||||
| 
 | ||||
| /* key definitions */ | ||||
|  | @ -80,7 +81,8 @@ Key keys[] = { | |||
| 	{ MODKEY,			XK_Tab,		viewprevtag,	NULL }, | ||||
| 	{ MODKEY,			XK_m,		setlayout,	"[M]" }, | ||||
| 	{ MODKEY,			XK_f,		setlayout,	"><>" }, | ||||
| 	{ MODKEY,			XK_t,		setlayout,	"[]=" }, | ||||
| 	{ MODKEY,			XK_v,		setlayout,	"[]=" }, | ||||
| 	{ MODKEY,			XK_h,		setlayout,	"[]|" }, | ||||
| 	{ MODKEY|ShiftMask,		XK_space,	togglefloating,	NULL }, | ||||
| 	{ MODKEY|ShiftMask,		XK_c,		killclient,	NULL }, | ||||
| 	{ MODKEY,			XK_0,		view,		NULL }, | ||||
|  |  | |||
							
								
								
									
										7
									
								
								dwm.1
								
								
								
								
							
							
						
						
									
										7
									
								
								dwm.1
								
								
								
								
							|  | @ -69,8 +69,11 @@ Apply floating layout. | |||
| .B Mod1\-m | ||||
| Apply monocle layout. | ||||
| .TP | ||||
| .B Mod1\-t | ||||
| Apply tiled layout. | ||||
| .B Mod1\-v | ||||
| Apply vertical tiled layout. | ||||
| .TP | ||||
| .B Mod1\-h | ||||
| Apply horizontal tiled layout. | ||||
| .TP | ||||
| .B Mod1\-j | ||||
| Focus next window. | ||||
|  |  | |||
							
								
								
									
										49
									
								
								dwm.c
								
								
								
								
							
							
						
						
									
										49
									
								
								dwm.c
								
								
								
								
							|  | @ -1,6 +1,3 @@ | |||
| /**
 | ||||
|  * - allow for vstack | ||||
|  */ | ||||
| /* See LICENSE file for copyright and license details.
 | ||||
|  * | ||||
|  * dynamic window manager is designed like any other X client as well. It is | ||||
|  | @ -36,7 +33,6 @@ | |||
| #include <sys/select.h> | ||||
| #include <sys/types.h> | ||||
| #include <sys/wait.h> | ||||
| #include <regex.h> | ||||
| #include <X11/cursorfont.h> | ||||
| #include <X11/keysym.h> | ||||
| #include <X11/Xatom.h> | ||||
|  | @ -170,8 +166,10 @@ void spawn(const char *arg); | |||
| void tag(const char *arg); | ||||
| unsigned int textnw(const char *text, unsigned int len); | ||||
| unsigned int textw(const char *text); | ||||
| void tile(void); | ||||
| void tileh(void); | ||||
| void tilehstack(unsigned int n); | ||||
| unsigned int tilemaster(void); | ||||
| void tilev(void); | ||||
| void tilevstack(unsigned int n); | ||||
| void togglefloating(const char *arg); | ||||
| void toggletag(const char *arg); | ||||
|  | @ -1547,6 +1545,37 @@ tileresize(Client *c, int x, int y, int w, int h) { | |||
| 		resize(c, x, y, w, h, False); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| tileh(void) { | ||||
| 	tilehstack(tilemaster()); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| tilehstack(unsigned int n) { | ||||
| 	int i, x, w; | ||||
| 	Client *c; | ||||
| 
 | ||||
| 	if(n == 0) | ||||
| 		return; | ||||
| 
 | ||||
| 	x = TX; | ||||
| 	w = (TW) / n; | ||||
| 	if(w < bh) | ||||
| 		w = TW; | ||||
| 
 | ||||
| 	for(i = 0, c = nexttiled(clients); c; c = nexttiled(c->next), i++) | ||||
| 		if(i > 0) { | ||||
| 			if(i > 1 && i == n) /* remainder */ | ||||
| 				tileresize(c, x, TY, ((TX) + (TW)) - x - 2 * c->border, | ||||
| 				              TH - 2 * c->border); | ||||
| 			else | ||||
| 				tileresize(c, x, TY, w - 2 * c->border, | ||||
| 				              TH - 2 * c->border); | ||||
| 			if(w != TW) | ||||
| 				x = c->x + c->w + 2 * c->border; | ||||
| 		} | ||||
| } | ||||
| 
 | ||||
| unsigned int | ||||
| tilemaster(void) { | ||||
| 	unsigned int n; | ||||
|  | @ -1563,6 +1592,11 @@ tilemaster(void) { | |||
| 	return n - 1; | ||||
| } | ||||
| 
 | ||||
| void | ||||
| tilev(void) { | ||||
| 	tilevstack(tilemaster()); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| tilevstack(unsigned int n) { | ||||
| 	int i, y, h; | ||||
|  | @ -1589,11 +1623,6 @@ tilevstack(unsigned int n) { | |||
| 		} | ||||
| } | ||||
| 
 | ||||
| void | ||||
| tile(void) { | ||||
| 	tilevstack(tilemaster()); | ||||
| } | ||||
| 
 | ||||
| void | ||||
| togglefloating(const char *arg) { | ||||
| 	if(!sel) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue