returning to old Key struct
This commit is contained in:
		
							parent
							
								
									d2a4952956
								
							
						
					
					
						commit
						19dcbc5717
					
				
							
								
								
									
										59
									
								
								config.arg.h
									
									
									
									
									
								
							
							
						
						
									
										59
									
								
								config.arg.h
									
									
									
									
									
								
							| @ -19,44 +19,43 @@ const char *tags[] = { "dev", "work", "net", "fnord", NULL }; | |||||||
| 
 | 
 | ||||||
| #define MASTER			600		/* per thousand */ | #define MASTER			600		/* per thousand */ | ||||||
| #define MODKEY			Mod1Mask | #define MODKEY			Mod1Mask | ||||||
| #define NFUNCS			1		/* number of funcs per key */ |  | ||||||
| #define SNAP			40		/* pixel */ | #define SNAP			40		/* pixel */ | ||||||
| 
 | 
 | ||||||
| #define KEYS \ | #define KEYS \ | ||||||
| static Key key[] = { \ | static Key key[] = { \ | ||||||
| 	/* modifier			key		functions		arguments */ \ | 	/* modifier			key		function		argument */ \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_Return,	{ spawn }, \ | 	{ MODKEY|ShiftMask,		XK_Return,	spawn, \ | ||||||
| 		{ .cmd = "exec urxvtc -tr -bg black -fg '#eeeeee' -cr '#eeeeee' +sb -fn '"FONT"'" } }, \ | 		{ .cmd = "exec urxvtc -tr -bg black -fg '#eeeeee' -cr '#eeeeee' +sb -fn '"FONT"'" } }, \ | ||||||
| 	{ MODKEY,			XK_p,		{ spawn }, \ | 	{ MODKEY,			XK_p,		spawn, \ | ||||||
| 		{ .cmd = "exe=\"$(lsx `echo $PATH | sed 's/:/ /g'` | sort -u " \ | 		{ .cmd = "exe=\"$(lsx `echo $PATH | sed 's/:/ /g'` | sort -u " \ | ||||||
| 			" | dmenu -font '"FONT"' -normbg '"NORMBGCOLOR"' -normfg '"NORMFGCOLOR"' " \ | 			" | dmenu -font '"FONT"' -normbg '"NORMBGCOLOR"' -normfg '"NORMFGCOLOR"' " \ | ||||||
| 			"-selbg '"SELBGCOLOR"' -selfg '"SELFGCOLOR"')\" && exec $exe" } }, \ | 			"-selbg '"SELBGCOLOR"' -selfg '"SELFGCOLOR"')\" && exec $exe" } }, \ | ||||||
| 	{ MODKEY,			XK_j,		{ focusnext },		{ 0 } }, \ | 	{ MODKEY,			XK_j,		focusnext,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_k,		{ focusprev },		{ 0 } }, \ | 	{ MODKEY,			XK_k,		focusprev,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_Return,	{ zoom },		{ 0 } }, \ | 	{ MODKEY,			XK_Return,	zoom,		{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_g,		{ resizemaster },	{ .i = 15 } }, \ | 	{ MODKEY,			XK_g,		resizemaster,	{ .i = 15 } }, \ | ||||||
| 	{ MODKEY,			XK_s,		{ resizemaster },	{ .i = -15 } }, \ | 	{ MODKEY,			XK_s,		resizemaster,	{ .i = -15 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_1,		{ tag },		{ .i = 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_1,		tag,		{ .i = 0 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_2,		{ tag },		{ .i = 1 } }, \ | 	{ MODKEY|ShiftMask,		XK_2,		tag,		{ .i = 1 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_3,		{ tag },		{ .i = 2 } }, \ | 	{ MODKEY|ShiftMask,		XK_3,		tag,		{ .i = 2 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_4,		{ tag },		{ .i = 3 } }, \ | 	{ MODKEY|ShiftMask,		XK_4,		tag,		{ .i = 3 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_1,		{ toggletag },		{ .i = 0 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_1,		toggletag,	{ .i = 0 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_2,		{ toggletag },		{ .i = 1 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_2,		toggletag,	{ .i = 1 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_3,		{ toggletag },		{ .i = 2 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_3,		toggletag,	{ .i = 2 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_4,		{ toggletag },		{ .i = 3 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_4,		toggletag,	{ .i = 3 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_c,		{ killclient },		{ 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_c,		killclient,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_space,	{ togglemode },		{ 0 } }, \ | 	{ MODKEY,			XK_space,	togglemode,	{ 0 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_space,	{ togglefloat },	{ 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_space,	togglefloat,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_0,		{ viewall },		{ 0 } }, \ | 	{ MODKEY,			XK_0,		viewall,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_1,		{ view },		{ .i = 0 } }, \ | 	{ MODKEY,			XK_1,		view,		{ .i = 0 } }, \ | ||||||
| 	{ MODKEY,			XK_2,		{ view },		{ .i = 1 } }, \ | 	{ MODKEY,			XK_2,		view,		{ .i = 1 } }, \ | ||||||
| 	{ MODKEY,			XK_3,		{ view },		{ .i = 2 } }, \ | 	{ MODKEY,			XK_3,		view,		{ .i = 2 } }, \ | ||||||
| 	{ MODKEY,			XK_4,		{ view },		{ .i = 3 } }, \ | 	{ MODKEY,			XK_4,		view,		{ .i = 3 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_1,		{ toggleview },		{ .i = 0 } }, \ | 	{ MODKEY|ControlMask,		XK_1,		toggleview,	{ .i = 0 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_2,		{ toggleview },		{ .i = 1 } }, \ | 	{ MODKEY|ControlMask,		XK_2,		toggleview,	{ .i = 1 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_3,		{ toggleview },		{ .i = 2 } }, \ | 	{ MODKEY|ControlMask,		XK_3,		toggleview,	{ .i = 2 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_4,		{ toggleview },		{ .i = 3 } }, \ | 	{ MODKEY|ControlMask,		XK_4,		toggleview,	{ .i = 3 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_q,		{ quit },		{ 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_q,		quit,		{ 0 } }, \ | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| #define RULES \ | #define RULES \ | ||||||
|  | |||||||
| @ -19,43 +19,42 @@ const char *tags[] = { "1", "2", "3", "4", "5", NULL }; | |||||||
| 
 | 
 | ||||||
| #define MASTER			600		/* per thousand */ | #define MASTER			600		/* per thousand */ | ||||||
| #define MODKEY			Mod1Mask | #define MODKEY			Mod1Mask | ||||||
| #define NFUNCS			1		/* number of funcs per key */ |  | ||||||
| #define SNAP			20		/* pixel */ | #define SNAP			20		/* pixel */ | ||||||
| 
 | 
 | ||||||
| #define KEYS \ | #define KEYS \ | ||||||
| static Key key[] = { \ | static Key key[] = { \ | ||||||
| 	/* modifier			key		functions		arguments */ \ | 	/* modifier			key		function	argument */ \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_Return,	{ spawn },		{ .cmd = "exec xterm" } }, \ | 	{ MODKEY|ShiftMask,		XK_Return,	spawn,		{ .cmd = "exec xterm" } }, \ | ||||||
| 	{ MODKEY,			XK_Tab,		{ focusnext },		{ 0 } }, \ | 	{ MODKEY,			XK_Tab,		focusnext,	{ 0 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_Tab,		{ focusprev },		{ 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_Tab,		focusprev,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_Return,	{ zoom },		{ 0 } }, \ | 	{ MODKEY,			XK_Return,	zoom,		{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_g,		{ resizemaster },	{ .i = 15 } }, \ | 	{ MODKEY,			XK_g,		resizemaster,	{ .i = 15 } }, \ | ||||||
| 	{ MODKEY,			XK_s,		{ resizemaster },	{ .i = -15 } }, \ | 	{ MODKEY,			XK_s,		resizemaster,	{ .i = -15 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_1,		{ tag },		{ .i = 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_1,		tag,		{ .i = 0 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_2,		{ tag },		{ .i = 1 } }, \ | 	{ MODKEY|ShiftMask,		XK_2,		tag,		{ .i = 1 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_3,		{ tag },		{ .i = 2 } }, \ | 	{ MODKEY|ShiftMask,		XK_3,		tag,		{ .i = 2 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_4,		{ tag },		{ .i = 3 } }, \ | 	{ MODKEY|ShiftMask,		XK_4,		tag,		{ .i = 3 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_5,		{ tag },		{ .i = 4 } }, \ | 	{ MODKEY|ShiftMask,		XK_5,		tag,		{ .i = 4 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_1,		{ toggletag },		{ .i = 0 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_1,		toggletag,	{ .i = 0 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_2,		{ toggletag },		{ .i = 1 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_2,		toggletag,	{ .i = 1 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_3,		{ toggletag },		{ .i = 2 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_3,		toggletag,	{ .i = 2 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_4,		{ toggletag },		{ .i = 3 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_4,		toggletag,	{ .i = 3 } }, \ | ||||||
| 	{ MODKEY|ControlMask|ShiftMask,	XK_5,		{ toggletag },		{ .i = 4 } }, \ | 	{ MODKEY|ControlMask|ShiftMask,	XK_5,		toggletag,	{ .i = 4 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_c,		{ killclient },		{ 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_c,		killclient,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_space,	{ togglemode },		{ 0 } }, \ | 	{ MODKEY,			XK_space,	togglemode,	{ 0 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_space,	{ togglefloat },	{ 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_space,	togglefloat,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_0,		{ viewall },		{ 0 } }, \ | 	{ MODKEY,			XK_0,		viewall,	{ 0 } }, \ | ||||||
| 	{ MODKEY,			XK_1,		{ view },		{ .i = 0 } }, \ | 	{ MODKEY,			XK_1,		view,		{ .i = 0 } }, \ | ||||||
| 	{ MODKEY,			XK_2,		{ view },		{ .i = 1 } }, \ | 	{ MODKEY,			XK_2,		view,		{ .i = 1 } }, \ | ||||||
| 	{ MODKEY,			XK_3,		{ view },		{ .i = 2 } }, \ | 	{ MODKEY,			XK_3,		view,		{ .i = 2 } }, \ | ||||||
| 	{ MODKEY,			XK_4,		{ view },		{ .i = 3 } }, \ | 	{ MODKEY,			XK_4,		view,		{ .i = 3 } }, \ | ||||||
| 	{ MODKEY,			XK_5,		{ view },		{ .i = 4 } }, \ | 	{ MODKEY,			XK_5,		view,		{ .i = 4 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_1,		{ toggleview },		{ .i = 0 } }, \ | 	{ MODKEY|ControlMask,		XK_1,		toggleview,	{ .i = 0 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_2,		{ toggleview },		{ .i = 1 } }, \ | 	{ MODKEY|ControlMask,		XK_2,		toggleview,	{ .i = 1 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_3,		{ toggleview },		{ .i = 2 } }, \ | 	{ MODKEY|ControlMask,		XK_3,		toggleview,	{ .i = 2 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_4,		{ toggleview },		{ .i = 3 } }, \ | 	{ MODKEY|ControlMask,		XK_4,		toggleview,	{ .i = 3 } }, \ | ||||||
| 	{ MODKEY|ControlMask,		XK_5,		{ toggleview },		{ .i = 4 } }, \ | 	{ MODKEY|ControlMask,		XK_5,		toggleview,	{ .i = 4 } }, \ | ||||||
| 	{ MODKEY|ShiftMask,		XK_q,		{ quit },		{ 0 } }, \ | 	{ MODKEY|ShiftMask,		XK_q,		quit,		{ 0 } }, \ | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| /* Query class:instance:title for regex matching info with following command:
 | /* Query class:instance:title for regex matching info with following command:
 | ||||||
|  | |||||||
							
								
								
									
										9
									
								
								event.c
									
									
									
									
									
								
							
							
						
						
									
										9
									
								
								event.c
									
									
									
									
									
								
							| @ -11,7 +11,7 @@ | |||||||
| typedef struct { | typedef struct { | ||||||
| 	unsigned long mod; | 	unsigned long mod; | ||||||
| 	KeySym keysym; | 	KeySym keysym; | ||||||
| 	void (*func[NFUNCS])(Arg *arg); | 	void (*func)(Arg *arg); | ||||||
| 	Arg arg; | 	Arg arg; | ||||||
| } Key; | } Key; | ||||||
| 
 | 
 | ||||||
| @ -245,7 +245,7 @@ expose(XEvent *e) { | |||||||
| static void | static void | ||||||
| keypress(XEvent *e) { | keypress(XEvent *e) { | ||||||
| 	static unsigned int len = sizeof key / sizeof key[0]; | 	static unsigned int len = sizeof key / sizeof key[0]; | ||||||
| 	unsigned int i, j; | 	unsigned int i; | ||||||
| 	KeySym keysym; | 	KeySym keysym; | ||||||
| 	XKeyEvent *ev = &e->xkey; | 	XKeyEvent *ev = &e->xkey; | ||||||
| 
 | 
 | ||||||
| @ -254,9 +254,8 @@ keypress(XEvent *e) { | |||||||
| 		if(keysym == key[i].keysym | 		if(keysym == key[i].keysym | ||||||
| 			&& CLEANMASK(key[i].mod) == CLEANMASK(ev->state)) | 			&& CLEANMASK(key[i].mod) == CLEANMASK(ev->state)) | ||||||
| 		{ | 		{ | ||||||
| 			for(j = 0; j < NFUNCS; j++) | 			if(key[i].func) | ||||||
| 				if(key[i].func[j]) | 				key[i].func(&key[i].arg); | ||||||
| 					key[i].func[j](&key[i].arg); |  | ||||||
| 			return; | 			return; | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 arg@mig29
						arg@mig29