X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/326fbcf9ca9db5fe6c04fe555093ace1076d12ab..2a99bcdadec88d7483903e2c8420ad3e78fcb805:/latin.plp diff --git a/latin.plp b/latin.plp index 7f94ebf..687e082 100644 --- a/latin.plp +++ b/latin.plp @@ -17,76 +17,16 @@ Html({ :> @@ -120,26 +59,52 @@ if ($! or $@) { Alert("Table data not found", $@ || $!); } else { + say '\n"; + + my %VOWELCOLS = (map { ($_ => 1) } 0, 4, 8, 14, 20, 24); say ''; + say ''; + for my $row (pairs @table) { - my ($title, $cells) = @{$row}; - printf '', (lc $title) =~ s/<[^>]+>//gr =~ s/\s+/-/gr; - say '', $id; + say '
# ASCII − 64'; + print '', $_ for 1 .. 26; + say '
', $title; + my ($id, $info) = @{$row}; + + printf '
', $info->{title} // ucfirst $id; + my $colspan = 1; my $col = 0; - for (@{$cells}) { + for (@{ $info->{list} }) { $col++; if ($_ eq '>') { $colspan++; next; } + my @class; + push @class ,'l0' if $VOWELCOLS{$col - $colspan}; + push @class, $_ ? 'ex' : 'u-invalid' if s/^-//; + print "\t 26) { + # special character for sample generation + print ' hidden'; # sample only + } + else { + print ' title=', chr($col + ord('A') - $colspan); + } if ($colspan > 1) { print " colspan=$colspan"; $colspan = 1; } - print ' hidden' if $col > 26; # sample only - print ' class=', $_ ? 'ex' : 'u-invalid' if s/^-//; + printf ' class="%s"', "@class" if @class; print '>'; say; }