1[
2 {
3 "bindings": {
4 "cmd-{": "pane::ActivatePreviousItem",
5 "cmd-}": "pane::ActivateNextItem",
6 "cmd-0": "git_panel::ToggleFocus", // overrides `cmd-0` zoom reset
7 "ctrl-f2": "debugger::Stop",
8 "f6": "debugger::Pause",
9 "f7": "debugger::StepInto",
10 "f8": "debugger::StepOver",
11 "shift-f8": "debugger::StepOut",
12 "f9": "debugger::Continue",
13 "alt-shift-f9": "debugger::Start"
14 }
15 },
16 {
17 "context": "Editor",
18 "bindings": {
19 "ctrl->": ["zed::IncreaseBufferFontSize", { "persist": true }],
20 "ctrl-<": ["zed::DecreaseBufferFontSize", { "persist": true }],
21 "ctrl-shift-j": "editor::JoinLines",
22 "cmd-d": "editor::DuplicateSelection",
23 "cmd-backspace": "editor::DeleteLine",
24 "cmd-pagedown": "editor::MovePageDown",
25 "cmd-pageup": "editor::MovePageUp",
26 "ctrl-alt-shift-b": "editor::SelectToPreviousWordStart",
27 "cmd-alt-enter": "editor::NewlineAbove",
28 "shift-enter": "editor::NewlineBelow",
29 "cmd--": "editor::Fold",
30 "cmd-+": "editor::UnfoldLines",
31 "alt-shift-g": "editor::SplitSelectionIntoLines",
32 "ctrl-g": ["editor::SelectNext", { "replace_newest": false }],
33 "ctrl-cmd-g": ["editor::SelectPrevious", { "replace_newest": false }],
34 "cmd-/": ["editor::ToggleComments", { "advance_downwards": true }],
35 "alt-up": "editor::SelectLargerSyntaxNode",
36 "alt-down": "editor::SelectSmallerSyntaxNode",
37 "shift-alt-up": "editor::MoveLineUp",
38 "shift-alt-down": "editor::MoveLineDown",
39 "cmd-alt-l": "editor::Format",
40 "ctrl-alt-o": "editor::OrganizeImports",
41 "shift-f6": "editor::Rename",
42 "cmd-[": "pane::GoBack",
43 "cmd-]": "pane::GoForward",
44 "alt-f7": "editor::FindAllReferences",
45 "cmd-alt-f7": "editor::FindAllReferences",
46 "cmd-b": "editor::GoToDefinition", // Conflicts with workspace::ToggleLeftDock
47 "cmd-alt-b": "editor::GoToDefinitionSplit",
48 "cmd-shift-b": "editor::GoToTypeDefinition",
49 "cmd-alt-shift-b": "editor::GoToTypeDefinitionSplit",
50 "f2": "editor::GoToDiagnostic",
51 "shift-f2": "editor::GoToPreviousDiagnostic",
52 "ctrl-alt-shift-down": "editor::GoToHunk",
53 "ctrl-alt-shift-up": "editor::GoToPreviousHunk",
54 "cmd-home": "editor::MoveToBeginning",
55 "cmd-end": "editor::MoveToEnd",
56 "cmd-shift-home": "editor::SelectToBeginning",
57 "cmd-shift-end": "editor::SelectToEnd",
58 "ctrl-f8": "editor::ToggleBreakpoint",
59 "ctrl-shift-f8": "editor::EditLogBreakpoint",
60 "cmd-shift-u": "editor::ToggleCase"
61 }
62 },
63 {
64 "context": "Editor && mode == full",
65 "bindings": {
66 "cmd-f12": "outline::Toggle",
67 "cmd-r": ["buffer_search::Deploy", { "replace_enabled": true }],
68 "cmd-shift-o": "file_finder::Toggle",
69 "cmd-l": "go_to_line::Toggle",
70 "alt-enter": "editor::ToggleCodeActions"
71 }
72 },
73 {
74 "context": "BufferSearchBar",
75 "bindings": {
76 "shift-enter": "search::SelectPreviousMatch"
77 }
78 },
79 {
80 "context": "BufferSearchBar || ProjectSearchBar",
81 "bindings": {
82 "alt-c": "search::ToggleCaseSensitive",
83 "alt-e": "search::ToggleSelection",
84 "alt-x": "search::ToggleRegex",
85 "alt-w": "search::ToggleWholeWord",
86 "ctrl-alt-c": "search::ToggleCaseSensitive",
87 "ctrl-alt-e": "search::ToggleSelection",
88 "ctrl-alt-w": "search::ToggleWholeWord",
89 "ctrl-alt-x": "search::ToggleRegex"
90 }
91 },
92 {
93 "context": "Workspace",
94 "bindings": {
95 "cmd-shift-f12": "workspace::CloseAllDocks",
96 "cmd-shift-r": ["pane::DeploySearch", { "replace_enabled": true }],
97 "ctrl-alt-r": "task::Spawn",
98 "cmd-e": "file_finder::Toggle",
99 "cmd-k": "git_panel::ToggleFocus", // bug: This should also focus commit editor
100 "cmd-shift-o": "file_finder::Toggle",
101 "cmd-shift-a": "command_palette::Toggle",
102 "shift shift": "command_palette::Toggle",
103 "cmd-alt-o": "project_symbols::Toggle", // JetBrains: Go to Symbol
104 "cmd-o": "project_symbols::Toggle", // JetBrains: Go to Class
105 "cmd-1": "project_panel::ToggleFocus",
106 "cmd-5": "debug_panel::ToggleFocus",
107 "cmd-6": "diagnostics::Deploy",
108 "cmd-7": "outline_panel::ToggleFocus"
109 }
110 },
111 {
112 "context": "Workspace || Editor",
113 "bindings": {
114 "alt-f12": "terminal_panel::ToggleFocus",
115 "cmd-shift-k": "git::Push"
116 }
117 },
118 {
119 "context": "Pane",
120 "bindings": {
121 "cmd-alt-left": "pane::GoBack",
122 "cmd-alt-right": "pane::GoForward"
123 }
124 },
125 {
126 "context": "ProjectPanel",
127 "bindings": {
128 "enter": "project_panel::Open",
129 "cmd-shift-f": "project_panel::NewSearchInDirectory",
130 "cmd-backspace": ["project_panel::Trash", { "skip_prompt": false }],
131 "backspace": ["project_panel::Trash", { "skip_prompt": false }],
132 "delete": ["project_panel::Trash", { "skip_prompt": false }],
133 "shift-delete": ["project_panel::Delete", { "skip_prompt": false }],
134 "shift-f6": "project_panel::Rename"
135 }
136 },
137 {
138 "context": "Terminal",
139 "bindings": {
140 "cmd-t": "workspace::NewTerminal",
141 "alt-f12": "workspace::CloseActiveDock",
142 "cmd-up": "terminal::ScrollLineUp",
143 "cmd-down": "terminal::ScrollLineDown",
144 "shift-pageup": "terminal::ScrollPageUp",
145 "shift-pagedown": "terminal::ScrollPageDown"
146 }
147 },
148 { "context": "GitPanel", "bindings": { "cmd-0": "workspace::CloseActiveDock" } },
149 { "context": "DebugPanel", "bindings": { "cmd-5": "workspace::CloseActiveDock" } },
150 { "context": "Diagnostics > Editor", "bindings": { "cmd-6": "pane::CloseActiveItem" } },
151 { "context": "OutlinePanel", "bindings": { "cmd-7": "workspace::CloseActiveDock" } },
152 {
153 "context": "Dock || Workspace || Terminal || OutlinePanel || ProjectPanel || CollabPanel || (Editor && mode == auto_height)",
154 "bindings": { "escape": "editor::ToggleFocus" }
155 }
156]