Fix tab key - st - Personal fork of st
 (HTM) git clone git://git.drkhsh.at/st.git
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 16ccf344deccbae53865b6efbe9dc23ebdceccb7
 (DIR) parent 461aac159cf3dbb8514e645df6387e03e7c26084
 (HTM) Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
       Date:   Wed, 14 Nov 2012 11:14:29 +0100
       
       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(-)
       Diffstat:
         M config.def.h                        |       2 +-
         M st.c                                |       2 +-
       
       2 files changed, 2 insertions(+), 2 deletions(-)
       ---
 (DIR) diff --git a/config.def.h b/config.def.h
       @@ -141,7 +141,7 @@ static Key key[] = {
                { 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},
 (DIR) diff --git a/st.c b/st.c
       @@ -2700,7 +2700,7 @@ kmap(KeySym k, uint state) {
                        if(kp->k != k)
                                continue;
        
       -                if((state & mask) != mask ||
       +                if((state & mask) != mask &&
                                        (mask == XK_NO_MOD && state)) {
                                continue;
                        }