overhaul keyboard module include syntax
[sheet.git] / readline.inc.pl
index 288885fdc86b4877261d89b3becda6e3eb8d42dd..ea94799681c63bb12c11484ff78da6b69014d779 100644 (file)
@@ -1,62 +1,96 @@
 use utf8;
+{
 
 '' => {
-       desc => "emacs mode",
+       '+<' => ['co'],
+       '+=' => '+?', #TODO: new # emacs, not in v2.0
+       '+>' => ['co'],
+       '^?' => '^h',
+       '+?' => ['ci'],
+       '^@' => ['mv new'], # not in v2.0
+
+       '+#' => ['mi new'], # not in v2.0
+       '+&' => ['mi'],
+       '+*' => ['mi new'], # not in v2.0
+       '+.' => ['co'],
+       '+~' => '+&amp;', # emacs
 
-       '+\\'=> ["delete whitesp$sign{_}ace", 'mo'],
+       '^[' => ['mv'],
+       '^+['=> '^i',
+       '+\\'=> ['mo'],
+       '^]' => ['pm arg new'], # not in v2.0
+       '^+]'=> ['pm arg new'], # not in v2.0
+       '^_' => ['co'],
        '+_' => '+.',
-       '+>' => ["history end", 'co'],
-       '+<' => ["history start", 'co'],
-       '+.' => ["insert last", 'co'],
-       '+#' => ["prefix comm$sign{_}en$sign{_}t", 'mi'],
-       '+*' => ["complet$sign{_}e all", 'mi'],
-       '^]' => ["find char", 'pm arg'],
-       '^+]'=> ["rev find char", 'pm arg'],
-       '^?' => '^h',
-       '+?' => ["list complet$sign{_}ion$sign{_}s", 'ci'],
-       '+=' => '+?', # emacs
-       '^@' => ["set mark", 'mv'],
-       '+&' => ["tilde expand", 'mi'],
-       '+~' => '+&', # emacs
-       '^_' => ["undo", 'co'],
-
-       '^a' => ["begin of line", 'pm'],
-       '^b' => ["char back$sign{_}w$sign{_}ard$sign{_}s", 'pm'],
-       '+b' => ["word back$sign{_}w$sign{_}ard$sign{_}s", 'pm'],
-       '+c' => ["capital$sign{_}ise word", 'mi'],
-       '^d' => ["delete char", 'mo'],
-       '+d' => ["delete word rem$sign{_}ain$sign{_}der", 'mo'],
-#      '^e' => ["emacs mode", 'me'],
-       '^e' => ["end of line", 'pm'],
-       '^f' => ["char forward", 'pm'],
-       '+f' => ["word forward", 'pm'],
-       '^g' => ["abort cmd, bell", 'mv'],
-       '^h' => ["back$sign{_}space", 'mo'],
-       '^i' => ["complete", 'mi', '(tab)'],
+
+       '+~' => ['mi ext'], # common emacs => '+&'
+       '+!' => ['mi ext'],
+       '+@' => ['mi ext'],
+       '+$' => ['mi ext'],
+       '+^' => ['co ext'],
+       '+/' => ['ci ext'],
+
+       '^a' => ['pm'],
+       '^b' => ['pm'],
+       '+b' => ['pm'],
+       '^c' => ['mv ext'],
+       '+c' => ['mi'],
+       '^d' => ['mo'],
+       '+d' => ['mo ring'],
+#      '^e' => ['me'],
+       '^e' => ['pm'],
+       '^f' => ['pm'],
+       '+f' => ['pm'],
+       '^g' => ['mv'],
+       '^+g'=> '^g',
+       '^h' => ['mo'],
+       '^+h'=> ['mo ring'], #TODO
+       '^i' => ['mi'],
+       '^+i'=> '^v^i',
        '^j' => '^m',
-       '^+j'=> ["vim mode", 'me'],
-       '^k' => ["delete till eol", 'mo'],
-       '^l' => ["clear screen", 'ci'],
-       '+l' => ["lowcase word", 'mi'],
-       '^m' => ["enter line", 'co', '(enter)'],
-       '^n' => ["history next", 'co'],
-       '+n' => ["match history", 'co'],
-       '^p' => ["history back", 'co'],
-       '+p' => ["rev match history", 'co'],
-       '^q' => '^v', # Quote
-       '^r' => ["reverse history", 'co'],
-       '+r' => ["full undo", 'co', 'Revert'],
-       '^s' => ["search history", 'co'],
-       '^t' => ["move char forw$sign{_}ard", 'mi', 'Transpose char'],
-       '+t' => ["move word forw$sign{_}ard", 'mi', 'Transpose word'],
-       '^u' => ["delete till bol", 'mo'], # unix
-       '+u' => ["upcase word", 'mi'],
-       '^v' => ["verbatim char", 'mv'],
-       '^w' => ["delete word", 'mo'], # unix
-#      '^xBS' => ["delete till bol", 'mo'],
-       '^x' => ["extend$sign{_}ed", 'me arg'],
-       '^y' => ["yank top", 'co'],
-       '+y' => ["rotate yank", 'co ring'],
+       '^+j'=> ['me'], #TODO: mode^+j
+       '^k' => ['mo ring'],
+       '^l' => ['ci'],
+       '+l' => ['mi'],
+       '^m' => ['co'],
+       '^+m'=> '^+j',
+       '^n' => ['co'],
+       '+n' => ['co'],
+       '^o' => ['co ext'],
+       '^p' => ['co'],
+       '+p' => ['co'],
+       '^q' => '^v',
+       '^r' => ['co'],
+       '+r' => ['co'],
+       '^+r'=> '+r',
+       '^s' => ['co'],
+       '^t' => ['mi'],
+       '+t' => ['mi'],
+       '^u' => ['mo ring'],
+       '+u' => ['mi'],
+       '^v' => ['mv'],
+       '^w' => ['mo ring'],
+       '^x' => ['me arg mode^x'],
+       '^y' => ['co'],
+       '+y' => ['co ring'],
        '^+y'=> ["yank arg"],
+       '^z' => ['mv ext'],
+},
+
+'^x' => {
+       lead => $ascii ? "'x"  : "x̂",
+
+       '('  => ['mv'],
+       ')'  => ['mv'],
+       'e'  => ['mv'],
+       '^e' => ['mi ext linkvi'],
+       '^g' => '^g',
+       '^h' => '^u',
+       '^r' => ['mv'],
+       '^u' => '^_',
+       '^x' => ['pm new'], # not in v2.0
+       '^v' => ['ci ext'],
+       '^?' => '^x^h',
 },
 
+}