X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/b93feea4a4cd9bb503465ead1b73f89b8f36d429..18325ec6055ddf18ea291a4aaca8e486c7a93f47:/charset.plp diff --git a/charset.plp b/charset.plp index 726ca7c..119d410 100644 --- a/charset.plp +++ b/charset.plp @@ -5,7 +5,7 @@ my @tablist = split m{/+}, $Request || 'default'; Html({ title => 'charset cheat sheet', - version => '1.0', + version => '1.2', description => [ "Reference sheet with all glyphs in common character encoding tables,", "and an overview of Unicode ranges and UTF-8 bytes.", @@ -14,7 +14,7 @@ Html({ 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 @@ -28,8 +28,15 @@ use List::Util qw( first pairmap pairfirst pairs );

<: +if ($tablist[0] eq 'unicode') { + say "Detailed allocation of Unicode blocks."; + print "See ", showlink("charsets", '/charset'), " to compare specific encodings"; +} +else { + if ($tablist[0] eq 'default') { - say "Overview of Unicode allocation and common latin code pages."; + say "Overview of Unicode ", showlink("allocation", '/charset/unicode'); + say "and common latin code pages."; say "Compare alternate charsets:"; } else { @@ -48,6 +55,7 @@ print join " •\n", ( dos => 'DOS', mac => 'Apple', ebcdic => 'EBCDIC', + legacy => 'legacy', $tablist[0] eq 'default' ? () : ('' => 'common'), ], [ @@ -60,6 +68,8 @@ print join " •\n", ( hebrew => 0, ], ); + +} :>.

@@ -144,7 +154,7 @@ sub tabinput { 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 @@ -160,6 +170,7 @@ sub tabinput { $row{endpoint} -= $row{offset}; $visible->{ascii}++; # assume common base + $row{set} = $input if $charset->{set}; # base override } else { Alert("Encoding $input unknown"); @@ -338,8 +349,8 @@ for my $row (@request) { $visible->{$glyph}++; } - say sprintf $class ? '%s' : '', - $name, $class, $cell; + printf '%s', $class, $cell) : '>'; } continue { $offset += $colsize; @@ -390,7 +401,7 @@ for my $row (@request) { -
unicode 7.0 + unicode 10.0 proposed deprecated unassigned