less: complete declarations and add page, links
[sheet.git] / less.plp
diff --git a/less.plp b/less.plp
new file mode 100644 (file)
index 0000000..ce5ca14
--- /dev/null
+++ b/less.plp
@@ -0,0 +1,99 @@
+<(common.inc.plp)><:
+
+Html({
+       title => 'less cheat sheet',
+       version => 'v1.0',
+       description => [
+               "Default bindings of the less pager.",
+               "Clearly shows how much it's more than more.",
+       ],
+       keywords => [qw'
+               less sheet cheat keys pager more
+               shortkey reference keyboard commands options overview
+       '],
+       charset => $sign{charset},
+       stylesheet => [qw'light dark circus mono red terse'],
+       keys => 1,
+});
+
+:>
+<h1>Less cheat sheet</h1>
+
+<h2>normal pager (default)</h2>
+
+<ul id="rows">
+
+<li class="row"><ul>
+       <li>
+               <ul class="keys omni">
+               <li class="mo chr27" onclick="setmode('modeesc')"><b>Esc</b> alt<:=$sign{_}:>/meta
+               </ul>
+       <li class="mode modeesc">
+               <ul class="keys omni">
+               <li class="mo chr27" onclick="setmode()"><b>Esc</b> noop
+               </ul>
+       <li class="mode mode:">
+               <ul class="keys omni">
+               <li class="mo chr27" onclick="setmode()"><b>Esc</b> noop
+               </ul>
+       <li class="mode mode-">
+               <ul class="keys omni">
+               <li class="mo chr27" onclick="setmode()"><b>Esc</b> noop
+               </ul>
+       <li class="mode mode^x">
+               <ul class="keys omni">
+               <li class="mo chr27" onclick="setmode()"><b>Esc</b> noop
+               </ul>
+       </ul>
+
+<:
+use Shiar_Sheet::Keyboard;
+my $keys = Shiar_Sheet::Keyboard->new({do 'less.inc.pl'});
+$keys->map($get{map}) or undef $get{map};
+$keys->print_rows($get{rows}, [1,0]);
+:>
+</ul>
+
+<hr>
+
+<div class="help">
+       <div class="left">
+               <dl class="legend legend-types">
+               <dt class="ci">info
+                       <dd>Temporary message display (or related option).
+               <dt class="pm">move
+                       <dd>Regular file position panning (or option).
+               <dt class="po">jump
+                       <dd>Other file position manipulation (").
+               <dt class="co">search
+                       <dd>Go to matching content (").
+               <dt class="mo">file
+                       <dd>Alter open file buffer (").
+               <dt class="mv">misc
+                       <dd>Other commands and options.
+               </dl>
+       </div>
+
+       <div class="right">
+               <dl class="legend legend-options">
+               <dt>key<:= $sign{arg} :>
+                       <dd>Commands with a dot need a char argument afterwards.
+               <dt class="more">more
+                       <dd>A small subset is compatible with `more`.
+               </dl>
+
+               <ul class="legend legend-set">
+               <li>keyboard <strong>map</strong> is
+                       <:= $get{map} ? 'set to ' : '' :><em><:= $keys->{map} :></em>
+               <li><strong>ascii</strong> mode is
+                       <:= defined $sign{-ascii} && 'forced ' :><em><:=
+                               $sign{-ascii} ? 'on' : 'off' :></em>
+               <li><strong>keys</strong> are
+                       <em><:= $showkeys ? 'always shown' : 'hidden if unassigned' :></em><:=
+                               !exists $get{keys} && ' by default' :>
+               <li>default <strong>style</strong> is
+                       <:= defined $get{style} && 'set to ' :><em><:= $style :></em>
+               </ul>
+       </div>
+</div>
+