X-Git-Url: http://git.shiar.net/sheet.git/blobdiff_plain/c4a7214bce24b26fbe98d2708eb3c6ad7a5f5c2e..0fd734e664006800ce6210951a9f78e456614584:/charset.plp diff --git a/charset.plp b/charset.plp index 6b6e7d0..e2b2e27 100644 --- a/charset.plp +++ b/charset.plp @@ -1,24 +1,20 @@ -<: -use utf8; -use strict; -use warnings; -use open IO => ':utf8'; - -our $VERSION = '1.0'; - -$header{content_type} = 'text/html; charset=utf-8'; +<(common.inc.plp)><: + +Html({ + title => 'charset cheat sheet', + version => 'v1.0', + description => [ + "Reference sheet with all glyphs in common character encoding tables,", + "and an overview of Unicode ranges and UTF-8 bytes.", + ], + keywords => [qw' + charset codepage unicode ascii utf8 latin glyph character encoding + reference common overview table + '], + stylesheet => [qw'light'], +}); -:> - - -
-â±"; print ' | ', $_ for @nibble; @@ -140,24 +126,27 @@ for my $row (@request) { if (defined (my $mnem = $di{ord $glyph})) { $info = $diinfo->{$mnem}; } + else { + require Unicode::UCD; + my $fullinfo = Unicode::UCD::charinfo(ord $glyph); + $info = [@$fullinfo{qw/code name category script string/}] if $fullinfo; + } my ($codepoint, $name, $prop, $script, $string) = @$info; - $glyph = quote($string || $glyph); + $glyph = EscapeHTML($string || $glyph); my $desc = sprintf 'U+%04X%s', $codepoint, $name && " ($name)"; my @class = ('X', grep {$_} $prop, $script); $glyph = "$glyph" if $prop eq 'Zs'; printf "\n".' | %s', - join(' ', @class), quote($desc), $glyph; + join(' ', @class), EscapeHTML($desc), $glyph; } print "\n"; } - print " |
---|