From: Paul Fox Date: Mon, 18 Jul 2005 22:17:25 +0000 (-0000) Subject: allow both ^H and DEL to backspace in insert mode (bug #23) X-Git-Tag: 1_1_0~911 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=d13b90b9e8985e5787621f82d7cc5d29a8ae32ea;p=oweals%2Fbusybox.git allow both ^H and DEL to backspace in insert mode (bug #23) --- diff --git a/editors/vi.c b/editors/vi.c index fc1deeb3c..eb0aa33f6 100644 --- a/editors/vi.c +++ b/editors/vi.c @@ -1612,7 +1612,7 @@ static Byte *char_insert(Byte * p, Byte c) // insert the char c at 'p' if ((p[-1] != '\n') && (dot>text)) { p--; } - } else if (c == erase_char) { // Is this a BS + } else if (c == erase_char || c == 8 || c == 127) { // Is this a BS // 123456789 if ((p[-1] != '\n') && (dot>text)) { p--; @@ -3083,8 +3083,8 @@ key_cmd_mode: break; case 'h': // h- move left case VI_K_LEFT: // cursor key Left - case 8: // ctrl-H- move left (This may be ERASE char) - case 127: // DEL- move left (This may be ERASE char) + case 8: // ctrl-H- move left (This may be ERASE char) + case 127: // DEL- move left (This may be ERASE char) if (cmdcnt-- > 1) { do_cmd(c); } // repeat cnt @@ -3249,7 +3249,7 @@ key_cmd_mode: // // dont separate these two commands. 'f' depends on ';' // - //**** fall thru to ... 'i' + //**** fall thru to ... ';' case ';': // ;- look at rest of line for last forward char if (cmdcnt-- > 1) { do_cmd(';');