1[
2 {
3 "context": "Editor && VimControl",
4 "bindings": {
5 "g": [
6 "vim::PushOperator",
7 {
8 "Namespace": "G"
9 }
10 ],
11 "h": "vim::Left",
12 "backspace": "editor::Backspace", // "vim::Left",
13 "j": "vim::Down",
14 "k": "vim::Up",
15 "l": "vim::Right",
16 "0": "vim::StartOfLine",
17 "shift-$": "vim::EndOfLine",
18 "shift-G": "vim::EndOfDocument",
19 "w": "vim::NextWordStart",
20 "shift-W": [
21 "vim::NextWordStart",
22 {
23 "ignorePunctuation": true
24 }
25 ],
26 "e": "vim::NextWordEnd",
27 "shift-E": [
28 "vim::NextWordEnd",
29 {
30 "ignorePunctuation": true
31 }
32 ],
33 "b": "vim::PreviousWordStart",
34 "shift-B": [
35 "vim::PreviousWordStart",
36 {
37 "ignorePunctuation": true
38 }
39 ],
40 "escape": [
41 "vim::SwitchMode",
42 "Normal"
43 ]
44 }
45 },
46 {
47 "context": "Editor && vim_mode == normal",
48 "bindings": {
49 "escape": "editor::Cancel",
50 "c": [
51 "vim::PushOperator",
52 "Change"
53 ],
54 "shift-C": "vim::ChangeToEndOfLine",
55 "d": [
56 "vim::PushOperator",
57 "Delete"
58 ],
59 "shift-D": "vim::DeleteToEndOfLine",
60 "y": [
61 "vim::PushOperator",
62 "Yank"
63 ],
64 "i": [
65 "vim::SwitchMode",
66 "Insert"
67 ],
68 "shift-I": "vim::InsertFirstNonWhitespace",
69 "a": "vim::InsertAfter",
70 "shift-A": "vim::InsertEndOfLine",
71 "x": "vim::DeleteRight",
72 "shift-X": "vim::DeleteLeft",
73 "shift-^": "vim::FirstNonWhitespace",
74 "o": "vim::InsertLineBelow",
75 "shift-O": "vim::InsertLineAbove",
76 "v": [
77 "vim::SwitchMode",
78 "Visual"
79 ],
80 "shift-V": [
81 "vim::SwitchMode",
82 "VisualLine"
83 ],
84 "p": "vim::Paste",
85 "u": "editor::Undo",
86 "ctrl-r": "editor::Redo",
87 "ctrl-o": "pane::GoBack"
88 }
89 },
90 {
91 "context": "Editor && vim_operator == g",
92 "bindings": {
93 "g": "vim::StartOfDocument",
94 "escape": [
95 "vim::SwitchMode",
96 "Normal"
97 ]
98 }
99 },
100 {
101 "context": "Editor && vim_operator == c",
102 "bindings": {
103 "w": "vim::ChangeWord",
104 "shift-W": [
105 "vim::ChangeWord",
106 {
107 "ignorePunctuation": true
108 }
109 ],
110 "c": "vim::CurrentLine"
111 }
112 },
113 {
114 "context": "Editor && vim_operator == d",
115 "bindings": {
116 "d": "vim::CurrentLine"
117 }
118 },
119 {
120 "context": "Editor && vim_operator == y",
121 "bindings": {
122 "y": "vim::CurrentLine"
123 }
124 },
125 {
126 "context": "Editor && vim_mode == visual",
127 "bindings": {
128 "c": "vim::VisualChange",
129 "d": "vim::VisualDelete",
130 "x": "vim::VisualDelete",
131 "y": "vim::VisualYank"
132 }
133 },
134 {
135 "context": "Editor && vim_mode == visual_line",
136 "bindings": {
137 "c": "vim::VisualLineChange",
138 "d": "vim::VisualLineDelete",
139 "x": "vim::VisualLineDelete",
140 "y": "vim::VisualLineYank"
141 }
142 },
143 {
144 "context": "Editor && vim_mode == insert",
145 "bindings": {
146 "escape": "vim::NormalBefore",
147 "ctrl-c": "vim::NormalBefore"
148 }
149 },
150 {
151 "context": "Editor && mode == singleline",
152 "bindings": {
153 "escape": "editor::Cancel"
154 }
155 }
156]