From: Mischa POSLAWSKY Date: Mon, 15 Sep 2008 18:29:25 +0000 (+0000) Subject: unicode: headers for IPA rows and columns X-Git-Tag: v1.2~43 X-Git-Url: http://git.shiar.nl/sheet.git/commitdiff_plain/740405f2d6d7c60e27d2d168573b38a76d321156?hp=d5bb14b29d37e8fdd1e4f7b44f7b548d4d0ad74d unicode: headers for IPA rows and columns Describe the IPA categories, greatly helping navigation. As an added bonus, it kind of indicates that these are indeed all modern characters, even though consonants are in a slightly different order than seen elsewhere. --- diff --git a/unicode.plp b/unicode.plp index cc45d66..9405bfd 100644 --- a/unicode.plp +++ b/unicode.plp @@ -21,8 +21,10 @@ table { border-collapse: collapse; margin: 1ex; } -td { +tbody td, th { border: 1px solid #888; +} +td { text-align: center; vertical-align: top; margin: 0; @@ -31,9 +33,22 @@ td { small { font-size: 50%; display: block; - width: 3em; + width: 3.2em; + background: #888; + color: #FFF; +} +table { + float: left; +} +h2, h3 { + clear: both; +} +th { + text-align: left; + font-size: 50%; background: #888; color: #FFF; + padding: 0 0.5em; } @@ -58,7 +73,7 @@ sub quote { } sub table { - my ($width, $digraphs) = @_; + my ($width, $digraphs, $rowheads, $colheads) = @_; my @cells; push @cells, sprintf '%s%s', @@ -67,10 +82,22 @@ sub table { $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 "%s
\n", join '', @rows; } @@ -95,8 +122,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 +132,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}] + ], );