font: include version in font name hover
authorMischa POSLAWSKY <perl@shiar.org>
Thu, 5 Mar 2015 05:47:10 +0000 (06:47 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Tue, 9 Jun 2015 03:43:43 +0000 (05:43 +0200)
chars.plp
font.plp
tools/mkfontinfo
tools/mkttfinfo

index 775674e..ebfdc6b 100644 (file)
--- a/chars.plp
+++ b/chars.plp
@@ -104,8 +104,10 @@ print '<tr>';
 print '<td colspan=2>unicode';
 print '<td>name';
 print '<td><a href="/digraphs" title="digraph">di</a><td>html';
-printf '<td title="%s">%s', $font{$_}->{-name}, $font{$_}->{-abbr}
-       for @fontlist;
+printf('<td title="%s">%s', map { EscapeHTML($_) }
+       join("\n", $font{$_}->{-name}, $font{$_}->{-description}),
+       $font{$_}->{-abbr},
+) for @fontlist;
 say '</thead>';
 
 for my $chr (@chars) {
index 5e81234..1d6ee4f 100644 (file)
--- a/font.plp
+++ b/font.plp
@@ -81,8 +81,10 @@ printf '<td colspan=%d>%s fonts', scalar @{ $cover->{os}->{$_} }, $_
 
 print '<tr>';
 print '<th colspan=2>';
-printf '<td title="%s">%s', $_->{name}, $_->{abbr}
-       for @{ $cover->{fonts} }[@fontlist];
+printf('<td title="%s">%s', map { EscapeHTML($_) }
+       join("\n", $_->{name}, $_->{description}),
+       $_->{abbr},
+) for @{ $cover->{fonts} }[@fontlist];
 say '</thead>';
 
 for (@rows) {
index e212d94..85fa914 100755 (executable)
@@ -18,6 +18,12 @@ for my $fontfile (glob 'ttfsupport/*'.$incsuffix) {
        my ($fontid) = basename($fontfile, $incsuffix);
        my ($fontmeta, @fontrange) = do $fontfile or next;
        $fontmeta->{file} = $fontid;
+       my $year = substr $fontmeta->{date}, 0, 4;
+       $fontmeta->{description} = join(' ',
+               (map { "version $_" } $fontmeta->{version} || ()),
+               $fontmeta->{version} && $fontmeta->{version} =~ /\Q$year/ ? () :
+               (map { "($_)" } $year || ()),
+       );
        push @fontlist, $fontmeta;
        $cover{$fontid} = { map { (chr $_ => 1) } @fontrange };
 }
index 916e7f3..c80f5fc 100755 (executable)
@@ -40,7 +40,7 @@ for ($outfile || ()) {
                source   => $ttfuri =~ m{(^/usr/.+ | [^/]+) \z}msx,
                name     => $ttfmeta->find_name(4) || $ttfname,
                revision => sprintf('%g', $ttf->{head}->{fontRevision}),
-               version  => $ttfmeta->find_name(5) =~ s/\Aversion //ri,
+               version  => $ttfmeta->find_name(5) =~ s/\Aversion //ri =~ s/\s+\z//r,
                copyright=> scalar $ttfmeta->find_name(0),
                license  => $ttfmeta->find_name(14) || undef,
                date     => (map {