217 lines · 7.8 KB · JSON
RawDownload
[  {    "bindings": {      "ctrl-alt-s": "zed::OpenSettings",      "ctrl-{": "pane::ActivatePreviousItem",      "ctrl-}": "pane::ActivateNextItem",      "shift-escape": null, // Unmap workspace::zoom      "ctrl-~": "git::Branch",      "ctrl-f2": "debugger::Stop",      "f6": "debugger::Pause",      "f7": "debugger::StepInto",      "f8": "debugger::StepOver",      "shift-f8": "debugger::StepOut",      "f9": "debugger::Continue",      "shift-f9": "debugger::Start",      "alt-shift-f9": "debugger::Start",    },  },  {    "context": "Editor",    "bindings": {      "ctrl->": ["zed::IncreaseBufferFontSize", { "persist": true }],      "ctrl-<": ["zed::DecreaseBufferFontSize", { "persist": true }],      "ctrl-shift-j": "editor::JoinLines",      "ctrl-d": "editor::DuplicateSelection",      "ctrl-y": "editor::DeleteLine",      "ctrl-m": "editor::ScrollCursorCenter",      "ctrl-pagedown": "editor::MovePageDown",      "ctrl-pageup": "editor::MovePageUp",      // "ctrl-alt-shift-b": "editor::SelectToPreviousWordStart",      "ctrl-alt-enter": "editor::NewlineAbove",      "shift-enter": "editor::NewlineBelow",      // "ctrl--": "editor::Fold", // TODO: `ctrl-numpad--` (numpad not implemented)      // "ctrl-+": "editor::UnfoldLines", // TODO: `ctrl-numpad+` (numpad not implemented)      "alt-shift-g": "editor::SplitSelectionIntoLines",      "alt-j": ["editor::SelectNext", { "replace_newest": false }],      "alt-shift-j": ["editor::SelectPrevious", { "replace_newest": false }],      "ctrl-/": ["editor::ToggleComments", { "advance_downwards": true }],      "ctrl-w": "editor::SelectLargerSyntaxNode",      "ctrl-shift-w": "editor::SelectSmallerSyntaxNode",      "shift-alt-up": "editor::MoveLineUp",      "shift-alt-down": "editor::MoveLineDown",      "ctrl-alt-l": "editor::Format",      "ctrl-alt-o": "editor::OrganizeImports",      "shift-f6": "editor::Rename",      "ctrl-alt-left": "pane::GoBack",      "ctrl-alt-right": "pane::GoForward",      "alt-f7": "editor::FindAllReferences",      "ctrl-alt-f7": "editor::FindAllReferences",      "ctrl-b": "editor::GoToDefinition", // Conflicts with workspace::ToggleLeftDock      "ctrl-alt-b": "editor::GoToImplementation", // Conflicts with workspace::ToggleRightDock      "ctrl-shift-b": "editor::GoToTypeDefinition",      "ctrl-alt-shift-b": "editor::GoToTypeDefinitionSplit",      "f2": "editor::GoToDiagnostic",      "shift-f2": "editor::GoToPreviousDiagnostic",      "ctrl-alt-shift-down": "editor::GoToHunk",      "ctrl-alt-shift-up": "editor::GoToPreviousHunk",      "ctrl-alt-z": "git::Restore",      "ctrl-home": "editor::MoveToBeginning",      "ctrl-end": "editor::MoveToEnd",      "ctrl-shift-home": "editor::SelectToBeginning",      "ctrl-shift-end": "editor::SelectToEnd",      "ctrl-f8": "editor::ToggleBreakpoint",      "ctrl-shift-f8": "editor::EditLogBreakpoint",      "ctrl-shift-u": "editor::ToggleCase",    },  },  {    "context": "Editor && mode == full",    "bindings": {      "ctrl-f12": "outline::Toggle",      "ctrl-r": ["buffer_search::Deploy", { "replace_enabled": true }],      "ctrl-e": "file_finder::Toggle",      "ctrl-shift-n": "file_finder::Toggle",      "ctrl-alt-n": "file_finder::Toggle",      "ctrl-g": "go_to_line::Toggle",      "alt-enter": "editor::ToggleCodeActions",      "ctrl-space": "editor::ShowCompletions",      "ctrl-q": "editor::Hover",      "ctrl-p": "editor::ShowSignatureHelp",      "ctrl-\\": "assistant::InlineAssist",    },  },  {    "context": "Editor && mode == auto_height",    "bindings": {      "shift-enter": "editor::Newline",      "ctrl-shift-enter": "editor::NewlineBelow",    },  },  {    "context": "BufferSearchBar",    "bindings": {      "shift-enter": "search::SelectPreviousMatch",    },  },  {    "context": "AcpThreadSearchBar > Editor",    "bindings": {      "shift-enter": "agent::SelectPreviousThreadMatch",    },  },  {    "context": "BufferSearchBar || ProjectSearchBar",    "bindings": {      "alt-c": "search::ToggleCaseSensitive",      "alt-e": "search::ToggleSelection",      "alt-x": "search::ToggleRegex",      "alt-w": "search::ToggleWholeWord",    },  },  {    "context": "Workspace",    "bindings": {      "ctrl-shift-f12": "workspace::ToggleAllDocks",      "ctrl-shift-r": ["pane::DeploySearch", { "replace_enabled": true }],      "alt-shift-f10": "task::Spawn",      "shift-f10": "task::Spawn",      "ctrl-f5": "task::Rerun",      "ctrl-e": "file_finder::Toggle",      "ctrl-k": "git_panel::ToggleFocus", // bug: This should also focus commit editor      "ctrl-shift-n": "file_finder::Toggle",      "ctrl-alt-n": "file_finder::Toggle",      "ctrl-n": "project_symbols::Toggle",      "ctrl-shift-a": "command_palette::Toggle",      "shift shift": "command_palette::Toggle",      "ctrl-alt-shift-n": "project_symbols::Toggle",      "alt-0": "git_panel::ToggleFocus",      "alt-1": "project_panel::ToggleFocus",      "alt-5": "debug_panel::ToggleFocus",      "alt-6": "diagnostics::Deploy",      "alt-7": "outline_panel::ToggleFocus",    },  },  {    "context": "Pane", // this is to override the default Pane mappings to switch tabs    "bindings": {      "alt-1": "project_panel::ToggleFocus",      "alt-2": null, // Bookmarks (left dock)      "alt-3": null, // Find Panel (bottom dock)      "alt-4": null, // Run Panel (bottom dock)      "alt-5": "debug_panel::ToggleFocus",      "alt-6": "diagnostics::Deploy",      "alt-7": "outline_panel::ToggleFocus",      "alt-8": null, // Services (bottom dock)      "alt-9": null, // Git History (bottom dock)      "alt-0": "git_panel::ToggleFocus",    },  },  {    "context": "Workspace || Editor",    "bindings": {      "alt-f12": "terminal_panel::Toggle",      "ctrl-shift-k": "git::Push",    },  },  {    "context": "Pane",    "bindings": {      "ctrl-alt-left": "pane::GoBack",      "ctrl-alt-right": "pane::GoForward",      "alt-left": "pane::ActivatePreviousItem",      "alt-right": "pane::ActivateNextItem",    },  },  {    "context": "ProjectPanel",    "bindings": {      "enter": "project_panel::Open",      "ctrl-shift-f": "project_panel::NewSearchInDirectory",      "backspace": ["project_panel::Trash", { "skip_prompt": false }],      "delete": ["project_panel::Trash", { "skip_prompt": false }],      "shift-delete": ["project_panel::Delete", { "skip_prompt": false }],      "shift-f6": "project_panel::Rename",    },  },  {    "context": "Terminal",    "bindings": {      "ctrl-shift-t": "workspace::NewTerminal",      "alt-f12": "workspace::CloseActiveDock",      "ctrl-up": "terminal::ScrollLineUp",      "ctrl-down": "terminal::ScrollLineDown",      "shift-pageup": "terminal::ScrollPageUp",      "shift-pagedown": "terminal::ScrollPageDown",    },  },  { "context": "GitPanel", "bindings": { "alt-0": "workspace::CloseActiveDock" } },  { "context": "ProjectPanel", "bindings": { "alt-1": "workspace::CloseActiveDock" } },  { "context": "DebugPanel", "bindings": { "alt-5": "workspace::CloseActiveDock" } },  { "context": "Diagnostics > Editor", "bindings": { "alt-6": "pane::CloseActiveItem" } },  { "context": "OutlinePanel", "bindings": { "alt-7": "workspace::CloseActiveDock" } },  {    // `ctrl-alt-l` is bound to `editor::Format` (jetbrains "Reformat Code") in    // the Editor context above, which collides with the default    // `agent::OpenRulesLibrary` binding. Mirror the windows keymap and use    // `shift-alt-l` instead so the menu hint and the action stay in sync.    "context": "AgentPanel",    "bindings": {      "ctrl-alt-l": null,      "shift-alt-l": "agent::OpenRulesLibrary",    },  },  {    "context": "Dock || Workspace || OutlinePanel || ProjectPanel || CollabPanel",    "bindings": {      "escape": "editor::ToggleFocus",      "shift-escape": "workspace::CloseActiveDock",    },  },  {    "context": "Editor && mode == auto_height",    "bindings": {      "escape": "editor::Cancel",    },  },]