6 '+<' => ["history start", 'co'],
7 '+=' => '+?', #TODO: new # emacs, not in v2.0
8 '+>' => ["history end", 'co'],
10 '+?' => ["list complet$sign{_}ion$sign{_}s", 'ci'],
11 '^@' => ["set mark", 'mv new'], # not in v2.0
13 '+#' => ["prefix comm$sign{_}en$sign{_}t", 'mi new'], # not in v2.0
14 '+&' => ["tilde expand", 'mi'],
15 '+*' => ["complet$sign{_}e all", 'mi new'], # not in v2.0
16 '+.' => ["insert last", 'co'],
17 '+~' => '+&', # emacs
19 '^[' => ["meta", 'mv'],
21 '+\\'=> ["delete whitesp$sign{_}ace", 'mo'],
22 '^]' => ["find char", 'pm arg new'], # not in v2.0
23 '^+]'=> ["rev find char", 'pm arg new'], # not in v2.0
24 '^_' => ["undo", 'co'],
27 '+~' => ["user$sign{_}name exp$sign{_}and", 'mi ext'], # common emacs => '+&'
28 '+!' => ["cmd expand", 'mi ext'],
29 '+@' => ["host$sign{_}name exp$sign{_}and", 'mi ext'],
30 '+$' => ["variable expand", 'mi ext'],
31 '+^' => ["history expand", 'co ext'],
32 '+/' => ["filename expand", 'ci ext'],
34 '^a' => ["begin of line", 'pm'],
35 '^b' => ["char back$sign{_}w$sign{_}ard$sign{_}s", 'pm'],
36 '+b' => ["word back$sign{_}w$sign{_}ard$sign{_}s", 'pm'],
37 '^c' => ["cancel comm$sign{_}and", 'mv ext'],
38 '+c' => ["capital$sign{_}ise word", 'mi'],
39 '^d' => ["delete char", 'mo'],
40 '+d' => ["delete word rem$sign{_}ain$sign{_}der", 'mo ring'],
41 # '^e' => ["emacs mode", 'me'],
42 '^e' => ["end of line", 'pm'],
43 '^f' => ["char forward", 'pm'],
44 '+f' => ["word forward", 'pm'],
45 '^g' => ["abort cmd, bell", 'mv'],
47 '^h' => ["back$sign{_}space", 'mo'],
48 '^+h'=> ["delete bound word", 'mo ring'], #TODO
49 '^i' => ["auto$sign{_}complet$sign{_}e", 'mi', '(tab)'],
52 '^+j'=> ["vim mode", 'me'], #TODO: mode^+j
53 '^k' => ["delete till eol", 'mo ring'],
54 '^l' => ["clear screen", 'ci'],
55 '+l' => ["lowcase word", 'mi'],
56 '^m' => ["enter line", 'co', '(enter)'],
58 '^n' => ["history next", 'co'],
59 '+n' => ["match history", 'co'],
60 '^o' => ["enter and next", 'co ext'],
61 '^p' => ["history back", 'co'],
62 '+p' => ["rev match history", 'co'],
64 '^r' => ["reverse history", 'co'],
65 '+r' => ["full undo", 'co', 'Revert'],
67 '^s' => ["search history", 'co'],
68 '^t' => ["move char forw$sign{_}ard", 'mi', 'Transpose char'],
69 '+t' => ["move word forw$sign{_}ard", 'mi', 'Transpose word'],
70 '^u' => ["delete till bol", 'mo ring'], # unix
71 '+u' => ["upcase word", 'mi'],
72 '^v' => ["verbatim char", 'mv'],
73 '^w' => ["delete word", 'mo ring'], # unix
74 '^x' => ["extend$sign{_}ed", 'me arg mode^x'],
75 '^y' => ["yank top", 'co'],
76 '+y' => ["rotate yank", 'co ring'],
78 '^z' => ["back$sign{_}ground", 'mv ext'],
82 lead => $ascii ? "'x" : "x̂",
83 desc => 'emacs ctrl-x bindings',
85 '(' => ["start macro", 'mv'],
86 ')' => ["end macro", 'mv'],
87 'e' => ["run macro", 'mv', 'Execute'],
88 '^e' => ["editor", 'mi ext linkvim'],
91 '^r' => ["reload inputrc", 'mv'],
93 '^x' => ["swap cursor", 'pm new', 'eXchange'], # not in v2.0
94 '^v' => ["shell version", 'ci ext'],