1447 lines · 50.0 KB · JSON
RawDownload
[  // Standard Linux bindings  {    "bindings": {      "home": "menu::SelectFirst",      "shift-pageup": "menu::SelectFirst",      "pageup": "menu::SelectFirst",      "end": "menu::SelectLast",      "shift-pagedown": "menu::SelectLast",      "pagedown": "menu::SelectLast",      "ctrl-n": "menu::SelectNext",      "tab": "menu::SelectNext",      "down": "menu::SelectNext",      "ctrl-p": "menu::SelectPrevious",      "shift-tab": "menu::SelectPrevious",      "up": "menu::SelectPrevious",      "enter": "menu::Confirm",      "ctrl-enter": "menu::SecondaryConfirm",      "ctrl-escape": "menu::Cancel",      "ctrl-c": "menu::Cancel",      "escape": "menu::Cancel",      "alt-shift-enter": "menu::Restart",      "alt-enter": ["picker::ConfirmInput", { "secondary": false }],      "ctrl-alt-enter": ["picker::ConfirmInput", { "secondary": true }],      "ctrl-shift-w": "workspace::CloseWindow",      "shift-escape": "workspace::ToggleZoom",      "open": "workspace::Open",      "ctrl-o": "workspace::OpenFiles",      "ctrl-k ctrl-o": "workspace::Open",      "ctrl-=": ["zed::IncreaseBufferFontSize", { "persist": false }],      "ctrl-+": ["zed::IncreaseBufferFontSize", { "persist": false }],      "ctrl--": ["zed::DecreaseBufferFontSize", { "persist": false }],      "ctrl-0": ["zed::ResetBufferFontSize", { "persist": false }],      "ctrl-,": "zed::OpenSettings",      "ctrl-alt-,": "zed::OpenSettingsFile",      "ctrl-q": "zed::Quit",      "f4": "debugger::Start",      "shift-f5": "debugger::Stop",      "ctrl-shift-f5": "debugger::RerunSession",      "f6": "debugger::Pause",      "f7": "debugger::StepOver",      "ctrl-f11": "debugger::StepInto",      "shift-f11": "debugger::StepOut",      "f11": "zed::ToggleFullScreen",      "ctrl-alt-z": "edit_prediction::RatePredictions",      "ctrl-alt-shift-i": "edit_prediction::ToggleMenu",      "ctrl-alt-l": "lsp_tool::ToggleMenu",      "ctrl-alt-shift-s": "workspace::ToggleWorktreeSecurity",    },  },  {    "context": "Picker || menu",    "bindings": {      "up": "menu::SelectPrevious",      "down": "menu::SelectNext",    },  },  {    "context": "menu",    "bindings": {      "right": "menu::SelectChild",      "left": "menu::SelectParent",    },  },  {    "context": "Editor",    "bindings": {      "escape": "editor::Cancel",      "shift-backspace": "editor::Backspace",      "backspace": "editor::Backspace",      "delete": "editor::Delete",      "tab": "editor::Tab",      "shift-tab": "editor::Backtab",      "ctrl-k ctrl-q": "editor::Rewrap",      "ctrl-k q": "editor::Rewrap",      "ctrl-backspace": ["editor::DeleteToPreviousWordStart", { "ignore_newlines": false, "ignore_brackets": false }],      "ctrl-delete": ["editor::DeleteToNextWordEnd", { "ignore_newlines": false, "ignore_brackets": false }],      "cut": "editor::Cut",      "shift-delete": "editor::Cut",      "ctrl-x": "editor::Cut",      "copy": "editor::Copy",      "ctrl-insert": "editor::Copy",      "ctrl-c": "editor::Copy",      "paste": "editor::Paste",      "shift-insert": "editor::Paste",      "ctrl-v": "editor::Paste",      "undo": "editor::Undo",      "ctrl-z": "editor::Undo",      "redo": "editor::Redo",      "ctrl-y": "editor::Redo",      "ctrl-shift-z": "editor::Redo",      "up": "editor::MoveUp",      "ctrl-up": "editor::LineUp",      "ctrl-down": "editor::LineDown",      "pageup": "editor::MovePageUp",      "alt-pageup": "editor::PageUp",      "shift-pageup": "editor::SelectPageUp",      "home": ["editor::MoveToBeginningOfLine", { "stop_at_soft_wraps": true, "stop_at_indent": true }],      "down": "editor::MoveDown",      "pagedown": "editor::MovePageDown",      "alt-pagedown": "editor::PageDown",      "shift-pagedown": "editor::SelectPageDown",      "end": ["editor::MoveToEndOfLine", { "stop_at_soft_wraps": true }],      "left": "editor::MoveLeft",      "right": "editor::MoveRight",      "ctrl-left": "editor::MoveToPreviousWordStart",      "ctrl-right": "editor::MoveToNextWordEnd",      "ctrl-home": "editor::MoveToBeginning",      "ctrl-end": "editor::MoveToEnd",      "shift-up": "editor::SelectUp",      "shift-down": "editor::SelectDown",      "shift-left": "editor::SelectLeft",      "shift-right": "editor::SelectRight",      "ctrl-shift-left": "editor::SelectToPreviousWordStart",      "ctrl-shift-right": "editor::SelectToNextWordEnd",      "ctrl-shift-home": "editor::SelectToBeginning",      "ctrl-shift-end": "editor::SelectToEnd",      "ctrl-a": "editor::SelectAll",      "ctrl-l": "editor::SelectLine",      "ctrl-shift-i": "editor::Format",      "alt-shift-o": "editor::OrganizeImports",      "shift-home": ["editor::SelectToBeginningOfLine", { "stop_at_soft_wraps": true, "stop_at_indent": true }],      "shift-end": ["editor::SelectToEndOfLine", { "stop_at_soft_wraps": true }],      "ctrl-alt-space": "editor::ShowCharacterPalette",      "ctrl-;": "editor::ToggleLineNumbers",      "ctrl-'": "editor::ToggleSelectedDiffHunks",      "ctrl-\"": "editor::ExpandAllDiffHunks",      "ctrl-i": "editor::ShowSignatureHelp",      "alt-g b": "git::Blame",      "alt-g m": "git::OpenModifiedFiles",      "alt-g r": "git::ReviewDiff",      "menu": "editor::OpenContextMenu",      "shift-f10": "editor::OpenContextMenu",      "ctrl-alt-shift-e": "editor::ToggleEditPrediction",      "f9": "editor::ToggleBreakpoint",      "shift-f9": "editor::EditLogBreakpoint",    },  },  {    "context": "Editor && mode == full",    "bindings": {      "shift-enter": "editor::Newline",      "enter": "editor::Newline",      "ctrl-enter": "editor::NewlineBelow",      "ctrl-shift-enter": "editor::NewlineAbove",      "ctrl-k ctrl-z": "editor::ToggleSoftWrap",      "ctrl-k z": "editor::ToggleSoftWrap",      "find": "buffer_search::Deploy",      "ctrl-f": "buffer_search::Deploy",      "ctrl-h": "buffer_search::DeployReplace",      "ctrl->": "agent::AddSelectionToThread",      "ctrl-<": "assistant::InsertIntoEditor",      "ctrl-alt-e": "editor::SelectEnclosingSymbol",      "ctrl-shift-backspace": "editor::GoToPreviousChange",      "ctrl-shift-alt-backspace": "editor::GoToNextChange",      "alt-enter": "editor::OpenSelectionsInMultibuffer",    },  },  {    "context": "Editor && mode == full && edit_prediction",    "bindings": {      "alt-]": "editor::NextEditPrediction",      "alt-[": "editor::PreviousEditPrediction",    },  },  {    "context": "Editor && !edit_prediction",    "bindings": {      "alt-\\": "editor::ShowEditPrediction",    },  },  {    "context": "Editor && mode == auto_height",    "bindings": {      "ctrl-enter": "editor::Newline",      "shift-enter": "editor::Newline",      "ctrl-shift-enter": "editor::NewlineBelow",    },  },  {    "context": "Markdown",    "bindings": {      "copy": "markdown::Copy",      "ctrl-insert": "markdown::Copy",      "ctrl-c": "markdown::Copy",    },  },  {    "context": "Editor && jupyter && !ContextEditor",    "bindings": {      "ctrl-shift-enter": "repl::Run",      "ctrl-alt-enter": "repl::RunInPlace",    },  },  {    "context": "Editor && !agent_diff",    "bindings": {      "ctrl-k ctrl-r": "git::Restore",      "ctrl-alt-y": "git::ToggleStaged",      "alt-y": "git::StageAndNext",      "alt-shift-y": "git::UnstageAndNext",    },  },  {    "context": "Editor && editor_agent_diff",    "bindings": {      "alt-y": "agent::Keep",      "ctrl-alt-y": "agent::Keep",      "ctrl-alt-z": "agent::Reject",      "shift-alt-y": "agent::KeepAll",      "shift-alt-z": "agent::RejectAll",      "shift-ctrl-r": "agent::OpenAgentDiff",    },  },  {    "context": "AgentDiff",    "bindings": {      "alt-y": "agent::Keep",      "ctrl-alt-y": "agent::Keep",      "ctrl-alt-z": "agent::Reject",      "shift-alt-y": "agent::KeepAll",      "shift-alt-z": "agent::RejectAll",    },  },  {    "context": "ContextEditor > Editor",    "bindings": {      "ctrl-enter": "assistant::Assist",      "save": "workspace::Save",      "ctrl-s": "workspace::Save",      "ctrl-<": "assistant::InsertIntoEditor",      "shift-enter": "assistant::Split",      "ctrl-r": "assistant::CycleMessageRole",      "enter": "assistant::ConfirmCommand",      "alt-enter": "editor::Newline",      "ctrl-k c": "assistant::CopyCode",      "ctrl-g": "search::SelectNextMatch",      "ctrl-shift-g": "search::SelectPreviousMatch",      "ctrl-k l": "agent::OpenRulesLibrary",      "ctrl-shift-v": "agent::PasteRaw",    },  },  {    "context": "AgentPanel",    "bindings": {      "ctrl-n": "agent::NewThread",      "ctrl-alt-n": "agent::NewTextThread",      "ctrl-shift-h": "agent::OpenHistory",      "ctrl-alt-c": "agent::OpenSettings",      "ctrl-alt-p": "agent::ManageProfiles",      "ctrl-alt-l": "agent::OpenRulesLibrary",      "ctrl-i": "agent::ToggleProfileSelector",      "shift-tab": "agent::CycleModeSelector",      "ctrl-alt-/": "agent::ToggleModelSelector",      "alt-tab": "agent::CycleFavoriteModels",      // `alt-l` is provided as an alternative to `alt-tab` as the latter breaks on Linux under the `AgentPanel` context      "alt-l": "agent::CycleFavoriteModels",      "ctrl-shift-j": "agent::ToggleNavigationMenu",      "ctrl-alt-i": "agent::ToggleOptionsMenu",      "ctrl-alt-shift-n": "agent::ToggleNewThreadMenu",      "ctrl-shift-t": "agent::CycleStartThreadIn",      "shift-alt-escape": "agent::ExpandMessageEditor",      "ctrl->": "agent::AddSelectionToThread",      "ctrl-shift-e": "project_panel::ToggleFocus",      "ctrl-shift-enter": "agent::ContinueThread",      "ctrl-y": "agent::AllowOnce",      "ctrl-alt-a": "agent::OpenPermissionDropdown",      "ctrl-alt-z": "agent::RejectOnce",    },  },  {    "context": "AgentPanel > Markdown",    "bindings": {      "copy": "markdown::CopyAsMarkdown",      "ctrl-insert": "markdown::CopyAsMarkdown",      "ctrl-c": "markdown::CopyAsMarkdown",    },  },  {    "context": "AgentPanel && text_thread",    "bindings": {      "ctrl-n": "agent::NewTextThread",      "ctrl-alt-t": "agent::NewThread",    },  },  {    "context": "AgentPanel && acp_thread",    "use_key_equivalents": true,    "bindings": {      "ctrl-n": "agent::NewExternalAgentThread",      "ctrl-alt-t": "agent::NewThread",    },  },  {    "context": "AgentFeedbackMessageEditor > Editor",    "bindings": {      "escape": "menu::Cancel",      "enter": "menu::Confirm",      "alt-enter": "editor::Newline",    },  },  {    "context": "AcpThread > ModeSelector",    "bindings": {      "ctrl-enter": "menu::Confirm",    },  },  {    "context": "AcpThread",    "bindings": {      "ctrl--": "pane::GoBack",    },  },  {    "context": "AcpThread > Editor",    "use_key_equivalents": true,    "bindings": {      "ctrl-shift-r": "agent::OpenAgentDiff",      "ctrl-shift-d": "git::Diff",      "shift-alt-y": "agent::KeepAll",      "shift-alt-z": "agent::RejectAll",      "shift-alt-u": "agent::UndoLastReject",      "ctrl-enter": "agent::ChatWithFollow",      "ctrl-shift-enter": "agent::SendImmediately",      "ctrl-shift-alt-enter": "agent::SendNextQueuedMessage",      "ctrl-shift-backspace": "agent::RemoveFirstQueuedMessage",      "ctrl-alt-e": "agent::EditFirstQueuedMessage",      "ctrl-alt-backspace": "agent::ClearMessageQueue",      "ctrl-shift-v": "agent::PasteRaw",      "ctrl-i": "agent::ToggleProfileSelector",      "shift-tab": "agent::CycleModeSelector",      "alt-tab": "agent::CycleFavoriteModels",      // `alt-l` is provided as an alternative to `alt-tab` as the latter breaks on Linux under the `AcpThread > Editor` context      "alt-l": "agent::CycleFavoriteModels",      "ctrl-;": "agent::OpenAddContextMenu",      "ctrl-alt-k": "agent::ToggleThinkingMode",      "ctrl-alt-'": "agent::ToggleThinkingEffortMenu",      "ctrl-'": "agent::CycleThinkingEffort",      "ctrl-alt-.": "agent::ToggleFastMode",    },  },  {    "context": "AcpThread > Editor && !use_modifier_to_send",    "use_key_equivalents": true,    "bindings": {      "enter": "agent::Chat",    },  },  {    "context": "AcpThread > Editor && use_modifier_to_send",    "use_key_equivalents": true,    "bindings": {      "ctrl-enter": "agent::Chat",      "enter": "editor::Newline",    },  },  {    "context": "ThreadHistory",    "bindings": {      "backspace": "agent::RemoveSelectedThread",    },  },  {    "context": "RulesLibrary",    "bindings": {      "new": "rules_library::NewRule",      "ctrl-n": "rules_library::NewRule",      "ctrl-shift-s": "rules_library::ToggleDefaultRule",      "ctrl-w": "workspace::CloseWindow",    },  },  {    "context": "BufferSearchBar",    "bindings": {      "escape": "buffer_search::Dismiss",      "tab": "buffer_search::FocusEditor",      "enter": "search::SelectNextMatch",      "shift-enter": "search::SelectPreviousMatch",      "ctrl-shift-enter": "editor::ToggleFoldAll",      "alt-enter": "search::SelectAllMatches",      "find": "search::FocusSearch",      "ctrl-f": "search::FocusSearch",      "ctrl-h": "search::ToggleReplace",      "ctrl-l": "search::ToggleSelection",    },  },  {    "context": "BufferSearchBar && in_replace > Editor",    "bindings": {      "enter": "search::ReplaceNext",      "ctrl-enter": "search::ReplaceAll",    },  },  {    "context": "BufferSearchBar && !in_replace > Editor",    "bindings": {      "up": "search::PreviousHistoryQuery",      "down": "search::NextHistoryQuery",    },  },  {    "context": "ProjectSearchBar",    "bindings": {      "escape": "project_search::ToggleFocus",      "shift-find": "search::FocusSearch",      "ctrl-shift-enter": "project_search::ToggleAllSearchResults",      "ctrl-shift-f": "search::FocusSearch",      "ctrl-shift-h": "search::ToggleReplace",      "alt-ctrl-g": "search::ToggleRegex",      "alt-ctrl-x": "search::ToggleRegex",    },  },  {    "context": "ProjectSearchBar > Editor",    "bindings": {      "up": "search::PreviousHistoryQuery",      "down": "search::NextHistoryQuery",    },  },  {    "context": "ProjectSearchBar && in_replace > Editor",    "bindings": {      "enter": "search::ReplaceNext",      "ctrl-alt-enter": "search::ReplaceAll",    },  },  {    "context": "ProjectSearchView",    "bindings": {      "escape": "project_search::ToggleFocus",      "ctrl-shift-h": "search::ToggleReplace",      "alt-ctrl-g": "search::ToggleRegex",      "alt-ctrl-x": "search::ToggleRegex",    },  },  {    "context": "Pane",    "bindings": {      "alt-1": ["pane::ActivateItem", 0],      "alt-2": ["pane::ActivateItem", 1],      "alt-3": ["pane::ActivateItem", 2],      "alt-4": ["pane::ActivateItem", 3],      "alt-5": ["pane::ActivateItem", 4],      "alt-6": ["pane::ActivateItem", 5],      "alt-7": ["pane::ActivateItem", 6],      "alt-8": ["pane::ActivateItem", 7],      "alt-9": ["pane::ActivateItem", 8],      "alt-0": "pane::ActivateLastItem",      "ctrl-pageup": "pane::ActivatePreviousItem",      "ctrl-pagedown": "pane::ActivateNextItem",      "ctrl-shift-pageup": "pane::SwapItemLeft",      "ctrl-shift-pagedown": "pane::SwapItemRight",      "ctrl-f4": ["pane::CloseActiveItem", { "close_pinned": false }],      "ctrl-w": ["pane::CloseActiveItem", { "close_pinned": false }],      "alt-ctrl-t": ["pane::CloseOtherItems", { "close_pinned": false }],      "alt-ctrl-shift-w": "workspace::CloseInactiveTabsAndPanes",      "ctrl-k e": ["pane::CloseItemsToTheLeft", { "close_pinned": false }],      "ctrl-k t": ["pane::CloseItemsToTheRight", { "close_pinned": false }],      "ctrl-k u": ["pane::CloseCleanItems", { "close_pinned": false }],      "ctrl-k w": ["pane::CloseAllItems", { "close_pinned": false }],      "ctrl-k ctrl-w": "workspace::CloseAllItemsAndPanes",      "back": "pane::GoBack",      "ctrl-alt--": "pane::GoBack",      "forward": "pane::GoForward",      "ctrl-alt-_": "pane::GoForward",      "ctrl-alt-g": "search::SelectNextMatch",      "f3": "search::SelectNextMatch",      "ctrl-alt-shift-g": "search::SelectPreviousMatch",      "shift-f3": "search::SelectPreviousMatch",      "shift-find": "project_search::ToggleFocus",      "ctrl-shift-f": "project_search::ToggleFocus",      "ctrl-alt-shift-h": "search::ToggleReplace",      "ctrl-alt-shift-l": "search::ToggleSelection",      "alt-enter": "search::SelectAllMatches",      "alt-c": "search::ToggleCaseSensitive",      "alt-w": "search::ToggleWholeWord",      "alt-find": "project_search::ToggleFilters",      "alt-ctrl-f": "project_search::ToggleFilters",      "ctrl-shift-enter": "project_search::ToggleAllSearchResults",      "ctrl-alt-shift-r": "search::ToggleRegex",      "ctrl-alt-shift-x": "search::ToggleRegex",      "alt-r": "search::ToggleRegex",      "ctrl-k shift-enter": "pane::TogglePinTab",    },  },  // Bindings from VS Code  {    "context": "Editor",    "bindings": {      "ctrl-[": "editor::Outdent",      "ctrl-]": "editor::Indent",      "shift-alt-up": ["editor::AddSelectionAbove", { "skip_soft_wrap": true }], // Insert Cursor Above      "shift-alt-down": ["editor::AddSelectionBelow", { "skip_soft_wrap": true }], // Insert Cursor Below      "ctrl-shift-k": "editor::DeleteLine",      "alt-up": "editor::MoveLineUp",      "alt-down": "editor::MoveLineDown",      "ctrl-alt-shift-up": "editor::DuplicateLineUp",      "ctrl-alt-shift-down": "editor::DuplicateLineDown",      "alt-shift-right": "editor::SelectLargerSyntaxNode", // Expand selection      "alt-shift-left": "editor::SelectSmallerSyntaxNode", // Shrink selection

Lines 1–500 of 1447.