cmdline (merge-intel): add new bindings; ctrl-p, ctrl-n, alt-d
[libcmdline.git] / src / lib / cmdline_rdline.c
index 91217be..2ad9a76 100644 (file)
@@ -291,6 +291,14 @@ rdline_char_in(struct rdline *rdl, char c)
                        display_right_buffer(rdl, 1);
                        break;
 
+               case CMDLINE_KEY_META_D:
+                       while (! CIRBUF_IS_EMPTY(&rdl->right) && isblank2(cirbuf_get_head(&rdl->right)))
+                               cirbuf_del_head(&rdl->right);
+                       while (! CIRBUF_IS_EMPTY(&rdl->right) && !isblank2(cirbuf_get_head(&rdl->right)))
+                               cirbuf_del_head(&rdl->right);
+                       display_right_buffer(rdl, 1);
+                       break;
+
                case CMDLINE_KEY_SUPPR:
                case CMDLINE_KEY_CTRL_D:
                        if (cmd == CMDLINE_KEY_CTRL_D &&
@@ -431,6 +439,7 @@ rdline_char_in(struct rdline *rdl, char c)
 
 #ifndef NO_RDLINE_HISTORY
                case CMDLINE_KEY_UP_ARR:
+               case CMDLINE_KEY_CTRL_P:
                        if (rdl->history_cur_line == 0) {
                                rdline_remove_first_history_item(rdl);
                        }
@@ -452,6 +461,7 @@ rdline_char_in(struct rdline *rdl, char c)
                        break;
 
                case CMDLINE_KEY_DOWN_ARR:
+               case CMDLINE_KEY_CTRL_N:
                        if (rdl->history_cur_line - 1 < 0)
                                break;