(common.inc.plp)><:
Html({
title => 'latin alphabet cheat sheet',
version => '1.6',
description => [
],
keywords => [qw'
latin roman alphabet script letter unicode font glyph abc
code encoding spelling symbol writing comparison character
secret cursive fraktur blind braille morse deaf asl hand
barcode bar color semaphore flag
'],
stylesheet => [qw( light dark red mono )],
data => ['writing-latn.inc.pl'],
});
:>
Latin alphabet
Variant encodings of the common ASCII (latin, roman,
or 'mercan) letters A–Z.
Also see related alphabets
and font comparison.
<:
my $table = Data('writing-latn');
{
say '';
say '\n";
}
my %VOWELCOLS = (map { ($_ => 1) } 0, 4, 8, 14, 20, 24);
say '
';
say '';
printtr('order');
say '';
printtr('default');
say "
";
sub printtr {
for my $id (@_) {
my $info = $table->{$id};
if (ref $info eq 'ARRAY') {
printtr(@{$info});
next;
}
printf '', $id;
my $th = 'th';
$th .= sprintf ' title="%s"', $_ for $info->{title} || ();
say "<$th>", $info->{name} // ucfirst $id;
my $colspan = 1;
my $col = 0;
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;
}
printf ' class="%s"', "@class" if @class;
print '>';
say;
}
}
}
:>
|