1[
2 // Cursor for MacOS. See: https://docs.cursor.com/kbd
3 {
4 "context": "Workspace",
5 "use_key_equivalents": true,
6 "bindings": {
7 "ctrl-i": "agent::ToggleFocus",
8 "ctrl-shift-i": "agent::ToggleFocus",
9 "ctrl-l": "agent::ToggleFocus",
10 "ctrl-shift-l": "agent::ToggleFocus",
11 "ctrl-shift-j": "agent::OpenSettings",
12 },
13 },
14 {
15 "context": "Editor && mode == full",
16 "use_key_equivalents": true,
17 "bindings": {
18 "ctrl-i": "agent::ToggleFocus",
19 "ctrl-shift-i": "agent::ToggleFocus",
20 "ctrl-shift-l": "agent::AddSelectionToThread", // In cursor uses "Ask" mode
21 "ctrl-l": "agent::AddSelectionToThread", // In cursor uses "Agent" mode
22 "ctrl-k": "assistant::InlineAssist",
23 },
24 },
25 {
26 "context": "InlineAssistant > Editor",
27 "use_key_equivalents": true,
28 "bindings": {
29 "ctrl-shift-backspace": "editor::Cancel",
30 // "alt-enter": // Quick Question
31 // "ctrl-shift-enter": // Full File Context
32 // "ctrl-shift-k": // Toggle input focus (editor <> inline assist)
33 },
34 },
35 {
36 "context": "AgentPanel || (MessageEditor > Editor)",
37 "use_key_equivalents": true,
38 "bindings": {
39 "ctrl-i": "workspace::ToggleRightDock",
40 "ctrl-shift-i": "workspace::ToggleRightDock",
41 "ctrl-l": "workspace::ToggleRightDock",
42 "ctrl-shift-l": "workspace::ToggleRightDock",
43 "ctrl-w": "workspace::ToggleRightDock", // technically should close chat
44 "ctrl-.": "agent::ToggleProfileSelector",
45 "ctrl-/": "agent::ToggleModelSelector",
46 "ctrl-shift-backspace": "editor::Cancel",
47 "ctrl-r": "agent::NewThread",
48 "ctrl-shift-v": "editor::Paste",
49 // "escape": "agent::ToggleFocus"
50 ///// Enable when Zed supports multiple thread tabs
51 // "ctrl-t": // new thread tab
52 // "ctrl-[": // next thread tab
53 // "ctrl-]": // next thread tab
54 ///// Enable if Zed adds support for keyboard navigation of thread elements
55 // "tab": // cycle to next message
56 // "shift-tab": // cycle to previous message
57 },
58 },
59 {
60 "context": "Editor && editor_agent_diff",
61 "use_key_equivalents": true,
62 "bindings": {
63 "ctrl-enter": "agent::KeepAll",
64 "ctrl-backspace": "agent::RejectAll",
65 },
66 },
67 {
68 "context": "Editor && mode == full && edit_prediction",
69 "use_key_equivalents": true,
70 "bindings": {
71 "ctrl-right": "editor::AcceptNextWordEditPrediction",
72 "ctrl-down": "editor::AcceptNextLineEditPrediction",
73 },
74 },
75 {
76 "context": "Terminal",
77 "use_key_equivalents": true,
78 "bindings": {
79 "ctrl-k": "assistant::InlineAssist",
80 },
81 },
82]