[ { "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": "BufferSearchBar", "bindings": { "shift-enter": "search::SelectPreviousMatch", }, }, { "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" } }, { "context": "Dock || Workspace || OutlinePanel || ProjectPanel || CollabPanel || (Editor && mode == auto_height)", "bindings": { "escape": "editor::ToggleFocus", "shift-escape": "workspace::CloseActiveDock", }, }, ]