X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/c253269d0792b66849eae1ba12ab02c43d649496..722b7931aba48a3156242c586b5b55d416648cd1:/charset.plp diff --git a/charset.plp b/charset.plp index 9ee6d86..79ebd96 100644 --- a/charset.plp +++ b/charset.plp @@ -139,10 +139,12 @@ sub tabinput { if (my ($parent, $part) = pairfirst { defined $visible->{$a} } @parents) { $row{parent} = $parent; - $params = $visible->{$parent} ? $part : 128; + $params = $part; + $params = 128 unless $visible->{$parent} + or ($input eq 'MacCroatian' and defined $visible->{MacRomanian}); } elsif (defined $visible->{ascii}) { - $row{parent} = $parents[0] || 'ascii'; + $row{parent} = $parents[0]; $params = $parents[1] || 128; $params = 128 if $params >= 128; # ascii offset at most } @@ -321,6 +323,20 @@ for my $row (@request) { next; } + if (exists $get{compare}) { + state $visible = {}; + my $cp = $offset + $row->{offset}; + printf '%2$s', + $cp == ord $glyph ? 'l4' : + $row->{parent} && $glyph eq + Encode::decode($row->{parent}, pack 'C', $cp) ? 'l3' : + $visible->{$glyph} ? 'l2' : + 'l1', + $glyphs->glyph_html($glyph); + $visible->{$glyph}++; + next; + } + print "\n".$glyphs->glyph_cell($glyph); } continue { @@ -335,7 +351,13 @@ for my $row (@request) {
- +
<: if (exists $get{compare}) { :> +
unicode + inherited + existing + original + unassigned +<: } else { :> control whitespace diacritic @@ -372,6 +394,6 @@ for my $row (@request) {
deprecated unassigned invalid -
+<: } :>