Here is a patch I wrote that allows you to set the modifier used by evilwm. See the output of 'xmodmap -pm' for the modifier numbers.
I sent this to the author a while back but received no reply. diff -ur evilwm-0.99.17/events.c evilwm-0.99.17-new/events.c --- evilwm-0.99.17/events.c 2002-11-26 21:09:35.000000000 +0000 +++ evilwm-0.99.17-new/events.c 2004-12-27 00:49:37.000000000 +0000 @@ -209,6 +209,7 @@ } void handle_enter_event(XCrossingEvent *e) { + extern unsigned int modifiermask; Client *c; #ifdef VWM int wdesk; @@ -232,7 +233,7 @@ client_update_current(c, current); XSetInputFocus(dpy, c->window, RevertToPointerRoot, CurrentTime ); #ifdef MOUSE - grab_button(c->parent, Mod1Mask, AnyButton); + grab_button(c->parent, modifiermask, AnyButton); #endif } } diff -ur evilwm-0.99.17/main.c evilwm-0.99.17-new/main.c --- evilwm-0.99.17/main.c 2003-10-15 12:48:23.000000000 +0100 +++ evilwm-0.99.17-new/main.c 2004-12-27 00:49:04.000000000 +0000 @@ -48,6 +48,7 @@ Atom mwm_hints; #endif unsigned int numlockmask = 0; +unsigned int modifiermask = Mod1Mask; static void *xmalloc(size_t size); @@ -83,6 +84,26 @@ #endif else if (!strcmp(argv[i], "-bw") && i+1<argc) opt_bw = atoi(argv[++i]); + else if (!strcmp(argv[i], "-mod") && i+1<argc) { + if (strlen(argv[++i]) == 1) + switch (argv[i][0]) { + case '1': + modifiermask = Mod1Mask; + break; + case '2': + modifiermask = Mod2Mask; + break; + case '3': + modifiermask = Mod3Mask; + break; + case '4': + modifiermask = Mod4Mask; + break; + case '5': + modifiermask = Mod5Mask; + break; + } + } else if (!strcmp(argv[i], "-term") && i+1<argc) { opt_term = (const char **)xmalloc(3 * sizeof(const char *)); opt_term[0] = argv[++i]; @@ -98,7 +119,7 @@ } else { #ifdef STDIO printf("usage: evilwm [-display display] [-term termpro g] [-fg foreground]\n"); - printf("\t[-bg background] [-bw borderwidth] [-snap num ] [-V]\n"); + printf("\t[-bg background] [-bw borderwidth] [-snap num ] [-mod num] [-V]\n"); #endif exit(2); } @@ -280,9 +301,9 @@ /* So now I grab each and every one. */ for (keysym = keys_to_grab; *keysym; keysym++) { - grab_keysym(screens[i].root, ControlMask|Mod1Mask, *key sym); + grab_keysym(screens[i].root, ControlMask|modifiermask, *keysym); } - grab_keysym(screens[i].root, Mod1Mask, XK_Tab); + grab_keysym(screens[i].root, modifiermask, XK_Tab); /* scan all the windows on this screen */ #ifdef XDEBUG -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]