fix bug with backspace (was wrong symbol: ^H instead of ^?)

This commit is contained in:
Edward Emelianov 2024-05-08 14:37:21 +03:00
parent ffdc740f5c
commit c959a4e23a

View File

@ -738,7 +738,7 @@ void *cmdline(void* arg){
if(insert_mode){ if(insert_mode){
DBG("forward_to_readline(%d)", c); DBG("forward_to_readline(%d)", c);
char *ptr = NULL; char *ptr = NULL;
switch(c){ // check special keys switch(c){ // check special keys (showkey -a)
case KEY_UP: case KEY_UP:
ptr = "A"; ptr = "A";
break; break;
@ -752,9 +752,9 @@ void *cmdline(void* arg){
ptr = "D"; ptr = "D";
break; break;
case KEY_BACKSPACE: case KEY_BACKSPACE:
ptr = "H"; forward_to_readline(127); // ^?
break; break;
case KEY_IC: case KEY_IC: // ^[[2~
DBG("key insert"); DBG("key insert");
ptr = "2~"; ptr = "2~";
break; break;
@ -777,8 +777,8 @@ void *cmdline(void* arg){
forward_to_readline(c); forward_to_readline(c);
} }
if(ptr){ // arrows and so on: 27, 91, code if(ptr){ // arrows and so on: 27, 91, code
forward_to_readline(27); forward_to_readline(27); // ^
forward_to_readline(91); forward_to_readline(91); // [[
while(*ptr) forward_to_readline(*ptr++); while(*ptr) forward_to_readline(*ptr++);
} }
}else{ }else{