diff -r e9fd465c5dac st.c --- a/st.c Sun Jul 31 11:18:06 2011 +0200 +++ b/st.c Mon Aug 01 11:55:14 2011 +0200 @@ -1834,7 +1834,7 @@ kmap(KeySym k, unsigned int state) { int i; for(i = 0; i < LEN(key); i++) - if(key[i].k == k && (key[i].mask == 0 || key[i].mask & state)) + if(key[i].k == k && (state + key[i].mask == 0 || key[i].mask & state)) return (char*)key[i].s; return NULL; }