X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/194ad84d50ba285bc620fe8cbd48d5e595c1dedc..1cc65ff9013724deedf93a001094c54992dea9eb:/unicode.plp diff --git a/unicode.plp b/unicode.plp index 25f89de..e28bb06 100644 --- a/unicode.plp +++ b/unicode.plp @@ -5,7 +5,7 @@ use warnings; no warnings 'qw'; # that's not a comment, it's a NUMBER SIGN use open IO => ':utf8'; -our $VERSION = '1.0'; +our $VERSION = 'v1.0'; $header{content_type} = 'text/html; charset=utf-8'; @@ -81,8 +81,7 @@ sub glyph_table { next; } - my $code = join '', map { $di{ord $_} || '' } split //, $cell; - my $name = $diinfo->{$code}->[1]; + my ($code, $name); # determine display class my @class; @@ -98,11 +97,18 @@ sub glyph_table { push @class, 'di-rare'; # discouraged } - if ($code) { + $code = join '', map { $di{ord $_} || '' } split //, $cell; + $name = $diinfo->{$code}->[1]; + length $code == 2 or undef $code; + + if (defined $code) { push @class, 'di-d'; # digraph push @class, 'di-prop' # unofficial if $diinfo->{$code}->[2] =~ /\bXz\b/; } + elsif (defined $name) { + push @class, 'X'; + } if ($cell =~ /[ -~]/) { push @class, 'di-a'; # ascii @@ -118,7 +124,7 @@ sub glyph_table { @class ? sprintf(' class="%s"', join ' ', @class) : '', $colspan > 1 && qq{ colspan="$colspan"}, $cell eq '' ? ' ' : quote($cell), - $code ne '' ? sprintf(' %s', quote($code)) + defined $code ? sprintf(' %s', quote($code)) : length($cell) == 1 && $cell !~ /[a-z]/ ? sprintf(' %04X', 'value', ord $cell) : '', @@ -145,16 +151,31 @@ print_glyph_tables( 'Popular', [qw{. « » . ⹠⺠. â â . â â . â â . â â}], [qw{. â ⡠⢠. § ¶ # . © ® ⢠. ° â² â³ . â à ÷ . ± ² â}], + [qw{. â â . â â . ⺠⹠. â â . â â . â ⺠}], [qw{. Ã¥ ä ö ü à . à æ ø ű Å¿}], [qw{. ¿ ç ñ é ê è}], + 'Signs', + [qw{. ¤ ¢ ⥠⬠£ ⨠$ Â¥ . â« â ⦠Ⱡ⧠⮠⩠âª}], + [qw{. â ⡠⢠⣠. ⤠⥠⦠â§}], + [qw{. â â¿ â â â â â â â â}], # solar + [qw{. â â â â â â â â â â â â}], # zodiac + 'Arrows', [qw{. â â â â . â - â â . â â â -}], [qw{. â â â â . â - â â . â â â -}], + [qw{. ⬠⧠⬠⬠. ⦠- ⨠Ⳡ. ⬠⩠⬠-}], + [qw{. ⬠⬠⬠⬠. ⬠- ⡠⬠. ⬠⬠⬠-}], + [qw{. ⩠⬠⬠. ⧠⡠⨠. ⬠⬠⪠}], [qw{. ⤠Ⲡ⥠. â â ⶠ. ⣠⼠⢠}], [qw{. ⸠Ⳡ⹠. â â â· . ⺠⽠⿠}], + [qw{. î© î§ îª . î¥ - î¦ . î« î¨ î¬ }], + [qw{. î± î¯ î² . î - î® . î³ î° î´ }], 'Line drawing', + [qw{. â ⦠â â . â ⬠⣠â . â â© â - }], + [qw{. â ⤠â . â ⪠⡠. â ⧠â }], + [qw{. â ⥠â . â ⫠⢠. â ⨠â }], [qw{. â ⬠â . â ⼠⤠. â â´ â}], [qw{. â â³ â . ⣠â â« . â â» â}], [qw{. â ⯠â . â ⿠⥠. â â· â}], @@ -166,22 +187,13 @@ print_glyph_tables( . â¹ â â â â â» â½ }], [qw{. â± â³ â² }], - [qw{. â ⦠â â . â ⬠⣠â . â â© â - }], - [qw{. â ⤠â . â ⪠⡠. â ⧠â }], - [qw{. â ⥠â . â ⫠⢠. â ⨠â }], 'Blocks', - [qw{. â â â . â â â . â â â }], + [qw{. ⡠⣠â . ⤠⦠⥠. ⧠⩠â¨}], [qw{. â . â . â }], + [qw{. â â â . â â â . â â â }], [qw{. â â â . â â â }], [qw{. â â â â â â â â . â â â â â â â â }], - [qw{. ⡠⣠â . ⤠⦠⥠. ⧠⩠â¨}], - - 'Signs', - [qw{. ¤ ¢ ⥠⬠£ ⨠$ Â¥ . â« â ⦠Ⱡ⧠⮠⩠âª}], - [qw{. â ⡠⢠⣠. ⤠⥠⦠â§}], - [qw{. â â¿ â â â â â â â â}], # solar - [qw{. â â â â â â â â â â â â}], # zodiac 'IPA', [qw{ @@ -286,15 +298,11 @@ print_glyph_tables(