diff options
| -rw-r--r-- | Makefile | 2 | ||||
| -rw-r--r-- | README | 2 | ||||
| -rw-r--r-- | dev.c (renamed from mouse.c) | 55 | ||||
| -rw-r--r-- | kb.c | 60 | ||||
| -rw-r--r-- | wm.h | 4 | 
5 files changed, 57 insertions, 66 deletions
| @@ -3,7 +3,7 @@  include config.mk -SRC = client.c draw.c event.c kb.c mouse.c util.c wm.c +SRC = client.c dev.c draw.c event.c util.c wm.c  OBJ = ${SRC:.c=.o}  MAN1 = dwm.1   BIN = dwm @@ -37,4 +37,4 @@ This will start dwm on display :1 of the host foo.bar.  Configuration  -------------  The configuration of dwm is done by customizing the wm.h source file. To -customize the key bindings edit kb.c. +customize the key bindings edit dev.c. @@ -3,11 +3,64 @@   * See LICENSE file for license details.   */ +#include "wm.h" +  #include <stdlib.h>  #include <string.h>  #include <unistd.h> +#include <X11/keysym.h> -#include "wm.h" +/********** CUSTOMIZE **********/ + +const char *term[] = {  +	"aterm", "-tr", "+sb", "-bg", "black", "-fg", "white", "-fn", +	"-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*",NULL +}; +const char *browse[] = { "firefox", NULL }; + +static Key key[] = { +	{ Mod1Mask, XK_Return, (void (*)(void *))spawn, term }, +	{ Mod1Mask, XK_w, (void (*)(void *))spawn, browse }, +	{ Mod1Mask, XK_k, sel, "prev" },  +	{ Mod1Mask, XK_j, sel, "next" },  +	{ Mod1Mask, XK_space, toggle, NULL },  +	{ Mod1Mask, XK_m, max, NULL },  +	{ Mod1Mask | ShiftMask, XK_c, ckill, NULL },  +	{ Mod1Mask | ShiftMask, XK_q, quit, NULL }, +}; + +/********** CUSTOMIZE **********/ + +void +update_keys(void) +{ +	unsigned int i, len; +	KeyCode code; + +	len = sizeof(key) / sizeof(key[0]); +	for(i = 0; i < len; i++) { +		code = XKeysymToKeycode(dpy, key[i].keysym); +		XUngrabKey(dpy, code, key[i].mod, root); +		XGrabKey(dpy, code, key[i].mod, root, True, GrabModeAsync, GrabModeAsync); +	} +} + +void +keypress(XEvent *e) +{ +	XKeyEvent *ev = &e->xkey; +	unsigned int i, len; +	KeySym keysym; + +	keysym = XKeycodeToKeysym(dpy, (KeyCode)ev->keycode, 0); +	len = sizeof(key) / sizeof(key[0]); +	for(i = 0; i < len; i++) +		if((keysym == key[i].keysym) && (key[i].mod == ev->state)) { +			if(key[i].func) +				key[i].func(key[i].aux); +			return; +		} +}  #define ButtonMask      (ButtonPressMask | ButtonReleaseMask)  #define MouseMask       (ButtonMask | PointerMotionMask) @@ -1,60 +0,0 @@ -/* - * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com> - * See LICENSE file for license details. - */ - -#include "wm.h" - -#include <X11/keysym.h> - -/********** CUSTOMIZE **********/ - -const char *term[] = {  -	"aterm", "-tr", "+sb", "-bg", "black", "-fg", "white", "-fn", -	"-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*",NULL -}; -const char *browse[] = { "firefox", NULL }; - -static Key key[] = { -	{ Mod1Mask, XK_Return, (void (*)(void *))spawn, term }, -	{ Mod1Mask, XK_w, (void (*)(void *))spawn, browse }, -	{ Mod1Mask, XK_k, sel, "prev" },  -	{ Mod1Mask, XK_j, sel, "next" },  -	{ Mod1Mask, XK_space, toggle, NULL },  -	{ Mod1Mask, XK_m, max, NULL },  -	{ Mod1Mask | ShiftMask, XK_c, ckill, NULL },  -	{ Mod1Mask | ShiftMask, XK_q, quit, NULL }, -}; - -/********** CUSTOMIZE **********/ - -void -update_keys(void) -{ -	unsigned int i, len; -	KeyCode code; - -	len = sizeof(key) / sizeof(key[0]); -	for(i = 0; i < len; i++) { -		code = XKeysymToKeycode(dpy, key[i].keysym); -		XUngrabKey(dpy, code, key[i].mod, root); -		XGrabKey(dpy, code, key[i].mod, root, True, GrabModeAsync, GrabModeAsync); -	} -} - -void -keypress(XEvent *e) -{ -	XKeyEvent *ev = &e->xkey; -	unsigned int i, len; -	KeySym keysym; - -	keysym = XKeycodeToKeysym(dpy, (KeyCode)ev->keycode, 0); -	len = sizeof(key) / sizeof(key[0]); -	for(i = 0; i < len; i++) -		if((keysym == key[i].keysym) && (key[i].mod == ev->state)) { -			if(key[i].func) -				key[i].func(key[i].aux); -			return; -		} -} @@ -115,11 +115,9 @@ extern unsigned int texth(Fnt *font);  /* event.c */  extern void discard_events(long even_mask); -/* kb.c */ +/* dev.c */  extern void update_keys(void);  extern void keypress(XEvent *e); - -/* mouse.c */  extern void mresize(Client *c);  extern void mmove(Client *c); | 
