index: release v1.18 with only altgr index linked
[sheet.git] / chars.plp
index 6605ec8c6d051e492ffdae311600b3dc2727e6f6..91df3b83d817fd0640bc2c407a7b336292a0ec69 100644 (file)
--- a/chars.plp
+++ b/chars.plp
@@ -2,7 +2,7 @@
 
 Html({
        title => 'character support sheet',
-       version => '1.1',
+       version => '1.2',
        keywords => [qw'
                unicode glyph char character reference common ipa symbol sign mark table digraph
        '],
@@ -22,7 +22,7 @@ EOT
 use Shiar_Sheet::FormatChar;
 my $glyphs = Shiar_Sheet::FormatChar->new;
 
-my $groupinfo = do 'data/unicode-cover.inc.pl' or die $@ || $!;
+my $groupinfo = Data('data/unicode-cover');
 
 my @ossel = @{ $groupinfo->{osdefault} };
 my @fontlist = map { $_->{file} }
@@ -30,11 +30,10 @@ my @fontlist = map { $_->{file} }
 
 my %font;
 for my $fontid (@fontlist) {
-               my ($fontmeta, @fontrange) = do "data/font/$fontid.inc.pl";
-               $fontmeta or next;
+               my $fontmeta = eval { Data("data/font/$fontid") } or next;
                $font{$fontid} = {
                        (map { (-$_ => $fontmeta->{$_}) } keys %{$fontmeta}),
-                       map { (chr $_ => 1) } @fontrange
+                       map { (chr $_ => 1) } @{ $fontmeta->{cover} }
                };
 }
 
@@ -89,8 +88,8 @@ for (map { split /[^\d-]/ } $query) {
 @chars or Abort("No match for query $query", '404 no results');
 
 @chars <= 1500 or Abort(
-       sprintf('Too many matches (%d) for query %s', scalar @chars, $query),
-       '403 not allowed',
+       sprintf('Too many matches (%d) for query', scalar @chars),
+       '403 not allowed', $query
 );
 
 # output character list