Add various encodings.
authorJarkko Hietaniemi <jhi@iki.fi>
Mon, 17 Sep 2001 23:39:28 +0000 (23:39 +0000)
committerJarkko Hietaniemi <jhi@iki.fi>
Mon, 17 Sep 2001 23:39:28 +0000 (23:39 +0000)
p4raw-id: //depot/perl@12063

14 files changed:
MANIFEST
ext/Encode/Encode.pm
ext/Encode/Encode/iso8859-11.enc [new file with mode: 0644]
ext/Encode/Encode/iso8859-11.ucm [new file with mode: 0644]
ext/Encode/Encode/koi8-f.enc [new file with mode: 0644]
ext/Encode/Encode/koi8-f.ucm [new file with mode: 0644]
ext/Encode/Encode/koi8-u.enc [new file with mode: 0644]
ext/Encode/Encode/koi8-u.ucm [new file with mode: 0644]
ext/Encode/Encode/nextstep.enc [new file with mode: 0644]
ext/Encode/Encode/nextstep.ucm [new file with mode: 0644]
ext/Encode/Encode/roman8.enc [new file with mode: 0644]
ext/Encode/Encode/roman8.ucm [new file with mode: 0644]
ext/Encode/Encode/viscii.enc [new file with mode: 0644]
ext/Encode/Encode/viscii.ucm [new file with mode: 0644]

index 8a3d5bc..ed5f26c 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -245,6 +245,8 @@ ext/Encode/Encode/iso8859-1.enc     Encoding tables
 ext/Encode/Encode/iso8859-1.ucm        Encoding tables
 ext/Encode/Encode/iso8859-10.enc       Encoding tables
 ext/Encode/Encode/iso8859-10.ucm       Encoding tables
+ext/Encode/Encode/iso8859-11.enc       Encoding tables
+ext/Encode/Encode/iso8859-11.ucm       Encoding tables
 ext/Encode/Encode/iso8859-13.enc       Encoding tables
 ext/Encode/Encode/iso8859-13.ucm       Encoding tables
 ext/Encode/Encode/iso8859-14.enc       Encoding tables
@@ -273,8 +275,12 @@ ext/Encode/Encode/isoir-197.enc    Encoding tables
 ext/Encode/Encode/jis0201.enc  Encoding tables
 ext/Encode/Encode/jis0208.enc  Encoding tables
 ext/Encode/Encode/jis0212.enc  Encoding tables
+ext/Encode/Encode/koi8-f.enc   Encoding tables
+ext/Encode/Encode/koi8-f.ucm   Encoding tables
 ext/Encode/Encode/koi8-r.enc   Encoding tables
 ext/Encode/Encode/koi8-r.ucm   Encoding tables
+ext/Encode/Encode/koi8-u.enc   Encoding tables
+ext/Encode/Encode/koi8-u.ucm   Encoding tables
 ext/Encode/Encode/ksc5601.enc  Encoding tables
 ext/Encode/Encode/macCentEuro.enc      Encoding tables
 ext/Encode/Encode/macCroatian.enc      Encoding tables
@@ -289,11 +295,17 @@ ext/Encode/Encode/macSami.enc     Encoding tables
 ext/Encode/Encode/macThai.enc  Encoding tables
 ext/Encode/Encode/macTurkish.enc       Encoding tables
 ext/Encode/Encode/macUkraine.enc       Encoding tables
+ext/Encode/Encode/nextstep.enc Encoding tables
+ext/Encode/Encode/nextstep.ucm Encoding tables
 ext/Encode/Encode/posix-bc.enc Encoding tables
 ext/Encode/Encode/posix-bc.ucm Encoding tables
+ext/Encode/Encode/roman8.enc   Encoding tables
+ext/Encode/Encode/roman8.ucm   Encoding tables
 ext/Encode/Encode/shiftjis.enc Encoding tables
 ext/Encode/Encode/symbol.enc   Encoding tables
 ext/Encode/Encode/symbol.ucm   Encoding tables
+ext/Encode/Encode/viscii.enc   Encoding tables
+ext/Encode/Encode/viscii.ucm   Encoding tables
 ext/Encode/Encode/Tcl.pm       Handler for .enc encodings
 ext/Encode/Encode/Tcl.t        See if Encode::Tcl works
 ext/Encode/Makefile.PL Encode extension
index 45e5abd..ec813f6 100644 (file)
@@ -42,9 +42,22 @@ use Carp;
 our %encoding;
 my @alias;  # ordered matching list
 my %alias;  # cached known aliases
+
                      # 0  1  2  3  4  5   6   7   8   9  10
 our @latin2iso_num = ( 0, 1, 2, 3, 4, 9, 10, 13, 14, 15, 16 );
 
+our %winlatin2cp   = (
+                     'Latin1'     => 1252,
+                     'Latin2'     => 1250,
+                     'Cyrillic'   => 1251,
+                     'Baltic'     => 1257,
+                     'Greek'      => 1253,
+                     'Turkish'    => 1254,
+                     'Hebrew'     => 1255,
+                     'Arabic'     => 1256,
+                     'Baltic'     => 1257,
+                     'Vietnamese' => 1258,
+                    );
 
 sub encodings
 {
@@ -105,6 +118,9 @@ define_alias( qr/^iso[-_]?(\d+)[-_](\d+)$/i => '"iso-$1-$2"' );
 # At least HP-UX has these.
 define_alias( qr/^iso8859(\d+)$/i => '"iso-8859-$1"' );
 
+# More HP stuff.
+define_alias( qr/^(?:hp-)?(arabic|greek|hebrew|kana|roman|thai|turkish)8$/i => '"${1}8"' );
+
 # This is a font issue, not an encoding issue.
 # (The currency symbol of the Latin 1 upper half
 #  has been redefined as the euro symbol.)
@@ -113,12 +129,18 @@ define_alias( qr/^(.+)\@euro$/i => '"$1"' );
 # Allow latin-1 style names as well
 define_alias( qr/^(?:iso[-_]?)?latin[-_]?(\d+)$/i => '"iso-8859-$latin2iso_num[$1]"' );
 
+# Allow winlatin1 style names as well
+define_alias( qr/^win(latin[12]|cyrillic|baltic|greek|turkish|hebrew|arabic|baltic|vietnamese)$/i => '"cp$winlatin2cp{$1}"' );
+
 # Common names for non-latin prefered MIME names
 define_alias( 'ascii'    => 'US-ascii',
               'cyrillic' => 'iso-8859-5',
               'arabic'   => 'iso-8859-6',
               'greek'    => 'iso-8859-7',
-              'hebrew'   => 'iso-8859-8');
+              'hebrew'   => 'iso-8859-8',
+              'thai'     => 'iso-8859-11',
+              'tis620'   => 'iso-8859-11',
+           );
 
 # At least AIX has IBM-NNN (surprisingly...) instead of cpNNN.
 define_alias( qr/^ibm[-_]?(\d\d\d\d?)$/i => '"cp$1"');
@@ -126,11 +148,24 @@ define_alias( qr/^ibm[-_]?(\d\d\d\d?)$/i => '"cp$1"');
 # Standardize on the dashed versions.
 define_alias( qr/^utf8$/i  => 'utf-8' );
 define_alias( qr/^koi8r$/i => 'koi8-r' );
-
-# TODO: the HP-UX '8' encodings:  arabic8 greek8 hebrew8 roman8 turkish8
-# TODO: the Thai Encoding tis620
-# TODO: the Chinese Encoding gb18030
-# TODO: what is the Japanese 'ujis' encoding seen in some Linuxes?
+define_alias( qr/^koi8u$/i => 'koi8-u' );
+
+# TODO: HP-UX '8' encodings arabic8 greek8 hebrew8 kana8 thai8 turkish8
+# TODO: HP-UX '15' encodings japanese15 korean15 roi15
+# TODO: Cyrillic encoding ISO-IR-111 (useful?)
+# TODO: Chinese encodings GB18030 GBK Big5-HSKCS EUC-TW
+# TODO: Armenian encoding ARMSCII-8
+# TODO: Hebrew encoding ISO-8859-8-1
+# TODO: Thai encoding TCVN
+# TODO: Korean encoding Johab
+# TODO: Vietnamese encodings VISCII VPS
+# TODO: Japanese encoding JIS (not the same as SJIS)
+# TODO: Mac Asian+African encodings: Arabic Armenian Bengali Burmese
+#       ChineseSimp ChineseTrad Devanagari Ethiopic ExtArabic
+#       Farsi Georgian Gujarati Gurmukhi Hebrew Japanese
+#       Kannada Khmer Korean Laotian Malayalam Mongolian
+#       Oriya Sinhalese Symbol Tamil Telugu Tibetan Vietnamese
+# TODO: what is the Japanese 'UJIS' encoding seen in some Linuxes?
 
 # Map white space and _ to '-'
 define_alias( qr/^(\S+)[\s_]+(.*)$/i => '"$1-$2"' );
