index: release v1.18 with only altgr index linked
[sheet.git] / sample.plp
index 7f8b636c83f7d8e5a694ff16ae045632f562b9fe..36ad2b424e995697c25e7a6602e94b8c18cb0158 100644 (file)
@@ -1,20 +1,41 @@
 <(common.inc.plp)><:
 
+my $textinc = 'sample.txt';
+
 Html({
        title => "unicode sampler",
-       version => '2.0',
+       version => '2.1',
        stylesheet => [qw'light dark mono red'],
+       data => [$textinc],
+       image => 'sample.png',
 });
 
-open my $source, '<', 'data/unicode-sampler/unicode.txt'
-       or die "Could not open text: $!\n";
+open my $source, '<', $textinc
+       or Abort("Could not open text at $textinc", 501, $!);
+local $/ = "\n\n";
 
-my $title = readline $source;
-my $hr = readline $source;
+my $top = readline $source;
+my ($title, $hr, $intro) = split /\n(\pP)\1+\n/, $top, 2;
 say "<h1>$title</h1>";
+say <<".";
+<p>HTML display of <a href="/$textinc">plain text</a>
+intended for monospaced (terminal) output.
+Compare an expected rendering of the <a href="/sample.png">overview</a>.
+</p>
+.
 
 say '<pre>';
+print $intro;
+
 while (my $p = readline $source) {
-       print EscapeHTML($p);
+       EscapeHTML($p);
+       $p =~ s{ \A ((\pL+) \N*:) \n }{<h2 id="\L$2\E">$1</h2>}x;
+       if ($2 eq 'Unicode') {
+               # table without proper direction control
+               $p =~ s/^(?= )/\x{202d}/gm; # ltr override every line
+       }
+       $p =~ s{(?<=^  )([\p{Latin} ]+:)}{<em>$1</em>}gm;
+       print $p;
 }
+
 say "</pre>\n";