index: link scope in git messages to existing page
[sheet.git] / index.plp
1 <(common.inc.plp)><:
2
3 Html({
4         title => 'cheat sheets',
5         version => '1.11',
6         description => [
7                 "Cheat sheets summarising various software programs and standards.",
8         ],
9         keywords => [qw'
10                 sheet cheat reference software overview summary help keyboard map unicode
11         '],
12         raw => [
13                 '<link rel="sitemap" type="application/xml" href="/sitemap.xml">',
14                 '<link rel="alternate" type="application/rss+xml"',
15                 ' title="RSS feed of repository updates"',
16                 ' href="http://git.shiar.nl/sheet.git/rss">',
17         ],
18         data => ['UPDATE'],
19 });
20
21 :>
22 <h1>Shiar's cheat sheets</h1>
23
24 <p>
25 Through the miracle of formatting, design, abbreviation, compression, and Perl,
26 the following topics have been condensed into single pages of reference.
27 <br>
28 Originally created by Mischa <span class="family-name">Poslawsky</span>,
29 but you're free to use, print, alter, and redistribute under the AGPL license.
30 </p>
31 <:
32 if (open my $log, '<', 'UPDATE') {{
33         my $line = readline $log;
34         $line or next;  # explicitly ignore empty input
35         EscapeHTML $line;
36         my ($date, $subject) = split /[\t\n]/, $line;
37         $date =~ s/ \K/<small>/ and $date .= '</small>';
38         $subject =~ s{\A(\w+)(?=: )}{showlink($1, -e "$1.plp" && "/$1")}e;
39         say "<p><strong>Last update</strong>: $date $subject</p>";
40 }}
41
42 :>
43 <nav>
44 <div class="section">
45 <h2>Keyboard maps</h2>
46 <ul>
47 <li><a href="/readline">readline</a>
48 <li><a href="/screen">screen</a>
49 <li><a href="/less">less</a>
50 <li><a href="/vi">vi/vim</a>
51 <li><a href="/vimperator">vimperator</a>
52 <li><a href="/mutt">mutt</a>
53 <li><a href="/nethack">nethack</a>
54 <li><a href="/mplayer">mplayer</a>
55 </ul>
56 </div>
57
58 <div class="section">
59 <h2>Unicode characters</h2>
60 <ul>
61 <li><a href="/charset">charsets</a>
62 <li><a href="/charset/unicode">unicode allocation</a>
63 <li><a href="/unicode">common glyphs</a>
64 <li><a href="/digraphs">digraphs</a>
65 <li><a href="/writing">alphabet comparison</a>
66 <li><a href="/latin">latin variants</a>
67 <li><a href="/digits">numerals</a>
68 <li><a href="/font">font coverage</a>
69 </ul>
70 </div>
71
72 <div class="section">
73 <h2>Other references</h2>
74 <ul>
75 <li><a href="/browser">browser support</a>
76 <li><a href="/countries">country codes</a>
77 <li><a href="/perl">perl versions</a>
78 <li><a href="/apl">apl symbols</a>
79 <li><a href="/termcol">terminal colours</a>
80 <li><a href="/sc/2">starcraft 2 units</a>
81         (<a href="/sc" title="StarCraft: Brood War">bw</a>)
82 <li><a href="/emoji">emoticons</a>
83 <li><a href="/dieren">dieren (Dutch animals)</a>
84 </ul>
85 </div>
86 </nav>
87