126 lines
4 KiB
JSON
126 lines
4 KiB
JSON
{
|
|
"settings": {
|
|
"init_command": ["enter_vim_mode"],
|
|
"deinit_command": ["exit_vim_mode"]
|
|
},
|
|
"normal": {
|
|
"syntax": "vim",
|
|
"on_match_failure": "ignore",
|
|
"name": "NORMAL",
|
|
"line_numbers": "relative",
|
|
"cursor": "block",
|
|
"selection": "normal",
|
|
"press": [
|
|
["b", "move_word_left_vim"],
|
|
["w", "move_word_right_vim"],
|
|
["W", "move_word_right"],
|
|
["B", "move_word_left"],
|
|
["e", "move_word_right_end_vim"],
|
|
["x", "cut_forward_internal"],
|
|
["s", ["cut_forward_internal"], ["enter_mode", "insert"]],
|
|
["u", "undo"],
|
|
|
|
["j", "move_down"],
|
|
["k", "move_up"],
|
|
["l", "move_right_vim"],
|
|
["h", "move_left_vim"],
|
|
["<Space>", "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"]],
|
|
|
|
["v", "enter_mode", "visual"],
|
|
["V", ["move_begin"], ["enter_mode", "visual"], ["select_end"]],
|
|
|
|
["n", "goto_next_match"],
|
|
["0", "move_begin"],
|
|
["^", "smart_move_begin"],
|
|
["$", "move_end"],
|
|
[":", "open_command_palette"],
|
|
["p", "paste_internal_vim"],
|
|
|
|
["gd", "goto_definition"],
|
|
["gi", "goto_implementation"],
|
|
["gy", "goto_type_definition"],
|
|
["gg", "move_buffer_begin"],
|
|
["grn", "rename_symbol"],
|
|
["gD", "goto_declaration"],
|
|
["G", "move_buffer_end"],
|
|
|
|
["d$", "delete_to_end"],
|
|
["dw", "cut_word_right_vim"],
|
|
["db", "cut_word_left_vim"],
|
|
["dd", "cut_internal_vim"],
|
|
["\"_dd", "delete_line"],
|
|
|
|
["yy", ["copy_line_internal_vim"], ["cancel"]],
|
|
|
|
["<C-u>", "move_scroll_page_up"],
|
|
["<C-d>", "move_scroll_page_down"],
|
|
["u", "undo"],
|
|
["<C-r>", "redo"],
|
|
["<C-o>", "jump_back"],
|
|
["<C-i>", "jump_forward"],
|
|
["<C-y>", "redo"],
|
|
|
|
["/", "find"],
|
|
|
|
["<C-k>", "TODO"],
|
|
|
|
["<C-CR>", ["move_down"], ["move_begin"]],
|
|
["<CR>", ["move_down"], ["move_begin"]]
|
|
]
|
|
},
|
|
"visual": {
|
|
"syntax": "vim",
|
|
"on_match_failure": "ignore",
|
|
"name": "VISUAL",
|
|
"line_numbers": "relative",
|
|
"cursor": "block",
|
|
"selection": "normal",
|
|
"press": [
|
|
["<Esc>", "enter_mode", "normal"],
|
|
["k", "select_up"],
|
|
["j", "select_down"],
|
|
["h", "select_left"],
|
|
["l", "select_right"],
|
|
|
|
["y", ["copy_internal_vim"], ["cancel"], ["enter_mode", "normal"]],
|
|
|
|
["x", ["cut_forward_internal"], ["cancel"], ["enter_mode", "normal"]],
|
|
["d", ["cut_forward_internal"], ["cancel"], ["enter_mode", "normal"]],
|
|
["s", ["cut_forward_internal"], ["cancel"], ["enter_mode", "insert"]]
|
|
]
|
|
},
|
|
"insert": {
|
|
"syntax": "vim",
|
|
"name": "INSERT",
|
|
"line_numbers": "absolute",
|
|
"cursor": "beam",
|
|
"press": [
|
|
["<Esc>", "enter_mode", "normal"],
|
|
["<Del>", "delete_forward"],
|
|
["<BS>", "delete_backward"],
|
|
["<CR>", "smart_insert_line"],
|
|
|
|
["<C-BS>", "delete_word_left"],
|
|
["<C-Del", "delete_word_right"]
|
|
]
|
|
},
|
|
"home": {
|
|
"syntax": "vim",
|
|
"on_match_failure": "ignore",
|
|
"press": [
|
|
[":", "open_command_palette"],
|
|
["b", "open_keybind_config"],
|
|
["j", "home_menu_down"],
|
|
["k", "home_menu_up"],
|
|
["f", "change_fontface"],
|
|
["<Space>", "home_menu_activate"]
|
|
]
|
|
}
|
|
}
|