71 lines
2.1 KiB
JSON
71 lines
2.1 KiB
JSON
[
|
|
// VIM NORMAL MODE
|
|
{
|
|
"context": "VimControl && vim_mode == normal",
|
|
"bindings": {
|
|
"ctrl-h": "pane::ActivatePreviousItem",
|
|
"ctrl-l": "pane::ActivateNextItem",
|
|
"space f": "file_finder::Toggle",
|
|
"space t": "workspace::NewCenterTerminal",
|
|
"space e": "project_panel::ToggleFocus",
|
|
"space q": "pane::CloseAllItems",
|
|
"space h": "buffer_search::Dismiss",
|
|
"space l s": "project_symbols::Toggle",
|
|
"space l i": "editor::GoToImplementationSplit",
|
|
"space l r": "editor::Rename",
|
|
"space s p": "workspace::NewSearch",
|
|
"space b e": "pane::ReopenClosedItem",
|
|
"space p p": "projects::OpenRecent",
|
|
"ctrl-n": "menu::SelectNext", // Navigate down in lists (e.g., file finder, search results)
|
|
"ctrl-p": "menu::SelectPrevious", // Navigate up in lists
|
|
"ctrl-/": "editor::ToggleComments",
|
|
"ctrl-space": "workspace::ToggleRightDock",
|
|
// task spawns
|
|
"space g g": ["task::Spawn", { "task_name": "gitu" }]
|
|
}
|
|
},
|
|
// VIM VISUAL MODE
|
|
{
|
|
"context": "Editor && vim_mode == visual && !menu && !Terminal",
|
|
"bindings": {
|
|
"shift-k": "editor::MoveLineUp",
|
|
"shift-j": "editor::MoveLineDown",
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_mode != insert && !VimWaiting && mode != single_line",
|
|
"bindings": {
|
|
"g d": "editor::GoToDefinition",
|
|
"g i": "editor::GoToImplementation",
|
|
"g r": "editor::FindAllReferences"
|
|
}
|
|
},
|
|
// TERMINAL MODE
|
|
{
|
|
"context": "Terminal",
|
|
"bindings": {
|
|
"ctrl-w h": "workspace::ActivatePaneLeft",
|
|
"ctrl-w l": "workspace::ActivatePaneRight",
|
|
"ctrl-w k": "workspace::ActivatePaneUp",
|
|
"ctrl-w j": "workspace::ActivatePaneDown",
|
|
|
|
"ctrl-space": "workspace::ToggleRightDock",
|
|
"ctrl-o": "workspace::NewTerminal",
|
|
"ctrl-l": "pane::ActivateNextItem",
|
|
"ctrl-h": "pane::ActivatePreviousItem",
|
|
"ctrl-q": "pane::CloseActiveItem",
|
|
"ctrl-j": "terminal::Clear"
|
|
}
|
|
},
|
|
// FILE TREE
|
|
{
|
|
"context": "!renaming && ProjectPanel && !Terminal && !VimWaiting && vim_mode != insert && !editing",
|
|
"bindings": {
|
|
"a": "project_panel::NewFile",
|
|
"d": "project_panel::Delete",
|
|
"r": "project_panel::Rename",
|
|
"space e": "project_panel::Toggle",
|
|
}
|
|
},
|
|
]
|