formatchar: highlight by unicode range if no digraphs
[sheet.git] / readline.plp
1 <(common.inc.plp)><:
2
3 Html({
4         title => 'readline cheat sheet',
5         version => 'v1.0',
6         description => [
7                 "Reference sheet of default key bindings for GNU readline,",
8                 "used for line-editing in most Unix software, notably Emacs and Bash.",
9         ],
10         keywords => [qw'
11                 readline gnu bash emacs sheet cheat reference overview keyboard editing curses
12         '],
13         charset => $sign{charset},
14         stylesheet => [qw'light dark circus mono red terse'],
15         keys => 1,
16 });
17
18 :>
19 <h1>readline cheat sheet</h1>
20
21 <h2>default emacs mode</h2>
22
23 <ul id="rows">
24
25 <li class="row">
26         <ul class="keys omni">
27         <li class="me" onclick="setmode()"><b>Esc</b> +
28         </ul>
29 </li>
30
31 <:
32 use Shiar_Sheet::Keyboard;
33 my $keys = Shiar_Sheet::Keyboard->new({do 'readline.inc.pl'});
34 $keys->map($get{map}) or undef $get{map};
35 $keys->print_rows($get{rows} || '^x=213', [4,3,2]);
36 :>
37 </ul>
38
39 <hr>
40
41 <div class="help">
42         <div class="left">
43                 <dl class="legend legend-types">
44                 <dt class="ci">info
45                         <dd>Info command: shows/does something without altering anything.
46                 <dt class="pm">motion
47                         <dd>Move the cursor.
48                 <dt class="co">history
49                         <dd>Replace contents involving kill ring, undo, or command history.
50                 <dt class="mi">change
51                         <dd>Alter current text (filtering or completion).
52                 <dt class="mo">delete
53                         <dd>Remove text.
54                 <dt class="mv">misc
55                         <dd>Miscellaneous commands.
56                 <dt class="me">mode
57                         <dd>Additional key functionality (click to view).
58                 </dl>
59         </div>
60
61         <div class="right">
62                 <dl class="legend legend-options">
63                 <dt>key<:= $sign{arg} :>
64                         <dd>Commands with a dot need a char argument afterwards.
65                 <dt class="new">&gt;v2.0
66                         <dd>Unavailable before readline version 2.1 (1997).
67                 <dt class="ext">bash
68                         <dd>Default assignment in Bash shells, but not common readline.
69                 </dl>
70
71                 <ul class="legend legend-set">
72                 <li>keyboard <strong>map</strong> is
73                         <:= $get{map} ? 'set to ' : '' :><em><:= $keys->{map} :></em>
74                 <li><strong>ascii</strong> mode is
75                         <:= defined $sign{-ascii} && 'forced ' :><em><:=
76                                 $sign{-ascii} ? 'on' : 'off' :></em>
77                 <li><strong>keys</strong> are
78                         <em><:= $showkeys ? 'always shown' : 'hidden if unassigned' :></em><:=
79                                 !exists $get{keys} && ' by default' :>
80                 <li>default <strong>style</strong> is
81                         <:= defined $get{style} && 'set to ' :><em><:= $style :></em>
82                 </ul>
83         </div>
84 </div>
85