diff --git a/config.def.h b/config.def.h
index b41747f..1b52a86 100644
--- a/config.def.h
+++ b/config.def.h
@@ -261,7 +261,7 @@ static Key key[] = {
 	{ 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,     "\033[3~",      +1,    0,    0},
+	{ XK_KP_Delete,     XK_ANY_MOD,     "\177",         +1,    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},
@@ -316,8 +316,7 @@ static Key key[] = {
 	{ 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,     "\033[3~",      +1,    0,    0},
-	{ XK_BackSpace,     XK_NO_MOD,      "\177",          0,    0,    0},
+	{ XK_Delete,        XK_ANY_MOD,     "\177",         +1,    0,    0},
 	{ XK_BackSpace,     Mod1Mask,       "\033\177",      0,    0,    0},
 	{ XK_Home,          ShiftMask,      "\033[2J",       0,   -1,    0},
 	{ XK_Home,          ShiftMask,      "\033[1;2H",     0,   +1,    0},
diff --git a/st.info b/st.info
index b70fefa..d979946 100644
--- a/st.info
+++ b/st.info
@@ -53,7 +53,7 @@ st| simpleterm,
 	ka3=\E[5~,
 	kc1=\E[4~,
 	kc3=\E[6~,
-	kbs=\177,
+	kbs=\010,
 	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=\E[3~,
+	kdch1=\177~,
 	kich1=\E[2~,
 	kend=\E[4~,
 	kf1=\EOP,
