all repos — st @ 16ccf344deccbae53865b6efbe9dc23ebdceccb7

st (suckless terminal) config

Fix tab key

When Shift + Tab is pressed X server send the event XK_ISO_Left_Tab with
ShiftMask, so this is the entry we need in config.def.h

This patch also revert the previous patch for this issue because it breaks
the keyboard.
---
 config.def.h |    2 +-
 st.c         |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Roberto E. Vargas Caballero k0ga@shike2.com
commit

16ccf344deccbae53865b6efbe9dc23ebdceccb7

parent

461aac159cf3dbb8514e645df6387e03e7c26084

2 files changed, 2 insertions(+), 2 deletions(-)

jump to
M config.def.hconfig.def.h

@@ -141,7 +141,7 @@ { XK_Right, XK_NO_MOD, "\033OC", 0, +1, 0},

{ XK_Right, ShiftMask, "\033[1;2C", 0, 0, 0}, { XK_Right, ControlMask, "\033[1;5C", 0, 0, 0}, { XK_Right, Mod1Mask, "\033[1;3C", 0, 0, 0}, - { XK_Tab, ShiftMask, "\033[Z", 0, 0, 0}, + { XK_ISO_Left_Tab, ShiftMask, "\033[Z", 0, 0, 0}, { XK_Return, XK_NO_MOD, "\n", 0, 0, -1}, { XK_Return, XK_NO_MOD, "\r\n", 0, 0, +1}, { XK_Return, Mod1Mask, "\033\n", 0, 0, -1},
M st.cst.c

@@ -2700,7 +2700,7 @@

if(kp->k != k) continue; - if((state & mask) != mask || + if((state & mask) != mask && (mask == XK_NO_MOD && state)) { continue; }