+ "\e" => ['g8', "+"], # label escape as meta key
+
+ '+<' => ['g4', "history start"],
+ '+=' => \'+?', #TODO: v21 # emacs, not in v2.0
+ '+>' => ['g4', "history end"],
+ '^?' => \'^h',
+ '+?' => ['g1', "list complet<>ion<>s"],
+ '^@' => ['g8 v21', "set mark"], # not in v2.0
+
+ '+#' => ['g6 v21', "prefix comm<>en<>t"], # not in v2.0
+ '+&' => ['g6', "tilde expand"],
+ '+*' => ['g6 v21', "complet<>e all"], # not in v2.0
+ '+.' => ['g4', "insert last"],
+ '+~' => \'+&', # common emacs
+
+ '^[' => ['g8', "meta"],
+ '^+['=> \'^i',
+ '+\\'=> ['g7', "delete whitesp<>ace"],
+ '^]' => ['g2 arg v21', "find char"], # not in v2.0
+ '^+]'=> ['g2 arg v21', "rev find char"], # not in v2.0
+ '^_' => ['g4', "undo"],
+ '+_' => \'+.',
+
+ '+~' => ['g6 xbash', "user<>name exp<>and"], # overrides alias
+ '+!' => ['g6 xbash', "cmd expand"],
+ '+@' => ['g6 xbash', "host<>name exp<>and"],
+ '+$' => ['g6 xbash', "variable expand"],
+ '+^' => ['g4 xbash', "history expand"],
+ '+/' => ['g1 xbash', "filename expand"],
+
+ '^a' => ['g2', "begin of line"],
+ '^b' => ['g2', "char back<>w<>ard<>s"],
+ '+b' => ['g2', "word back<>w<>ard<>s"],
+ '^c' => ['g8 xbash', "cancel comm<>and"],
+ '+c' => ['g6', "capital<>ise word"],
+ '^d' => ['g7', "delete char"],
+ '+d' => ['g7 ring', "delete word rem<>ain<>der"],
+ # '^e' => ['g9', "emacs mode"],
+ '^e' => ['g2', "end of line"],
+ '^f' => ['g2', "char forward"],
+ '+f' => ['g2', "word forward"],
+ '^g' => ['g8', "abort cmd, bell"],
+ '^+g'=> \'^g',
+ '^h' => ['g7', "back<>space"],
+ '^+h'=> ['g7 ring', "delete bound word"], #TODO
+ '^i' => ['g6', "auto<>complet<>e\n(tab)"],
+ '^+i'=> \'^v^i',
+ '^j' => \'^m',
+ '^+j'=> ['g9', "vim mode"], #TODO: mode^+j
+ '^k' => ['g7 ring', "delete till eol"],
+ '^l' => ['g1', "clear screen"],
+ '+l' => ['g6', "lowcase word"],
+ '^m' => ['g4', "enter line\n(enter)"],
+ '^+m'=> \'^+j',
+ '^n' => ['g4', "history next"],
+ '+n' => ['g4', "match history"],
+ '^o' => ['g4 xbash', "enter and next"],
+ '^p' => ['g4', "history back"],
+ '+p' => ['g4', "rev match history"],
+ '^q' => [undef, \'^v', "\nQuote"], #TODO fix partial override
+ '^r' => ['g4', "reverse history"],
+ '+r' => ['g4', "full undo\nRevert"],
+ '^+r'=> \'+r',
+ '^s' => ['g4', "search history"],
+ '^t' => ['g6', "move char forw<>ard\nTranspose char"],
+ '+t' => ['g6', "move word forw<>ard\nTranspose word"],
+ '^u' => ['g7 ring', "delete till bol"], # unix
+ '+u' => ['g6', "upcase word"],
+ '^v' => ['g8', "verbat<>im char"],
+ '^w' => ['g7 ring', "delete word"], # unix
+ '^x' => ['g9 arg mode^x', "extend<>ed"],
+ '^y' => ['g4', "yank top"],
+ '+y' => ['g4 ring', "rotate yank"],
+ '^+y'=> ["yank arg", "yank arg"],
+ '^z' => ['g8 xbash', "back<>ground"],