my $glyphs = Shiar_Sheet::FormatChar->new;
my @ops = do 'apl.inc.pl';
-@ops > 1 or die "cannot open operator include: $@\n";
+@ops > 1 or Abort("cannot open operator include", 500, $@ // $!);
:>
<h1>APL Symbols</h1>
<:
for my $op (@ops) {
$op or do {
- print "<tbody>\n";
+ say '<tbody>';
next;
};
my $codepoint = ord $chr;
my $ascii = $codepoint <= 127;
my $info = $glyphs->glyph_info($codepoint);
- my ($class, $name, $mnem, $html, $string) = @{$info};
+ my ($class, $name, $mnem, $entity, $string) = @{$info};
printf '<tr><th title="%2$s">%s', $chr, EscapeHTML($name || '?'), $class;
printf '<td class="%s">%s', @{$_} for (
[$ascii ? 'l5' : defined $altkey ? 'l4' : 'l3', $altkey],
[defined $mnem ? $class =~ /\bu-di\b/ ? 'l4' : 'l3' : $ascii ? 'l5' : 'l1',
EscapeHTML($mnem) // sprintf('%s%0*X', $codepoint < 256 ? (x => 2) : (u => 4), $codepoint)],
- [defined $html ? 'l4' : $ascii ? 'l5' : 'l1', $html // "#$codepoint"],
+ [defined $entity ? 'l4' : $ascii ? 'l5' : 'l1', $entity // "#$codepoint"],
);
printf(
defined $_ ? '<td%s>%s' : '<td class=Xi>',
map { !!$_->[1] && qq( title="$_->[1]"), $_->[0] }
[map { EscapeHTML($_) } split /\n/, $_, 2]
) for $monad, $dyad;
- print "</td>\n";
+ say '</td>';
}
:></table>
</div>
-<hr>
-
-<div class="legend">
- <table class="glyphs"><tr>
- <td class="X l5">unicode 1.1
- <td class="X l4">20th century
- <td class="X l3">in 6.0 (2010)
- <td class="X l2">recent assignments
- <td class="X l1">proposed
- <td class="ex">irregular
- </table>
-</div>
+<:
+say for '<hr/>', $glyphs->legend;