X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/d5bb14b29d37e8fdd1e4f7b44f7b548d4d0ad74d..d0b79daa05d1341a6ca18cfb4c074047d694268e:/unicode.plp diff --git a/unicode.plp b/unicode.plp index cc45d66..c7b85c2 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,28 @@ 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; +} +td.empty { + background: #DDD; +} +td.reserved { + background: #BBB; } @@ -58,19 +79,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 "%s
\n", join '', @rows; } @@ -95,8 +129,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 +139,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}] + ], );