commit d67133bf44fc951661865eb5fc3f285a8d004c4f from: Omar Polo date: Fri Mar 12 10:12:24 2021 UTC add minibuffer_delete_char and rename del to ..._backward_char commit - fc43eaddf62cc96c86448dd3d0e37f1c8e2ab602 commit + d67133bf44fc951661865eb5fc3f285a8d004c4f blob - 5a8112c5d9e98929a69471e1b2ca9ab7d8e56ed2 blob + 18acf3b67771585b906bdf975b92a9cfca392359 --- ui.c +++ ui.c @@ -111,7 +111,8 @@ static void cmd_load_current_url(struct tab*); static void global_key_unbound(void); -static void cmd_mini_del(struct tab*); +static void cmd_mini_delete_char(struct tab*); +static void cmd_mini_delete_backward_char(struct tab*); static void cmd_mini_forward_char(struct tab*); static void cmd_mini_backward_char(struct tab*); static void cmd_mini_move_end_of_line(struct tab*); @@ -454,7 +455,8 @@ load_default_keys(void) minibuffer_set_key("ret", cmd_mini_complete_and_exit); minibuffer_set_key("C-g", cmd_mini_abort); minibuffer_set_key("esc", cmd_mini_abort); - minibuffer_set_key("del", cmd_mini_del); + minibuffer_set_key("C-d", cmd_mini_delete_char); + minibuffer_set_key("del", cmd_mini_delete_backward_char); minibuffer_set_key("C-f", cmd_mini_forward_char); minibuffer_set_key("C-b", cmd_mini_backward_char); @@ -799,7 +801,19 @@ global_key_unbound(void) } static void -cmd_mini_del(struct tab *tab) +cmd_mini_delete_char(struct tab *tab) +{ + if (ministate.len == 0 || ministate.off == ministate.len) + return; + + memmove(&ministate.buf[ministate.off], + &ministate.buf[ministate.off+1], + ministate.len - ministate.off + 1); + ministate.len--; +} + +static void +cmd_mini_delete_backward_char(struct tab *tab) { if (ministate.len == 0 || ministate.off == 0) return;