my $romaji = plaque("@romaji");
my $hiragana = plaque(hiragana($text));
####
my $text = "@romaji";
my $romaji = plaque($text);
my $hiragana = plaque(hiragana($text));
##
##
my %Hiragana;
use charnames qw/hiragana/;
sub get_hiragana { chr charnames::vianame("HIRAGANA LETTER ".uc(shift)) }
# the standards
for my $initial ('', qw/k g s z t d n m h b p m r/) {
for my $final (qw/a i u e o/) {
my $syl = $initial.$final;
$Hiragana{$syl} = get_hiragana($syl);
}
}
# columns with missing entries (yi, ye, wu)
$Hiragana{$_} = get_hiragana($_) for qw/ya yu yo wa wi we wo n/;
# small letters
$Hiragana{"($_)"} = get_hiragana("small $_") for qw/a i u e o ya yu yo/;
# special cases
{
my @special = (qw/tsu tu shi si chi ti fu hu/,
map(('j'.$_ => 'z'.$_), qw/a i u e o/),
'(tsu)', 'small tu');
while (my ($syl, $uni) = splice @special, 0, 2) {
$Hiragana{$syl} = get_hiragana($uni);
}
}
delete $Hiragana{$_} for qw/tu si ti/; # delete Unicode-y names for tsu, shi, and chi