link back and forth between digraphs and unicode pages
[sheet.git] / digraphs.plp
index b62b57774b9f85a425dc9b84ed6b3b26e2c62c0f..02fcbc55505615a28e23ca008142b1638ecc544b 100644 (file)
@@ -21,6 +21,9 @@ $header{content_type} = 'text/html; charset=utf-8';
 <body>
 <h1>RFC-1345 Digraphs</h1>
 
+<p>i^k in <a href="/">Vim</a>.
+Also see <a href="/unicode">common digraphs</a>.</p>
+
 <:
 my $di = do 'digraphs.inc.pl';
 
@@ -42,24 +45,29 @@ my @chars2 = (@chars, ['_']);  # trailing character (extended set)
 
 print '<table><col>';
 print qq'<colgroup span="$_">' for map {scalar @$_} @chars2;
-print "\n";
+print "</colgroup><col>\n";
 for my $section (qw{thead tfoot}) {
        print "<$section><tr><th>&nbsp;";
-       print "<th>$_" for map {@$_} @chars2;
+       print '<th>', quote($_) for map {@$_} @chars2;
+       print "<th>&nbsp;\n";
 }
 for my $c1group (@chars) {
        print '<tbody>';
        for my $c1 (@$c1group) {
-               print "<tr><th>$c1";
+               print '<tr><th>', quote($c1);
                for my $c2 (map {@$_} @chars2) {
                        my $mnem = $c1 . $c2;
                        if (not defined $di->{$mnem}) {
                                print '<td>';
                                next;
                        }
-                       my ($codepoint, $name, $prop, $script) = @{ $di->{$mnem} };
+                       if (ref $di->{$mnem} ne 'ARRAY') {
+                               printf '<td class="X Xr" title="%s">', quote($mnem);
+                               next;
+                       }
+                       my ($codepoint, $name, $prop, $script, $string) = @{ $di->{$mnem} };
 
-                       my $glyph = chr $codepoint;
+                       my $glyph = $string || chr $codepoint;
                        utf8::upgrade($glyph);  # prevent latin1 output
                        my $desc = $mnem . ($name && " ($name)");
                        my @class = ('X', grep {$_} $prop, $script);
@@ -70,7 +78,7 @@ for my $c1group (@chars) {
                        printf "\n".'<td class="%s" title="%s">%s',
                                join(' ', @class), quote($desc), $glyph;
                }
-               print "\n<th>$c1\n";
+               print "\n<th>", quote($c1), "\n";
        }
 }
 print "</table>\n";
@@ -92,6 +100,7 @@ print "</table>\n";
        <td class="X Latin">latin
        <td class="X Hebrew">hebrew
        <td class="X Arabic">arabic
+       <td class="X Hangul">korean
        <td class="X Hiragana">japanese
        <td class="X Bopomofo">chinese
        </table>