Patch from Jim Treadway and Vladimir Oleynik to Add CTRL-K
authorEric Andersen <andersen@codepoet.org>
Sat, 13 Apr 2002 13:26:49 +0000 (13:26 -0000)
committerEric Andersen <andersen@codepoet.org>
Sat, 13 Apr 2002 13:26:49 +0000 (13:26 -0000)
and fix CTRL-L support for cmdedit.c

shell/cmdedit.c

index 3810c23..b0309fe 100644 (file)
@@ -1263,14 +1263,18 @@ prepare_to_die:
                        input_tab(&lastWasTab);
 #endif
                        break;
-               case 12:
-                       /* Control-l -- clear screen
-                        * if the len=0 and no chars in edit line */
-                       if (len == 0) {
-                               printf("\033[H\033[J");
-                               put_prompt();
-                       } else {
-                               beep();
+               case 11:
+                       /* Control-k -- clear to end of line */  
+                       *(command + cursor) = 0;
+                       len = cursor;
+                       redraw(cmdedit_y, 0);
+                       break;
+               case 12: 
+                       {
+                               /* Control-l -- clear screen */
+                               int old_cursor = cursor;
+                               printf("\033[H");
+                               redraw(0, len-old_cursor);
                        }
                        break;
                case 14: