diff --git a/src/keybind/builtin/helix.json b/src/keybind/builtin/helix.json index 728d827..331559b 100644 --- a/src/keybind/builtin/helix.json +++ b/src/keybind/builtin/helix.json @@ -67,9 +67,9 @@ ["shift+b", "move_prev_long_word_start"], ["shift+e", "move_next_long_word_end"], - ["shift+i", ["smart_move_begin"], ["enter_mode", "insert"]], - ["shift+a", ["move_end"], ["enter_mode", "insert"]], - ["shift+o", ["smart_insert_line_before"], ["enter_mode", "insert"]], + ["shift+i", ["enter_mode", "insert"], ["smart_move_begin"]], + ["shift+a", ["enter_mode", "insert"], ["move_end"]], + ["shift+o", ["enter_mode", "insert"], ["smart_insert_line_before"]], ["shift+c", "copy_selection_on_next_line"], ["shift+s", "split_selection"], @@ -143,11 +143,11 @@ ["g shift+d", "goto_declaration"], ["i", "enter_mode", "insert"], - ["a", ["move_right"], ["enter_mode", "insert"]], - ["o", ["smart_insert_line_after"], ["enter_mode", "insert"]], + ["a", ["enter_mode", "insert"], ["move_right"]], + ["o", ["enter_mode", "insert"], ["smart_insert_line_after"]], ["d", "cut_forward_internal_inclusive"], - ["c", ["cut_forward_internal_inclusive"], ["enter_mode", "insert"]], + ["c", ["enter_mode", "insert"], ["cut_forward_internal_inclusive"]], ["s", "select_regex"], [";", "collapse_selections"], @@ -240,6 +240,8 @@ "name": "INS", "line_numbers": "absolute", "cursor": "beam", + "init_command": ["pause_undo_history"], + "deinit_command": ["resume_undo_history"], "press": [ ["ctrl+u", "move_scroll_page_up"], ["ctrl+d", "move_scroll_page_down"], @@ -276,7 +278,7 @@ ["alt+`", "switch_to_uppercase"], ["alt+d", "delete_backward"], - ["alt+c", ["delete_backward"], ["enter_mode", "insert"]], + ["alt+c", ["enter_mode", "insert"], ["delete_backward"]], ["alt+s", "split_selection_on_newline"], ["alt+-", "merge_selections"], @@ -328,10 +330,10 @@ ["shift+g", "move_buffer_end_or_count_line"], - ["shift+i", ["smart_move_begin"], ["enter_mode", "insert"]], - ["shift+a", ["move_end"], ["enter_mode", "insert"]], + ["shift+i", ["enter_mode", "insert"], ["smart_move_begin"]], + ["shift+a", ["enter_mode", "insert"], ["move_end"]], - ["shift+o", ["smart_insert_line_before"], ["enter_mode", "insert"]], + ["shift+o", ["enter_mode", "insert"], ["smart_insert_line_before"]], ["shift+c", "copy_selection_on_next_line"], @@ -415,11 +417,11 @@ ["g shift+d", "goto_declaration"], ["i", "enter_mode", "insert"], - ["a", ["move_right"], ["enter_mode", "insert"]], - ["o", ["smart_insert_line_after"], ["enter_mode", "insert"]], + ["a", ["enter_mode", "insert"], ["move_right"]], + ["o", ["enter_mode", "insert"], ["smart_insert_line_after"]], ["d", "cut"], - ["c", ["cut"], ["enter_mode", "insert"]], + ["c", ["enter_mode", "insert"], ["cut"]], ["s", "select_regex"], [";", "collapse_selections"], diff --git a/src/keybind/builtin/vim.json b/src/keybind/builtin/vim.json index b112d9f..9482da5 100644 --- a/src/keybind/builtin/vim.json +++ b/src/keybind/builtin/vim.json @@ -17,7 +17,7 @@ ["B", "move_word_left"], ["e", "move_word_right_end_vim"], ["x", "cut_forward_internal"], - ["s", ["cut_forward_internal"], ["enter_mode", "insert"]], + ["s", ["enter_mode", "insert"], ["cut_forward_internal"]], ["u", "undo"], ["j", "move_down_vim"], @@ -27,11 +27,11 @@ ["", "move_right_vim"], ["i", "enter_mode", "insert"], - ["a", ["move_right"], ["enter_mode", "insert"]], - ["I", ["smart_move_begin"], ["enter_mode", "insert"]], - ["A", ["move_end"], ["enter_mode", "insert"]], - ["o", ["smart_insert_line_after"], ["enter_mode", "insert"]], - ["O", ["smart_insert_line_before"], ["enter_mode", "insert"]], + ["a", ["enter_mode", "insert"], ["move_right"]], + ["I", ["enter_mode", "insert"], ["smart_move_begin"]], + ["A", ["enter_mode", "insert"], ["move_end"]], + ["o", ["enter_mode", "insert"], ["smart_insert_line_after"]], + ["O", ["enter_mode", "insert"], ["smart_insert_line_before"]], ["", "indent"], ["", "unindent"], @@ -63,11 +63,11 @@ ["dd", "cut_internal_vim"], ["\"_dd", "delete_line"], - ["cc", ["cut_internal_vim"], ["enter_mode", "insert"]], - ["C", ["cut_to_end_vim"], ["enter_mode", "insert"]], + ["cc", ["enter_mode", "insert"], ["cut_internal_vim"]], + ["C", ["enter_mode", "insert"], ["cut_to_end_vim"]], ["D", "cut_to_end_vim"], - ["cw", ["cut_word_right_vim"], ["enter_mode", "insert"]], - ["cb", ["cut_word_left_vim"], ["enter_mode", "insert"]], + ["cw", ["enter_mode", "insert"], ["cut_word_right_vim"]], + ["cb", ["enter_mode", "insert"], ["cut_word_left_vim"]], ["yy", ["copy_line_internal_vim"], ["cancel"]], @@ -132,10 +132,10 @@ ["x", ["cut_forward_internal"], ["enter_mode", "normal"]], ["d", ["cut_forward_internal"], ["enter_mode", "normal"]], - ["s", ["cut_forward_internal"], ["enter_mode", "insert"]], + ["s", ["enter_mode", "insert"], ["cut_forward_internal"]], - ["c", ["cut_forward_internal"], ["enter_mode", "insert"]], - ["C", ["cut_to_end_vim"], ["enter_mode", "insert"]], + ["c", ["enter_mode", "insert"], ["cut_forward_internal"]], + ["C", ["enter_mode", "insert"], ["cut_to_end_vim"]], ["D", "cut_to_end_vim"] ] }, @@ -169,10 +169,10 @@ ["x", ["cut_internal_vim"], ["enter_mode", "normal"]], ["d", ["cut_internal_vim"], ["enter_mode", "normal"]], - ["s", ["cut_internal_vim"], ["enter_mode", "insert"]], + ["s", ["enter_mode", "insert"], ["cut_internal_vim"]], - ["c", ["cut_internal_vim"], ["enter_mode", "insert"]], - ["C", ["cut_to_end_vim"], ["enter_mode", "insert"]], + ["c", ["enter_mode", "insert"], ["cut_internal_vim"]], + ["C", ["enter_mode", "insert"], ["cut_to_end_vim"]], ["D", "cut_to_end_vim"] ] }, @@ -181,6 +181,8 @@ "name": "INSERT", "line_numbers": "absolute", "cursor": "beam", + "init_command": ["pause_undo_history"], + "deinit_command": ["resume_undo_history"], "press": [ ["", ["move_left_vim"], ["enter_mode", "normal"]], ["", "delete_forward"],