summaryrefslogtreecommitdiff
path: root/editors/vi.c
diff options
context:
space:
mode:
authorPaul Fox2005-07-18 22:17:25 +0000
committerPaul Fox2005-07-18 22:17:25 +0000
commitd13b90b9e8985e5787621f82d7cc5d29a8ae32ea (patch)
treed9b98825dc851c5751c336dc4cfa635b0b5bb4ba /editors/vi.c
parent0ef24c672ab4901da22dffbfdb6301437309a0a3 (diff)
downloadbusybox-d13b90b9e8985e5787621f82d7cc5d29a8ae32ea.zip
busybox-d13b90b9e8985e5787621f82d7cc5d29a8ae32ea.tar.gz
allow both ^H and DEL to backspace in insert mode (bug #23)
Diffstat (limited to 'editors/vi.c')
-rw-r--r--editors/vi.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/editors/vi.c b/editors/vi.c
index fc1deeb..eb0aa33 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(';');