mirror of
https://github.com/elkowar/dots-of-war.git
synced 2024-12-27 06:32:23 +00:00
181 lines
5.4 KiB
JSON
181 lines
5.4 KiB
JSON
[
|
|
{
|
|
"context": "Pane",
|
|
"bindings": {
|
|
// unbind closing the tab with this
|
|
"ctrl-w": null,
|
|
"ctrl-w ctrl-h": ["workspace::ActivatePaneInDirection", "Left"],
|
|
"ctrl-w ctrl-j": ["workspace::ActivatePaneInDirection", "Down"],
|
|
"ctrl-w ctrl-k": ["workspace::ActivatePaneInDirection", "Up"],
|
|
"ctrl-w ctrl-l": ["workspace::ActivatePaneInDirection", "Right"],
|
|
"ctrl-shift-t": "pane::ReopenClosedItem"
|
|
// "shift-escape": null
|
|
}
|
|
},
|
|
{
|
|
"context": "EmptyPane",
|
|
"bindings": {
|
|
":": "command_palette::Toggle",
|
|
"space p": "file_finder::Toggle"
|
|
}
|
|
},
|
|
{
|
|
"context": "os == macos && Editor && VimControl && !VimWaiting && !menu",
|
|
"bindings": {
|
|
"cmd-d": "editor::SelectNext"
|
|
}
|
|
},
|
|
{
|
|
"bindings": {
|
|
"ctrl-alt-shift-p": "projects::OpenRecent",
|
|
"ctrl-alt-shift-o": "workspace::Open"
|
|
}
|
|
},
|
|
{
|
|
"context": "os == linux && Editor && VimControl && !VimWaiting && !menu",
|
|
"bindings": {
|
|
"ctrl-shift-d": "editor::SelectNext"
|
|
}
|
|
},
|
|
{
|
|
"context": "EmptyPane || Editor && VimControl && !VimWaiting && !menu",
|
|
"bindings": {
|
|
"space b c": "pane::CloseActiveItem",
|
|
":": "command_palette::Toggle",
|
|
"space p": "file_finder::Toggle",
|
|
"space o": "pane::DeploySearch",
|
|
|
|
"space h": "pane::ActivatePrevItem",
|
|
"space l": "pane::ActivateNextItem",
|
|
"space c space": "editor::ToggleComments",
|
|
|
|
// go to search result
|
|
"g space": "editor::OpenExcerpts",
|
|
"space e j": "editor::ExpandExcerptsDown",
|
|
"space e k": "editor::ExpandExcerptsUp",
|
|
|
|
// multi-cursor
|
|
"cmd-shift-d": "editor::SelectPrevious",
|
|
"cmd-shift-l": "editor::SelectAllMatches",
|
|
"ctrl-j": "editor::AddSelectionBelow",
|
|
"ctrl-k": "editor::AddSelectionAbove",
|
|
"alt-d": "editor::SelectNext",
|
|
"alt-j": "editor::SelectAllMatches",
|
|
// lsp
|
|
"space m f": "editor::Format",
|
|
"space m /": "project_symbols::Toggle",
|
|
"space m g": "editor::GoToDefinition",
|
|
"space m d": "editor::Hover",
|
|
"space m n": "editor::Rename",
|
|
"space m r": "editor::FindAllReferences",
|
|
"space m t": "editor::GoToTypeDefinition",
|
|
"space m e": "editor::GoToDiagnostic",
|
|
"space m E": "editor::GoToPrevDiagnostic",
|
|
"space m v": "editor::ToggleCodeActions",
|
|
"space m o": "outline::Toggle",
|
|
// diagnostics
|
|
"space e e": "diagnostics::Deploy",
|
|
"space e w": "diagnostics::ToggleWarnings",
|
|
// view
|
|
"space v n": "editor::ToggleLineNumbers",
|
|
"space v i": "editor::ToggleInlayHints",
|
|
// Git
|
|
"space g b": "editor::ToggleGitBlame"
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_mode == normal && !VimWaiting && !menu",
|
|
"bindings": {}
|
|
},
|
|
{
|
|
"context": "Editor && vim_mode == insert",
|
|
"bindings": {
|
|
"ctrl-w": "editor::DeleteToPreviousWordStart"
|
|
}
|
|
},
|
|
{
|
|
"context": "os == linux && ((Editor && vim_mode == normal) || Terminal) && !VimWaiting && !menu",
|
|
"bindings": {
|
|
"ctrl-t ctrl-t": "terminal_panel::ToggleFocus",
|
|
"ctrl-t ctrl-n": "workspace::NewTerminal",
|
|
"ctrl-t ctrl-shift-n": "workspace::NewCenterTerminal",
|
|
"ctrl-t ctrl-h": "pane::ActivatePrevItem",
|
|
"ctrl-t ctrl-l": "pane::ActivateNextItem",
|
|
"ctrl-x ctrl-c": "pane::CloseActiveItem",
|
|
|
|
"alt-j": "workspace::ToggleBottomDock"
|
|
}
|
|
},
|
|
{
|
|
"context": "os == macos && ((Editor && vim_mode == normal) || Terminal) && !VimWaiting && !menu",
|
|
"bindings": {
|
|
"cmd-t cmd-t": "terminal_panel::ToggleFocus",
|
|
"cmd-t cmd-n": "workspace::NewTerminal",
|
|
"cmd-t cmd-shift-n": "workspace::NewCenterTerminal",
|
|
"cmd-t cmd-h": "pane::ActivatePrevItem",
|
|
"cmd-t cmd-l": "pane::ActivateNextItem",
|
|
"cmd-x cmd-c": "pane::CloseActiveItem"
|
|
}
|
|
},
|
|
{
|
|
"context": "os == linux && ((Editor && vim_mode == normal) || Terminal) && !VimWaiting && !menu",
|
|
"bindings": {
|
|
"alt-j": "workspace::ToggleBottomDock",
|
|
"alt-t alt-t": "terminal_panel::ToggleFocus",
|
|
"alt-t alt-n": "workspace::NewTerminal",
|
|
"alt-t alt-shift-n": "workspace::NewCenterTerminal",
|
|
"alt-t alt-h": "pane::ActivatePrevItem",
|
|
"alt-t alt-l": "pane::ActivateNextItem",
|
|
"alt-x alt-c": "pane::CloseActiveItem"
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_mode == visual && !VimWaiting && !menu",
|
|
"bindings": {
|
|
"n": "editor::SelectLargerSyntaxNode",
|
|
"N": "editor::SelectSmallerSyntaxNode",
|
|
"m": "vim::SelectNext",
|
|
"M": "vim::SelectPrevious",
|
|
",": "editor::SplitSelectionIntoLines"
|
|
}
|
|
},
|
|
|
|
{
|
|
"context": "ProjectSearchBar",
|
|
"bindings": {
|
|
"space b c": "pane::CloseActiveItem",
|
|
"escape escape": "pane::CloseActiveItem"
|
|
}
|
|
},
|
|
|
|
// Panel stuff
|
|
{
|
|
"context": "Editor && VimControl && !VimWaiting && !menu || OutlinePanel || ProjectPanel || Assistant || EmptyPane",
|
|
"bindings": {
|
|
"space v h": "workspace::ToggleLeftDock",
|
|
"space v l": "workspace::ToggleRightDock",
|
|
|
|
"space v o": "outline_panel::ToggleFocus",
|
|
"space v p": "project_panel::ToggleFocus",
|
|
"space v a": "assistant::ToggleFocus"
|
|
}
|
|
},
|
|
{
|
|
"context": "OutlinePanel",
|
|
"bindings": {
|
|
"space l": "outline_panel::ToggleFocus"
|
|
}
|
|
},
|
|
{
|
|
"context": "ProjectPanel",
|
|
"bindings": {
|
|
"space l": "project_panel::ToggleFocus"
|
|
}
|
|
},
|
|
{
|
|
"context": "Assistant",
|
|
"bindings": {
|
|
"space h": "assistant::ToggleFocus"
|
|
}
|
|
}
|
|
]
|