X-Git-Url: http://git.shiar.net/sheet.git/blobdiff_plain/620fdcd04138557a402d3647c2f74f79957468b7..9cb1b773b16baa0a13c8c27b36b30e8509fd248c:/charset-encoding.inc.pl diff --git a/charset-encoding.inc.pl b/charset-encoding.inc.pl index 1414f39..2da7614 100644 --- a/charset-encoding.inc.pl +++ b/charset-encoding.inc.pl @@ -218,6 +218,51 @@ use utf8; 'cp1026' => {inherit => ['cp37' => '40']}, 'cp875' => {inherit => ['cp37' => '30']}, + legacy => [qw( cp437 ATASCII PETSCII MSX ZX-Spectrum )], + 'petscii' => {inherit => ['' => '40-7F+A0-BF'], setup => sub { + $_[0]->{table} = [(map {chr} 0 .. 0x3F), qw( + @ a b c d e f g h i j k l m n o p q r s t u v w x y z [ £ ] ↑ ← + 🭹 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ┼ 🮌 │ 🮖 🮘 + . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +   ▌ ▄ ▔ ▁ ▏ ▒ ▕ 🮏 🮙 🮇 ├ ▗ └ ┐ ▂ ┌ ┴ ┬ ┤ ▎ ▍ 🮈 🮂 🮃 ▃ ✓ ▖ ▝ ┘ ▘ ▚ + )]; + }}, + 'atascii' => {inherit => ['' => '0-1F+60-7F'], setup => sub { + $_[0]->{table} = [qw( + ♥ ├ 🮇 ┘ ┤ ┐ ╱ ╲ ◢ ▗ ◣ ▝ ▘ 🮂 ▂ ▖ ♣ ┌ ─ ┼ • ▄ ▎ ┬ ┴ ▌ └ ␛ ↑ ↓ ← → + _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + ♦ a b c d e f g h i j k l m n o p q r s t u v w x y z ♠ | 🢰 ◀ ▶ + )]; + }}, + 'zx-spectrum' => { + inherit => ['' => '50-8F'], + set => 'ascii', + replace => { + ord('^') => '↑', + ord('`') => '£', + 0x7F => '© ▝▘▀▗▐▚▜▖▞▌▛▄▟▙█', + }, + }, + 'msx' => {inherit => ['cp437' => '80-FF'], setup => sub { + $_[0]->{table} = [(map {chr} 0 .. 0x7F), qw( + Ç ü é â ä à å ç ê ë è ï î ì Ä Å É æ Æ ô ö ò û ù ÿ Ö Ü ¢ £ ¥ ₧ ƒ + á í ó ú ñ Ñ ª º ¿ ⌐ ¬ ½ ¼ ¡ « » à ã Ĩ ĩ Õ õ Ũ ũ IJ ij ¾ ∽ ◊ ‰ ¶ § + ▂ ▚ ▆ 🮂 ▬ 🮅 ▎ ▞ ▊ 🮇 🮊 🮙 🮘 🭭 🭯 🭬 🭮 🮚 🮛 ▘ ▗ ▝ ▖ 🮖 Δ ‡ ω █ ▄ ▌ ▐ ▀ + α ß Γ π Σ σ µ τ Φ Θ Ω δ ∞ ⌀ ∈ ∩ ≡ ± ≥ ≤ ⌠ ⌡ ÷ ≈ ° ∙ · √ ⁿ ² ■ + )]; + }}, + 'brascii' => { + inherit => ['' => 'D0-DF+F0-FF'], + setup => sub { + $_[0]->{table} = [(map {chr} 0 .. 0xFF)]; + }, + replace => { + 0xD7 => 'Œ', + 0xF7 => 'œ', + }, + }, + '' => {setup => sub { my $row = shift; $row->{offset} = delete $row->{startpoint};