--- a/config.def.h +++ b/config.def.h @@ -166,6 +166,7 @@ static uint forceselmod = ShiftMask; static Key key[] = { /* keysym mask string appkey appcursor crlf */ + { XK_BackSpace, XK_ANY_MOD, "\177", 0, 0, 0}, { XK_KP_Home, ShiftMask, "\033[2J", 0, -1, 0}, { XK_KP_Home, ShiftMask, "\033[1;2H", 0, +1, 0}, { XK_KP_Home, XK_ANY_MOD, "\033[H", 0, -1, 0}, @@ -202,8 +203,7 @@ static Key key[] = { { XK_KP_Delete, ControlMask, "\033[3;5~", +1, 0, 0}, { XK_KP_Delete, ShiftMask, "\033[2K", -1, 0, 0}, { XK_KP_Delete, ShiftMask, "\033[3;2~", +1, 0, 0}, - { XK_KP_Delete, XK_ANY_MOD, "\033[P", -1, 0, 0}, - { XK_KP_Delete, XK_ANY_MOD, "\177", +1, 0, 0}, + { XK_KP_Delete, XK_ANY_MOD, "\033[3~", 0, 0, 0}, { XK_KP_Multiply, XK_ANY_MOD, "\033Oj", +2, 0, 0}, { XK_KP_Add, XK_ANY_MOD, "\033Ok", +2, 0, 0}, { XK_KP_Enter, XK_ANY_MOD, "\033OM", +2, 0, 0}, @@ -257,8 +257,7 @@ static Key key[] = { { XK_Delete, ControlMask, "\033[3;5~", +1, 0, 0}, { XK_Delete, ShiftMask, "\033[2K", -1, 0, 0}, { XK_Delete, ShiftMask, "\033[3;2~", +1, 0, 0}, - { XK_Delete, XK_ANY_MOD, "\033[P", -1, 0, 0}, - { XK_Delete, XK_ANY_MOD, "\177", +1, 0, 0}, + { XK_Delete, XK_ANY_MOD, "\033[3~", 0, 0, 0}, { XK_Home, ShiftMask, "\033[2J", 0, -1, 0}, { XK_Home, ShiftMask, "\033[1;2H", 0, +1, 0}, { XK_Home, XK_ANY_MOD, "\033[H", 0, -1, 0}, diff --git a/st.info b/st.info index 3b754db..f760a6a 100644 --- a/st.info +++ b/st.info @@ -53,7 +53,7 @@ st| simpleterm, ka3=\E[5~, kc1=\E[4~, kc3=\E[6~, - kbs=\010, + kbs=\0177, kcbt=\E[Z, kb2=\EOu, kcub1=\EOD, @@ -73,7 +73,7 @@ st| simpleterm, kri=\E[1;2A, kclr=\E[3;5~, kdl1=\E[3;2~, - kdch1=\0177, + kdch1=\E[3~, kich1=\E[2~, kend=\E[4~, kf1=\EOP,