vimperator: describe caret mode functionality
[sheet.git] / less.eng.inc.pl
index dbf0194e9aef6988c53b74dd017d08e2dce57bae..fed0bd26174638a24d3c9aa88bd100e5c55e2ade 100644 (file)
@@ -1,7 +1,11 @@
 use utf8;
+
 {
+# less v418
 
 key => {
+       "\e"=> "alt<>/meta",
+
        'b' => "page up",
        'd' => 'scroll down',
        'f' => "page down",
@@ -9,9 +13,9 @@ key => {
        'g' => "(first) line",
        'G' => "last line",
        'h' => "help",
-       'j' => $sign{down},
-       'k' => $sign{up},
-       'm' => "mark pos$sign{_}ition",
+       'j' => "<down>",
+       'k' => "<up>",
+       'm' => "mark pos<>ition",
        'n' => "next find",
        'N' => "prev find",
        'p' => "reset position\nbeginning or Percentage",
@@ -30,10 +34,10 @@ key => {
 
        '!' => "shell command",
        '|' => "pipe till mark",
-       ':' => "com$sign{_}mand",
+       ':' => "com<>mand",
        '/' => "find",
        '?' => "find rev.",
-       '&' => "filter match$sign{_}es",
+       '&' => "filter match<>es",
        "'" => "goto mark",
        '-' => "toggle option",
        '_' => "show option",
@@ -42,23 +46,26 @@ key => {
 
        '(' => "closing",
 
+       "^[\e"=> "noop",
        '^[n' => "any next find",
        '^[N' => "any prev find",
        '^[u' => "mark search\nUndo",
        '^[(' => "scroll left",
        '^[)' => "scroll right",
 
+       ":\e"=> "noop",
        ':d' => "drop file",
        ':e' => "open file",
        ':n' => "next file",
        ':p' => "prev file",
        ':x' => "first file",
 
+       "-\e"=> "noop",
        '-a' => "advance find page",
        '-b' => "buffer space",
        '-B' => "static buffer for pipes",
        '-c' => "clear on scroll",
-       '-d' => "dumb term$sign{_}inal",
+       '-d' => "dumb term<>inal",
        '-D' => "dos colours",
        '-e' => "exit after eof",
        '-E' => "exit at eof",
@@ -66,18 +73,18 @@ key => {
        '-F' => "exit if 1 page",
        '-g' => "hilight last match",
        '-h' => "scroll back limit",
-       '-i' => "ignore lower$sign{_}c$sign{_}ase",
+       '-i' => "ignore lower<>c<>ase",
        '-I' => "ignore case",
        '-j' => "top offset",
        '-J' => "status column",
-       '-k' => "key bind$sign{_}ing$sign{_}s",
-       '-L' => qq[ignore <span style="font-variant:small-caps">lesso$sign{_}pen</span> filter],
-       '-m' => "med. promp$sign{_}t tog$sign{_}gle",
-       '-M' => "long promp$sign{_}t tog$sign{_}gle",
-       '-n' => "count line num$sign{_}ber$sign{_}s",
-       '-N' => "show line n$sign{_}um$sign{_}ber$sign{_}s",
+       '-k' => "key bind<>ing<>s",
+       '-L' => qq[ignore <span style="font-variant:small-caps">lesso<>pen</span> filter],
+       '-m' => "med. promp<>t tog<>gle",
+       '-M' => "long promp<>t tog<>gle",
+       '-n' => "count line num<>ber<>s",
+       '-N' => "show line n<>um<>ber<>s",
        '-o' => "stdin to log",
-       '-O' => "log overwrite",
+       '-O' => "log over<>wr<>ite",
        '-p' => "initial search",
        '-P' => "status line\nPrompt",
        '-q' => "no info bell\nQuiet",
@@ -90,11 +97,11 @@ key => {
        '-T' => "tags file",
        '-u' => 'parse \b \r',
        '-U' => 'escape \t \b \r',
-       '-w' => "hilight page d$sign{_}own",
-       '-W' => "hilight forw$sign{_}ard",
+       '-w' => "hilight page d<>own",
+       '-W' => "hilight forw<>ard",
        '-x' => "tab stops",
        '-X' => "no termcap init",
-       '-y' => "scroll limit fw$sign{_}d",
+       '-y' => "scroll limit fw<>d",
        '-z' => "page size",
        '-"' => "shell quotes",
        '-~' => "outside tildes toggle",
@@ -111,15 +118,163 @@ mode => {
 },
 
 flag => {
-       ci => [info   => 'Temporary message display (or related option).'],
-       pm => [move   => 'Regular file position panning (or option).'],
-       po => [jump   => 'Other file position manipulation (").'],
-       co => [search => 'Go to matching content (").'],
-       mo => [file   => 'Alter open file buffer (").'],
-       mv => [misc   => 'Other commands and options.'],
-
-       arg  => ["key$sign{arg}" => "Commands with a dot need a char argument afterwards."],
+       g1 => [info   => 'Temporary message display (or related option).'],
+       g2 => [move   => 'Regular file position panning (or option).'],
+       g3 => [jump   => 'Other file position manipulation (").'],
+       g4 => [search => 'Go to matching content (").'],
+       g7 => [file   => 'Alter open file buffer (").'],
+       g8 => [misc   => 'Other commands and options.'],
+
+       arg  => ["key<arg>" => "Commands with a dot need a char argument afterwards."],
        more => [more => "A small subset is compatible with `more`."],
 },
 
+def => {
+       '' => {
+               "\e"=> 'g7 mode^[',
+
+               'b' => 'g2 more',
+               '^b'=> '=b',
+               'd' => 'g2 more',
+               '^d'=> '=d',
+               'e' => '=j',
+               '^e'=> '=j',
+               'f' => 'g2 more',
+               '^f'=> '=f',
+               'F' => 'g7',
+               'g' => 'g2',
+               '^g'=> '==',
+               'G' => 'g2',
+               'h' => 'g7 more',
+               'H' => '=h',
+               'j' => 'g2',
+               'k' => 'g2',
+               '^k'=> '=k',
+               '^l'=> '=r', # more
+               'm' => 'g3 arg',
+               '^m'=> '=j',
+               'n' => 'g4 more',
+               'N' => 'g4',
+               '^n'=> '=j',
+               'p' => 'g2',
+               '^p'=> '=k',
+               'q' => 'g8 more',
+               'Q' => '=q',
+               'r' => 'g1',
+               '^r'=> '=r',
+               'R' => 'g1',
+               's' => 'g8 arg',
+               't' => 'g4',
+               'T' => 'g4',
+               'u' => 'g2',
+               '^u'=> '=u',
+               'v' => 'g8 linkvi more',
+               '^v'=> '=f',
+               'V' => 'g1',
+               'w' => 'g2',
+               '^x'=> 'g8 arg mode^x',
+               'y' => '=k',
+               '^y'=> '=k',
+               'z' => 'g2 more',
+
+               '!' => 'g8 more',
+               '|' => 'g8 arg',
+               ':' => 'g8 arg mode:',
+               '/' => 'g4 arg more',
+               '?' => 'g4 arg',
+               '%' => '=p',
+               '&' => 'g4 arg',
+               "'" => 'g3 arg',
+               '-' => 'g8 arg mode-',
+               '_' => 'g1 arg mode-',
+               '=' => 'g1 more',
+               '+' => 'g7',
+
+               '(' => 'g4',
+               '<' => '=g',
+               '>' => '=G',
+       },
+
+       '^[' => { # esc
+               "\e"=> 'g7 mode',
+               'n' => 'g4',
+               'N' => 'g4',
+               'u' => 'g1',
+               'v' => '=b',
+               '(' => 'g2',
+               ')' => 'g2',
+               '<' => '=g',
+               '>' => '=G',
+       },
+
+       #'^x' => {
+       #       "\e"=> 'g7 mode',
+       #       '^x' => "='",
+       #       '^v' => '=:e',
+       #},
+
+       ':' => {
+               "\e"=> 'g7 mode',
+               'd' => 'g7',
+               'e' => 'g7',
+               'f' => '==',
+               'n' => 'g7 more',
+               'p' => 'g7 more',
+               'q' => '=q',
+               'Q' => '=:q',
+               'x' => 'g7',
+       },
+
+       '-' => {
+               "\e"=> 'g7 mode',
+               'a' => 'g4',
+               'b' => 'g7 arg',
+               'B' => 'g7',
+               'c' => 'g2',
+               'd' => 'g8',
+               'D' => 'g8 arg ext',
+               'e' => 'g7',
+               'E' => 'g7',
+               'f' => 'g7',
+               'F' => 'g7',
+               'g' => 'g4',
+               'h' => 'g2 arg',
+               'i' => 'g4',
+               'I' => 'g4',
+               'j' => 'g3 arg',
+               'J' => 'g1',
+               'k' => 'g8 arg',
+               'L' => 'g8',
+               'm' => 'g1',
+               'M' => 'g1',
+               'n' => 'g8',
+               'N' => 'g1',
+               'o' => 'g8 arg',
+               'O' => 'g8 arg',
+               'p' => 'g4 arg',
+               'P' => 'g1 arg',
+               'q' => 'g8',
+               'Q' => 'g8',
+               'r' => 'g8',
+               'R' => 'g8',
+               's' => 'g8',
+               'S' => 'g8',
+               't' => 'g4 arg',
+               'T' => 'g4 arg',
+               'u' => 'g8',
+               'U' => 'g8',
+               'V' => '=V',
+               'w' => 'g8',
+               'W' => 'g8',
+               'x' => 'g8 arg',
+               'X' => 'g8',
+               'y' => 'g2 arg',
+               'z' => 'g2 arg',
+               '"' => 'g8 arg',
+               '~' => 'g8',
+               '#' => 'g2 arg',
+               '-' => 'g8 arg',
+               '+' => 'g8 arg',
+       },
+},
 }