diff --git a/ext/Encode/Encode/iso8859-11.enc b/ext/Encode/Encode/iso8859-11.enc
new file mode 100644 (file)
index 0000000..ea6ed4a
--- /dev/null
@@ -0,0 +1,20 @@
+# Encoding file: iso8859-11, single-byte
+S
+003F 0 1
+00
+0000000100020003000400050006000700080009000A000B000C000D000E000F
+0010001100120013001400150016001700180019001A001B001C001D001E001F
+0020002100220023002400250026002700280029002A002B002C002D002E002F
+0030003100320033003400350036003700380039003A003B003C003D003E003F
+0040004100420043004400450046004700480049004A004B004C004D004E004F
+0050005100520053005400550056005700580059005A005B005C005D005E005F
+0060006100620063006400650066006700680069006A006B006C006D006E006F
+0070007100720073007400750076007700780079007A007B007C007D007E007F
+0080008100820083008400850086008700880089008A008B008C008D008E008F
+0090009100920093009400950096009700980099009A009B009C009D009E009F
+00A00E010E020E030E040E050E060E070E080E090E0A0E0B0E0C0E0D0E0E0E0F
+0E100E110E120E130E140E150E160E170E180E190E1A0E1B0E1C0E1D0E1E0E1F
+0E200E210E220E230E240E250E260E270E280E290E2A0E2B0E2C0E2D0E2E0E2F
+0E300E310E320E330E340E350E360E370E380E390E3A00DB00DC00DD00DE0E3F
+0E400E410E420E430E440E450E460E470E480E490E4A0E4B0E4C0E4D0E4E0E4F
+0E500E510E520E530E540E550E560E570E580E590E5A0E5B00FC00FD00FE00FF
diff --git a/ext/Encode/Encode/iso8859-11.ucm b/ext/Encode/Encode/iso8859-11.ucm
new file mode 100644 (file)
index 0000000..e869852
--- /dev/null
@@ -0,0 +1,265 @@
+# Written $Id$
+# ./compile -n iso-8859-11 -o Encode/iso8859-11.ucm Encode/iso8859-11.enc
+<code_set_name> "iso-8859-11"
+<mb_cur_min> 1
+<mb_cur_max> 1
+<subchar> \x3F
+#
+CHARMAP
+<U0000> \x00 |0 # <control>
+<U0001> \x01 |0 # <control>
+<U0002> \x02 |0 # <control>
+<U0003> \x03 |0 # <control>
+<U0004> \x04 |0 # <control>
+<U0005> \x05 |0 # <control>
+<U0006> \x06 |0 # <control>
+<U0007> \x07 |0 # <control>
+<U0008> \x08 |0 # <control>
+<U0009> \x09 |0 # <control>
+<U000A> \x0A |0 # <control>
+<U000B> \x0B |0 # <control>
+<U000C> \x0C |0 # <control>
+<U000D> \x0D |0 # <control>
+<U000E> \x0E |0 # <control>
+<U000F> \x0F |0 # <control>
+<U0010> \x10 |0 # <control>
+<U0011> \x11 |0 # <control>
+<U0012> \x12 |0 # <control>
+<U0013> \x13 |0 # <control>
+<U0014> \x14 |0 # <control>
+<U0015> \x15 |0 # <control>
+<U0016> \x16 |0 # <control>
+<U0017> \x17 |0 # <control>
+<U0018> \x18 |0 # <control>
+<U0019> \x19 |0 # <control>
+<U001A> \x1A |0 # <control>
+<U001B> \x1B |0 # <control>
+<U001C> \x1C |0 # <control>
+<U001D> \x1D |0 # <control>
+<U001E> \x1E |0 # <control>
+<U001F> \x1F |0 # <control>
+<U0020> \x20 |0 # SPACE
+<U0021> \x21 |0 # EXCLAMATION MARK
+<U0022> \x22 |0 # QUOTATION MARK
+<U0023> \x23 |0 # NUMBER SIGN
+<U0024> \x24 |0 # DOLLAR SIGN
+<U0025> \x25 |0 # PERCENT SIGN
+<U0026> \x26 |0 # AMPERSAND
+<U0027> \x27 |0 # APOSTROPHE
+<U0028> \x28 |0 # LEFT PARENTHESIS
+<U0029> \x29 |0 # RIGHT PARENTHESIS
+<U002A> \x2A |0 # ASTERISK
+<U002B> \x2B |0 # PLUS SIGN
+<U002C> \x2C |0 # COMMA
+<U002D> \x2D |0 # HYPHEN-MINUS
+<U002E> \x2E |0 # FULL STOP
+<U002F> \x2F |0 # SOLIDUS
+<U0030> \x30 |0 # DIGIT ZERO
+<U0031> \x31 |0 # DIGIT ONE
+<U0032> \x32 |0 # DIGIT TWO
+<U0033> \x33 |0 # DIGIT THREE
+<U0034> \x34 |0 # DIGIT FOUR
+<U0035> \x35 |0 # DIGIT FIVE
+<U0036> \x36 |0 # DIGIT SIX
+<U0037> \x37 |0 # DIGIT SEVEN
+<U0038> \x38 |0 # DIGIT EIGHT
+<U0039> \x39 |0 # DIGIT NINE
+<U003A> \x3A |0 # COLON
+<U003B> \x3B |0 # SEMICOLON
+<U003C> \x3C |0 # LESS-THAN SIGN
+<U003D> \x3D |0 # EQUALS SIGN
+<U003E> \x3E |0 # GREATER-THAN SIGN
+<U003F> \x3F |0 # QUESTION MARK
+<U0040> \x40 |0 # COMMERCIAL AT
+<U0041> \x41 |0 # LATIN CAPITAL LETTER A
+<U0042> \x42 |0 # LATIN CAPITAL LETTER B
+<U0043> \x43 |0 # LATIN CAPITAL LETTER C
+<U0044> \x44 |0 # LATIN CAPITAL LETTER D
+<U0045> \x45 |0 # LATIN CAPITAL LETTER E
+<U0046> \x46 |0 # LATIN CAPITAL LETTER F
+<U0047> \x47 |0 # LATIN CAPITAL LETTER G
+<U0048> \x48 |0 # LATIN CAPITAL LETTER H
+<U0049> \x49 |0 # LATIN CAPITAL LETTER I
+<U004A> \x4A |0 # LATIN CAPITAL LETTER J
+<U004B> \x4B |0 # LATIN CAPITAL LETTER K
+<U004C> \x4C |0 # LATIN CAPITAL LETTER L
+<U004D> \x4D |0 # LATIN CAPITAL LETTER M
+<U004E> \x4E |0 # LATIN CAPITAL LETTER N
+<U004F> \x4F |0 # LATIN CAPITAL LETTER O
+<U0050> \x50 |0 # LATIN CAPITAL LETTER P
+<U0051> \x51 |0 # LATIN CAPITAL LETTER Q
+<U0052> \x52 |0 # LATIN CAPITAL LETTER R
+<U0053> \x53 |0 # LATIN CAPITAL LETTER S
+<U0054> \x54 |0 # LATIN CAPITAL LETTER T
+<U0055> \x55 |0 # LATIN CAPITAL LETTER U
+<U0056> \x56 |0 # LATIN CAPITAL LETTER V
+<U0057> \x57 |0 # LATIN CAPITAL LETTER W
+<U0058> \x58 |0 # LATIN CAPITAL LETTER X
+<U0059> \x59 |0 # LATIN CAPITAL LETTER Y
+<U005A> \x5A |0 # LATIN CAPITAL LETTER Z
+<U005B> \x5B |0 # LEFT SQUARE BRACKET
+<U005C> \x5C |0 # REVERSE SOLIDUS
+<U005D> \x5D |0 # RIGHT SQUARE BRACKET
+<U005E> \x5E |0 # CIRCUMFLEX ACCENT
+<U005F> \x5F |0 # LOW LINE
+<U0060> \x60 |0 # GRAVE ACCENT
+<U0061> \x61 |0 # LATIN SMALL LETTER A
+<U0062> \x62 |0 # LATIN SMALL LETTER B
+<U0063> \x63 |0 # LATIN SMALL LETTER C
+<U0064> \x64 |0 # LATIN SMALL LETTER D
+<U0065> \x65 |0 # LATIN SMALL LETTER E
+<U0066> \x66 |0 # LATIN SMALL LETTER F
+<U0067> \x67 |0 # LATIN SMALL LETTER G
+<U0068> \x68 |0 # LATIN SMALL LETTER H
+<U0069> \x69 |0 # LATIN SMALL LETTER I
+<U006A> \x6A |0 # LATIN SMALL LETTER J
+<U006B> \x6B |0 # LATIN SMALL LETTER K
+<U006C> \x6C |0 # LATIN SMALL LETTER L
+<U006D> \x6D |0 # LATIN SMALL LETTER M
+<U006E> \x6E |0 # LATIN SMALL LETTER N
+<U006F> \x6F |0 # LATIN SMALL LETTER O
+<U0070> \x70 |0 # LATIN SMALL LETTER P
+<U0071> \x71 |0 # LATIN SMALL LETTER Q
+<U0072> \x72 |0 # LATIN SMALL LETTER R
+<U0073> \x73 |0 # LATIN SMALL LETTER S
+<U0074> \x74 |0 # LATIN SMALL LETTER T
+<U0075> \x75 |0 # LATIN SMALL LETTER U
+<U0076> \x76 |0 # LATIN SMALL LETTER V
+<U0077> \x77 |0 # LATIN SMALL LETTER W
+<U0078> \x78 |0 # LATIN SMALL LETTER X
+<U0079> \x79 |0 # LATIN SMALL LETTER Y
+<U007A> \x7A |0 # LATIN SMALL LETTER Z
+<U007B> \x7B |0 # LEFT CURLY BRACKET
+<U007C> \x7C |0 # VERTICAL LINE
+<U007D> \x7D |0 # RIGHT CURLY BRACKET
+<U007E> \x7E |0 # TILDE
+<U007F> \x7F |0 # <control>
+<U0080> \x80 |0 # <control>
+<U0081> \x81 |0 # <control>
+<U0082> \x82 |0 # <control>
+<U0083> \x83 |0 # <control>
+<U0084> \x84 |0 # <control>
+<U0085> \x85 |0 # <control>
+<U0086> \x86 |0 # <control>
+<U0087> \x87 |0 # <control>
+<U0088> \x88 |0 # <control>
+<U0089> \x89 |0 # <control>
+<U008A> \x8A |0 # <control>
+<U008B> \x8B |0 # <control>
+<U008C> \x8C |0 # <control>
+<U008D> \x8D |0 # <control>
+<U008E> \x8E |0 # <control>
+<U008F> \x8F |0 # <control>
+<U0090> \x90 |0 # <control>
+<U0091> \x91 |0 # <control>
+<U0092> \x92 |0 # <control>
+<U0093> \x93 |0 # <control>
+<U0094> \x94 |0 # <control>
+<U0095> \x95 |0 # <control>
+<U0096> \x96 |0 # <control>
+<U0097> \x97 |0 # <control>
+<U0098> \x98 |0 # <control>
+<U0099> \x99 |0 # <control>
+<U009A> \x9A |0 # <control>
+<U009B> \x9B |0 # <control>
+<U009C> \x9C |0 # <control>
+<U009D> \x9D |0 # <control>
+<U009E> \x9E |0 # <control>
+<U009F> \x9F |0 # <control>
+<U00A0> \xA0 |0 # NO-BREAK SPACE
+<U0E01> \xA1 |0 # THAI CHARACTER KO KAI
+<U0E02> \xA2 |0 # THAI CHARACTER KHO KHAI
+<U0E03> \xA3 |0 # THAI CHARACTER KHO KHUAT
+<U0E04> \xA4 |0 # THAI CHARACTER KHO KHWAI
+<U0E05> \xA5 |0 # THAI CHARACTER KHO KHON
+<U0E06> \xA6 |0 # THAI CHARACTER KHO RAKHANG
+<U0E07> \xA7 |0 # THAI CHARACTER NGO NGU
+<U0E08> \xA8 |0 # THAI CHARACTER CHO CHAN
+<U0E09> \xA9 |0 # THAI CHARACTER CHO CHING
+<U0E0A> \xAA |0 # THAI CHARACTER CHO CHANG
+<U0E0B> \xAB |0 # THAI CHARACTER SO SO
+<U0E0C> \xAC |0 # THAI CHARACTER CHO CHOE
+<U0E0D> \xAD |0 # THAI CHARACTER YO YING
+<U0E0E> \xAE |0 # THAI CHARACTER DO CHADA
+<U0E0F> \xAF |0 # THAI CHARACTER TO PATAK
+<U0E10> \xB0 |0 # THAI CHARACTER THO THAN
+<U0E11> \xB1 |0 # THAI CHARACTER THO NANGMONTHO
+<U0E12> \xB2 |0 # THAI CHARACTER THO PHUTHAO
+<U0E13> \xB3 |0 # THAI CHARACTER NO NEN
+<U0E14> \xB4 |0 # THAI CHARACTER DO DEK
+<U0E15> \xB5 |0 # THAI CHARACTER TO TAO
+<U0E16> \xB6 |0 # THAI CHARACTER THO THUNG
+<U0E17> \xB7 |0 # THAI CHARACTER THO THAHAN
+<U0E18> \xB8 |0 # THAI CHARACTER THO THONG
+<U0E19> \xB9 |0 # THAI CHARACTER NO NU
+<U0E1A> \xBA |0 # THAI CHARACTER BO BAIMAI
+<U0E1B> \xBB |0 # THAI CHARACTER PO PLA
+<U0E1C> \xBC |0 # THAI CHARACTER PHO PHUNG
+<U0E1D> \xBD |0 # THAI CHARACTER FO FA
+<U0E1E> \xBE |0 # THAI CHARACTER PHO PHAN
+<U0E1F> \xBF |0 # THAI CHARACTER FO FAN
+<U0E20> \xC0 |0 # THAI CHARACTER PHO SAMPHAO
+<U0E21> \xC1 |0 # THAI CHARACTER MO MA
+<U0E22> \xC2 |0 # THAI CHARACTER YO YAK
+<U0E23> \xC3 |0 # THAI CHARACTER RO RUA
+<U0E24> \xC4 |0 # THAI CHARACTER RU
+<U0E25> \xC5 |0 # THAI CHARACTER LO LING
+<U0E26> \xC6 |0 # THAI CHARACTER LU
+<U0E27> \xC7 |0 # THAI CHARACTER WO WAEN
+<U0E28> \xC8 |0 # THAI CHARACTER SO SALA
+<U0E29> \xC9 |0 # THAI CHARACTER SO RUSI
+<U0E2A> \xCA |0 # THAI CHARACTER SO SUA
+<U0E2B> \xCB |0 # THAI CHARACTER HO HIP
+<U0E2C> \xCC |0 # THAI CHARACTER LO CHULA
+<U0E2D> \xCD |0 # THAI CHARACTER O ANG
+<U0E2E> \xCE |0 # THAI CHARACTER HO NOKHUK
+<U0E2F> \xCF |0 # THAI CHARACTER PAIYANNOI
+<U0E30> \xD0 |0 # THAI CHARACTER SARA A
+<U0E31> \xD1 |0 # THAI CHARACTER MAI HAN-AKAT
+<U0E32> \xD2 |0 # THAI CHARACTER SARA AA
+<U0E33> \xD3 |0 # THAI CHARACTER SARA AM
+<U0E34> \xD4 |0 # THAI CHARACTER SARA I
+<U0E35> \xD5 |0 # THAI CHARACTER SARA II
+<U0E36> \xD6 |0 # THAI CHARACTER SARA UE
+<U0E37> \xD7 |0 # THAI CHARACTER SARA UEE
+<U0E38> \xD8 |0 # THAI CHARACTER SARA U
+<U0E39> \xD9 |0 # THAI CHARACTER SARA UU
+<U0E3A> \xDA |0 # THAI CHARACTER PHINTHU
+<U00DB> \xDB |0 # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+<U00DC> \xDC |0 # LATIN CAPITAL LETTER U WITH DIAERESIS
+<U00DD> \xDD |0 # LATIN CAPITAL LETTER Y WITH ACUTE
+<U00DE> \xDE |0 # LATIN CAPITAL LETTER THORN
+<U0E3F> \xDF |0 # THAI CURRENCY SYMBOL BAHT
+<U0E40> \xE0 |0 # THAI CHARACTER SARA E
+<U0E41> \xE1 |0 # THAI CHARACTER SARA AE
+<U0E42> \xE2 |0 # THAI CHARACTER SARA O
+<U0E43> \xE3 |0 # THAI CHARACTER SARA AI MAIMUAN
+<U0E44> \xE4 |0 # THAI CHARACTER SARA AI MAIMALAI
+<U0E45> \xE5 |0 # THAI CHARACTER LAKKHANGYAO
+<U0E46> \xE6 |0 # THAI CHARACTER MAIYAMOK
+<U0E47> \xE7 |0 # THAI CHARACTER MAITAIKHU
+<U0E48> \xE8 |0 # THAI CHARACTER MAI EK
+<U0E49> \xE9 |0 # THAI CHARACTER MAI THO
+<U0E4A> \xEA |0 # THAI CHARACTER MAI TRI
+<U0E4B> \xEB |0 # THAI CHARACTER MAI CHATTAWA
+<U0E4C> \xEC |0 # THAI CHARACTER THANTHAKHAT
+<U0E4D> \xED |0 # THAI CHARACTER NIKHAHIT
+<U0E4E> \xEE |0 # THAI CHARACTER YAMAKKAN
+<U0E4F> \xEF |0 # THAI CHARACTER FONGMAN
+<U0E50> \xF0 |0 # THAI DIGIT ZERO
+<U0E51> \xF1 |0 # THAI DIGIT ONE
+<U0E52> \xF2 |0 # THAI DIGIT TWO
+<U0E53> \xF3 |0 # THAI DIGIT THREE
+<U0E54> \xF4 |0 # THAI DIGIT FOUR
+<U0E55> \xF5 |0 # THAI DIGIT FIVE
+<U0E56> \xF6 |0 # THAI DIGIT SIX
+<U0E57> \xF7 |0 # THAI DIGIT SEVEN
+<U0E58> \xF8 |0 # THAI DIGIT EIGHT
+<U0E59> \xF9 |0 # THAI DIGIT NINE
+<U0E5A> \xFA |0 # THAI CHARACTER ANGKHANKHU
+<U0E5B> \xFB |0 # THAI CHARACTER KHOMUT
+<U00FC> \xFC |0 # LATIN SMALL LETTER U WITH DIAERESIS
+<U00FD> \xFD |0 # LATIN SMALL LETTER Y WITH ACUTE
+<U00FE> \xFE |0 # LATIN SMALL LETTER THORN
+<U00FF> \xFF |0 # LATIN SMALL LETTER Y WITH DIAERESIS
+END CHARMAP
diff --git a/ext/Encode/Encode/koi8-f.enc b/ext/Encode/Encode/koi8-f.enc
new file mode 100644 (file)
index 0000000..14faabd
--- /dev/null
@@ -0,0 +1,20 @@
+# Encoding file: koi8-f, single-byte
+S
+003F 0 1
+00
+0000000100020003000400050006000700080009000A000B000C000D000E000F
+0010001100120013001400150016001700180019001A001B001C001D001E001F
+0020002100220023002400250026002700280029002A002B002C002D002E002F
+0030003100320033003400350036003700380039003A003B003C003D003E003F
+0040004100420043004400450046004700480049004A004B004C004D004E004F
+0050005100520053005400550056005700580059005A005B005C005D005E005F
+0060006100620063006400650066006700680069006A006B006C006D006E006F
+0070007100720073007400750076007700780079007A007B007C007D007E007F
+25002502250C251025142518251C2524252C2534253C258025842588258C2590
+259120182019201C201D20222013201400A9212200A000BB00AE00AB00B700A4
+00A0045204530451045404550456045704580459045A045B045C0491045E045F
+2116040204030401040404050406040704080409040A040B040C0490040E040F
+044E0430043104460434043504440433044504380439043A043B043C043D043E
+043F044F044004410442044304360432044C044B04370448044D04490447044A
+042E0410041104260414041504240413042504180419041A041B041C041D041E
+041F042F042004210422042304160412042C042B04170428042D04290427042A
diff --git a/ext/Encode/Encode/koi8-f.ucm b/ext/Encode/Encode/koi8-f.ucm
new file mode 100644 (file)
index 0000000..0945072
--- /dev/null
@@ -0,0 +1,264 @@
+# Written $Id$
+# ./compile -n koi8-f -o Encode/koi8-f.ucm Encode/koi8-f.enc
+<code_set_name> "koi8-f"
+<mb_cur_min> 1
+<mb_cur_max> 1
+<subchar> \x3F
+#
+CHARMAP
+<U0000> \x00 |0 # <control>
+<U0001> \x01 |0 # <control>
+<U0002> \x02 |0 # <control>
+<U0003> \x03 |0 # <control>
+<U0004> \x04 |0 # <control>
+<U0005> \x05 |0 # <control>
+<U0006> \x06 |0 # <control>
+<U0007> \x07 |0 # <control>
+<U0008> \x08 |0 # <control>
+<U0009> \x09 |0 # <control>
+<U000A> \x0A |0 # <control>
+<U000B> \x0B |0 # <control>
+<U000C> \x0C |0 # <control>
+<U000D> \x0D |0 # <control>
+<U000E> \x0E |0 # <control>
+<U000F> \x0F |0 # <control>
+<U0010> \x10 |0 # <control>
+<U0011> \x11 |0 # <control>
+<U0012> \x12 |0 # <control>
+<U0013> \x13 |0 # <control>
+<U0014> \x14 |0 # <control>
+<U0015> \x15 |0 # <control>
+<U0016> \x16 |0 # <control>
+<U0017> \x17 |0 # <control>
+<U0018> \x18 |0 # <control>
+<U0019> \x19 |0 # <control>
+<U001A> \x1A |0 # <control>
+<U001B> \x1B |0 # <control>
+<U001C> \x1C |0 # <control>
+<U001D> \x1D |0 # <control>
+<U001E> \x1E |0 # <control>
+<U001F> \x1F |0 # <control>
+<U0020> \x20 |0 # SPACE
+<U0021> \x21 |0 # EXCLAMATION MARK
+<U0022> \x22 |0 # QUOTATION MARK
+<U0023> \x23 |0 # NUMBER SIGN
+<U0024> \x24 |0 # DOLLAR SIGN
+<U0025> \x25 |0 # PERCENT SIGN
+<U0026> \x26 |0 # AMPERSAND
+<U0027> \x27 |0 # APOSTROPHE
+<U0028> \x28 |0 # LEFT PARENTHESIS
+<U0029> \x29 |0 # RIGHT PARENTHESIS
+<U002A> \x2A |0 # ASTERISK
+<U002B> \x2B |0 # PLUS SIGN
+<U002C> \x2C |0 # COMMA
+<U002D> \x2D |0 # HYPHEN-MINUS
+<U002E> \x2E |0 # FULL STOP
+<U002F> \x2F |0 # SOLIDUS
+<U0030> \x30 |0 # DIGIT ZERO
+<U0031> \x31 |0 # DIGIT ONE
+<U0032> \x32 |0 # DIGIT TWO
+<U0033> \x33 |0 # DIGIT THREE
+<U0034> \x34 |0 # DIGIT FOUR
+<U0035> \x35 |0 # DIGIT FIVE
+<U0036> \x36 |0 # DIGIT SIX
+<U0037> \x37 |0 # DIGIT SEVEN
+<U0038> \x38 |0 # DIGIT EIGHT
+<U0039> \x39 |0 # DIGIT NINE
+<U003A> \x3A |0 # COLON
+<U003B> \x3B |0 # SEMICOLON
+<U003C> \x3C |0 # LESS-THAN SIGN
+<U003D> \x3D |0 # EQUALS SIGN
+<U003E> \x3E |0 # GREATER-THAN SIGN
+<U003F> \x3F |0 # QUESTION MARK
+<U0040> \x40 |0 # COMMERCIAL AT
+<U0041> \x41 |0 # LATIN CAPITAL LETTER A
+<U0042> \x42 |0 # LATIN CAPITAL LETTER B
+<U0043> \x43 |0 # LATIN CAPITAL LETTER C
+<U0044> \x44 |0 # LATIN CAPITAL LETTER D
+<U0045> \x45 |0 # LATIN CAPITAL LETTER E
+<U0046> \x46 |0 # LATIN CAPITAL LETTER F
+<U0047> \x47 |0 # LATIN CAPITAL LETTER G
+<U0048> \x48 |0 # LATIN CAPITAL LETTER H
+<U0049> \x49 |0 # LATIN CAPITAL LETTER I
+<U004A> \x4A |0 # LATIN CAPITAL LETTER J
+<U004B> \x4B |0 # LATIN CAPITAL LETTER K
+<U004C> \x4C |0 # LATIN CAPITAL LETTER L
+<U004D> \x4D |0 # LATIN CAPITAL LETTER M
+<U004E> \x4E |0 # LATIN CAPITAL LETTER N
+<U004F> \x4F |0 # LATIN CAPITAL LETTER O
+<U0050> \x50 |0 # LATIN CAPITAL LETTER P
+<U0051> \x51 |0 # LATIN CAPITAL LETTER Q
+<U0052> \x52 |0 # LATIN CAPITAL LETTER R
+<U0053> \x53 |0 # LATIN CAPITAL LETTER S
+<U0054> \x54 |0 # LATIN CAPITAL LETTER T
+<U0055> \x55 |0 # LATIN CAPITAL LETTER U
+<U0056> \x56 |0 # LATIN CAPITAL LETTER V
+<U0057> \x57 |0 # LATIN CAPITAL LETTER W
+<U0058> \x58 |0 # LATIN CAPITAL LETTER X
+<U0059> \x59 |0 # LATIN CAPITAL LETTER Y
+<U005A> \x5A |0 # LATIN CAPITAL LETTER Z
+<U005B> \x5B |0 # LEFT SQUARE BRACKET
+<U005C> \x5C |0 # REVERSE SOLIDUS
+<U005D> \x5D |0 # RIGHT SQUARE BRACKET
+<U005E> \x5E |0 # CIRCUMFLEX ACCENT
+<U005F> \x5F |0 # LOW LINE
+<U0060> \x60 |0 # GRAVE ACCENT
+<U0061> \x61 |0 # LATIN SMALL LETTER A
+<U0062> \x62 |0 # LATIN SMALL LETTER B
+<U0063> \x63 |0 # LATIN SMALL LETTER C
+<U0064> \x64 |0 # LATIN SMALL LETTER D
+<U0065> \x65 |0 # LATIN SMALL LETTER E
+<U0066> \x66 |0 # LATIN SMALL LETTER F
+<U0067> \x67 |0 # LATIN SMALL LETTER G
+<U0068> \x68 |0 # LATIN SMALL LETTER H
+<U0069> \x69 |0 # LATIN SMALL LETTER I
+<U006A> \x6A |0 # LATIN SMALL LETTER J
+<U006B> \x6B |0 # LATIN SMALL LETTER K
+<U006C> \x6C |0 # LATIN SMALL LETTER L
+<U006D> \x6D |0 # LATIN SMALL LETTER M
+<U006E> \x6E |0 # LATIN SMALL LETTER N
+<U006F> \x6F |0 # LATIN SMALL LETTER O
+<U0070> \x70 |0 # LATIN SMALL LETTER P
+<U0071> \x71 |0 # LATIN SMALL LETTER Q
+<U0072> \x72 |0 # LATIN SMALL LETTER R
+<U0073> \x73 |0 # LATIN SMALL LETTER S
+<U0074> \x74 |0 # LATIN SMALL LETTER T
+<U0075> \x75 |0 # LATIN SMALL LETTER U
+<U0076> \x76 |0 # LATIN SMALL LETTER V
+<U0077> \x77 |0 # LATIN SMALL LETTER W
+<U0078> \x78 |0 # LATIN SMALL LETTER X
+<U0079> \x79 |0 # LATIN SMALL LETTER Y
+<U007A> \x7A |0 # LATIN SMALL LETTER Z
+<U007B> \x7B |0 # LEFT CURLY BRACKET
+<U007C> \x7C |0 # VERTICAL LINE
+<U007D> \x7D |0 # RIGHT CURLY BRACKET
+<U007E> \x7E |0 # TILDE
+<U007F> \x7F |0 # <control>
+<U2500> \x80 |0 # BOX DRAWINGS LIGHT HORIZONTAL
+<U2502> \x81 |0 # BOX DRAWINGS LIGHT VERTICAL
+<U250C> \x82 |0 # BOX DRAWINGS LIGHT DOWN AND RIGHT
+<U2510> \x83 |0 # BOX DRAWINGS LIGHT DOWN AND LEFT
+<U2514> \x84 |0 # BOX DRAWINGS LIGHT UP AND RIGHT
+<U2518> \x85 |0 # BOX DRAWINGS LIGHT UP AND LEFT
+<U251C> \x86 |0 # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+<U2524> \x87 |0 # BOX DRAWINGS LIGHT VERTICAL AND LEFT
+<U252C> \x88 |0 # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+<U2534> \x89 |0 # BOX DRAWINGS LIGHT UP AND HORIZONTAL
+<U253C> \x8A |0 # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+<U2580> \x8B |0 # UPPER HALF BLOCK
+<U2584> \x8C |0 # LOWER HALF BLOCK
+<U2588> \x8D |0 # FULL BLOCK
+<U258C> \x8E |0 # LEFT HALF BLOCK
+<U2590> \x8F |0 # RIGHT HALF BLOCK
+<U2591> \x90 |0 # LIGHT SHADE
+<U2018> \x91 |0 # LEFT SINGLE QUOTATION MARK
+<U2019> \x92 |0 # RIGHT SINGLE QUOTATION MARK
+<U201C> \x93 |0 # LEFT DOUBLE QUOTATION MARK
+<U201D> \x94 |0 # RIGHT DOUBLE QUOTATION MARK
+<U2022> \x95 |0 # BULLET
+<U2013> \x96 |0 # EN DASH
+<U2014> \x97 |0 # EM DASH
+<U00A9> \x98 |0 # COPYRIGHT SIGN
+<U2122> \x99 |0 # TRADE MARK SIGN
+<U00BB> \x9B |0 # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+<U00AE> \x9C |0 # REGISTERED SIGN
+<U00AB> \x9D |0 # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+<U00B7> \x9E |0 # MIDDLE DOT
+<U00A4> \x9F |0 # CURRENCY SIGN
+<U00A0> \xA0 |0 # NO-BREAK SPACE
+<U0452> \xA1 |0 # CYRILLIC SMALL LETTER DJE
+<U0453> \xA2 |0 # CYRILLIC SMALL LETTER GJE
+<U0451> \xA3 |0 # CYRILLIC SMALL LETTER IO
+<U0454> \xA4 |0 # CYRILLIC SMALL LETTER UKRAINIAN IE
+<U0455> \xA5 |0 # CYRILLIC SMALL LETTER DZE
+<U0456> \xA6 |0 # CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+<U0457> \xA7 |0 # CYRILLIC SMALL LETTER YI
+<U0458> \xA8 |0 # CYRILLIC SMALL LETTER JE
+<U0459> \xA9 |0 # CYRILLIC SMALL LETTER LJE
+<U045A> \xAA |0 # CYRILLIC SMALL LETTER NJE
+<U045B> \xAB |0 # CYRILLIC SMALL LETTER TSHE
+<U045C> \xAC |0 # CYRILLIC SMALL LETTER KJE
+<U0491> \xAD |0 # CYRILLIC SMALL LETTER GHE WITH UPTURN
+<U045E> \xAE |0 # CYRILLIC SMALL LETTER SHORT U
+<U045F> \xAF |0 # CYRILLIC SMALL LETTER DZHE
+<U2116> \xB0 |0 # NUMERO SIGN
+<U0402> \xB1 |0 # CYRILLIC CAPITAL LETTER DJE
+<U0403> \xB2 |0 # CYRILLIC CAPITAL LETTER GJE
+<U0401> \xB3 |0 # CYRILLIC CAPITAL LETTER IO
+<U0404> \xB4 |0 # CYRILLIC CAPITAL LETTER UKRAINIAN IE
+<U0405> \xB5 |0 # CYRILLIC CAPITAL LETTER DZE
+<U0406> \xB6 |0 # CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+<U0407> \xB7 |0 # CYRILLIC CAPITAL LETTER YI
+<U0408> \xB8 |0 # CYRILLIC CAPITAL LETTER JE
+<U0409> \xB9 |0 # CYRILLIC CAPITAL LETTER LJE
+<U040A> \xBA |0 # CYRILLIC CAPITAL LETTER NJE
+<U040B> \xBB |0 # CYRILLIC CAPITAL LETTER TSHE
+<U040C> \xBC |0 # CYRILLIC CAPITAL LETTER KJE
+<U0490> \xBD |0 # CYRILLIC CAPITAL LETTER GHE WITH UPTURN
+<U040E> \xBE |0 # CYRILLIC CAPITAL LETTER SHORT U
+<U040F> \xBF |0 # CYRILLIC CAPITAL LETTER DZHE
+<U044E> \xC0 |0 # CYRILLIC SMALL LETTER YU
+<U0430> \xC1 |0 # CYRILLIC SMALL LETTER A
+<U0431> \xC2 |0 # CYRILLIC SMALL LETTER BE
+<U0446> \xC3 |0 # CYRILLIC SMALL LETTER TSE
+<U0434> \xC4 |0 # CYRILLIC SMALL LETTER DE
+<U0435> \xC5 |0 # CYRILLIC SMALL LETTER IE
+<U0444> \xC6 |0 # CYRILLIC SMALL LETTER EF
+<U0433> \xC7 |0 # CYRILLIC SMALL LETTER GHE
+<U0445> \xC8 |0 # CYRILLIC SMALL LETTER HA
+<U0438> \xC9 |0 # CYRILLIC SMALL LETTER I
+<U0439> \xCA |0 # CYRILLIC SMALL LETTER SHORT I
+<U043A> \xCB |0 # CYRILLIC SMALL LETTER KA
+<U043B> \xCC |0 # CYRILLIC SMALL LETTER EL
+<U043C> \xCD |0 # CYRILLIC SMALL LETTER EM
+<U043D> \xCE |0 # CYRILLIC SMALL LETTER EN
+<U043E> \xCF |0 # CYRILLIC SMALL LETTER O
+<U043F> \xD0 |0 # CYRILLIC SMALL LETTER PE
+<U044F> \xD1 |0 # CYRILLIC SMALL LETTER YA
+<U0440> \xD2 |0 # CYRILLIC SMALL LETTER ER
+<U0441> \xD3 |0 # CYRILLIC SMALL LETTER ES
+<U0442> \xD4 |0 # CYRILLIC SMALL LETTER TE
+<U0443> \xD5 |0 # CYRILLIC SMALL LETTER U
+<U0436> \xD6 |0 # CYRILLIC SMALL LETTER ZHE
+<U0432> \xD7 |0 # CYRILLIC SMALL LETTER VE
+<U044C> \xD8 |0 # CYRILLIC SMALL LETTER SOFT SIGN
+<U044B> \xD9 |0 # CYRILLIC SMALL LETTER YERU
+<U0437> \xDA |0 # CYRILLIC SMALL LETTER ZE
+<U0448> \xDB |0 # CYRILLIC SMALL LETTER SHA
+<U044D> \xDC |0 # CYRILLIC SMALL LETTER E
+<U0449> \xDD |0 # CYRILLIC SMALL LETTER SHCHA
+<U0447> \xDE |0 # CYRILLIC SMALL LETTER CHE
+<U044A> \xDF |0 # CYRILLIC SMALL LETTER HARD SIGN
+<U042E> \xE0 |0 # CYRILLIC CAPITAL LETTER YU
+<U0410> \xE1 |0 # CYRILLIC CAPITAL LETTER A
+<U0411> \xE2 |0 # CYRILLIC CAPITAL LETTER BE
+<U0426> \xE3 |0 # CYRILLIC CAPITAL LETTER TSE
+<U0414> \xE4 |0 # CYRILLIC CAPITAL LETTER DE
+<U0415> \xE5 |0 # CYRILLIC CAPITAL LETTER IE
+<U0424> \xE6 |0 # CYRILLIC CAPITAL LETTER EF
+<U0413> \xE7 |0 # CYRILLIC CAPITAL LETTER GHE
+<U0425> \xE8 |0 # CYRILLIC CAPITAL LETTER HA
+<U0418> \xE9 |0 # CYRILLIC CAPITAL LETTER I
+<U0419> \xEA |0 # CYRILLIC CAPITAL LETTER SHORT I
+<U041A> \xEB |0 # CYRILLIC CAPITAL LETTER KA
+<U041B> \xEC |0 # CYRILLIC CAPITAL LETTER EL
+<U041C> \xED |0 # CYRILLIC CAPITAL LETTER EM
+<U041D> \xEE |0 # CYRILLIC CAPITAL LETTER EN
+<U041E> \xEF |0 # CYRILLIC CAPITAL LETTER O
+<U041F> \xF0 |0 # CYRILLIC CAPITAL LETTER PE
+<U042F> \xF1 |0 # CYRILLIC CAPITAL LETTER YA
+<U0420> \xF2 |0 # CYRILLIC CAPITAL LETTER ER
+<U0421> \xF3 |0 # CYRILLIC CAPITAL LETTER ES
+<U0422> \xF4 |0 # CYRILLIC CAPITAL LETTER TE
+<U0423> \xF5 |0 # CYRILLIC CAPITAL LETTER U
+<U0416> \xF6 |0 # CYRILLIC CAPITAL LETTER ZHE
+<U0412> \xF7 |0 # CYRILLIC CAPITAL LETTER VE
+<U042C> \xF8 |0 # CYRILLIC CAPITAL LETTER SOFT SIGN
+<U042B> \xF9 |0 # CYRILLIC CAPITAL LETTER YERU
+<U0417> \xFA |0 # CYRILLIC CAPITAL LETTER ZE
+<U0428> \xFB |0 # CYRILLIC CAPITAL LETTER SHA
+<U042D> \xFC |0 # CYRILLIC CAPITAL LETTER E
+<U0429> \xFD |0 # CYRILLIC CAPITAL LETTER SHCHA
+<U0427> \xFE |0 # CYRILLIC CAPITAL LETTER CHE
+<U042A> \xFF |0 # CYRILLIC CAPITAL LETTER HARD SIGN
+END CHARMAP
diff --git a/ext/Encode/Encode/koi8-u.enc b/ext/Encode/Encode/koi8-u.enc
new file mode 100644 (file)
index 0000000..e1f90c4
--- /dev/null
@@ -0,0 +1,20 @@
+# Encoding file: koi8-u, single-byte
+S
+003F 0 1
+00
+0000000100020003000400050006000700080009000A000B000C000D000E000F
+0010001100120013001400150016001700180019001A001B001C001D001E001F
+0020002100220023002400250026002700280029002A002B002C002D002E002F
+0030003100320033003400350036003700380039003A003B003C003D003E003F
+0040004100420043004400450046004700480049004A004B004C004D004E004F
+0050005100520053005400550056005700580059005A005B005C005D005E005F
+0060006100620063006400650066006700680069006A006B006C006D006E006F
+0070007100720073007400750076007700780079007A007B007C007D007E007F
+25002502250C251025142518251C2524252C2534253C258025842588258C2590
+259125922593232025A02022221A22482264226500A0232100B000B200B700F7
+25502551255204510454255404560457255725582559255A255B0491255D255E
+255F25602561040104042563040604072566256725682569256A0490256C00A9
+044E0430043104460434043504440433044504380439043A043B043C043D043E
+043F044F044004410442044304360432044C044B04370448044D04490447044A
+042E0410041104260414041504240413042504180419041A041B041C041D041E
+041F042F042004210422042304160412042C042B04170428042D04290427042A
diff --git a/ext/Encode/Encode/koi8-u.ucm b/ext/Encode/Encode/koi8-u.ucm
new file mode 100644 (file)
index 0000000..bfc0ec7
--- /dev/null
@@ -0,0 +1,265 @@
+# Written $Id$
+# ./compile -n koi8-u -o Encode/koi8-u.ucm Encode/koi8-u.enc
+<code_set_name> "koi8-u"
+<mb_cur_min> 1
+<mb_cur_max> 1
+<subchar> \x3F
+#
+CHARMAP
+<U0000> \x00 |0 # <control>
+<U0001> \x01 |0 # <control>
+<U0002> \x02 |0 # <control>
+<U0003> \x03 |0 # <control>
+<U0004> \x04 |0 # <control>
+<U0005> \x05 |0 # <control>
+<U0006> \x06 |0 # <control>
+<U0007> \x07 |0 # <control>
+<U0008> \x08 |0 # <control>
+<U0009> \x09 |0 # <control>
+<U000A> \x0A |0 # <control>
+<U000B> \x0B |0 # <control>
+<U000C> \x0C |0 # <control>
+<U000D> \x0D |0 # <control>
+<U000E> \x0E |0 # <control>
+<U000F> \x0F |0 # <control>
+<U0010> \x10 |0 # <control>
+<U0011> \x11 |0 # <control>
+<U0012> \x12 |0 # <control>
+<U0013> \x13 |0 # <control>
+<U0014> \x14 |0 # <control>
+<U0015> \x15 |0 # <control>
+<U0016> \x16 |0 # <control>
+<U0017> \x17 |0 # <control>
+<U0018> \x18 |0 # <control>
+<U0019> \x19 |0 # <control>
+<U001A> \x1A |0 # <control>
+<U001B> \x1B |0 # <control>
+<U001C> \x1C |0 # <control>
+<U001D> \x1D |0 # <control>
+<U001E> \x1E |0 # <control>
+<U001F> \x1F |0 # <control>
+<U0020> \x20 |0 # SPACE
+<U0021> \x21 |0 # EXCLAMATION MARK
+<U0022> \x22 |0 # QUOTATION MARK
+<U0023> \x23 |0 # NUMBER SIGN
+<U0024> \x24 |0 # DOLLAR SIGN
+<U0025> \x25 |0 # PERCENT SIGN
+<U0026> \x26 |0 # AMPERSAND
+<U0027> \x27 |0 # APOSTROPHE
+<U0028> \x28 |0 # LEFT PARENTHESIS
+<U0029> \x29 |0 # RIGHT PARENTHESIS
+<U002A> \x2A |0 # ASTERISK
+<U002B> \x2B |0 # PLUS SIGN
+<U002C> \x2C |0 # COMMA
+<U002D> \x2D |0 # HYPHEN-MINUS
+<U002E> \x2E |0 # FULL STOP
+<U002F> \x2F |0 # SOLIDUS
+<U0030> \x30 |0 # DIGIT ZERO
+<U0031> \x31 |0 # DIGIT ONE
+<U0032> \x32 |0 # DIGIT TWO
+<U0033> \x33 |0 # DIGIT THREE
+<U0034> \x34 |0 # DIGIT FOUR
+<U0035> \x35 |0 # DIGIT FIVE
+<U0036> \x36 |0 # DIGIT SIX
+<U0037> \x37 |0 # DIGIT SEVEN
+<U0038> \x38 |0 # DIGIT EIGHT
+<U0039> \x39 |0 # DIGIT NINE
+<U003A> \x3A |0 # COLON
+<U003B> \x3B |0 # SEMICOLON
+<U003C> \x3C |0 # LESS-THAN SIGN
+<U003D> \x3D |0 # EQUALS SIGN
+<U003E> \x3E |0 # GREATER-THAN SIGN
+<U003F> \x3F |0 # QUESTION MARK
+<U0040> \x40 |0 # COMMERCIAL AT
+<U0041> \x41 |0 # LATIN CAPITAL LETTER A
+<U0042> \x42 |0 # LATIN CAPITAL LETTER B
+<U0043> \x43 |0 # LATIN CAPITAL LETTER C
+<U0044> \x44 |0 # LATIN CAPITAL LETTER D
+<U0045> \x45 |0 # LATIN CAPITAL LETTER E
+<U0046> \x46 |0 # LATIN CAPITAL LETTER F
+<U0047> \x47 |0 # LATIN CAPITAL LETTER G
+<U0048> \x48 |0 # LATIN CAPITAL LETTER H
+<U0049> \x49 |0 # LATIN CAPITAL LETTER I
+<U004A> \x4A |0 # LATIN CAPITAL LETTER J
+<U004B> \x4B |0 # LATIN CAPITAL LETTER K
+<U004C> \x4C |0 # LATIN CAPITAL LETTER L
+<U004D> \x4D |0 # LATIN CAPITAL LETTER M
+<U004E> \x4E |0 # LATIN CAPITAL LETTER N
+<U004F> \x4F |0 # LATIN CAPITAL LETTER O
+<U0050> \x50 |0 # LATIN CAPITAL LETTER P
+<U0051> \x51 |0 # LATIN CAPITAL LETTER Q
+<U0052> \x52 |0 # LATIN CAPITAL LETTER R
+<U0053> \x53 |0 # LATIN CAPITAL LETTER S
+<U0054> \x54 |0 # LATIN CAPITAL LETTER T
+<U0055> \x55 |0 # LATIN CAPITAL LETTER U
+<U0056> \x56 |0 # LATIN CAPITAL LETTER V
+<U0057> \x57 |0 # LATIN CAPITAL LETTER W
+<U0058> \x58 |0 # LATIN CAPITAL LETTER X
+<U0059> \x59 |0 # LATIN CAPITAL LETTER Y
+<U005A> \x5A |0 # LATIN CAPITAL LETTER Z
+<U005B> \x5B |0 # LEFT SQUARE BRACKET
+<U005C> \x5C |0 # REVERSE SOLIDUS
+<U005D> \x5D |0 # RIGHT SQUARE BRACKET
+<U005E> \x5E |0 # CIRCUMFLEX ACCENT
+<U005F> \x5F |0 # LOW LINE
+<U0060> \x60 |0 # GRAVE ACCENT
+<U0061> \x61 |0 # LATIN SMALL LETTER A
+<U0062> \x62 |0 # LATIN SMALL LETTER B
+<U0063> \x63 |0 # LATIN SMALL LETTER C
+<U0064> \x64 |0 # LATIN SMALL LETTER D
+<U0065> \x65 |0 # LATIN SMALL LETTER E
+<U0066> \x66 |0 # LATIN SMALL LETTER F
+<U0067> \x67 |0 # LATIN SMALL LETTER G
+<U0068> \x68 |0 # LATIN SMALL LETTER H
+<U0069> \x69 |0 # LATIN SMALL LETTER I
+<U006A> \x6A |0 # LATIN SMALL LETTER J
+<U006B> \x6B |0 # LATIN SMALL LETTER K
+<U006C> \x6C |0 # LATIN SMALL LETTER L
+<U006D> \x6D |0 # LATIN SMALL LETTER M
+<U006E> \x6E |0 # LATIN SMALL LETTER N
+<U006F> \x6F |0 # LATIN SMALL LETTER O
+<U0070> \x70 |0 # LATIN SMALL LETTER P
+<U0071> \x71 |0 # LATIN SMALL LETTER Q
+<U0072> \x72 |0 # LATIN SMALL LETTER R
+<U0073> \x73 |0 # LATIN SMALL LETTER S
+<U0074> \x74 |0 # LATIN SMALL LETTER T
+<U0075> \x75 |0 # LATIN SMALL LETTER U
+<U0076> \x76 |0 # LATIN SMALL LETTER V
+<U0077> \x77 |0 # LATIN SMALL LETTER W
+<U0078> \x78 |0 # LATIN SMALL LETTER X
+<U0079> \x79 |0 # LATIN SMALL LETTER Y
+<U007A> \x7A |0 # LATIN SMALL LETTER Z
+<U007B> \x7B |0 # LEFT CURLY BRACKET
+<U007C> \x7C |0 # VERTICAL LINE
+<U007D> \x7D |0 # RIGHT CURLY BRACKET
+<U007E> \x7E |0 # TILDE
+<U007F> \x7F |0 # <control>
+<U2500> \x80 |0 # BOX DRAWINGS LIGHT HORIZONTAL
+<U2502> \x81 |0 # BOX DRAWINGS LIGHT VERTICAL
+<U250C> \x82 |0 # BOX DRAWINGS LIGHT DOWN AND RIGHT
+<U2510> \x83 |0 # BOX DRAWINGS LIGHT DOWN AND LEFT
+<U2514> \x84 |0 # BOX DRAWINGS LIGHT UP AND RIGHT
+<U2518> \x85 |0 # BOX DRAWINGS LIGHT UP AND LEFT
+<U251C> \x86 |0 # BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+<U2524> \x87 |0 # BOX DRAWINGS LIGHT VERTICAL AND LEFT
+<U252C> \x88 |0 # BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+<U2534> \x89 |0 # BOX DRAWINGS LIGHT UP AND HORIZONTAL
+<U253C> \x8A |0 # BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+<U2580> \x8B |0 # UPPER HALF BLOCK
+<U2584> \x8C |0 # LOWER HALF BLOCK
+<U2588> \x8D |0 # FULL BLOCK
+<U258C> \x8E |0 # LEFT HALF BLOCK
+<U2590> \x8F |0 # RIGHT HALF BLOCK
+<U2591> \x90 |0 # LIGHT SHADE
+<U2592> \x91 |0 # MEDIUM SHADE
+<U2593> \x92 |0 # DARK SHADE
+<U2320> \x93 |0 # TOP HALF INTEGRAL
+<U25A0> \x94 |0 # BLACK SQUARE
+<U2022> \x95 |0 # BULLET
+<U221A> \x96 |0 # SQUARE ROOT
+<U2248> \x97 |0 # ALMOST EQUAL TO
+<U2264> \x98 |0 # LESS-THAN OR EQUAL TO
+<U2265> \x99 |0 # GREATER-THAN OR EQUAL TO
+<U00A0> \x9A |0 # NO-BREAK SPACE
+<U2321> \x9B |0 # BOTTOM HALF INTEGRAL
+<U00B0> \x9C |0 # DEGREE SIGN
+<U00B2> \x9D |0 # SUPERSCRIPT TWO
+<U00B7> \x9E |0 # MIDDLE DOT
+<U00F7> \x9F |0 # DIVISION SIGN
+<U2550> \xA0 |0 # BOX DRAWINGS DOUBLE HORIZONTAL
+<U2551> \xA1 |0 # BOX DRAWINGS DOUBLE VERTICAL
+<U2552> \xA2 |0 # BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
+<U0451> \xA3 |0 # CYRILLIC SMALL LETTER IO
+<U0454> \xA4 |0 # CYRILLIC SMALL LETTER UKRAINIAN IE
+<U2554> \xA5 |0 # BOX DRAWINGS DOUBLE DOWN AND RIGHT
+<U0456> \xA6 |0 # CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+<U0457> \xA7 |0 # CYRILLIC SMALL LETTER YI
+<U2557> \xA8 |0 # BOX DRAWINGS DOUBLE DOWN AND LEFT
+<U2558> \xA9 |0 # BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
+<U2559> \xAA |0 # BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
+<U255A> \xAB |0 # BOX DRAWINGS DOUBLE UP AND RIGHT
+<U255B> \xAC |0 # BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
+<U0491> \xAD |0 # CYRILLIC SMALL LETTER GHE WITH UPTURN
+<U255D> \xAE |0 # BOX DRAWINGS DOUBLE UP AND LEFT
+<U255E> \xAF |0 # BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
+<U255F> \xB0 |0 # BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
+<U2560> \xB1 |0 # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
+<U2561> \xB2 |0 # BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
+<U0401> \xB3 |0 # CYRILLIC CAPITAL LETTER IO
+<U0404> \xB4 |0 # CYRILLIC CAPITAL LETTER UKRAINIAN IE
+<U2563> \xB5 |0 # BOX DRAWINGS DOUBLE VERTICAL AND LEFT
+<U0406> \xB6 |0 # CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+<U0407> \xB7 |0 # CYRILLIC CAPITAL LETTER YI
+<U2566> \xB8 |0 # BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
+<U2567> \xB9 |0 # BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
+<U2568> \xBA |0 # BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
+<U2569> \xBB |0 # BOX DRAWINGS DOUBLE UP AND HORIZONTAL
+<U256A> \xBC |0 # BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
+<U0490> \xBD |0 # CYRILLIC CAPITAL LETTER GHE WITH UPTURN
+<U256C> \xBE |0 # BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
+<U00A9> \xBF |0 # COPYRIGHT SIGN
+<U044E> \xC0 |0 # CYRILLIC SMALL LETTER YU
+<U0430> \xC1 |0 # CYRILLIC SMALL LETTER A
+<U0431> \xC2 |0 # CYRILLIC SMALL LETTER BE
+<U0446> \xC3 |0 # CYRILLIC SMALL LETTER TSE
+<U0434> \xC4 |0 # CYRILLIC SMALL LETTER DE
+<U0435> \xC5 |0 # CYRILLIC SMALL LETTER IE
+<U0444> \xC6 |0 # CYRILLIC SMALL LETTER EF
+<U0433> \xC7 |0 # CYRILLIC SMALL LETTER GHE
+<U0445> \xC8 |0 # CYRILLIC SMALL LETTER HA
+<U0438> \xC9 |0 # CYRILLIC SMALL LETTER I
+<U0439> \xCA |0 # CYRILLIC SMALL LETTER SHORT I
+<U043A> \xCB |0 # CYRILLIC SMALL LETTER KA
+<U043B> \xCC |0 # CYRILLIC SMALL LETTER EL
+<U043C> \xCD |0 # CYRILLIC SMALL LETTER EM
+<U043D> \xCE |0 # CYRILLIC SMALL LETTER EN
+<U043E> \xCF |0 # CYRILLIC SMALL LETTER O
+<U043F> \xD0 |0 # CYRILLIC SMALL LETTER PE
+<U044F> \xD1 |0 # CYRILLIC SMALL LETTER YA
+<U0440> \xD2 |0 # CYRILLIC SMALL LETTER ER
+<U0441> \xD3 |0 # CYRILLIC SMALL LETTER ES
+<U0442> \xD4 |0 # CYRILLIC SMALL LETTER TE
+<U0443> \xD5 |0 # CYRILLIC SMALL LETTER U
+<U0436> \xD6 |0 # CYRILLIC SMALL LETTER ZHE
+<U0432> \xD7 |0 # CYRILLIC SMALL LETTER VE
+<U044C> \xD8 |0 # CYRILLIC SMALL LETTER SOFT SIGN
+<U044B> \xD9 |0 # CYRILLIC SMALL LETTER YERU
+<U0437> \xDA |0 # CYRILLIC SMALL LETTER ZE
+<U0448> \xDB |0 # CYRILLIC SMALL LETTER SHA
+<U044D> \xDC |0 # CYRILLIC SMALL LETTER E
+<U0449> \xDD |0 # CYRILLIC SMALL LETTER SHCHA
+<U0447> \xDE |0 # CYRILLIC SMALL LETTER CHE
+<U044A> \xDF |0 # CYRILLIC SMALL LETTER HARD SIGN
+<U042E> \xE0 |0 # CYRILLIC CAPITAL LETTER YU
+<U0410> \xE1 |0 # CYRILLIC CAPITAL LETTER A
+<U0411> \xE2 |0 # CYRILLIC CAPITAL LETTER BE
+<U0426> \xE3 |0 # CYRILLIC CAPITAL LETTER TSE
+<U0414> \xE4 |0 # CYRILLIC CAPITAL LETTER DE
+<U0415> \xE5 |0 # CYRILLIC CAPITAL LETTER IE
+<U0424> \xE6 |0 # CYRILLIC CAPITAL LETTER EF
+<U0413> \xE7 |0 # CYRILLIC CAPITAL LETTER GHE
+<U0425> \xE8 |0 # CYRILLIC CAPITAL LETTER HA
+<U0418> \xE9 |0 # CYRILLIC CAPITAL LETTER I
+<U0419> \xEA |0 # CYRILLIC CAPITAL LETTER SHORT I
+<U041A> \xEB |0 # CYRILLIC CAPITAL LETTER KA
+<U041B> \xEC |0 # CYRILLIC CAPITAL LETTER EL
+<U041C> \xED |0 # CYRILLIC CAPITAL LETTER EM
+<U041D> \xEE |0 # CYRILLIC CAPITAL LETTER EN
+<U041E> \xEF |0 # CYRILLIC CAPITAL LETTER O
+<U041F> \xF0 |0 # CYRILLIC CAPITAL LETTER PE
+<U042F> \xF1 |0 # CYRILLIC CAPITAL LETTER YA
+<U0420> \xF2 |0 # CYRILLIC CAPITAL LETTER ER
+<U0421> \xF3 |0 # CYRILLIC CAPITAL LETTER ES
+<U0422> \xF4 |0 # CYRILLIC CAPITAL LETTER TE
+<U0423> \xF5 |0 # CYRILLIC CAPITAL LETTER U
+<U0416> \xF6 |0 # CYRILLIC CAPITAL LETTER ZHE
+<U0412> \xF7 |0 # CYRILLIC CAPITAL LETTER VE
+<U042C> \xF8 |0 # CYRILLIC CAPITAL LETTER SOFT SIGN
+<U042B> \xF9 |0 # CYRILLIC CAPITAL LETTER YERU
+<U0417> \xFA |0 # CYRILLIC CAPITAL LETTER ZE
+<U0428> \xFB |0 # CYRILLIC CAPITAL LETTER SHA
+<U042D> \xFC |0 # CYRILLIC CAPITAL LETTER E
+<U0429> \xFD |0 # CYRILLIC CAPITAL LETTER SHCHA
+<U0427> \xFE |0 # CYRILLIC CAPITAL LETTER CHE
+<U042A> \xFF |0 # CYRILLIC CAPITAL LETTER HARD SIGN
+END CHARMAP
diff --git a/ext/Encode/Encode/nextstep.enc b/ext/Encode/Encode/nextstep.enc
new file mode 100644 (file)
index 0000000..3361e2a
--- /dev/null
@@ -0,0 +1,20 @@
+# Encoding file: nextstep, single-byte
+S
+003F 0 1
+00
+0000000100020003000400050006000700080009000A000B000C000D000E000F
+0010001100120013001400150016001700180019001A001B001C001D001E001F
+0020002100220023002400250026002700280029002A002B002C002D002E002F
+0030003100320033003400350036003700380039003A003B003C003D003E003F
+0040004100420043004400450046004700480049004A004B004C004D004E004F
+0050005100520053005400550056005700580059005A005B005C005D005E005F
+0060006100620063006400650066006700680069006A006B006C006D006E006F
+0070007100720073007400750076007700780079007A007B007C007D007E007F
+00A000C000C100C200C300C400C500C700C800C900CA00CB00CC00CD00CE00CF
+00D000D100D200D300D400D500D600D900DA00DB00DC00DD00DE00B500D700F7
+00A900A100A200A3204400A5019200A700A42019201C00AB2039203AFB01FB02
+00AE20132020202100B700A600B62022201A201E201D00BB2026203000AC00BF
+00B902CB00B402C602DC00AF02D802D900A800B202DA00B800B302DD02DB02C7
+201400B100BC00BD00BE00E000E100E200E300E400E500E700E800E900EA00EB
+00EC00C600ED00AA00EE00EF00F000F1014100D8015200BA00F200F300F400F5
+00F600E600F900FA00FB013100FC00FD014200F8015300DF00FE00FF00FE00FF
diff --git a/ext/Encode/Encode/nextstep.ucm b/ext/Encode/Encode/nextstep.ucm
new file mode 100644 (file)
index 0000000..6e73ace
--- /dev/null
@@ -0,0 +1,263 @@
+# Written $Id$
+# ./compile -n nextstep -o Encode/nextstep.ucm Encode/nextstep.enc
+<code_set_name> "nextstep"
+<mb_cur_min> 1
+<mb_cur_max> 1
+<subchar> \x3F
+#
+CHARMAP
+<U0000> \x00 |0 # <control>
+<U0001> \x01 |0 # <control>
+<U0002> \x02 |0 # <control>
+<U0003> \x03 |0 # <control>
+<U0004> \x04 |0 # <control>
+<U0005> \x05 |0 # <control>
+<U0006> \x06 |0 # <control>
+<U0007> \x07 |0 # <control>
+<U0008> \x08 |0 # <control>
+<U0009> \x09 |0 # <control>
+<U000A> \x0A |0 # <control>
+<U000B> \x0B |0 # <control>
+<U000C> \x0C |0 # <control>
+<U000D> \x0D |0 # <control>
+<U000E> \x0E |0 # <control>
+<U000F> \x0F |0 # <control>
+<U0010> \x10 |0 # <control>
+<U0011> \x11 |0 # <control>
+<U0012> \x12 |0 # <control>
+<U0013> \x13 |0 # <control>
+<U0014> \x14 |0 # <control>
+<U0015> \x15 |0 # <control>
+<U0016> \x16 |0 # <control>
+<U0017> \x17 |0 # <control>
+<U0018> \x18 |0 # <control>
+<U0019> \x19 |0 # <control>
+<U001A> \x1A |0 # <control>
+<U001B> \x1B |0 # <control>
+<U001C> \x1C |0 # <control>
+<U001D> \x1D |0 # <control>
+<U001E> \x1E |0 # <control>
+<U001F> \x1F |0 # <control>
+<U0020> \x20 |0 # SPACE
+<U0021> \x21 |0 # EXCLAMATION MARK
+<U0022> \x22 |0 # QUOTATION MARK
+<U0023> \x23 |0 # NUMBER SIGN
+<U0024> \x24 |0 # DOLLAR SIGN
+<U0025> \x25 |0 # PERCENT SIGN
+<U0026> \x26 |0 # AMPERSAND
+<U0027> \x27 |0 # APOSTROPHE
+<U0028> \x28 |0 # LEFT PARENTHESIS
+<U0029> \x29 |0 # RIGHT PARENTHESIS
+<U002A> \x2A |0 # ASTERISK
+<U002B> \x2B |0 # PLUS SIGN
+<U002C> \x2C |0 # COMMA
+<U002D> \x2D |0 # HYPHEN-MINUS
+<U002E> \x2E |0 # FULL STOP
+<U002F> \x2F |0 # SOLIDUS
+<U0030> \x30 |0 # DIGIT ZERO
+<U0031> \x31 |0 # DIGIT ONE
+<U0032> \x32 |0 # DIGIT TWO
+<U0033> \x33 |0 # DIGIT THREE
+<U0034> \x34 |0 # DIGIT FOUR
+<U0035> \x35 |0 # DIGIT FIVE
+<U0036> \x36 |0 # DIGIT SIX
+<U0037> \x37 |0 # DIGIT SEVEN
+<U0038> \x38 |0 # DIGIT EIGHT
+<U0039> \x39 |0 # DIGIT NINE
+<U003A> \x3A |0 # COLON
+<U003B> \x3B |0 # SEMICOLON
+<U003C> \x3C |0 # LESS-THAN SIGN
+<U003D> \x3D |0 # EQUALS SIGN
+<U003E> \x3E |0 # GREATER-THAN SIGN
+<U003F> \x3F |0 # QUESTION MARK
+<U0040> \x40 |0 # COMMERCIAL AT
+<U0041> \x41 |0 # LATIN CAPITAL LETTER A
+<U0042> \x42 |0 # LATIN CAPITAL LETTER B
+<U0043> \x43 |0 # LATIN CAPITAL LETTER C
+<U0044> \x44 |0 # LATIN CAPITAL LETTER D
+<U0045> \x45 |0 # LATIN CAPITAL LETTER E
+<U0046> \x46 |0 # LATIN CAPITAL LETTER F
+<U0047> \x47 |0 # LATIN CAPITAL LETTER G
+<U0048> \x48 |0 # LATIN CAPITAL LETTER H
+<U0049> \x49 |0 # LATIN CAPITAL LETTER I
+<U004A> \x4A |0 # LATIN CAPITAL LETTER J
+<U004B> \x4B |0 # LATIN CAPITAL LETTER K
+<U004C> \x4C |0 # LATIN CAPITAL LETTER L
+<U004D> \x4D |0 # LATIN CAPITAL LETTER M
+<U004E> \x4E |0 # LATIN CAPITAL LETTER N
+<U004F> \x4F |0 # LATIN CAPITAL LETTER O
+<U0050> \x50 |0 # LATIN CAPITAL LETTER P
+<U0051> \x51 |0 # LATIN CAPITAL LETTER Q
+<U0052> \x52 |0 # LATIN CAPITAL LETTER R
+<U0053> \x53 |0 # LATIN CAPITAL LETTER S
+<U0054> \x54 |0 # LATIN CAPITAL LETTER T
+<U0055> \x55 |0 # LATIN CAPITAL LETTER U
+<U0056> \x56 |0 # LATIN CAPITAL LETTER V
+<U0057> \x57 |0 # LATIN CAPITAL LETTER W
+<U0058> \x58 |0 # LATIN CAPITAL LETTER X
+<U0059> \x59 |0 # LATIN CAPITAL LETTER Y
+<U005A> \x5A |0 # LATIN CAPITAL LETTER Z
+<U005B> \x5B |0 # LEFT SQUARE BRACKET
+<U005C> \x5C |0 # REVERSE SOLIDUS
+<U005D> \x5D |0 # RIGHT SQUARE BRACKET
+<U005E> \x5E |0 # CIRCUMFLEX ACCENT
+<U005F> \x5F |0 # LOW LINE
+<U0060> \x60 |0 # GRAVE ACCENT
+<U0061> \x61 |0 # LATIN SMALL LETTER A
+<U0062> \x62 |0 # LATIN SMALL LETTER B
+<U0063> \x63 |0 # LATIN SMALL LETTER C
+<U0064> \x64 |0 # LATIN SMALL LETTER D
+<U0065> \x65 |0 # LATIN SMALL LETTER E
+<U0066> \x66 |0 # LATIN SMALL LETTER F
+<U0067> \x67 |0 # LATIN SMALL LETTER G
+<U0068> \x68 |0 # LATIN SMALL LETTER H
+<U0069> \x69 |0 # LATIN SMALL LETTER I
+<U006A> \x6A |0 # LATIN SMALL LETTER J
+<U006B> \x6B |0 # LATIN SMALL LETTER K
+<U006C> \x6C |0 # LATIN SMALL LETTER L
+<U006D> \x6D |0 # LATIN SMALL LETTER M
+<U006E> \x6E |0 # LATIN SMALL LETTER N
+<U006F> \x6F |0 # LATIN SMALL LETTER O
+<U0070> \x70 |0 # LATIN SMALL LETTER P
+<U0071> \x71 |0 # LATIN SMALL LETTER Q
+<U0072> \x72 |0 # LATIN SMALL LETTER R
+<U0073> \x73 |0 # LATIN SMALL LETTER S
+<U0074> \x74 |0 # LATIN SMALL LETTER T
+<U0075> \x75 |0 # LATIN SMALL LETTER U
+<U0076> \x76 |0 # LATIN SMALL LETTER V
+<U0077> \x77 |0 # LATIN SMALL LETTER W
+<U0078> \x78 |0 # LATIN SMALL LETTER X
+<U0079> \x79 |0 # LATIN SMALL LETTER Y
+<U007A> \x7A |0 # LATIN SMALL LETTER Z
+<U007B> \x7B |0 # LEFT CURLY BRACKET
+<U007C> \x7C |0 # VERTICAL LINE
+<U007D> \x7D |0 # RIGHT CURLY BRACKET
+<U007E> \x7E |0 # TILDE
+<U007F> \x7F |0 # <control>
+<U00A0> \x80 |0 # NO-BREAK SPACE
+<U00C0> \x81 |0 # LATIN CAPITAL LETTER A WITH GRAVE
+<U00C1> \x82 |0 # LATIN CAPITAL LETTER A WITH ACUTE
+<U00C2> \x83 |0 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+<U00C3> \x84 |0 # LATIN CAPITAL LETTER A WITH TILDE
+<U00C4> \x85 |0 # LATIN CAPITAL LETTER A WITH DIAERESIS
+<U00C5> \x86 |0 # LATIN CAPITAL LETTER A WITH RING ABOVE
+<U00C7> \x87 |0 # LATIN CAPITAL LETTER C WITH CEDILLA
+<U00C8> \x88 |0 # LATIN CAPITAL LETTER E WITH GRAVE
+<U00C9> \x89 |0 # LATIN CAPITAL LETTER E WITH ACUTE
+<U00CA> \x8A |0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+<U00CB> \x8B |0 # LATIN CAPITAL LETTER E WITH DIAERESIS
+<U00CC> \x8C |0 # LATIN CAPITAL LETTER I WITH GRAVE
+<U00CD> \x8D |0 # LATIN CAPITAL LETTER I WITH ACUTE
+<U00CE> \x8E |0 # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+<U00CF> \x8F |0 # LATIN CAPITAL LETTER I WITH DIAERESIS
+<U00D0> \x90 |0 # LATIN CAPITAL LETTER ETH
+<U00D1> \x91 |0 # LATIN CAPITAL LETTER N WITH TILDE
+<U00D2> \x92 |0 # LATIN CAPITAL LETTER O WITH GRAVE
+<U00D3> \x93 |0 # LATIN CAPITAL LETTER O WITH ACUTE
+<U00D4> \x94 |0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+<U00D5> \x95 |0 # LATIN CAPITAL LETTER O WITH TILDE
+<U00D6> \x96 |0 # LATIN CAPITAL LETTER O WITH DIAERESIS
+<U00D9> \x97 |0 # LATIN CAPITAL LETTER U WITH GRAVE
+<U00DA> \x98 |0 # LATIN CAPITAL LETTER U WITH ACUTE
+<U00DB> \x99 |0 # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+<U00DC> \x9A |0 # LATIN CAPITAL LETTER U WITH DIAERESIS
+<U00DD> \x9B |0 # LATIN CAPITAL LETTER Y WITH ACUTE
+<U00DE> \x9C |0 # LATIN CAPITAL LETTER THORN
+<U00B5> \x9D |0 # MICRO SIGN
+<U00D7> \x9E |0 # MULTIPLICATION SIGN
+<U00F7> \x9F |0 # DIVISION SIGN
+<U00A9> \xA0 |0 # COPYRIGHT SIGN
+<U00A1> \xA1 |0 # INVERTED EXCLAMATION MARK
+<U00A2> \xA2 |0 # CENT SIGN
+<U00A3> \xA3 |0 # POUND SIGN
+<U2044> \xA4 |0 # FRACTION SLASH
+<U00A5> \xA5 |0 # YEN SIGN
+<U0192> \xA6 |0 # LATIN SMALL LETTER F WITH HOOK
+<U00A7> \xA7 |0 # SECTION SIGN
+<U00A4> \xA8 |0 # CURRENCY SIGN
+<U2019> \xA9 |0 # RIGHT SINGLE QUOTATION MARK
+<U201C> \xAA |0 # LEFT DOUBLE QUOTATION MARK
+<U00AB> \xAB |0 # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+<U2039> \xAC |0 # SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+<U203A> \xAD |0 # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+<UFB01> \xAE |0 # LATIN SMALL LIGATURE FI
+<UFB02> \xAF |0 # LATIN SMALL LIGATURE FL
+<U00AE> \xB0 |0 # REGISTERED SIGN
+<U2013> \xB1 |0 # EN DASH
+<U2020> \xB2 |0 # DAGGER
+<U2021> \xB3 |0 # DOUBLE DAGGER
+<U00B7> \xB4 |0 # MIDDLE DOT
+<U00A6> \xB5 |0 # BROKEN BAR
+<U00B6> \xB6 |0 # PILCROW SIGN
+<U2022> \xB7 |0 # BULLET
+<U201A> \xB8 |0 # SINGLE LOW-9 QUOTATION MARK
+<U201E> \xB9 |0 # DOUBLE LOW-9 QUOTATION MARK
+<U201D> \xBA |0 # RIGHT DOUBLE QUOTATION MARK
+<U00BB> \xBB |0 # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+<U2026> \xBC |0 # HORIZONTAL ELLIPSIS
+<U2030> \xBD |0 # PER MILLE SIGN
+<U00AC> \xBE |0 # NOT SIGN
+<U00BF> \xBF |0 # INVERTED QUESTION MARK
+<U00B9> \xC0 |0 # SUPERSCRIPT ONE
+<U02CB> \xC1 |0 # MODIFIER LETTER GRAVE ACCENT
+<U00B4> \xC2 |0 # ACUTE ACCENT
+<U02C6> \xC3 |0 # MODIFIER LETTER CIRCUMFLEX ACCENT
+<U02DC> \xC4 |0 # SMALL TILDE
+<U00AF> \xC5 |0 # MACRON
+<U02D8> \xC6 |0 # BREVE
+<U02D9> \xC7 |0 # DOT ABOVE
+<U00A8> \xC8 |0 # DIAERESIS
+<U00B2> \xC9 |0 # SUPERSCRIPT TWO
+<U02DA> \xCA |0 # RING ABOVE
+<U00B8> \xCB |0 # CEDILLA
+<U00B3> \xCC |0 # SUPERSCRIPT THREE
+<U02DD> \xCD |0 # DOUBLE ACUTE ACCENT
+<U02DB> \xCE |0 # OGONEK
+<U02C7> \xCF |0 # CARON
+<U2014> \xD0 |0 # EM DASH
+<U00B1> \xD1 |0 # PLUS-MINUS SIGN
+<U00BC> \xD2 |0 # VULGAR FRACTION ONE QUARTER
+<U00BD> \xD3 |0 # VULGAR FRACTION ONE HALF
+<U00BE> \xD4 |0 # VULGAR FRACTION THREE QUARTERS
+<U00E0> \xD5 |0 # LATIN SMALL LETTER A WITH GRAVE
+<U00E1> \xD6 |0 # LATIN SMALL LETTER A WITH ACUTE
+<U00E2> \xD7 |0 # LATIN SMALL LETTER A WITH CIRCUMFLEX
+<U00E3> \xD8 |0 # LATIN SMALL LETTER A WITH TILDE
+<U00E4> \xD9 |0 # LATIN SMALL LETTER A WITH DIAERESIS
+<U00E5> \xDA |0 # LATIN SMALL LETTER A WITH RING ABOVE
+<U00E7> \xDB |0 # LATIN SMALL LETTER C WITH CEDILLA
+<U00E8> \xDC |0 # LATIN SMALL LETTER E WITH GRAVE
+<U00E9> \xDD |0 # LATIN SMALL LETTER E WITH ACUTE
+<U00EA> \xDE |0 # LATIN SMALL LETTER E WITH CIRCUMFLEX
+<U00EB> \xDF |0 # LATIN SMALL LETTER E WITH DIAERESIS
+<U00EC> \xE0 |0 # LATIN SMALL LETTER I WITH GRAVE
+<U00C6> \xE1 |0 # LATIN CAPITAL LETTER AE
+<U00ED> \xE2 |0 # LATIN SMALL LETTER I WITH ACUTE
+<U00AA> \xE3 |0 # FEMININE ORDINAL INDICATOR
+<U00EE> \xE4 |0 # LATIN SMALL LETTER I WITH CIRCUMFLEX
+<U00EF> \xE5 |0 # LATIN SMALL LETTER I WITH DIAERESIS
+<U00F0> \xE6 |0 # LATIN SMALL LETTER ETH
+<U00F1> \xE7 |0 # LATIN SMALL LETTER N WITH TILDE
+<U0141> \xE8 |0 # LATIN CAPITAL LETTER L WITH STROKE
+<U00D8> \xE9 |0 # LATIN CAPITAL LETTER O WITH STROKE
+<U0152> \xEA |0 # LATIN CAPITAL LIGATURE OE
+<U00BA> \xEB |0 # MASCULINE ORDINAL INDICATOR
+<U00F2> \xEC |0 # LATIN SMALL LETTER O WITH GRAVE
+<U00F3> \xED |0 # LATIN SMALL LETTER O WITH ACUTE
+<U00F4> \xEE |0 # LATIN SMALL LETTER O WITH CIRCUMFLEX
+<U00F5> \xEF |0 # LATIN SMALL LETTER O WITH TILDE
+<U00F6> \xF0 |0 # LATIN SMALL LETTER O WITH DIAERESIS
+<U00E6> \xF1 |0 # LATIN SMALL LETTER AE
+<U00F9> \xF2 |0 # LATIN SMALL LETTER U WITH GRAVE
+<U00FA> \xF3 |0 # LATIN SMALL LETTER U WITH ACUTE
+<U00FB> \xF4 |0 # LATIN SMALL LETTER U WITH CIRCUMFLEX
+<U0131> \xF5 |0 # LATIN SMALL LETTER DOTLESS I
+<U00FC> \xF6 |0 # LATIN SMALL LETTER U WITH DIAERESIS
+<U00FD> \xF7 |0 # LATIN SMALL LETTER Y WITH ACUTE
+<U0142> \xF8 |0 # LATIN SMALL LETTER L WITH STROKE
+<U00F8> \xF9 |0 # LATIN SMALL LETTER O WITH STROKE
+<U0153> \xFA |0 # LATIN SMALL LIGATURE OE
+<U00DF> \xFB |0 # LATIN SMALL LETTER SHARP S
+<U00FE> \xFE |0 # LATIN SMALL LETTER THORN
+<U00FF> \xFF |0 # LATIN SMALL LETTER Y WITH DIAERESIS
+END CHARMAP
diff --git a/ext/Encode/Encode/roman8.enc b/ext/Encode/Encode/roman8.enc
new file mode 100644 (file)
index 0000000..7e8fbdd
--- /dev/null
@@ -0,0 +1,20 @@
+# Encoding file: roman8, single-byte
+S
+003F 0 1
+00
+0000000100020003000400050006000700080009000A000B000C000D000E000F
+0010001100120013001400150016001700180019001A001B001C001D001E001F
+0020002100220023002400250026002700280029002A002B002C002D002E002F
+0030003100320033003400350036003700380039003A003B003C003D003E003F
+0040004100420043004400450046004700480049004A004B004C004D004E004F
+0050005100520053005400550056005700580059005A005B005C005D005E005F
+0060006100620063006400650066006700680069006A006B006C006D006E006F
+0070007100720073007400750076007700780079007A007B007C007D007E007F
+0080008100820083008400850086008700880089008A008B008C008D008E008F
+0090009100920093009400950096009700980099009A009B009C009D009E009F
+00A000C000C200C800CA00CB00CE00CF00B402CB02C600A802DC00D900DB20A4
+00AF00DD00FD00B000C700E700D100F100A100BF00A400A300A500A7019200A2
+00E200EA00F400FB00E100E900F300FA00E000E800F200F900E400EB00F600FC
+00C500EE00D800C600E500ED00F800E600C400EC00D600DC00C900EF00DF00D4
+00C100C300E300D000F000CD00CC00D300D200D500F50160016100DA017800FF
+00DE00FE00B700B500B600BE201400BC00BD00AA00BA00AB25A000BB00B100FF
diff --git a/ext/Encode/Encode/roman8.ucm b/ext/Encode/Encode/roman8.ucm
new file mode 100644 (file)
index 0000000..358642a
--- /dev/null
@@ -0,0 +1,264 @@
+# Written $Id$
+# ./compile -n roman8 -o Encode/roman8.ucm Encode/roman8.enc
+<code_set_name> "roman8"
+<mb_cur_min> 1
+<mb_cur_max> 1
+<subchar> \x3F
+#
+CHARMAP
+<U0000> \x00 |0 # <control>
+<U0001> \x01 |0 # <control>
+<U0002> \x02 |0 # <control>
+<U0003> \x03 |0 # <control>
+<U0004> \x04 |0 # <control>
+<U0005> \x05 |0 # <control>
+<U0006> \x06 |0 # <control>
+<U0007> \x07 |0 # <control>
+<U0008> \x08 |0 # <control>
+<U0009> \x09 |0 # <control>
+<U000A> \x0A |0 # <control>
+<U000B> \x0B |0 # <control>
+<U000C> \x0C |0 # <control>
+<U000D> \x0D |0 # <control>
+<U000E> \x0E |0 # <control>
+<U000F> \x0F |0 # <control>
+<U0010> \x10 |0 # <control>
+<U0011> \x11 |0 # <control>
+<U0012> \x12 |0 # <control>
+<U0013> \x13 |0 # <control>
+<U0014> \x14 |0 # <control>
+<U0015> \x15 |0 # <control>
+<U0016> \x16 |0 # <control>
+<U0017> \x17 |0 # <control>
+<U0018> \x18 |0 # <control>
+<U0019> \x19 |0 # <control>
+<U001A> \x1A |0 # <control>
+<U001B> \x1B |0 # <control>
+<U001C> \x1C |0 # <control>
+<U001D> \x1D |0 # <control>
+<U001E> \x1E |0 # <control>
+<U001F> \x1F |0 # <control>
+<U0020> \x20 |0 # SPACE
+<U0021> \x21 |0 # EXCLAMATION MARK
+<U0022> \x22 |0 # QUOTATION MARK
+<U0023> \x23 |0 # NUMBER SIGN
+<U0024> \x24 |0 # DOLLAR SIGN
+<U0025> \x25 |0 # PERCENT SIGN
+<U0026> \x26 |0 # AMPERSAND
+<U0027> \x27 |0 # APOSTROPHE
+<U0028> \x28 |0 # LEFT PARENTHESIS
+<U0029> \x29 |0 # RIGHT PARENTHESIS
+<U002A> \x2A |0 # ASTERISK
+<U002B> \x2B |0 # PLUS SIGN
+<U002C> \x2C |0 # COMMA
+<U002D> \x2D |0 # HYPHEN-MINUS
+<U002E> \x2E |0 # FULL STOP
+<U002F> \x2F |0 # SOLIDUS
+<U0030> \x30 |0 # DIGIT ZERO
+<U0031> \x31 |0 # DIGIT ONE
+<U0032> \x32 |0 # DIGIT TWO
+<U0033> \x33 |0 # DIGIT THREE
+<U0034> \x34 |0 # DIGIT FOUR
+<U0035> \x35 |0 # DIGIT FIVE
+<U0036> \x36 |0 # DIGIT SIX
+<U0037> \x37 |0 # DIGIT SEVEN
+<U0038> \x38 |0 # DIGIT EIGHT
+<U0039> \x39 |0 # DIGIT NINE
+<U003A> \x3A |0 # COLON
+<U003B> \x3B |0 # SEMICOLON
+<U003C> \x3C |0 # LESS-THAN SIGN
+<U003D> \x3D |0 # EQUALS SIGN
+<U003E> \x3E |0 # GREATER-THAN SIGN
+<U003F> \x3F |0 # QUESTION MARK
+<U0040> \x40 |0 # COMMERCIAL AT
+<U0041> \x41 |0 # LATIN CAPITAL LETTER A
+<U0042> \x42 |0 # LATIN CAPITAL LETTER B
+<U0043> \x43 |0 # LATIN CAPITAL LETTER C
+<U0044> \x44 |0 # LATIN CAPITAL LETTER D
+<U0045> \x45 |0 # LATIN CAPITAL LETTER E
+<U0046> \x46 |0 # LATIN CAPITAL LETTER F
+<U0047> \x47 |0 # LATIN CAPITAL LETTER G
+<U0048> \x48 |0 # LATIN CAPITAL LETTER H
+<U0049> \x49 |0 # LATIN CAPITAL LETTER I
+<U004A> \x4A |0 # LATIN CAPITAL LETTER J
+<U004B> \x4B |0 # LATIN CAPITAL LETTER K
+<U004C> \x4C |0 # LATIN CAPITAL LETTER L
+<U004D> \x4D |0 # LATIN CAPITAL LETTER M
+<U004E> \x4E |0 # LATIN CAPITAL LETTER N
+<U004F> \x4F |0 # LATIN CAPITAL LETTER O
+<U0050> \x50 |0 # LATIN CAPITAL LETTER P
+<U0051> \x51 |0 # LATIN CAPITAL LETTER Q
+<U0052> \x52 |0 # LATIN CAPITAL LETTER R
+<U0053> \x53 |0 # LATIN CAPITAL LETTER S
+<U0054> \x54 |0 # LATIN CAPITAL LETTER T
+<U0055> \x55 |0 # LATIN CAPITAL LETTER U
+<U0056> \x56 |0 # LATIN CAPITAL LETTER V
+<U0057> \x57 |0 # LATIN CAPITAL LETTER W
+<U0058> \x58 |0 # LATIN CAPITAL LETTER X
+<U0059> \x59 |0 # LATIN CAPITAL LETTER Y
+<U005A> \x5A |0 # LATIN CAPITAL LETTER Z
+<U005B> \x5B |0 # LEFT SQUARE BRACKET
+<U005C> \x5C |0 # REVERSE SOLIDUS
+<U005D> \x5D |0 # RIGHT SQUARE BRACKET
+<U005E> \x5E |0 # CIRCUMFLEX ACCENT
+<U005F> \x5F |0 # LOW LINE
+<U0060> \x60 |0 # GRAVE ACCENT
+<U0061> \x61 |0 # LATIN SMALL LETTER A
+<U0062> \x62 |0 # LATIN SMALL LETTER B
+<U0063> \x63 |0 # LATIN SMALL LETTER C
+<U0064> \x64 |0 # LATIN SMALL LETTER D
+<U0065> \x65 |0 # LATIN SMALL LETTER E
+<U0066> \x66 |0 # LATIN SMALL LETTER F
+<U0067> \x67 |0 # LATIN SMALL LETTER G
+<U0068> \x68 |0 # LATIN SMALL LETTER H
+<U0069> \x69 |0 # LATIN SMALL LETTER I
+<U006A> \x6A |0 # LATIN SMALL LETTER J
+<U006B> \x6B |0 # LATIN SMALL LETTER K
+<U006C> \x6C |0 # LATIN SMALL LETTER L
+<U006D> \x6D |0 # LATIN SMALL LETTER M
+<U006E> \x6E |0 # LATIN SMALL LETTER N
+<U006F> \x6F |0 # LATIN SMALL LETTER O
+<U0070> \x70 |0 # LATIN SMALL LETTER P
+<U0071> \x71 |0 # LATIN SMALL LETTER Q
+<U0072> \x72 |0 # LATIN SMALL LETTER R
+<U0073> \x73 |0 # LATIN SMALL LETTER S
+<U0074> \x74 |0 # LATIN SMALL LETTER T
+<U0075> \x75 |0 # LATIN SMALL LETTER U
+<U0076> \x76 |0 # LATIN SMALL LETTER V
+<U0077> \x77 |0 # LATIN SMALL LETTER W
+<U0078> \x78 |0 # LATIN SMALL LETTER X
+<U0079> \x79 |0 # LATIN SMALL LETTER Y
+<U007A> \x7A |0 # LATIN SMALL LETTER Z
+<U007B> \x7B |0 # LEFT CURLY BRACKET
+<U007C> \x7C |0 # VERTICAL LINE
+<U007D> \x7D |0 # RIGHT CURLY BRACKET
+<U007E> \x7E |0 # TILDE
+<U007F> \x7F |0 # <control>
+<U0080> \x80 |0 # <control>
+<U0081> \x81 |0 # <control>
+<U0082> \x82 |0 # <control>
+<U0083> \x83 |0 # <control>
+<U0084> \x84 |0 # <control>
+<U0085> \x85 |0 # <control>
+<U0086> \x86 |0 # <control>
+<U0087> \x87 |0 # <control>
+<U0088> \x88 |0 # <control>
+<U0089> \x89 |0 # <control>
+<U008A> \x8A |0 # <control>
+<U008B> \x8B |0 # <control>
+<U008C> \x8C |0 # <control>
+<U008D> \x8D |0 # <control>
+<U008E> \x8E |0 # <control>
+<U008F> \x8F |0 # <control>
+<U0090> \x90 |0 # <control>
+<U0091> \x91 |0 # <control>
+<U0092> \x92 |0 # <control>
+<U0093> \x93 |0 # <control>
+<U0094> \x94 |0 # <control>
+<U0095> \x95 |0 # <control>
+<U0096> \x96 |0 # <control>
+<U0097> \x97 |0 # <control>
+<U0098> \x98 |0 # <control>
+<U0099> \x99 |0 # <control>
+<U009A> \x9A |0 # <control>
+<U009B> \x9B |0 # <control>
+<U009C> \x9C |0 # <control>
+<U009D> \x9D |0 # <control>
+<U009E> \x9E |0 # <control>
+<U009F> \x9F |0 # <control>
+<U00A0> \xA0 |0 # NO-BREAK SPACE
+<U00C0> \xA1 |0 # LATIN CAPITAL LETTER A WITH GRAVE
+<U00C2> \xA2 |0 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+<U00C8> \xA3 |0 # LATIN CAPITAL LETTER E WITH GRAVE
+<U00CA> \xA4 |0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+<U00CB> \xA5 |0 # LATIN CAPITAL LETTER E WITH DIAERESIS
+<U00CE> \xA6 |0 # LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+<U00CF> \xA7 |0 # LATIN CAPITAL LETTER I WITH DIAERESIS
+<U00B4> \xA8 |0 # ACUTE ACCENT
+<U02CB> \xA9 |0 # MODIFIER LETTER GRAVE ACCENT
+<U02C6> \xAA |0 # MODIFIER LETTER CIRCUMFLEX ACCENT
+<U00A8> \xAB |0 # DIAERESIS
+<U02DC> \xAC |0 # SMALL TILDE
+<U00D9> \xAD |0 # LATIN CAPITAL LETTER U WITH GRAVE
+<U00DB> \xAE |0 # LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+<U20A4> \xAF |0 # LIRA SIGN
+<U00AF> \xB0 |0 # MACRON
+<U00DD> \xB1 |0 # LATIN CAPITAL LETTER Y WITH ACUTE
+<U00FD> \xB2 |0 # LATIN SMALL LETTER Y WITH ACUTE
+<U00B0> \xB3 |0 # DEGREE SIGN
+<U00C7> \xB4 |0 # LATIN CAPITAL LETTER C WITH CEDILLA
+<U00E7> \xB5 |0 # LATIN SMALL LETTER C WITH CEDILLA
+<U00D1> \xB6 |0 # LATIN CAPITAL LETTER N WITH TILDE
+<U00F1> \xB7 |0 # LATIN SMALL LETTER N WITH TILDE
+<U00A1> \xB8 |0 # INVERTED EXCLAMATION MARK
+<U00BF> \xB9 |0 # INVERTED QUESTION MARK
+<U00A4> \xBA |0 # CURRENCY SIGN
+<U00A3> \xBB |0 # POUND SIGN
+<U00A5> \xBC |0 # YEN SIGN
+<U00A7> \xBD |0 # SECTION SIGN
+<U0192> \xBE |0 # LATIN SMALL LETTER F WITH HOOK
+<U00A2> \xBF |0 # CENT SIGN
+<U00E2> \xC0 |0 # LATIN SMALL LETTER A WITH CIRCUMFLEX
+<U00EA> \xC1 |0 # LATIN SMALL LETTER E WITH CIRCUMFLEX
+<U00F4> \xC2 |0 # LATIN SMALL LETTER O WITH CIRCUMFLEX
+<U00FB> \xC3 |0 # LATIN SMALL LETTER U WITH CIRCUMFLEX
+<U00E1> \xC4 |0 # LATIN SMALL LETTER A WITH ACUTE
+<U00E9> \xC5 |0 # LATIN SMALL LETTER E WITH ACUTE
+<U00F3> \xC6 |0 # LATIN SMALL LETTER O WITH ACUTE
+<U00FA> \xC7 |0 # LATIN SMALL LETTER U WITH ACUTE
+<U00E0> \xC8 |0 # LATIN SMALL LETTER A WITH GRAVE
+<U00E8> \xC9 |0 # LATIN SMALL LETTER E WITH GRAVE
+<U00F2> \xCA |0 # LATIN SMALL LETTER O WITH GRAVE
+<U00F9> \xCB |0 # LATIN SMALL LETTER U WITH GRAVE
+<U00E4> \xCC |0 # LATIN SMALL LETTER A WITH DIAERESIS
+<U00EB> \xCD |0 # LATIN SMALL LETTER E WITH DIAERESIS
+<U00F6> \xCE |0 # LATIN SMALL LETTER O WITH DIAERESIS
+<U00FC> \xCF |0 # LATIN SMALL LETTER U WITH DIAERESIS
+<U00C5> \xD0 |0 # LATIN CAPITAL LETTER A WITH RING ABOVE
+<U00EE> \xD1 |0 # LATIN SMALL LETTER I WITH CIRCUMFLEX
+<U00D8> \xD2 |0 # LATIN CAPITAL LETTER O WITH STROKE
+<U00C6> \xD3 |0 # LATIN CAPITAL LETTER AE
+<U00E5> \xD4 |0 # LATIN SMALL LETTER A WITH RING ABOVE
+<U00ED> \xD5 |0 # LATIN SMALL LETTER I WITH ACUTE
+<U00F8> \xD6 |0 # LATIN SMALL LETTER O WITH STROKE
+<U00E6> \xD7 |0 # LATIN SMALL LETTER AE
+<U00C4> \xD8 |0 # LATIN CAPITAL LETTER A WITH DIAERESIS
+<U00EC> \xD9 |0 # LATIN SMALL LETTER I WITH GRAVE
+<U00D6> \xDA |0 # LATIN CAPITAL LETTER O WITH DIAERESIS
+<U00DC> \xDB |0 # LATIN CAPITAL LETTER U WITH DIAERESIS
+<U00C9> \xDC |0 # LATIN CAPITAL LETTER E WITH ACUTE
+<U00EF> \xDD |0 # LATIN SMALL LETTER I WITH DIAERESIS
+<U00DF> \xDE |0 # LATIN SMALL LETTER SHARP S
+<U00D4> \xDF |0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+<U00C1> \xE0 |0 # LATIN CAPITAL LETTER A WITH ACUTE
+<U00C3> \xE1 |0 # LATIN CAPITAL LETTER A WITH TILDE
+<U00E3> \xE2 |0 # LATIN SMALL LETTER A WITH TILDE
+<U00D0> \xE3 |0 # LATIN CAPITAL LETTER ETH
+<U00F0> \xE4 |0 # LATIN SMALL LETTER ETH
+<U00CD> \xE5 |0 # LATIN CAPITAL LETTER I WITH ACUTE
+<U00CC> \xE6 |0 # LATIN CAPITAL LETTER I WITH GRAVE
+<U00D3> \xE7 |0 # LATIN CAPITAL LETTER O WITH ACUTE
+<U00D2> \xE8 |0 # LATIN CAPITAL LETTER O WITH GRAVE
+<U00D5> \xE9 |0 # LATIN CAPITAL LETTER O WITH TILDE
+<U00F5> \xEA |0 # LATIN SMALL LETTER O WITH TILDE
+<U0160> \xEB |0 # LATIN CAPITAL LETTER S WITH CARON
+<U0161> \xEC |0 # LATIN SMALL LETTER S WITH CARON
+<U00DA> \xED |0 # LATIN CAPITAL LETTER U WITH ACUTE
+<U0178> \xEE |0 # LATIN CAPITAL LETTER Y WITH DIAERESIS
+<U00DE> \xF0 |0 # LATIN CAPITAL LETTER THORN
+<U00FE> \xF1 |0 # LATIN SMALL LETTER THORN
+<U00B7> \xF2 |0 # MIDDLE DOT
+<U00B5> \xF3 |0 # MICRO SIGN
+<U00B6> \xF4 |0 # PILCROW SIGN
+<U00BE> \xF5 |0 # VULGAR FRACTION THREE QUARTERS
+<U2014> \xF6 |0 # EM DASH
+<U00BC> \xF7 |0 # VULGAR FRACTION ONE QUARTER
+<U00BD> \xF8 |0 # VULGAR FRACTION ONE HALF
+<U00AA> \xF9 |0 # FEMININE ORDINAL INDICATOR
+<U00BA> \xFA |0 # MASCULINE ORDINAL INDICATOR
+<U00AB> \xFB |0 # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+<U25A0> \xFC |0 # BLACK SQUARE
+<U00BB> \xFD |0 # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+<U00B1> \xFE |0 # PLUS-MINUS SIGN
+<U00FF> \xFF |0 # LATIN SMALL LETTER Y WITH DIAERESIS
+END CHARMAP
diff --git a/ext/Encode/Encode/viscii.enc b/ext/Encode/Encode/viscii.enc
new file mode 100644 (file)
index 0000000..3be7733
--- /dev/null
@@ -0,0 +1,20 @@
+# Encoding file: viscii, single-byte
+S
+003F 0 1
+00
+000000011EB2000300041EB41EAA000700080009000A000B000C000D000E000F
+00100011001200131EF600150016001700181EF8001A001B001C001D1EF4001F
+0020002100220023002400250026002700280029002A002B002C002D002E002F
+0030003100320033003400350036003700380039003A003B003C003D003E003F
+0040004100420043004400450046004700480049004A004B004C004D004E004F
+0050005100520053005400550056005700580059005A005B005C005D005E005F
+0060006100620063006400650066006700680069006A006B006C006D006E006F
+0070007100720073007400750076007700780079007A007B007C007D007E007F
+1EA01EAE1EB01EB61EA41EA61EA81EAC1EBC1EB81EBE1EC01EC21EC41EC61ED0
+1ED21ED41ED61ED81EE21EDA1EDC1EDE1ECA1ECE1ECC1EC81EE601681EE41EF2
+00D51EAF1EB11EB71EA51EA71EA81EAD1EBD1EB91EBF1EC11EC31EC51EC71ED1
+1ED31ED51ED71EE001A01ED91EDD1EDF1ECB1EF01EE81EEA1EEC01A11EDB01AF
+00C000C100C200C31EA201021EB31EB500C800C900CA1EBA00CC00CD01281EF3
+01101EE900D200D300D41EA11EF71EEB1EED00D900DA1EF91EF500DD1EE101B0
+00E000E100E200E31EA301031EEF1EAB00E800E900EA1EBB00EC00ED01291EC9
+01111EF100F200F300F400F51ECF1ECD1EE500F900FA01691EE700FD1EE31EEE
diff --git a/ext/Encode/Encode/viscii.ucm b/ext/Encode/Encode/viscii.ucm
new file mode 100644 (file)
index 0000000..23bec90
--- /dev/null
@@ -0,0 +1,264 @@
+# Written $Id$
+# ./compile -n viscii -o Encode/viscii.ucm Encode/viscii.enc
+<code_set_name> "viscii"
+<mb_cur_min> 1
+<mb_cur_max> 1
+<subchar> \x3F
+#
+CHARMAP
+<U0000> \x00 |0 # <control>
+<U0001> \x01 |0 # <control>
+<U1EB2> \x02 |0 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE
+<U0003> \x03 |0 # <control>
+<U0004> \x04 |0 # <control>
+<U1EB4> \x05 |0 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE
+<U1EAA> \x06 |0 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE
+<U0007> \x07 |0 # <control>
+<U0008> \x08 |0 # <control>
+<U0009> \x09 |0 # <control>
+<U000A> \x0A |0 # <control>
+<U000B> \x0B |0 # <control>
+<U000C> \x0C |0 # <control>
+<U000D> \x0D |0 # <control>
+<U000E> \x0E |0 # <control>
+<U000F> \x0F |0 # <control>
+<U0010> \x10 |0 # <control>
+<U0011> \x11 |0 # <control>
+<U0012> \x12 |0 # <control>
+<U0013> \x13 |0 # <control>
+<U1EF6> \x14 |0 # LATIN CAPITAL LETTER Y WITH HOOK ABOVE
+<U0015> \x15 |0 # <control>
+<U0016> \x16 |0 # <control>
+<U0017> \x17 |0 # <control>
+<U0018> \x18 |0 # <control>
+<U1EF8> \x19 |0 # LATIN CAPITAL LETTER Y WITH TILDE
+<U001A> \x1A |0 # <control>
+<U001B> \x1B |0 # <control>
+<U001C> \x1C |0 # <control>
+<U001D> \x1D |0 # <control>
+<U1EF4> \x1E |0 # LATIN CAPITAL LETTER Y WITH DOT BELOW
+<U001F> \x1F |0 # <control>
+<U0020> \x20 |0 # SPACE
+<U0021> \x21 |0 # EXCLAMATION MARK
+<U0022> \x22 |0 # QUOTATION MARK
+<U0023> \x23 |0 # NUMBER SIGN
+<U0024> \x24 |0 # DOLLAR SIGN
+<U0025> \x25 |0 # PERCENT SIGN
+<U0026> \x26 |0 # AMPERSAND
+<U0027> \x27 |0 # APOSTROPHE
+<U0028> \x28 |0 # LEFT PARENTHESIS
+<U0029> \x29 |0 # RIGHT PARENTHESIS
+<U002A> \x2A |0 # ASTERISK
+<U002B> \x2B |0 # PLUS SIGN
+<U002C> \x2C |0 # COMMA
+<U002D> \x2D |0 # HYPHEN-MINUS
+<U002E> \x2E |0 # FULL STOP
+<U002F> \x2F |0 # SOLIDUS
+<U0030> \x30 |0 # DIGIT ZERO
+<U0031> \x31 |0 # DIGIT ONE
+<U0032> \x32 |0 # DIGIT TWO
+<U0033> \x33 |0 # DIGIT THREE
+<U0034> \x34 |0 # DIGIT FOUR
+<U0035> \x35 |0 # DIGIT FIVE
+<U0036> \x36 |0 # DIGIT SIX
+<U0037> \x37 |0 # DIGIT SEVEN
+<U0038> \x38 |0 # DIGIT EIGHT
+<U0039> \x39 |0 # DIGIT NINE
+<U003A> \x3A |0 # COLON
+<U003B> \x3B |0 # SEMICOLON
+<U003C> \x3C |0 # LESS-THAN SIGN
+<U003D> \x3D |0 # EQUALS SIGN
+<U003E> \x3E |0 # GREATER-THAN SIGN
+<U003F> \x3F |0 # QUESTION MARK
+<U0040> \x40 |0 # COMMERCIAL AT
+<U0041> \x41 |0 # LATIN CAPITAL LETTER A
+<U0042> \x42 |0 # LATIN CAPITAL LETTER B
+<U0043> \x43 |0 # LATIN CAPITAL LETTER C
+<U0044> \x44 |0 # LATIN CAPITAL LETTER D
+<U0045> \x45 |0 # LATIN CAPITAL LETTER E
+<U0046> \x46 |0 # LATIN CAPITAL LETTER F
+<U0047> \x47 |0 # LATIN CAPITAL LETTER G
+<U0048> \x48 |0 # LATIN CAPITAL LETTER H
+<U0049> \x49 |0 # LATIN CAPITAL LETTER I
+<U004A> \x4A |0 # LATIN CAPITAL LETTER J
+<U004B> \x4B |0 # LATIN CAPITAL LETTER K
+<U004C> \x4C |0 # LATIN CAPITAL LETTER L
+<U004D> \x4D |0 # LATIN CAPITAL LETTER M
+<U004E> \x4E |0 # LATIN CAPITAL LETTER N
+<U004F> \x4F |0 # LATIN CAPITAL LETTER O
+<U0050> \x50 |0 # LATIN CAPITAL LETTER P
+<U0051> \x51 |0 # LATIN CAPITAL LETTER Q
+<U0052> \x52 |0 # LATIN CAPITAL LETTER R
+<U0053> \x53 |0 # LATIN CAPITAL LETTER S
+<U0054> \x54 |0 # LATIN CAPITAL LETTER T
+<U0055> \x55 |0 # LATIN CAPITAL LETTER U
+<U0056> \x56 |0 # LATIN CAPITAL LETTER V
+<U0057> \x57 |0 # LATIN CAPITAL LETTER W
+<U0058> \x58 |0 # LATIN CAPITAL LETTER X
+<U0059> \x59 |0 # LATIN CAPITAL LETTER Y
+<U005A> \x5A |0 # LATIN CAPITAL LETTER Z
+<U005B> \x5B |0 # LEFT SQUARE BRACKET
+<U005C> \x5C |0 # REVERSE SOLIDUS
+<U005D> \x5D |0 # RIGHT SQUARE BRACKET
+<U005E> \x5E |0 # CIRCUMFLEX ACCENT
+<U005F> \x5F |0 # LOW LINE
+<U0060> \x60 |0 # GRAVE ACCENT
+<U0061> \x61 |0 # LATIN SMALL LETTER A
+<U0062> \x62 |0 # LATIN SMALL LETTER B
+<U0063> \x63 |0 # LATIN SMALL LETTER C
+<U0064> \x64 |0 # LATIN SMALL LETTER D
+<U0065> \x65 |0 # LATIN SMALL LETTER E
+<U0066> \x66 |0 # LATIN SMALL LETTER F
+<U0067> \x67 |0 # LATIN SMALL LETTER G
+<U0068> \x68 |0 # LATIN SMALL LETTER H
+<U0069> \x69 |0 # LATIN SMALL LETTER I
+<U006A> \x6A |0 # LATIN SMALL LETTER J
+<U006B> \x6B |0 # LATIN SMALL LETTER K
+<U006C> \x6C |0 # LATIN SMALL LETTER L
+<U006D> \x6D |0 # LATIN SMALL LETTER M
+<U006E> \x6E |0 # LATIN SMALL LETTER N
+<U006F> \x6F |0 # LATIN SMALL LETTER O
+<U0070> \x70 |0 # LATIN SMALL LETTER P
+<U0071> \x71 |0 # LATIN SMALL LETTER Q
+<U0072> \x72 |0 # LATIN SMALL LETTER R
+<U0073> \x73 |0 # LATIN SMALL LETTER S
+<U0074> \x74 |0 # LATIN SMALL LETTER T
+<U0075> \x75 |0 # LATIN SMALL LETTER U
+<U0076> \x76 |0 # LATIN SMALL LETTER V
+<U0077> \x77 |0 # LATIN SMALL LETTER W
+<U0078> \x78 |0 # LATIN SMALL LETTER X
+<U0079> \x79 |0 # LATIN SMALL LETTER Y
+<U007A> \x7A |0 # LATIN SMALL LETTER Z
+<U007B> \x7B |0 # LEFT CURLY BRACKET
+<U007C> \x7C |0 # VERTICAL LINE
+<U007D> \x7D |0 # RIGHT CURLY BRACKET
+<U007E> \x7E |0 # TILDE
+<U007F> \x7F |0 # <control>
+<U1EA0> \x80 |0 # LATIN CAPITAL LETTER A WITH DOT BELOW
+<U1EAE> \x81 |0 # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE
+<U1EB0> \x82 |0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE
+<U1EB6> \x83 |0 # LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW
+<U1EA4> \x84 |0 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE
+<U1EA6> \x85 |0 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE
+<U1EAC> \x87 |0 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+<U1EBC> \x88 |0 # LATIN CAPITAL LETTER E WITH TILDE
+<U1EB8> \x89 |0 # LATIN CAPITAL LETTER E WITH DOT BELOW
+<U1EBE> \x8A |0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE
+<U1EC0> \x8B |0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE
+<U1EC2> \x8C |0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+<U1EC4> \x8D |0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE
+<U1EC6> \x8E |0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+<U1ED0> \x8F |0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE
+<U1ED2> \x90 |0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE
+<U1ED4> \x91 |0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+<U1ED6> \x92 |0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE
+<U1ED8> \x93 |0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+<U1EE2> \x94 |0 # LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW
+<U1EDA> \x95 |0 # LATIN CAPITAL LETTER O WITH HORN AND ACUTE
+<U1EDC> \x96 |0 # LATIN CAPITAL LETTER O WITH HORN AND GRAVE
+<U1EDE> \x97 |0 # LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE
+<U1ECA> \x98 |0 # LATIN CAPITAL LETTER I WITH DOT BELOW
+<U1ECE> \x99 |0 # LATIN CAPITAL LETTER O WITH HOOK ABOVE
+<U1ECC> \x9A |0 # LATIN CAPITAL LETTER O WITH DOT BELOW
+<U1EC8> \x9B |0 # LATIN CAPITAL LETTER I WITH HOOK ABOVE
+<U1EE6> \x9C |0 # LATIN CAPITAL LETTER U WITH HOOK ABOVE
+<U0168> \x9D |0 # LATIN CAPITAL LETTER U WITH TILDE
+<U1EE4> \x9E |0 # LATIN CAPITAL LETTER U WITH DOT BELOW
+<U1EF2> \x9F |0 # LATIN CAPITAL LETTER Y WITH GRAVE
+<U00D5> \xA0 |0 # LATIN CAPITAL LETTER O WITH TILDE
+<U1EAF> \xA1 |0 # LATIN SMALL LETTER A WITH BREVE AND ACUTE
+<U1EB1> \xA2 |0 # LATIN SMALL LETTER A WITH BREVE AND GRAVE
+<U1EB7> \xA3 |0 # LATIN SMALL LETTER A WITH BREVE AND DOT BELOW
+<U1EA5> \xA4 |0 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE
+<U1EA7> \xA5 |0 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE
+<U1EA8> \xA6 |0 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+<U1EAD> \xA7 |0 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+<U1EBD> \xA8 |0 # LATIN SMALL LETTER E WITH TILDE
+<U1EB9> \xA9 |0 # LATIN SMALL LETTER E WITH DOT BELOW
+<U1EBF> \xAA |0 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
+<U1EC1> \xAB |0 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
+<U1EC3> \xAC |0 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+<U1EC5> \xAD |0 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
+<U1EC7> \xAE |0 # LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+<U1ED1> \xAF |0 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE
+<U1ED3> \xB0 |0 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE
+<U1ED5> \xB1 |0 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+<U1ED7> \xB2 |0 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE
+<U1EE0> \xB3 |0 # LATIN CAPITAL LETTER O WITH HORN AND TILDE
+<U01A0> \xB4 |0 # LATIN CAPITAL LETTER O WITH HORN
+<U1ED9> \xB5 |0 # LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+<U1EDD> \xB6 |0 # LATIN SMALL LETTER O WITH HORN AND GRAVE
+<U1EDF> \xB7 |0 # LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE
+<U1ECB> \xB8 |0 # LATIN SMALL LETTER I WITH DOT BELOW
+<U1EF0> \xB9 |0 # LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW
+<U1EE8> \xBA |0 # LATIN CAPITAL LETTER U WITH HORN AND ACUTE
+<U1EEA> \xBB |0 # LATIN CAPITAL LETTER U WITH HORN AND GRAVE
+<U1EEC> \xBC |0 # LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE
+<U01A1> \xBD |0 # LATIN SMALL LETTER O WITH HORN
+<U1EDB> \xBE |0 # LATIN SMALL LETTER O WITH HORN AND ACUTE
+<U01AF> \xBF |0 # LATIN CAPITAL LETTER U WITH HORN
+<U00C0> \xC0 |0 # LATIN CAPITAL LETTER A WITH GRAVE
+<U00C1> \xC1 |0 # LATIN CAPITAL LETTER A WITH ACUTE
+<U00C2> \xC2 |0 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+<U00C3> \xC3 |0 # LATIN CAPITAL LETTER A WITH TILDE
+<U1EA2> \xC4 |0 # LATIN CAPITAL LETTER A WITH HOOK ABOVE
+<U0102> \xC5 |0 # LATIN CAPITAL LETTER A WITH BREVE
+<U1EB3> \xC6 |0 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE
+<U1EB5> \xC7 |0 # LATIN SMALL LETTER A WITH BREVE AND TILDE
+<U00C8> \xC8 |0 # LATIN CAPITAL LETTER E WITH GRAVE
+<U00C9> \xC9 |0 # LATIN CAPITAL LETTER E WITH ACUTE
+<U00CA> \xCA |0 # LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+<U1EBA> \xCB |0 # LATIN CAPITAL LETTER E WITH HOOK ABOVE
+<U00CC> \xCC |0 # LATIN CAPITAL LETTER I WITH GRAVE
+<U00CD> \xCD |0 # LATIN CAPITAL LETTER I WITH ACUTE
+<U0128> \xCE |0 # LATIN CAPITAL LETTER I WITH TILDE
+<U1EF3> \xCF |0 # LATIN SMALL LETTER Y WITH GRAVE
+<U0110> \xD0 |0 # LATIN CAPITAL LETTER D WITH STROKE
+<U1EE9> \xD1 |0 # LATIN SMALL LETTER U WITH HORN AND ACUTE
+<U00D2> \xD2 |0 # LATIN CAPITAL LETTER O WITH GRAVE
+<U00D3> \xD3 |0 # LATIN CAPITAL LETTER O WITH ACUTE
+<U00D4> \xD4 |0 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+<U1EA1> \xD5 |0 # LATIN SMALL LETTER A WITH DOT BELOW
+<U1EF7> \xD6 |0 # LATIN SMALL LETTER Y WITH HOOK ABOVE
+<U1EEB> \xD7 |0 # LATIN SMALL LETTER U WITH HORN AND GRAVE
+<U1EED> \xD8 |0 # LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE
+<U00D9> \xD9 |0 # LATIN CAPITAL LETTER U WITH GRAVE
+<U00DA> \xDA |0 # LATIN CAPITAL LETTER U WITH ACUTE
+<U1EF9> \xDB |0 # LATIN SMALL LETTER Y WITH TILDE
+<U1EF5> \xDC |0 # LATIN SMALL LETTER Y WITH DOT BELOW
+<U00DD> \xDD |0 # LATIN CAPITAL LETTER Y WITH ACUTE
+<U1EE1> \xDE |0 # LATIN SMALL LETTER O WITH HORN AND TILDE
+<U01B0> \xDF |0 # LATIN SMALL LETTER U WITH HORN
+<U00E0> \xE0 |0 # LATIN SMALL LETTER A WITH GRAVE
+<U00E1> \xE1 |0 # LATIN SMALL LETTER A WITH ACUTE
+<U00E2> \xE2 |0 # LATIN SMALL LETTER A WITH CIRCUMFLEX
+<U00E3> \xE3 |0 # LATIN SMALL LETTER A WITH TILDE
+<U1EA3> \xE4 |0 # LATIN SMALL LETTER A WITH HOOK ABOVE
+<U0103> \xE5 |0 # LATIN SMALL LETTER A WITH BREVE
+<U1EEF> \xE6 |0 # LATIN SMALL LETTER U WITH HORN AND TILDE
+<U1EAB> \xE7 |0 # LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
+<U00E8> \xE8 |0 # LATIN SMALL LETTER E WITH GRAVE
+<U00E9> \xE9 |0 # LATIN SMALL LETTER E WITH ACUTE
+<U00EA> \xEA |0 # LATIN SMALL LETTER E WITH CIRCUMFLEX
+<U1EBB> \xEB |0 # LATIN SMALL LETTER E WITH HOOK ABOVE
+<U00EC> \xEC |0 # LATIN SMALL LETTER I WITH GRAVE
+<U00ED> \xED |0 # LATIN SMALL LETTER I WITH ACUTE
+<U0129> \xEE |0 # LATIN SMALL LETTER I WITH TILDE
+<U1EC9> \xEF |0 # LATIN SMALL LETTER I WITH HOOK ABOVE
+<U0111> \xF0 |0 # LATIN SMALL LETTER D WITH STROKE
+<U1EF1> \xF1 |0 # LATIN SMALL LETTER U WITH HORN AND DOT BELOW
+<U00F2> \xF2 |0 # LATIN SMALL LETTER O WITH GRAVE
+<U00F3> \xF3 |0 # LATIN SMALL LETTER O WITH ACUTE
+<U00F4> \xF4 |0 # LATIN SMALL LETTER O WITH CIRCUMFLEX
+<U00F5> \xF5 |0 # LATIN SMALL LETTER O WITH TILDE
+<U1ECF> \xF6 |0 # LATIN SMALL LETTER O WITH HOOK ABOVE
+<U1ECD> \xF7 |0 # LATIN SMALL LETTER O WITH DOT BELOW
+<U1EE5> \xF8 |0 # LATIN SMALL LETTER U WITH DOT BELOW
+<U00F9> \xF9 |0 # LATIN SMALL LETTER U WITH GRAVE
+<U00FA> \xFA |0 # LATIN SMALL LETTER U WITH ACUTE
+<U0169> \xFB |0 # LATIN SMALL LETTER U WITH TILDE
+<U1EE7> \xFC |0 # LATIN SMALL LETTER U WITH HOOK ABOVE
+<U00FD> \xFD |0 # LATIN SMALL LETTER Y WITH ACUTE
+<U1EE3> \xFE |0 # LATIN SMALL LETTER O WITH HORN AND DOT BELOW
+<U1EEE> \xFF |0 # LATIN CAPITAL LETTER U WITH HORN AND TILDE
+END CHARMAP