home/.config/zed/keymap.json

120 lines
3.3 KiB
JSON

// Zed keymap
//
// For information on binding keys, see the Zed
// documentation: https://zed.dev/docs/key-bindings
//
// To see the default key bindings run `zed: open default keymap`
// from the command palette.
[
{
"context": "Workspace",
"bindings": {
"f5": "workspace::ToggleLeftDock",
"alt-v": "terminal_panel::ToggleFocus",
}
},
{
"context": "Picker",
"bindings": {
"shift-tab": "menu::SelectPrev",
"tab": "menu::SelectNext"
}
},
{
"context": "BufferSearchBar && !in_replace > Editor",
"bindings": {
"shift-tab": "menu::SelectPrev",
"tab": "menu::SelectNext"
}
},
{
"context": "Terminal",
"bindings": {
"alt-v": "workspace::ToggleBottomDock",
"ctrl-w": "terminal::ToggleViMode"
}
},
{
"context": "Terminal && VimControl",
"bindings": {
"tab": "pane::ActivateNextItem",
"shift-tab": "pane::ActivatePrevItem",
}
},
{
"context": "Editor",
"bindings": {
"; f s": "outline::Toggle",
"; f w": "workspace::NewSearch",
"; f t": "theme_selector::Toggle",
}
},
{
"context": "VimControl && !menu",
"bindings": {
"ctrl-h": [
"workspace::ActivatePaneInDirection",
"Left"
],
"ctrl-l": [
"workspace::ActivatePaneInDirection",
"Right"
],
"ctrl-k": [
"workspace::ActivatePaneInDirection",
"Up"
],
"ctrl-j": [
"workspace::ActivatePaneInDirection",
"Down"
],
"L": "vim::EndOfLine",
"H": "vim::StartOfLine",
"left": "editor::TabPrev",
"right": "editor::Indent",
"space v": "editor::ToggleComments",
"alt-c": "pane::CloseActiveItem",
"alt-j": "vim::ScrollDown",
"alt-k": "vim::ScrollUp",
"up": "editor::MoveLineUp",
"down": "editor::MoveLineDown",
"space c a": "editor::ToggleCodeActions",
"space y": "editor::Copy",
"space p": "editor::Paste",
"tab": "pane::ActivateNextItem",
"shift-tab": "pane::ActivatePrevItem",
"space \"": "pane::SplitVertical",
"space %": "pane::SplitHorizontal",
"space c r": "editor::Rename",
}
},
{
"context": "vim_mode == normal",
"bindings": {
"space g g": [
"task::Spawn",
{
"task_name": "lazygit",
"reveal_target": "center"
}
]
}
},
{
"context": "vim_mode == insert",
"bindings": {
"ctrl-l": "vim::Right",
"ctrl-h": "vim::Left",
"ctrl-j": "vim::Down",
"ctrl-k": "vim::Up",
}
},
{
"context": "Editor && (showing_code_actions || showing_completions)",
"bindings": {
"shift-tab": "editor::ContextMenuPrev",
"tab": "editor::ContextMenuNext",
}
},
]