diff --git a/src/os_unix.c b/src/os_unix.c
index 15d88f9..654480d 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -4980,29 +4980,7 @@
 			    }
 			}
 
-			// replace K_BS by <BS> and K_DEL by <DEL>
-			for (i = ta_len; i < ta_len + len; ++i)
-			{
-			    if (ta_buf[i] == CSI && len - i > 2)
-			    {
-				c = TERMCAP2KEY(ta_buf[i + 1], ta_buf[i + 2]);
-				if (c == K_DEL || c == K_KDEL || c == K_BS)
-				{
-				    mch_memmove(ta_buf + i + 1, ta_buf + i + 3,
-						       (size_t)(len - i - 2));
-				    if (c == K_DEL || c == K_KDEL)
-					ta_buf[i] = DEL;
-				    else
-					ta_buf[i] = Ctrl_H;
-				    len -= 2;
-				}
-			    }
-			    else if (ta_buf[i] == '\r')
-				ta_buf[i] = '\n';
-			    if (has_mbyte)
-				i += (*mb_ptr2len_len)(ta_buf + i,
-							ta_len + len - i) - 1;
-			}
+			term_replace_bs_del_keycode(ta_buf, ta_len, len);
 
 			/*
 			 * For pipes: echo the typed characters.
