X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/d5bb14b29d37e8fdd1e4f7b44f7b548d4d0ad74d..01c47091040e8e84d64b8f2b0b395f47bad139c4:/unicode.plp?ds=sidebyside
diff --git a/unicode.plp b/unicode.plp
index cc45d66..4d48bb4 100644
--- a/unicode.plp
+++ b/unicode.plp
@@ -15,15 +15,36 @@ $header{content_type} = 'text/html; charset=utf-8';
digraph cheat sheet
-
+
@@ -58,19 +86,32 @@ sub quote {
}
sub table {
- my ($width, $digraphs) = @_;
+ my ($width, $digraphs, $rowheads, $colheads) = @_;
my @cells;
- push @cells, sprintf '%s%s',
+ push @cells, sprintf ' | %s%s',
$di{ord $_} && $diinfo->{$di{ord $_}}->[1],
- $_ eq '-' ? ' ' : quote($_),
+ $_ eq '-' ? ' class="empty"' : $_ eq '=' ? ' class="reserved"' : '',
+ $_ eq '-' || $_ eq '=' ? ' ' : quote($_),
$di{ord $_} && sprintf(' %s', $di{ord $_})
for @$digraphs;
+ if ($rowheads) {
+ splice @cells, $_ * $width, 0, ' | '.($rowheads->[$_] || ' ')
+ for reverse 0 .. $#cells / $width;
+ $width++;
+ }
+
my @rows;
push @rows, sprintf ' | %s', join '', splice @cells, 0, $width, ()
while @cells;
+ if ($colheads) {
+ unshift @rows, sprintf '%s |
', join '',
+ map { sprintf '%s', split(/:/, $colheads->[$_], 2) }
+ 0 .. $width-2;
+ }
+
return sprintf "\n", join '', @rows;
}
@@ -95,8 +136,8 @@ print table(@$_) for (
print "Signs\n\n";
print table(@$_) for (
- [ 3 => [qw{â â â â â â â â â}]],
- [ 3 => [qw{â â â ⡠⣠â ⤠⦠⥠⧠⩠â¨}]],
+ [ 3 => [qw{â â â â â â â â â â â â}]],
+ [ 3 => [qw{⡠⣠â ⤠⦠⥠⧠⩠â¨}]],
[ 4 => [qw{â ⡠⢠⣠⤠⥠⦠â§}]],
[10 => [qw{â¼ â¿ â â â â â â
â â}]], # solar
# [12 => [qw{â â â â â â â â â â â â}]], # zodiac
@@ -105,29 +146,53 @@ print table(@$_) for (
print "IPA\n\n";
print table(@$_) for (
- [12 => [qw{
- p t - Ê - c k q - Ê - Ê¡
- b d - É - É É¡ É¢ - - - -
- m ɱ - n - ɳ ɲ Šɴ - - -
- Ê - - r - - - - - - - -
- - ⱱ - ɾ - ɽ - - - - - -
- ɸ f θ s Ê Ê Ã§ x Ï Ä§ h Ê
- β v ð z Ê Ê Ê É£ Ê Ê É¦ Ê¢
- - - - ɬ - - - - - - - -
- - - - É® - - - - - - - -
- - Ê - ɹ - É» j É° - - - -
- - - - l - É Ê Ê - - - -
- Ê - Ç Ç Ç - Ç - - - - -
- É - É - - - Ê É Ê - - -
- }]],
- [6 => [qw{
- i y ɨ Ê É¯ u
- - ɪ Ê - Ê -
- e ø É Éµ ɤ o
- - - É - - -
- É Å É É Ê É
- æ - É - - -
- a ɶ - - É É
- }]],
+ [
+ 12 => [qw{
+ p t - Ê - c k q - = Ê¡ Ê
+ b d - É - É É¡ É¢ - = - =
+ m ɱ - n - ɳ ɲ Šɴ = = =
+ Ê - - r - - - = Ê = Ñ =
+ - â±± - ɾ - ɽ - = É¢Ì = - =
+ ɸ f θ s Ê Ê Ã§ x Ï Ä§ Ê h
+ β v ð z Ê Ê Ê É£ Ê Ê Ê¢ ɦ
+ = = - ɬ - - - - - = = =
+ = = - É® - - - - - = = =
+ - Ê - ɹ - É» j É° - - - =
+ = = - l - É Ê Ê - = = =
+ Ê - Ç Ç Ç - Ç - - = = =
+ É - É - - - Ê É Ê - - -
+ }],
+ [
+ 'Plosive',
+ 'Voiced plosive',
+ 'Nasal',
+ 'Trill',
+ 'Tap/flap',
+ 'Fricative',
+ 'Voiced fricative',
+ 'Lateral fricative',
+ 'Voiced lateral fricative',
+ 'Approximant',
+ 'Lateral approximant',
+ 'Click',
+ 'Implosive',
+ ],
+ [
+ qw'BiL:Bilabial LD:Labiodental D:Dental Alv:Alveolar PA:Postalveolar Rf:Retroflex Pal:Palatal Vel:Velar Uv:Uvular Ph:Pharyngeal EG:Epiglottal Gl:Glottal',
+ ],
+ ],
+ [
+ 6 => [qw{
+ i y ɨ Ê É¯ u
+ - ɪ Ê - Ê -
+ e ø É Éµ ɤ o
+ - - É - - -
+ É Å É É Ê É
+ æ - É - - -
+ a ɶ - - É É
+ }],
+ [qw{Close Near-close Close-mid Mid Open-mid Near-open Open}],
+ [map {substr($_, 0, 1).':'.$_, substr($_, 0, 1)." r:$_ rounded"} qw{Front Central Back}]
+ ],
);
|