6 '~' => ["toggle case", "co undo"],
7 '!' => ["extern$sign{_}al filter", "co argm undo modec"],
8 '@' => ["play macro", "co arg undo"],
9 '#' => ["rev. find word", "pm vim"],
11 '%' => ["goto match", "pm"],
12 '^' => ['"soft" bol', "pm"],
13 '&' => ["repeat :s", "co undo"],
14 '*' => ["find word", "pm vim"],
15 '(' => ["begin sentence", "pm"],
16 ')' => ["end sentence", "pm"],
17 '_' => ['"soft" bol down', "pm"],
18 '+' => ["next line", "pm"],
19 '`' => ["goto mark", "pm arg"],
20 '0' => ['"hard" bol', "pm"],
21 '^^'=> ["edit alt. file", "co"],
22 '-' => ["prev line", "pm"],
23 '=' => ["auto form$sign{_}at", "co argm undo"],
24 '?' => ["find rev.", "pm arg modec"],
25 ';' => ["repeat t/f/T/F", "pm"],
26 ':' => ["ex cmd line", "co modec"],
27 "'" => ["goto mark bol", "pm arg"],
28 '"' => ["use register", "co arg"],
29 '\\' => ["not used", "me arg"],
30 '^\\' => ["to mode/$sign{_}ext$sign{_}ens$sign{_}ion$sign{_}s", "mo arg"],
31 ',' => ["reverse t/T/f/F", "pm"],
32 '<' => ["un$sign{_}ind$sign{_}ent", "co argm undo"],
33 '.' => ["repeat cmd", "co undo"],
34 '>' => ["ind$sign{_}ent", "co argm undo"],
35 '/' => ["find", "pm arg modec"],
36 '[' => ["move back$sign{_}ward$sign{_}s", "me arg mode["],
37 '{' => ["begin parag.", "pm"],
38 ']' => ["move forw$sign{_}ard", "me arg mode]"],
39 '}' => ["end parag.", "pm"],
40 '^]'=> ["go to tag", "po"],
41 '|' => ["bol/$sign{_}goto col", "pm"],
43 'a' => ["append", "mi undo modei"],
44 'A' => ["append to eol", "mi undo modei"],
45 '^a'=> ["incr$sign{_}ement", "co undo", "Add one"],
46 'b' => ["prev word", "pm", "Back"],
47 'B' => ['prev <span style="font-variant:small-caps">word</span>', "pm"],
48 '^b'=> ["page up", "pm"],
49 'c' => ["chan$sign{_}ge", "mi argm undo modei"],
50 'C' => ["change to eol", "mi undo modei"],
51 '^c'=> ["abort", "co"],
52 'd' => ["delete", "co argm undo"],
53 'D' => ["delete to eol", "co undo"],
54 '^d'=> ["scroll down", "po"],
55 'e' => ["end word", "pm"],
56 'E' => ['end <span style="font-variant:small-caps">word</span>', "pm"],
57 '^e'=> ["window down", "po", "Extra line"],
58 'f' => ["fwd to char", "pm arg"],
59 'F' => ['backwd to char', "pm arg"],
60 '^f'=> ["page down", "pm", "page Forward"],
61 'g' => ["extra cmds", "me arg modeg"],
62 'G' => ["eof/$sign{_}goto ln", "pm"],
63 '^g'=> [":file (info)", "ci"],
64 'h' => [$sign{left}, "pm"],
65 'H' => ["screen top", "pm", 'Home row'],
67 'i' => ["insert mode", "mi undo modei"],
68 'I' => ["insert at bol", "mi undo modei"],
69 '^i'=> ["jump to newer", "pm vim", 'Increase position'],
70 'j' => [$sign{down}, "pm"],
71 'J' => ["join lines", "co undo"],
73 'k' => [$sign{up}, "pm"],
74 'K' => ["help", "co", "looKup Keyword"],
75 'l' => [$sign{right}, "pm"],
76 'L' => ["screen bottom", "pm", "Lowermost Line"],
77 '^l'=> ["redraw", "ci"],
78 'm' => ["set mark", "co arg"],
79 'M' => ["screen mid'l", "pm"],
81 'n' => ["next find", "pm"],
82 'N' => ["prev find", "pm"],
84 'o' => ["open below", "mi undo modei"],
85 'O' => ["open above", "mi undo modei"],
86 '^o'=> ["jump to older", "pm vim"],
87 'p' => ["paste after", "co undo"],
88 'P' => ["paste before", "co undo"],
90 'q' => ["record macro", "mo arg", "Queue seQuence"],
91 'Q' => ["ex mode", "mo"],
92 '^q'=> ["(xon)", "ci", 'Qome back'], # or ^v
93 'r' => ["replace char", "co arg undo"],
94 'R' => ["replace mode", "mi undo modei"],
95 '^r'=> ["redo", "co undo"],
96 's' => ["subst char", "mi undo modei"],
97 'S' => ["subst line", "mi undo modei"],
98 '^s'=> ["(xoff)", "ci", 'Stop'],
99 't' => ["till char", "pm arg"],
100 'T' => ["back till char", "pm"],
101 '^t'=> ["previous tag", "po"],
102 'u' => ["undo", "co undo"],
103 'U' => ["undo line", "co undo"],
104 '^u'=> ["scroll up", "po"],
105 'v' => ["visual mode", "mv modev"],
106 'V' => ["visual lines", "mv modev"],
107 '^v'=> ["visual block", "mv modev"],
108 'w' => ["next word", "pm"],
109 'W' => ['next <span style="font-variant:small-caps">word</span>', "pm"],
110 '^w'=> ["window cmds", "me arg mode^w"],
111 'x' => ["delete char", "co undo"],
112 'X' => ["back$sign{_}space", "co undo"],
113 '^x'=> ["subs$sign{_}tract", "co undo"],
114 'y' => ["yank", "co argm"],
115 'Y' => ["yank line", "co"],
116 '^y'=> ["window up", "po", 'Yield'],
117 'z' => ["extra cmds", "me arg modez"],
118 'Z' => ["quit", "me arg modeZ"],
119 '^z'=> [":sus$sign{_}pend", "ci", 'zzz (as in sleep)'],
123 desc => "extended commands (g)",
126 '~' => ["toggle case", "co argm vim"],
127 '@' => ["operat$sign{_}or$sign{_}func", "co vim7"],
128 '#' => ["rev. find string", "pm vim"],
129 '$' => ["virt$sign{_}ual eol", "pm"],
130 '^' => [qq'"soft" bol v$sign{_}irt$sign{_}ual', "pm vim"],
131 '&' => ["repeat :s global$sign{_}ly", "co", "Global substitute"],
132 '*' => ["find string", "pm vim"],
133 '_' => [qq'"soft" eol', "pm vim"],
134 '+' => ["later undo", "co vim7"],
135 '`' => ["to mark keepj$sign{_}umps", "pm vim arg"],
136 '8' => ["char hex val$sign{_}ue$sign{_}s", "ci"],
137 '0' => ["virtual bol", "pm vim"],
138 '-' => ["earlier undo", "co vim7"],
139 '^['=> ["esc", "mo mode"],
140 ']' => ["go to tselect", "po"],
141 '^]'=> ["go to tjump", "po"],
142 ';' => ["to prev change pos", "pm"],
143 "'" => ["to mark keepj$sign{_}umps", "pm vim arg"],
144 '<' => ["see prev cmd output", "co vim7"],
145 '?' => ["rot13 encode", "co argm vim"],
146 ',' => ["to next change pos", "pm"],
148 'a' => ["char value", "ci", "Get Ascii value"],
149 '^a'=> ["mem usage stats", "ci"],
150 'd' => ["local declar$sign{_}ation", "pm vim"],
151 'D' => ["global declar$sign{_}ation", "pm vim"],
152 'e' => ["back to word end", "pm"],
153 'E' => [qq'back to <span style="font-variant:small-caps">word</span> end', "pm"],
154 'f' => ["edit file at cur$sign{_}sor", "co vim", "Goto File"],
155 'F' => ["edit file + jump", "co vim7"],
156 'g' => ["first line", "pm"],
157 '^g'=> ["cursor pos info", "ci"],
158 'h' => ["select mode", "mv modev", "Get Highlighted"],
159 'H' => ["select lines", "mv modev", "Get Highlighted"],
160 '^h'=> ["select block", "mv modev", "Get Highlighted"],
161 'i' => ["insert at last pos", "mi undo modei"],
162 'I' => ["insert at soft bol", "mi undo modei"],
163 'j' => ["display line down", "pm vim"],
164 'J' => ["join leave spac$sign{_}ing", "co"],
165 'k' => ["display line up", "pm vim"],
166 'm' => ["g0 right half scr$sign{_}een", "pm vim"],
167 'o' => [":goto (byte)", "pm"],
168 'p' => ["paste no move", "co undo"],
169 'P' => ["paste before no move", "co"],
170 'q' => ["format", "co argm"],
171 'Q' => ["ex mode manual :", "mo vim"],
172 'r' => ["replace char vir.", "co arg"],
173 'R' => ["replace mode v$sign{_}ir$sign{_}t$sign{_}ual", "mi undo modei"],
174 's' => ["sleep", "ci vim", "Go to Sleep"],
175 't' => ["next tab", "po vim7", "Goto Tab"],
176 'T' => ["previous tab", "po vim7"],
177 'u' => ["lower$sign{_}case", "co argm vim"], # XXX undo?
178 'U' => ["upper$sign{_}case", "co undo argm vim"],
179 'v' => ["previous highl$sign{_}ight", 'mv modev', 'precedinG Visual'],
180 'V' => ["avoid reselect$sign{_}ion", "co"],
181 'w' => ["format remain cursor", "co argm vim7"],
182 'x' => ["Netrw$sign{_}BrowseX", "co vim7"],
186 desc => "quit commands",
189 '^['=> ["esc", "mo mode"],
191 'Q' => [" :q!", "co vim"],
192 'Z' => [" :wq", "co"],
196 desc => "additional commands (z)",
199 '^' => ["page above", "po"],
200 '+' => ["page below", "po"],
201 '-' => ["line at bottom bol", "po", "don't (-) see any further"],
202 '=' => ["spelling suggest$sign{_}ions", "co vim7"],
203 '.' => ["line at center bol", "po"],
204 '^['=> ["esc", "mo mode"],
206 'a' => ["toggle fold", "co vim folding"],
207 'A' => ["toggle fold rec$sign{_}urs$sign{_}ive$sign{_}ly", "co vim folding"],
208 'b' => ["line at bot. bol", "po"],
209 'c' => ["close fold", "co vim folding"],
210 'C' => ["close folds rec$sign{_}curs$sign{_}ive$sign{_}ly", "co vim folding"],
211 'd' => ["delete fold", "co vim folding"],
212 'D' => ["delete folds rec$sign{_}urs$sign{_}ive", "co vim folding"],
213 'e' => ["cursor at right side", "po"],
214 'E' => ["eliminate folds", "co vim folding"],
215 'f' => ["create fold", "co argm vim folding"],
216 'F' => ["fold lines", "co vim folding"],
217 'g' => ["correct spelling", "co vim7", "Good word"],
218 'G' => ["add spelling", "co vim7"],
219 'h' => ["scroll $sign{right}", "po"],
220 'H' => ["scroll $sign{right} half scr$sign{_}een", "po"],
221 'i' => ["toggle all folds", "co vim folding"],
222 'j' => ["next fold start", "pm vim folding"],
223 'k' => ["prev fold end", "pm vim folding"],
224 'l' => ["scroll $sign{left}", "po"],
225 'L' => ["scroll $sign{left} half scr$sign{_}een", "po"],
226 '^m'=> ["line at top bol", "po"],
227 'm' => ["fold more", "co vim folding"],
228 'M' => ["close all folds", "co vim folding"],
229 'n' => ["fold none", "co vim folding"],
230 'N' => ["fold normal", "co vim folding"],
231 'o' => ["open fold", "co vim folding"],
232 'O' => ["open folds rec$sign{_}urs$sign{_}ive$sign{_}ly", "co vim folding"],
233 'r' => ["reduce folding", "co vim folding"],
234 'R' => ["open all folds", "co vim folding"],
235 's' => ["cursor at left side", "po"],
236 't' => ["line at top", "po"],
237 'u' => ["undo spelling", "co arg vim7"],
238 'v' => ["unfold cursor line", "co vim folding"],
239 'w' => ["add misspell$sign{_}ing", "co vim7", "Wrong word"],
240 'W' => ["temp misspell$sign{_}ing", "co vim7"],
241 'x' => ["update folds", "co vim folding"],
242 'X' => ["reapply folds", "co vim folding"],
243 'z' => ["line at center", "po", "Zee Zenter (with an accent)"],
247 desc => "backward search commands ([)",
250 "`" => ["previous lc mark", "pm vim"],
251 '#' => ["previous open #if$sign{_}/#else", "pm"],
252 '(' => ["previous open (", "pm"],
254 '/' => ["start of C comm$sign{_}ent", "pm"],
256 '{' => ["previous open {", "pm"],
257 '[' => ["section back$sign{_}ward$sign{_}s", "pm"],
258 '^['=> ["esc", "mo mode"],
259 ']' => [qq'<span style="font-variant:small-caps">section</span> back$sign{_}ward$sign{_}s', "pm"],
261 'c' => ["start of change backw$sign{_}ards", "pm"],
262 'd' => ["list define", "co"],
263 'D' => ["list defines", "co"],
264 '^d'=> ["first #define", "po"],
265 'f' => "gf", # deprecated
266 'i' => ["list line", "co"],
267 'I' => ["list lines", "co"],
268 '^i'=> ["first occur$sign{_}renc$sign{_}e", "po"],
269 'm' => ["start of funct$sign{_}ion", "pm"],
270 'p' => ["P but reindent", "co"],
272 's' => ["last mis$sign{_}spell$sign{_}ing", "po vim7"],
273 'S' => ["last bad word", "po vim7"],
274 'z' => ["start of open fold", "pm vim folding"],
278 desc => "forward search commands (])",
281 "`" => ["next lc mark", "pm vim"],
282 '#' => ["next open #endif$sign{_}/#else", "pm"],
283 ')' => ["next open )", "pm"],
286 '/' => ["end of C comm$sign{_}ent", "pm"],
287 '[' => [qq'<span style="font-variant:small-caps">section</span> forw$sign{_}ard', "pm"],
288 '^['=> ["esc", "mo mode"],
289 ']' => ["section forw$sign{_}ard", "pm"],
290 '}' => ["next open }", "pm"],
292 'c' => ["start of change forw$sign{_}ards", "pm"],
293 'd' => ["list define", "co"],
294 'D' => ["list defines", "co"],
295 '^d'=> ["first #define", "po"],
296 'f' => "gf", # deprecated
297 'i' => ["list line", "co"],
298 'I' => ["list lines", "co"],
299 '^i'=> ["first occur$sign{_}renc$sign{_}e", "po"],
300 'm' => ["end of funct$sign{_}ion", "pm"],
301 'p' => ["p but reindent", "co"],
303 's' => ["next mis$sign{_}spell$sign{_}ing", "po vim7"],
304 'S' => ["next bad word", "po vim7"],
305 'z' => ["end of open fold", "pm vim folding"],
309 desc => "window commands (ctrl-w)",
310 lead => $ascii ? "'w" : "ŵ",
312 '<' => ["decrease width", "po"],
313 '>' => ["increase width", "po"],
314 '^' => ["split, edit alt file", "co"],
315 '_' => ["set height", "po"],
316 '+' => ["increase height", "po"],
317 '-' => ["decrease height", "po"],
318 '=' => ["same height", "po"],
319 '^['=> ["esc", "mo mode"],
320 ']' => ["split, to tag", "po"],
321 '}' => ["tag in preview", "po"],
322 '|' => ["set width", "po"],
324 'b' => ["go to bottom", "po"],
325 'c' => [":close", "po"],
326 '^c'=> ["abort", "mo mode"],
327 'd' => ["split, to def$sign{_}inition", "po"],
328 'f' => ["split, edit file", "co"],
329 'F' => ["^wf, jump to line", "co vim7"],
330 'g' => ["extra cmds", "me arg mode^wg"],
331 'h' => ["go left", "po"],
332 'H' => ["move far left", "po"],
333 'i' => ["split, to decl of id$sign{_}ent$sign{_}ifier", "po"],
334 'j' => ["go down", "po"],
335 'J' => ["move to bottom", "po"],
336 'k' => ["go up", "po"],
337 'K' => ["move to top", "po"],
338 'l' => ["go right", "po"],
339 'L' => ["move far right", "po"],
340 'n' => ["open new", "co"],
341 'o' => [":only current", "po"],
342 'p' => ["go to previous", "po"],
343 'P' => ["go to preview", "po"],
344 'q' => [":quit current", "co"],
345 'r' => ["rotate down$sign{_}ward$sign{_}s", "po"],
346 'R' => ["rotate up$sign{_}ward$sign{_}s", "po"],
347 's' => ["split horiz$sign{_}ont$sign{_}al$sign{_}ly", "po"],
349 't' => ["go to top", "po"],
350 'v' => ["split vertical$sign{_}ly", "po"],
351 'w' => ["go to next", "po", "Wrap around"],
352 'W' => ["go above$sign{_}/left", "po"],
353 'x' => ["ex$sign{_}change", "po"],
354 'z' => ["close preview", "po"],
358 desc => "extended window commands (ctrl-w g)",
359 lead => $ascii ? "'wg" : "ŵg",
361 '^['=> ["esc", "mo mode"],
362 ']' => ["split, :tselect", "po"],
363 '}' => [":ptjump to tag", "po"],
364 '^]'=> ["split, :tjump", "po"],
365 'f' => ["edit file in tab", "co vim7"],
366 'F' => ["^wgf, to line$sign{_}nr", "co vim7"],
370 desc => "visual mode",
372 '!' => ["external filter", "co"],
373 ':' => ["cmd on range", "mo modec"],
374 '<' => ["un$sign{_}indent", "co"],
375 '=' => ["equal$sign{_}prg filt$sign{_}er", "co"],
376 '>' => ["indent", "co"],
377 '~' => ["toggle case", "co vim"],
378 '^['=> ["esc", "mo mode"],
379 '^]'=> ["jump to tag", "po"],
382 'a' => ["extend area", "me modeva arg vim"],
383 'A' => ["append to block", "mi modei"], # block
384 'c' => ["replace area", "mi modei vim"],
385 'C' => ["replace lines", "mi modei vim"],
386 '^c'=> ["abort", "mo mode"],
387 'd' => ["delete area", "co vim"],
388 'D' => ["delete lines", "co vim"],
389 'g' => ["extra cmds", "me arg modevg"],
390 '^g'=> ["select mode", "mv"],
391 '^h'=> ["delete area", "co"], # select mode only
392 'i' => ["extend inner a$sign{_}r$sign{_}ea", "me modeva arg vim"],
393 'I' => ["insert to block", "mi modei"], # block
394 'J' => ["join lines", "co"],
395 'K' => ["keyword$sign{_}prg", "co"],
396 'o' => ["to other corner", "pm"],
397 'O' => ["to other side", "pm"],
398 '^o'=> ["visual once", "mv"], # select
399 'p' => ["replace w/ paste", "co"],
400 'P' => ["replace w/ paste", "co"],
402 'r' => ["replace chars", "co arg"],
403 'R' => "vS", # "might change in future"
406 'S' => ["replace full lines", "mi modei vim"],
407 'u' => ["lower$sign{_}case", "co vim"],
408 'U' => ["upper$sign{_}case", "co vim"],
409 'v' => ["char$sign{_}wise", "mv"],
410 'V' => ["line$sign{_}wise", "mv"],
411 '^v'=> ["block$sign{_}wise", "mv"],
414 'y' => ["yank area", "co"],
415 'Y' => ["yank lines", "co"],
418 b B ^b ^d e E ^e f F ^f G h H ^i j ^j k l L m M ^m
419 n N ^n ^p q ^s t T ^u w W ^w ^y z ^z
420 ` # $ % ^ * ( 0 ) [ { ] } ; / ? + - _ |
421 ) # a lot like normal mode
425 desc => "extended visual commands (v g)",
428 '^['=> ["esc", "mv modev"],
429 '?' => ["rot13 encode", "co vim"],
430 'J' => ["join leave spacing", "co vim"],
431 'q' => ["format", "co vim"],
433 'w' => ["format remain cursor", "co vim7"],
437 desc => 'text object selection (v a/i)',
442 "'" => ["quoted string", 'pm vim7'],
444 '<' => ["<> block", 'pm vim'],
446 '[' => ["[] block", 'pm vim'],
448 '^['=> ["esc", 'mv modev'],
452 'b' => ["() block", 'pm vim'],
453 'B' => ["{} Block", 'pm vim'],
454 'p' => ["para$sign{_}graph", 'pm vim'],
455 's' => ["senten$sign{_}ce", 'pm vim'],
456 't' => ["xml tag block", 'pm vim7'],
457 'w' => ["word", 'pm vim'],
458 'W' => ['<span style="font-variant:small-caps">word</span>', 'pm vim'],
462 # desc => "command-line mode",
467 # '^a' => ["complete", ""], #todo
468 # '^b' => ["bol", "po"],
470 # '^d' => ["complete", ""], #todo
471 # '^e' => ["eol", "po"],
473 # '^j' => ["execute cmd", "co"],
475 # '^l' => ["complete", ""], #todo
476 # '^n' => ["complete", ""], #todo
477 # '^p' => ["complete", ""], #todo
478 # '^r' => 'i^r', # and then some...
479 # ## ["insert register", "co arg vim"],
484 # '^y' => ["selec$sign{_}tion to clip$sign{_}b$sign{_}oard", "co"],
488 desc => "insert mode",
490 '^@' => ["last insert", "co"],
491 '^^' => ["toggle :lmap usag$sign{_}e", "co vim"],
492 '^[' => ["esc", "mo mode"],
493 '^]' => ["abbrev$sign{_}iate", "co vim"],
494 '^_' => ["toggle lang$sign{_}uage", "co vim"],
497 '^a' => ["insert prev$sign{_}ious", "co vim"],
498 '^b' => ["former i^_", "no vim"],
499 '^c' => ["abort, no abbr", "mo mode"],
500 '^d' => ["un$sign{_}indent", "co"],
501 '^e' => ["ins char below", "co vim"],
502 '^f' => ["cinkeys: re-indent", "co"],
503 '^g' => ["extra cmds", "me modei^g arg"],
504 '^h' => ["back$sign{_}space", "co"],
505 '^i' => ["tab", "co"],
506 '^j' => ["enter", "co"],
507 '^k' => ["di$sign{_}graph", "co arg arg vim", "Key code"],
508 '^l' => ["<em>im</em> leave ins mode", "mo mode vim"], # insertmode only
509 '^m' => ["enter", "co"],
510 '^n' => ["find next keyword", "pm vim"],
511 '^o' => ["execute cmd", "co"],
512 '^p' => ["find prev keyword", "pm vim"],
513 '^q' => "^q", # or i^v
514 '^r' => ["insert register", "co arg vim"],
516 '^t' => ["indent", "co"],
517 '^u' => ["delete line", "co"],
518 '^v' => ["literal or char$sign{_}cod$sign{_}e", "co", "Verbatim or by Value"],
519 '^w' => ["delete word back", "co"],
520 '^x' => ["expand mode", "me arg modei^x vim"],
521 '^y' => ["ins char above", "co vim"],
522 '^z' => [":sus$sign{_}pend in <em>im</em>", "ci vim"], # insertmode only
526 desc => "extended insert commands (i ctrl-g)",
527 lead => $ascii ? "'g" : "ĝ",
529 'k' => ["$sign{up} start col$sign{_}umn", 'pm'],
530 'j' => ["$sign{down} start col$sign{_}umn", 'pm'],
531 'u' => ["break undo seq$sign{_}uence", 'co'],
532 # other keys (even esc) are not recognized
536 desc => "insert completion commands (i ctrl-x)",
537 lead => $ascii ? "'x" : "x̂",
539 '^[' => ["esc", "mo mode"], # yes, it really leaves insert mode
540 '^]' => ["complet$sign{_}e tags", "co"],
541 '^d' => ["complet$sign{_}e def$sign{_}ines", "co"],
542 '^e' => ["window up", "po"],
543 '^f' => ["complet$sign{_}e file$sign{_}name$sign{_}s", "co"],
544 '^i' => ["complet$sign{_}e idents", "co"],
545 '^k' => ["complet$sign{_}e dict", "co"],
546 '^l' => ["complet$sign{_}e lines", "co"],
547 '^n' => ["next complet$sign{_}e", "co"],
548 '^o' => ["omni complet$sign{_}e", "co vim7"],
549 '^p' => ["previou$sign{_}s compl$sign{_}ete", "co"],
550 '^s' => ["spell suggest", "co"],
552 '^t' => ["complet$sign{_}e thes$sign{_}aur$sign{_}us", "co"],
553 '^u' => ["complet$sign{_}e$sign{_}func", "co vim7"],
554 '^v' => ["complet$sign{_}e ex cmd", "co"],
555 '^y' => ["window down", "po"],
558 # XXX ex mode if you want to go completely wild