charset codepage unicode ascii utf8 latin glyph character encoding
reference common overview table
'],
- stylesheet => [qw'light'],
+ (stylesheet => [qw'light']) x !$mode,
data => [qw(
charset-encoding.inc.pl
charset-unicode.inc.pl charset-ucplanes.inc.pl charset-utf8.inc.pl
dos => 'DOS',
mac => 'Apple',
ebcdic => 'EBCDIC',
+ legacy => 'legacy',
$tablist[0] eq 'default' ? () : ('' => 'common'),
],
[
# extend earlier range
my $skip = int(($row{endpoint} || $row{startpoint}) / $row{cols});
for ($skip + 1 .. (hex($+{start}) / $row{cols}) - 1) {
- $row{skip}->{ $_ * $row{cols} - $row{startpoint} }++;
+ $row{skip}->{ $_ * $row{cols} }++;
}
}
else {
if (defined $row{table} or defined $row{cell}) {
$row{set} //= $input;
}
- elsif ($row{set} = Encode::resolve_alias($input)) {
+ elsif ($row{set} = Encode::resolve_alias($charset->{set} // $input)) {
$row{offset} = delete $row{startpoint};
if ($charset->{varchar}) {
# array of possibly multiple characters per code point
$row{endpoint} -= $row{offset};
$visible->{ascii}++; # assume common base
+ $row{set} = $input if $charset->{set}; # base override
}
else {
Alert("Encoding <q>$input</q> unknown");
print '<tbody>';
while ($offset <= $row->{endpoint} * $colsize) {
- if ($row->{skip}->{$offset}) {
+ if ($row->{skip}->{$offset + $row->{offset}}) {
$offset += $cols * $colsize;
next;
}
print '<tr><th>';
- if (defined $row->{skip}->{$offset}) {
+ if (defined $row->{skip}->{$offset + $row->{offset}}) {
print '⋮';
}
else {
$visible->{$glyph}++;
}
- print '<td title="%s"', $name;
+ printf '<td title="%s"', $name;
say $class ? sprintf(' class="X %s">%s', $class, $cell) : '>';
}
continue {