package Shiar_Sheet::FormatChar;
+use 5.010;
use strict;
use warnings;
push @class, 'u-invalid';
$cell = '';
}
- else {
+ else {{
push @class, 'X';
if ($input =~ s/^-//) {
$input =~ s/^\\//; # escaped char
($cell, $title, my $class, $mnem, $entity) = $self->glyphs_html($input);
+ if ($self->{style} eq 'univer') {
+ state $agemap = do 'unicode-age.inc.pl' or die $!;
+ my $version = $agemap->{ord $input};
+ if (!$version) {
+ push @class, 'l1'; # no known unicode assignment
+ }
+ elsif ($version < 20) {
+ push @class, 'l5'; # first release 1993
+ }
+ elsif ($version < 31) {
+ push @class, 'l4'; # 20th century
+ }
+ elsif ($version < 50) {
+ push @class, 'l4'; # over 10 years ago
+ }
+ elsif ($version < 61) {
+ push @class, 'l3'; # before 2012
+ }
+ else {
+ push @class, 'l2'; # more recent
+ }
+ next;
+ }
+
if ($self->{style} eq 'di') {
if ($class =~ /\bu-di\b/) {
push @class, ('l3', 'u-di'); # standard digraph
else {
push @class, 'l1'; # basic unicode
}
- }
+ }}
my $anno = '';
if ($cell ne '') {