return;
/* first check if a control mask is omitted */
if(e->state & ControlMask) {
- switch (ksym) {
+ switch(tolower(ksym)) {
default: /* ignore other control sequences */
return;
case XK_a:
- case XK_A:
ksym = XK_Home;
break;
case XK_c:
- case XK_C:
ksym = XK_Escape;
break;
case XK_e:
- case XK_E:
ksym = XK_End;
break;
case XK_h:
- case XK_H:
ksym = XK_BackSpace;
break;
case XK_i:
- case XK_I:
ksym = XK_Tab;
break;
case XK_j:
- case XK_J:
ksym = XK_Return;
break;
case XK_k:
- case XK_K:
text[cursor] = '\0';
break;
case XK_u:
- case XK_U:
memmove(text, text + cursor, sizeof text - cursor + 1);
cursor = 0;
match(text);
break;
case XK_w:
- case XK_W:
if(cursor > 0) {
i = cursor;
while(i-- > 0 && text[i] == ' ');