aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-01-20 16:12:52 +0000
committerUlrich Drepper <drepper@redhat.com>1999-01-20 16:12:52 +0000
commit0f6052a803a04dd461e514884fe0856ee03fa4a0 (patch)
tree6e38b2646ccbe8d4f2f31065b4bbc0b0b8d6b164
parent8b4a471567e67f575c4582854d7688d36b348ec9 (diff)
downloadglibc-0f6052a803a04dd461e514884fe0856ee03fa4a0.zip
glibc-0f6052a803a04dd461e514884fe0856ee03fa4a0.tar.gz
glibc-0f6052a803a04dd461e514884fe0856ee03fa4a0.tar.bz2
Update.
* iconvdata/Makefile (modules): Add SAMI-WS2 and ISO-IR-197. * iconvdata/gconv-modules: Add entries for above charsets. * iconvdata/iso-ir-197.c: New file. * iconvdata/same-ws2.c: New file.
-rw-r--r--ChangeLog5
-rw-r--r--FAQ.in28
-rw-r--r--iconvdata/Makefile8
-rw-r--r--iconvdata/gconv-modules11
-rw-r--r--iconvdata/iso-ir-197.c29
-rw-r--r--iconvdata/sami-ws2.c29
-rw-r--r--localedata/charmaps/ISO-IR-197343
-rw-r--r--localedata/charmaps/SAMI-WS2344
8 files changed, 793 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 4a01aba..f8f484d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
1999-01-20 Ulrich Drepper <drepper@cygnus.com>
+ * iconvdata/Makefile (modules): Add SAMI-WS2 and ISO-IR-197.
+ * iconvdata/gconv-modules: Add entries for above charsets.
+ * iconvdata/iso-ir-197.c: New file.
+ * iconvdata/same-ws2.c: New file.
+
* sysdeps/unix/sysv/linux/vfork.c: Once again use generic version.
1999-01-18 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
diff --git a/FAQ.in b/FAQ.in
index 0af7145..b142f5b 100644
--- a/FAQ.in
+++ b/FAQ.in
@@ -832,6 +832,33 @@ passwd_compat: nis
group_compat: nis
shadow_compat: nis
+?? What needs to be recompiled when upgrading from glibc 2.0 to glibc
+ 2.1?
+
+{AJ,CG} If you just upgrade the glibc from 2.0.x (x <= 7) to 2.1, binaries
+that have been linked against glibc 2.0 will continue to work.
+
+If you compile your own binaries against glibc 2.1, you also need to
+recompile some other libraries. The problem is that libio had to be
+changed and therefore libraries that are based or depend on the libio
+of glibc, e.g. ncurses or slang, need to be recompiled. If you
+experience strange segmentation faults in your programs linked against
+glibc 2.1, you might need to recompile your libraries.
+
+Another problem is that older binaries that were linked statically against
+glibc 2.0 will reference the older nss modules (libnss_files.so.1 instead of
+libnss_files.so.2), so don't remove them. Also, the old glibc-2.0 compiled
+static libraries (libfoo.a) which happen to depend on the older libio
+behavior will be broken by the glibc 2.1 upgrade. The idea is to produce a
+libcompat.a that people will be able to use to link in if they want to
+compile a static library generated against glibc 2.0 into a program on a
+glibc 2.1 system. You should just add -lcompat and you should be fine.
+
+The glibc-compat add-on will provide the libnss_* files and other stuff so
+that it is possible to use static library compiled against glibc 2.0 for
+development on a glibc 2.1 based system. Please note that this is currently
+just an experiment, although the nss modules part should work.
+
? Source and binary incompatibilities, and what to do about them
@@ -1275,6 +1302,7 @@ Answers were given by:
{TK} Thorsten Kukuk, <kukuk@vt.uni-paderborn.de>
{GK} Geoffrey Keating, <geoffk@ozemail.com.au>
{HJ} H.J. Lu, <hjl@gnu.org>
+{CG} Cristian Gafton, <gafton@redhat.com>
Local Variables:
mode:outline
diff --git a/iconvdata/Makefile b/iconvdata/Makefile
index 984e4c4..bc024d1 100644
--- a/iconvdata/Makefile
+++ b/iconvdata/Makefile
@@ -43,7 +43,8 @@ modules := ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-5 \
ASMO_449 ANSI_X3.110 CSN_369103 CWI DEC-MCS ECMA-CYRILLIC \
GOST_19768-74 GREEK-CCITT GREEK7 GREEK7-OLD INIS INIS-8 \
INIS-CYRILLIC ISO_6937-2 ISO_2033 ISO_5427 ISO_5427-EXT \
- ISO_5428 ISO_10367-BOX MAC-IS MAC-UK NATS-DANO NATS-SEFI
+ ISO_5428 ISO_10367-BOX MAC-IS MAC-UK NATS-DANO NATS-SEFI \
+ SAMI-WS2 ISO-IR-197
modules.so := $(addsuffix .so, $(modules))
@@ -110,7 +111,7 @@ distribute := gconv-modules extra-module.mk gap.awk gaptab.awk \
jis0208.c jis0208.h jis0212.c jis0212.h johab.c koi-8.c \
koi8-r.c ksc5601.c ksc5601.h latin-greek.c latin-greek-1.c \
macintosh.c mac-is.c mac-uk.c nats-dano.c nats-sefi.c sjis.c \
- t.61.c uhc.c
+ t.61.c uhc.c sami-ws2.c iso-ir-197.c
# We build the transformation modules only when we build shared libs.
ifeq (yes,$(build-shared))
@@ -151,7 +152,8 @@ gen-8bit-gap-modules := koi8-r latin-greek latin-greek-1 ibm256 ibm273 \
greek-ccitt greek7 greek7-old inis inis-8 \
inis-cyrillic iso_2033 iso_5427 iso_5427-ext \
iso_5428 iso_10367-box mac-is nats-dano nats-sefi \
- iso8859-13 iso8859-14 iso8859-15 mac-uk
+ iso8859-13 iso8859-14 iso8859-15 mac-uk sami-ws2 \
+ iso-ir-197
gen-special-modules := iso8859-7jp
diff --git a/iconvdata/gconv-modules b/iconvdata/gconv-modules
index 2aaea07..7aa4da5 100644
--- a/iconvdata/gconv-modules
+++ b/iconvdata/gconv-modules
@@ -1,5 +1,5 @@
# GNU libc iconv configuration.
-# Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+# Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
#
@@ -1120,3 +1120,12 @@ alias ISO-IR-8-1// NATS-SEFI//
alias CSNATSSEFI// NATS-SEFI//
module NATS-SEFI// INTERNAL NATS-SEFI 1
module INTERNAL NATS-SEFI// NATS-SEFI 1
+
+# from to module cost
+alias WS2// WIN-SAMI-2//
+module WIN-SAMI-2// INTERNAL SAMI-WS2 1
+module INTERNAL WIN-SAMI-2// SAMI-WS2 1
+
+# from to module cost
+module ISO-IR-197// INTERNAL ISO-IR-197 1
+module INTERNAL ISO-IR-197// ISO-IR-197 1
diff --git a/iconvdata/iso-ir-197.c b/iconvdata/iso-ir-197.c
new file mode 100644
index 0000000..21f47f4
--- /dev/null
+++ b/iconvdata/iso-ir-197.c
@@ -0,0 +1,29 @@
+/* Conversion from and to ISO-IR-197.
+ Copyright (C) 1999 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <stdint.h>
+
+/* Get the conversion table. */
+#define TABLES <iso-ir-197.h>
+
+#define CHARSET_NAME "ISO-IR-197//"
+#define HAS_HOLES 1 /* Not all 256 character are defined. */
+
+#include <8bit-gap.c>
diff --git a/iconvdata/sami-ws2.c b/iconvdata/sami-ws2.c
new file mode 100644
index 0000000..20eb5f9
--- /dev/null
+++ b/iconvdata/sami-ws2.c
@@ -0,0 +1,29 @@
+/* Conversion from and to SAMI-WS2.
+ Copyright (C) 1999 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If not,
+ write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+#include <stdint.h>
+
+/* Get the conversion table. */
+#define TABLES <sami-ws2.h>
+
+#define CHARSET_NAME "SAMI-WS2//"
+#define HAS_HOLES 1 /* Not all 256 character are defined. */
+
+#include <8bit-gap.c>
diff --git a/localedata/charmaps/ISO-IR-197 b/localedata/charmaps/ISO-IR-197
new file mode 100644
index 0000000..cfdfbeb
--- /dev/null
+++ b/localedata/charmaps/ISO-IR-197
@@ -0,0 +1,343 @@
+<code_set_name>ISO-IR-197
+<comment_char> %
+<escape_char> /
+% source: http://www.itek.norut.no/project/barent/barsek/ip/197t.html
+% author: Petter Reinholdtsen <pere@td.org.uit.no>
+% date: 1998-08-31
+% comment: Proposed nothern sami charset. Superseeded by WS2
+
+% alias none
+
+CHARMAP
+<NU> /x00 <U0000> NULL (NUL)
+<SH> /x01 <U0001> START OF HEADING (SOH)
+<SX> /x02 <U0002> START OF TEXT (STX)
+<EX> /x03 <U0003> END OF TEXT (ETX)
+<ET> /x04 <U0004> END OF TRANSMISSION (EOT)
+<EQ> /x05 <U0005> ENQUIRY (ENQ)
+<AK> /x06 <U0006> ACKNOWLEDGE (ACK)
+<BL> /x07 <U0007> BELL (BEL)
+<BS> /x08 <U0008> BACKSPACE (BS)
+<HT> /x09 <U0009> CHARACTER TABULATION (HT)
+<LF> /x0A <U000A> LINE FEED (LF)
+<VT> /x0B <U000B> LINE TABULATION (VT)
+<FF> /x0C <U000C> FORM FEED (FF)
+<CR> /x0D <U000D> CARRIAGE RETURN (CR)
+<SO> /x0E <U000E> SHIFT OUT (SO)
+<SI> /x0F <U000F> SHIFT IN (SI)
+<DL> /x10 <U0010> DATALINK ESCAPE (DLE)
+<D1> /x11 <U0011> DEVICE CONTROL ONE (DC1)
+<D2> /x12 <U0012> DEVICE CONTROL TWO (DC2)
+<D3> /x13 <U0013> DEVICE CONTROL THREE (DC3)
+<D4> /x14 <U0014> DEVICE CONTROL FOUR (DC4)
+<NK> /x15 <U0015> NEGATIVE ACKNOWLEDGE (NAK)
+<SY> /x16 <U0016> SYNCHRONOUS IDLE (SYN)
+<EB> /x17 <U0017> END OF TRANSMISSION BLOCK (ETB)
+<CN> /x18 <U0018> CANCEL (CAN)
+<EM> /x19 <U0019> END OF MEDIUM (EM)
+<SB> /x1A <U001A> SUBSTITUTE (SUB)
+<EC> /x1B <U001B> ESCAPE (ESC)
+<FS> /x1C <U001C> FILE SEPARATOR (IS4)
+<GS> /x1D <U001D> GROUP SEPARATOR (IS3)
+<RS> /x1E <U001E> RECORD SEPARATOR (IS2)
+<US> /x1F <U001F> UNIT SEPARATOR (IS1)
+<SP> /x20 <U0020> SPACE
+<!> /x21 <U0021> EXCLAMATION MARK
+<"> /x22 <U0022> QUOTATION MARK
+<Nb> /x23 <U0023> NUMBER SIGN
+<DO> /x24 <U0024> DOLLAR SIGN
+<%> /x25 <U0025> PERCENT SIGN
+<&> /x26 <U0026> AMPERSAND
+<'> /x27 <U0027> APOSTROPHE
+<(> /x28 <U0028> LEFT PARENTHESIS
+<)> /x29 <U0029> RIGHT PARENTHESIS
+<*> /x2A <U002A> ASTERISK
+<+> /x2B <U002B> PLUS SIGN
+<,> /x2C <U002C> COMMA
+<-> /x2D <U002D> HYPHEN-MINUS
+<.> /x2E <U002E> FULL STOP
+<//> /x2F <U002F> SOLIDUS
+<0> /x30 <U0030> DIGIT ZERO
+<1> /x31 <U0031> DIGIT ONE
+<2> /x32 <U0032> DIGIT TWO
+<3> /x33 <U0033> DIGIT THREE
+<4> /x34 <U0034> DIGIT FOUR
+<5> /x35 <U0035> DIGIT FIVE
+<6> /x36 <U0036> DIGIT SIX
+<7> /x37 <U0037> DIGIT SEVEN
+<8> /x38 <U0038> DIGIT EIGHT
+<9> /x39 <U0039> DIGIT NINE
+<:> /x3A <U003A> COLON
+<;> /x3B <U003B> SEMICOLON
+<<> /x3C <U003C> LESS-THAN SIGN
+<=> /x3D <U003D> EQUALS SIGN
+</>> /x3E <U003E> GREATER-THAN SIGN
+<?> /x3F <U003F> QUESTION MARK
+<At> /x40 <U0040> COMMERCIAL AT
+<A> /x41 <U0041> LATIN CAPITAL LETTER A
+<B> /x42 <U0042> LATIN CAPITAL LETTER B
+<C> /x43 <U0043> LATIN CAPITAL LETTER C
+<D> /x44 <U0044> LATIN CAPITAL LETTER D
+<E> /x45 <U0045> LATIN CAPITAL LETTER E
+<F> /x46 <U0046> LATIN CAPITAL LETTER F
+<G> /x47 <U0047> LATIN CAPITAL LETTER G
+<H> /x48 <U0048> LATIN CAPITAL LETTER H
+<I> /x49 <U0049> LATIN CAPITAL LETTER I
+<J> /x4A <U004A> LATIN CAPITAL LETTER J
+<K> /x4B <U004B> LATIN CAPITAL LETTER K
+<L> /x4C <U004C> LATIN CAPITAL LETTER L
+<M> /x4D <U004D> LATIN CAPITAL LETTER M
+<N> /x4E <U004E> LATIN CAPITAL LETTER N
+<O> /x4F <U004F> LATIN CAPITAL LETTER O
+<P> /x50 <U0050> LATIN CAPITAL LETTER P
+<Q> /x51 <U0051> LATIN CAPITAL LETTER Q
+<R> /x52 <U0052> LATIN CAPITAL LETTER R
+<S> /x53 <U0053> LATIN CAPITAL LETTER S
+<T> /x54 <U0054> LATIN CAPITAL LETTER T
+<U> /x55 <U0055> LATIN CAPITAL LETTER U
+<V> /x56 <U0056> LATIN CAPITAL LETTER V
+<W> /x57 <U0057> LATIN CAPITAL LETTER W
+<X> /x58 <U0058> LATIN CAPITAL LETTER X
+<Y> /x59 <U0059> LATIN CAPITAL LETTER Y
+<Z> /x5A <U005A> LATIN CAPITAL LETTER Z
+<<(> /x5B <U005B> LEFT SQUARE BRACKET
+<////> /x5C <U005C> REVERSE SOLIDUS
+<)/>> /x5D <U005D> RIGHT SQUARE BRACKET
+<'/>> /x5E <U005E> CIRCUMFLEX ACCENT
+<_> /x5F <U005F> LOW LINE
+<'!> /x60 <U0060> GRAVE ACCENT
+<a> /x61 <U0061> LATIN SMALL LETTER A
+<b> /x62 <U0062> LATIN SMALL LETTER B
+<c> /x63 <U0063> LATIN SMALL LETTER C
+<d> /x64 <U0064> LATIN SMALL LETTER D
+<e> /x65 <U0065> LATIN SMALL LETTER E
+<f> /x66 <U0066> LATIN SMALL LETTER F
+<g> /x67 <U0067> LATIN SMALL LETTER G
+<h> /x68 <U0068> LATIN SMALL LETTER H
+<i> /x69 <U0069> LATIN SMALL LETTER I
+<j> /x6A <U006A> LATIN SMALL LETTER J
+<k> /x6B <U006B> LATIN SMALL LETTER K
+<l> /x6C <U006C> LATIN SMALL LETTER L
+<m> /x6D <U006D> LATIN SMALL LETTER M
+<n> /x6E <U006E> LATIN SMALL LETTER N
+<o> /x6F <U006F> LATIN SMALL LETTER O
+<p> /x70 <U0070> LATIN SMALL LETTER P
+<q> /x71 <U0071> LATIN SMALL LETTER Q
+<r> /x72 <U0072> LATIN SMALL LETTER R
+<s> /x73 <U0073> LATIN SMALL LETTER S
+<t> /x74 <U0074> LATIN SMALL LETTER T
+<u> /x75 <U0075> LATIN SMALL LETTER U
+<v> /x76 <U0076> LATIN SMALL LETTER V
+<w> /x77 <U0077> LATIN SMALL LETTER W
+<x> /x78 <U0078> LATIN SMALL LETTER X
+<y> /x79 <U0079> LATIN SMALL LETTER Y
+<z> /x7A <U007A> LATIN SMALL LETTER Z
+<(!> /x7B <U007B> LEFT CURLY BRACKET
+<!!> /x7C <U007C> VERTICAL LINE
+<!)> /x7D <U007D> RIGHT CURLY BRACKET
+<'?> /x7E <U007E> TILDE
+<DT> /x7F <U007F> DELETE (DEL)
+<.9> /x82 <U201A> SINGLE LOW-9 QUOTATION MARK
+<f2> /x83 <U0192> LATIN SMALL LETTER F WITH HOOK
+<:9> /x84 <U201E> DOUBLE LOW-9 QUOTATION MARK
+<.3> /x85 <U2026> HORIZONTAL ELLIPSIS
+<NO> /x86 <U00AC> NOT SIGN
+<!=> /x87 <U2260> NOT EQUAL TO
+<Pd>> /x88 <U00A3> POUND SIGN
+<%0> /x89 <U2030> PER MILLE SIGN
+<?I> /x8A <U00BF> INVERTED QUESTION MARK
+<=<> /x8B <U2264> LESS-THAN OR EQUAL TO
+<OE> /x8C <U0152> LATIN CAPITAL LIGATURE OE
+<'6> /x91 <U2018> LEFT SINGLE QUOTATION MARK
+<'9> /x92 <U2019> RIGHT SINGLE QUOTATION MARK
+<"6> /x93 <U201C> LEFT DOUBLE QUOTATION MARK
+<"9> /x94 <U201D> RIGHT DOUBLE QUOTATION MARK
+<Sb> /x95 <U2022> BULLET
+<-N> /x96 <U2013> EN DASH
+<-M> /x97 <U2014> EM DASH
+<Rg> /x98 <U00AE> REGISTERED SIGN
+<TM> /x99 <U2122> TRADE MARK SIGN
+<!I> /x9A <U00A1> INVERTED EXCLAMATION MARK
+</>=> /x9B <U2265> GREATER-THAN OR EQUAL TO
+<oe> /x9C <U0153> LATIN SMALL LIGATURE OE
+<Y:> /x9F <U0178> LATIN CAPITAL LETTER Y WITH DIAERESIS
+<NS> /xA0 <U00A0> NO-BREAK SPACE
+<C<> /xA1 <U010C> LATIN CAPITAL LETTER C WITH CARON
+<c<> /xA2 <U010D> LATIN SMALL LETTER C WITH CARON
+<D//> /xA3 <U0110> LATIN CAPITAL LETTER D WITH STROKE
+<d//> /xA4 <U0111> LATIN SMALL LETTER D WITH STROKE
+<G//> /xA5 <U01E4> LATIN CAPITAL LETTER G WITH STROKE
+<g//> /xA6 <U01E5> LATIN SMALL LETTER G WITH STROKE
+<SE> /xA7 <U00A7> SECTION SIGN
+<G<> /xA8 <U01E6> LATIN CAPITAL LETTER G WITH CARON
+<Co> /xA9 <U00A9> COPYRIGHT SIGN
+<g<> /xAA <U01E7> LATIN SMALL LETTER G WITH CARON
+<<<> /xAB <U00AB> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+<K<> /xAC <U01E8> LATIN CAPITAL LETTER K WITH CARON
+<--> /xAD <U00AD> SOFT HYPHEN
+<k<> /xAE <U01E9> LATIN SMALL LETTER K WITH CARON
+<NG> /xAF <U014A> LATIN CAPITAL LETTER ENG (Sami)
+<DG> /xB0 <U00B0> DEGREE SIGN
+<ng> /xB1 <U014B> LATIN SMALL LETTER ENG (Sami)
+<S<> /xB2 <U0160> LATIN CAPITAL LETTER S WITH CARON
+<s<> /xB3 <U0161> LATIN SMALL LETTER S WITH CARON
+<''> /xB4 <U00B4> ACUTE ACCENT
+<T//> /xB5 <U0166> LATIN CAPITAL LETTER T WITH STROKE
+<PI> /xB6 <U00B6> PILCROW SIGN
+<.M> /xB7 <U00B7> MIDDLE DOT
+<t//> /xB8 <U0167> LATIN SMALL LETTER T WITH STROKE
+<Z<> /xB9 <U017D> LATIN CAPITAL LETTER Z WITH CARON
+<z<> /xBA <U017E> LATIN SMALL LETTER Z WITH CARON
+</>/>> /xBB <U00BB> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+<ED> /xBC <U01B7> LATIN CAPITAL LETTER EZH
+<ed> /xBD <U0292> LATIN SMALL LETTER EZH
+<EZ> /xBE <U01EE> LATIN CAPITAL LETTER EZH WITH CARON
+<ez> /xBF <U01EF> LATIN SMALL LETTER EZH WITH CARON
+<A!> /xC0 <U00C0> LATIN CAPITAL LETTER A WITH GRAVE
+<A'> /xC1 <U00C1> LATIN CAPITAL LETTER A WITH ACUTE
+<A/>> /xC2 <U00C2> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+<A?> /xC3 <U00C3> LATIN CAPITAL LETTER A WITH TILDE
+<A:> /xC4 <U00C4> LATIN CAPITAL LETTER A WITH DIAERESIS
+<AA> /xC5 <U00C5> LATIN CAPITAL LETTER A WITH RING ABOVE
+<AE> /xC6 <U00C6> LATIN CAPITAL LETTER AE
+<C,> /xC7 <U00C7> LATIN CAPITAL LETTER C WITH CEDILLA
+<E!> /xC8 <U00C8> LATIN CAPITAL LETTER E WITH GRAVE
+<E'> /xC9 <U00C9> LATIN CAPITAL LETTER E WITH ACUTE
+<E/>> /xCA <U00CA> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+<E:> /xCB <U00CB> LATIN CAPITAL LETTER E WITH DIAERESIS
+<I!> /xCC <U00CC> LATIN CAPITAL LETTER I WITH GRAVE
+<I'> /xCD <U00CD> LATIN CAPITAL LETTER I WITH ACUTE
+<I/>> /xCE <U00CE> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+<I:> /xCF <U00CF> LATIN CAPITAL LETTER I WITH DIAERESIS
+<D-> /xD0 <U00D0> LATIN CAPITAL LETTER ETH (Icelandic)
+<N?> /xD1 <U00D1> LATIN CAPITAL LETTER N WITH TILDE
+<O!> /xD2 <U00D2> LATIN CAPITAL LETTER O WITH GRAVE
+<O'> /xD3 <U00D3> LATIN CAPITAL LETTER O WITH ACUTE
+<O/>> /xD4 <U00D4> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+<O?> /xD5 <U00D5> LATIN CAPITAL LETTER O WITH TILDE
+<O:> /xD6 <U00D6> LATIN CAPITAL LETTER O WITH DIAERESIS
+<*X> /xD7 <U00D7> MULTIPLICATION SIGN
+<O//> /xD8 <U00D8> LATIN CAPITAL LETTER O WITH STROKE
+<U!> /xD9 <U00D9> LATIN CAPITAL LETTER U WITH GRAVE
+<U'> /xDA <U00DA> LATIN CAPITAL LETTER U WITH ACUTE
+<U/>> /xDB <U00DB> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+<U:> /xDC <U00DC> LATIN CAPITAL LETTER U WITH DIAERESIS
+<Y'> /xDD <U00DD> LATIN CAPITAL LETTER Y WITH ACUTE
+<TH> /xDE <U00DE> LATIN CAPITAL LETTER THORN (Icelandic)
+<ss> /xDF <U00DF> LATIN SMALL LETTER SHARP S (German)
+<a!> /xE0 <U00E0> LATIN SMALL LETTER A WITH GRAVE
+<a'> /xE1 <U00E1> LATIN SMALL LETTER A WITH ACUTE
+<a/>> /xE2 <U00E2> LATIN SMALL LETTER A WITH CIRCUMFLEX
+<a?> /xE3 <U00E3> LATIN SMALL LETTER A WITH TILDE
+<a:> /xE4 <U00E4> LATIN SMALL LETTER A WITH DIAERESIS
+<aa> /xE5 <U00E5> LATIN SMALL LETTER A WITH RING ABOVE
+<ae> /xE6 <U00E6> LATIN SMALL LETTER AE
+<c,> /xE7 <U00E7> LATIN SMALL LETTER C WITH CEDILLA
+<e!> /xE8 <U00E8> LATIN SMALL LETTER E WITH GRAVE
+<e'> /xE9 <U00E9> LATIN SMALL LETTER E WITH ACUTE
+<e/>> /xEA <U00EA> LATIN SMALL LETTER E WITH CIRCUMFLEX
+<e:> /xEB <U00EB> LATIN SMALL LETTER E WITH DIAERESIS
+<i!> /xEC <U00EC> LATIN SMALL LETTER I WITH GRAVE
+<i'> /xED <U00ED> LATIN SMALL LETTER I WITH ACUTE
+<i/>> /xEE <U00EE> LATIN SMALL LETTER I WITH CIRCUMFLEX
+<i:> /xEF <U00EF> LATIN SMALL LETTER I WITH DIAERESIS
+<d-> /xF0 <U00F0> LATIN SMALL LETTER ETH (Icelandic)
+<n?> /xF1 <U00F1> LATIN SMALL LETTER N WITH TILDE
+<o!> /xF2 <U00F2> LATIN SMALL LETTER O WITH GRAVE
+<o'> /xF3 <U00F3> LATIN SMALL LETTER O WITH ACUTE
+<o/>> /xF4 <U00F4> LATIN SMALL LETTER O WITH CIRCUMFLEX
+<o?> /xF5 <U00F5> LATIN SMALL LETTER O WITH TILDE
+<o:> /xF6 <U00F6> LATIN SMALL LETTER O WITH DIAERESIS
+<-:> /xF7 <U00F7> DIVISION SIGN
+<o//> /xF8 <U00F8> LATIN SMALL LETTER O WITH STROKE
+<u!> /xF9 <U00F9> LATIN SMALL LETTER U WITH GRAVE
+<u'> /xFA <U00FA> LATIN SMALL LETTER U WITH ACUTE
+<u/>> /xFB <U00FB> LATIN SMALL LETTER U WITH CIRCUMFLEX
+<u:> /xFC <U00FC> LATIN SMALL LETTER U WITH DIAERESIS
+<y'> /xFD <U00FD> LATIN SMALL LETTER Y WITH ACUTE
+<th> /xFE <U00FE> LATIN SMALL LETTER THORN (Icelandic)
+<y:> /xFF <U00FF> LATIN SMALL LETTER Y WITH DIAERESIS
+<NUL> /x00 <U0000> NUL
+<SOH> /x01 <U0001> START OF HEADING (SOH)
+<STX> /x02 <U0002> START OF TEXT (STX)
+<ETX> /x03 <U0003> END OF TEXT (ETX)
+<EOT> /x04 <U0004> END OF TRANSMISSION (EOT)
+<ENQ> /x05 <U0005> ENQUIRY (ENQ)
+<ACK> /x06 <U0006> ACKNOWLEDGE (ACK)
+<alert> /x07 <U0007> BELL (BEL)
+<BEL> /x07 <U0007> BELL (BEL)
+<backspace> /x08 <U0008> BACKSPACE (BS)
+<tab> /x09 <U0009> CHARACTER TABULATION (HT)
+<newline> /x0A <U000A> LINE FEED (LF)
+<vertical-tab> /x0B <U000B> LINE TABULATION (VT)
+<form-feed> /x0C <U000C> FORM FEED (FF)
+<carriage-return> /x0D <U000D> CARRIAGE RETURN (CR)
+<DLE> /x10 <U0010> DATALINK ESCAPE (DLE)
+<DC1> /x11 <U0011> DEVICE CONTROL ONE (DC1)
+<DC2> /x12 <U0012> DEVICE CONTROL TWO (DC2)
+<DC3> /x13 <U0013> DEVICE CONTROL THREE (DC3)
+<DC4> /x14 <U0014> DEVICE CONTROL FOUR (DC4)
+<NAK> /x15 <U0015> NEGATIVE ACKNOWLEDGE (NAK)
+<SYN> /x16 <U0016> SYNCHRONOUS IDLE (SYN)
+<ETB> /x17 <U0017> END OF TRANSMISSION BLOCK (ETB)
+<CAN> /x18 <U0018> CANCEL (CAN)
+<SUB> /x1A <U001A> SUBSTITUTE (SUB)
+<ESC> /x1B <U001B> ESCAPE (ESC)
+<IS4> /x1C <U001C> FILE SEPARATOR (IS4)
+<IS3> /x1D <U001D> GROUP SEPARATOR (IS3)
+<intro> /x1D <U001D> GROUP SEPARATOR (IS3)
+<IS2> /x1E <U001E> RECORD SEPARATOR (IS2)
+<IS1> /x1F <U001F> UNIT SEPARATOR (IS1)
+<DEL> /x7F <U007F> DELETE (DEL)
+<space> /x20 <U0020> SPACE
+<exclamation-mark> /x21 <U0021> EXCLAMATION MARK
+<quotation-mark> /x22 <U0022> QUOTATION MARK
+<number-sign> /x23 <U0023> NUMBER SIGN
+<dollar-sign> /x24 <U0024> DOLLAR SIGN
+<percent-sign> /x25 <U0025> PERCENT SIGN
+<ampersand> /x26 <U0026> AMPERSAND
+<apostrophe> /x27 <U0027> APOSTROPHE
+<left-parenthesis> /x28 <U0028> LEFT PARENTHESIS
+<right-parenthesis> /x29 <U0029> RIGHT PARENTHESIS
+<asterisk> /x2A <U002A> ASTERISK
+<plus-sign> /x2B <U002B> PLUS SIGN
+<comma> /x2C <U002C> COMMA
+<hyphen> /x2D <U002D> HYPHEN-MINUS
+<hyphen-minus> /x2D <U002D> HYPHEN-MINUS
+<period> /x2E <U002E> FULL STOP
+<full-stop> /x2E <U002E> FULL STOP
+<slash> /x2F <U002F> SOLIDUS
+<solidus> /x2F <U002F> SOLIDUS
+<zero> /x30 <U0030> DIGIT ZERO
+<one> /x31 <U0031> DIGIT ONE
+<two> /x32 <U0032> DIGIT TWO
+<three> /x33 <U0033> DIGIT THREE
+<four> /x34 <U0034> DIGIT FOUR
+<five> /x35 <U0035> DIGIT FIVE
+<six> /x36 <U0036> DIGIT SIX
+<seven> /x37 <U0037> DIGIT SEVEN
+<eight> /x38 <U0038> DIGIT EIGHT
+<nine> /x39 <U0039> DIGIT NINE
+<colon> /x3A <U003A> COLON
+<semicolon> /x3B <U003B> SEMICOLON
+<less-than-sign> /x3C <U003C> LESS-THAN SIGN
+<equals-sign> /x3D <U003D> EQUALS SIGN
+<greater-than-sign> /x3E <U003E> GREATER-THAN SIGN
+<question-mark> /x3F <U003F> QUESTION MARK
+<commercial-at> /x40 <U0040> COMMERCIAL AT
+<left-square-bracket> /x5B <U005B> LEFT SQUARE BRACKET
+<backslash> /x5C <U005C> REVERSE SOLIDUS
+<reverse-solidus> /x5C <U005C> REVERSE SOLIDUS
+<right-square-bracket> /x5D <U005D> RIGHT SQUARE BRACKET
+<circumflex> /x5E <U005E> CIRCUMFLEX ACCENT
+<circumflex-accent> /x5E <U005E> CIRCUMFLEX ACCENT
+<underscore> /x5F <U005F> LOW LINE
+<low-line> /x5F <U005F> LOW LINE
+<grave-accent> /x60 <U0060> GRAVE ACCENT
+<left-brace> /x7B <U007B> LEFT CURLY BRACKET
+<left-curly-bracket> /x7B <U007B> LEFT CURLY BRACKET
+<vertical-line> /x7C <U007C> VERTICAL LINE
+<right-brace> /x7D <U007D> RIGHT CURLY BRACKET
+<right-curly-bracket> /x7D <U007D> RIGHT CURLY BRACKET
+<tilde> /x7E <U007E> TILDE
+END CHARMAP
diff --git a/localedata/charmaps/SAMI-WS2 b/localedata/charmaps/SAMI-WS2
new file mode 100644
index 0000000..fc60035
--- /dev/null
+++ b/localedata/charmaps/SAMI-WS2
@@ -0,0 +1,344 @@
+<code_set_name> WIN-SAMI-2
+<comment_char> %
+<escape_char> /
+% source: <URL:http://www2.isl.uit.no/trond/ws2t.html> and
+% <URL:http://www.unicode.org/unicode/alloc/Pipeline.html>
+% author: Petter Reinholdtsen <pere@td.org.uit.no>
+% date: 1999-01-20
+% based on info from Trond Trosterud <Trond.Trosterud@hum.uit.no>.
+% This charmap is based on MS CP1252, not ISO 8859/1.
+
+% alias WS2
+CHARMAP
+<NU> /x00 <U0000> NULL (NUL)
+<SH> /x01 <U0001> START OF HEADING (SOH)
+<SX> /x02 <U0002> START OF TEXT (STX)
+<EX> /x03 <U0003> END OF TEXT (ETX)
+<ET> /x04 <U0004> END OF TRANSMISSION (EOT)
+<EQ> /x05 <U0005> ENQUIRY (ENQ)
+<AK> /x06 <U0006> ACKNOWLEDGE (ACK)
+<BL> /x07 <U0007> BELL (BEL)
+<BS> /x08 <U0008> BACKSPACE (BS)
+<HT> /x09 <U0009> CHARACTER TABULATION (HT)
+<LF> /x0A <U000A> LINE FEED (LF)
+<VT> /x0B <U000B> LINE TABULATION (VT)
+<FF> /x0C <U000C> FORM FEED (FF)
+<CR> /x0D <U000D> CARRIAGE RETURN (CR)
+<SO> /x0E <U000E> SHIFT OUT (SO)
+<SI> /x0F <U000F> SHIFT IN (SI)
+<DL> /x10 <U0010> DATALINK ESCAPE (DLE)
+<D1> /x11 <U0011> DEVICE CONTROL ONE (DC1)
+<D2> /x12 <U0012> DEVICE CONTROL TWO (DC2)
+<D3> /x13 <U0013> DEVICE CONTROL THREE (DC3)
+<D4> /x14 <U0014> DEVICE CONTROL FOUR (DC4)
+<NK> /x15 <U0015> NEGATIVE ACKNOWLEDGE (NAK)
+<SY> /x16 <U0016> SYNCHRONOUS IDLE (SYN)
+<EB> /x17 <U0017> END OF TRANSMISSION BLOCK (ETB)
+<CN> /x18 <U0018> CANCEL (CAN)
+<EM> /x19 <U0019> END OF MEDIUM (EM)
+<SB> /x1A <U001A> SUBSTITUTE (SUB)
+<EC> /x1B <U001B> ESCAPE (ESC)
+<FS> /x1C <U001C> FILE SEPARATOR (IS4)
+<GS> /x1D <U001D> GROUP SEPARATOR (IS3)
+<RS> /x1E <U001E> RECORD SEPARATOR (IS2)
+<US> /x1F <U001F> UNIT SEPARATOR (IS1)
+<SP> /x20 <U0020> SPACE
+<!> /x21 <U0021> EXCLAMATION MARK
+<"> /x22 <U0022> QUOTATION MARK
+<Nb> /x23 <U0023> NUMBER SIGN
+<DO> /x24 <U0024> DOLLAR SIGN
+<%> /x25 <U0025> PERCENT SIGN
+<&> /x26 <U0026> AMPERSAND
+<'> /x27 <U0027> APOSTROPHE
+<(> /x28 <U0028> LEFT PARENTHESIS
+<)> /x29 <U0029> RIGHT PARENTHESIS
+<*> /x2A <U002A> ASTERISK
+<+> /x2B <U002B> PLUS SIGN
+<,> /x2C <U002C> COMMA
+<-> /x2D <U002D> HYPHEN-MINUS
+<.> /x2E <U002E> FULL STOP
+<//> /x2F <U002F> SOLIDUS
+<0> /x30 <U0030> DIGIT ZERO
+<1> /x31 <U0031> DIGIT ONE
+<2> /x32 <U0032> DIGIT TWO
+<3> /x33 <U0033> DIGIT THREE
+<4> /x34 <U0034> DIGIT FOUR
+<5> /x35 <U0035> DIGIT FIVE
+<6> /x36 <U0036> DIGIT SIX
+<7> /x37 <U0037> DIGIT SEVEN
+<8> /x38 <U0038> DIGIT EIGHT
+<9> /x39 <U0039> DIGIT NINE
+<:> /x3A <U003A> COLON
+<;> /x3B <U003B> SEMICOLON
+<<> /x3C <U003C> LESS-THAN SIGN
+<=> /x3D <U003D> EQUALS SIGN
+</>> /x3E <U003E> GREATER-THAN SIGN
+<?> /x3F <U003F> QUESTION MARK
+<At> /x40 <U0040> COMMERCIAL AT
+<A> /x41 <U0041> LATIN CAPITAL LETTER A
+<B> /x42 <U0042> LATIN CAPITAL LETTER B
+<C> /x43 <U0043> LATIN CAPITAL LETTER C
+<D> /x44 <U0044> LATIN CAPITAL LETTER D
+<E> /x45 <U0045> LATIN CAPITAL LETTER E
+<F> /x46 <U0046> LATIN CAPITAL LETTER F
+<G> /x47 <U0047> LATIN CAPITAL LETTER G
+<H> /x48 <U0048> LATIN CAPITAL LETTER H
+<I> /x49 <U0049> LATIN CAPITAL LETTER I
+<J> /x4A <U004A> LATIN CAPITAL LETTER J
+<K> /x4B <U004B> LATIN CAPITAL LETTER K
+<L> /x4C <U004C> LATIN CAPITAL LETTER L
+<M> /x4D <U004D> LATIN CAPITAL LETTER M
+<N> /x4E <U004E> LATIN CAPITAL LETTER N
+<O> /x4F <U004F> LATIN CAPITAL LETTER O
+<P> /x50 <U0050> LATIN CAPITAL LETTER P
+<Q> /x51 <U0051> LATIN CAPITAL LETTER Q
+<R> /x52 <U0052> LATIN CAPITAL LETTER R
+<S> /x53 <U0053> LATIN CAPITAL LETTER S
+<T> /x54 <U0054> LATIN CAPITAL LETTER T
+<U> /x55 <U0055> LATIN CAPITAL LETTER U
+<V> /x56 <U0056> LATIN CAPITAL LETTER V
+<W> /x57 <U0057> LATIN CAPITAL LETTER W
+<X> /x58 <U0058> LATIN CAPITAL LETTER X
+<Y> /x59 <U0059> LATIN CAPITAL LETTER Y
+<Z> /x5A <U005A> LATIN CAPITAL LETTER Z
+<<(> /x5B <U005B> LEFT SQUARE BRACKET
+<////> /x5C <U005C> REVERSE SOLIDUS
+<)/>> /x5D <U005D> RIGHT SQUARE BRACKET
+<'/>> /x5E <U005E> CIRCUMFLEX ACCENT
+<_> /x5F <U005F> LOW LINE
+<'!> /x60 <U0060> GRAVE ACCENT
+<a> /x61 <U0061> LATIN SMALL LETTER A
+<b> /x62 <U0062> LATIN SMALL LETTER B
+<c> /x63 <U0063> LATIN SMALL LETTER C
+<d> /x64 <U0064> LATIN SMALL LETTER D
+<e> /x65 <U0065> LATIN SMALL LETTER E
+<f> /x66 <U0066> LATIN SMALL LETTER F
+<g> /x67 <U0067> LATIN SMALL LETTER G
+<h> /x68 <U0068> LATIN SMALL LETTER H
+<i> /x69 <U0069> LATIN SMALL LETTER I
+<j> /x6A <U006A> LATIN SMALL LETTER J
+<k> /x6B <U006B> LATIN SMALL LETTER K
+<l> /x6C <U006C> LATIN SMALL LETTER L
+<m> /x6D <U006D> LATIN SMALL LETTER M
+<n> /x6E <U006E> LATIN SMALL LETTER N
+<o> /x6F <U006F> LATIN SMALL LETTER O
+<p> /x70 <U0070> LATIN SMALL LETTER P
+<q> /x71 <U0071> LATIN SMALL LETTER Q
+<r> /x72 <U0072> LATIN SMALL LETTER R
+<s> /x73 <U0073> LATIN SMALL LETTER S
+<t> /x74 <U0074> LATIN SMALL LETTER T
+<u> /x75 <U0075> LATIN SMALL LETTER U
+<v> /x76 <U0076> LATIN SMALL LETTER V
+<w> /x77 <U0077> LATIN SMALL LETTER W
+<x> /x78 <U0078> LATIN SMALL LETTER X
+<y> /x79 <U0079> LATIN SMALL LETTER Y
+<z> /x7A <U007A> LATIN SMALL LETTER Z
+<(!> /x7B <U007B> LEFT CURLY BRACKET
+<!!> /x7C <U007C> VERTICAL LINE
+<!)> /x7D <U007D> RIGHT CURLY BRACKET
+<'?> /x7E <U007E> TILDE
+<DT> /x7F <U007F> DELETE (DEL)
+<C<> /x82 <U010C> LATIN CAPITAL LETTER C WITH CARON
+<f2> /x83 <U0192> LATIN SMALL LETTER F WITH HOOK
+<c<> /x84 <U010D> LATIN SMALL LETTER C WITH CARON
+<ED> /x85 <U01B7> LATIN CAPITAL LETTER EZH
+<ed> /x86 <U0292> LATIN SMALL LETTER EZH
+<EZ> /x87 <U01EE> LATIN CAPITAL LETTER EZH WITH CARON
+<ez> /x88 <U01EF> LATIN SMALL LETTER EZH WITH CARON
+<D//> /x89 <U0110> LATIN CAPITAL LETTER D WITH STROKE
+<S<> /x8A <U0160> LATIN CAPITAL LETTER S WITH CARON
+<<1> /x8B <U2039> SINGLE LEFT-POINTING ANGLE QUOTATION MARK
+<OE> /x8C <U0152> LATIN CAPITAL LIGATURE OE
+<'6> /x91 <U2018> LEFT SINGLE QUOTATION MARK
+<'9> /x92 <U2019> RIGHT SINGLE QUOTATION MARK
+<"6> /x93 <U201C> LEFT DOUBLE QUOTATION MARK
+<"9> /x94 <U201D> RIGHT DOUBLE QUOTATION MARK
+<Sb> /x95 <U2022> BULLET
+<-N> /x96 <U2013> EN DASH
+<-M> /x97 <U2014> EM DASH
+<d//> /x98 <U0111> LATIN SMALL LETTER D WITH STROKE
+<G<> /x99 <U01E6> LATIN CAPITAL LETTER G WITH CARON
+<s<> /x9A <U0161> LATIN SMALL LETTER S WITH CARON
+</>1> /x9B <U203A> SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
+<oe> /x9C <U0153> LATIN SMALL LIGATURE OE
+<Y:> /x9F <U0178> LATIN CAPITAL LETTER Y WITH DIAERESIS
+<NS> /xA0 <U00A0> NO-BREAK SPACE
+<g<> /xA1 <U01E7> LATIN SMALL LETTER G WITH CARON
+<G//> /xA2 <U01E4> LATIN CAPITAL LETTER G WITH STROKE
+<Pd> /xA3 <U00A3> POUND SIGN
+<Cu> /xA4 <U00A4> CURRENCY SIGN
+<g//> /xA5 <U01E5> LATIN SMALL LETTER G WITH STROKE
+<BB> /xA6 <U00A6> BROKEN BAR
+<SE> /xA7 <U00A7> SECTION SIGN
+<':> /xA8 <U00A8> DIAERESIS
+<Co> /xA9 <U00A9> COPYRIGHT SIGN
+<H<> /xAA <U021E> LATIN CAPITAL LETTER H WITH CARON
+<<<> /xAB <U00AB> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+<NO> /xAC <U00AC> NOT SIGN
+<--> /xAD <U00AD> SOFT HYPHEN
+<Rg> /xAE <U00AE> REGISTERED SIGN
+<h<> /xAF <U021F> LATIN SMALL LETTER H WITH CARON
+<DG> /xB0 <U00B0> DEGREE SIGN
+<+-> /xB1 <U00B1> PLUS-MINUS SIGN
+<K<> /xB2 <U01E8> LATIN CAPITAL LETTER K WITH CARON
+<k<> /xB3 <U01E9> LATIN SMALL LETTER K WITH CARON
+<''> /xB4 <U00B4> ACUTE ACCENT
+<My> /xB5 <U00B5> MICRO SIGN
+<PI> /xB6 <U00B6> PILCROW SIGN
+<.M> /xB7 <U00B7> MIDDLE DOT
+<NG> /xB8 <U014A> LATIN CAPITAL LETTER ENG (Sami)
+<ng> /xB9 <U014B> LATIN SMALL LETTER ENG (Sami)
+<T//> /xBA <U0166> LATIN CAPITAL LETTER T WITH STROKE
+</>/>> /xBB <U00BB> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+<t//> /xBC <U0167> LATIN SMALL LETTER T WITH STROKE
+<12> /xBD <U00BD> VULGAR FRACTION ONE HALF
+<Z<> /xBE <U017D> LATIN CAPITAL LETTER Z WITH CARON
+<z<> /xBF <U017E> LATIN SMALL LETTER Z WITH CARON
+<A!> /xC0 <U00C0> LATIN CAPITAL LETTER A WITH GRAVE
+<A'> /xC1 <U00C1> LATIN CAPITAL LETTER A WITH ACUTE
+<A/>> /xC2 <U00C2> LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+<A?> /xC3 <U00C3> LATIN CAPITAL LETTER A WITH TILDE
+<A:> /xC4 <U00C4> LATIN CAPITAL LETTER A WITH DIAERESIS
+<AA> /xC5 <U00C5> LATIN CAPITAL LETTER A WITH RING ABOVE
+<AE> /xC6 <U00C6> LATIN CAPITAL LETTER AE
+<C,> /xC7 <U00C7> LATIN CAPITAL LETTER C WITH CEDILLA
+<E!> /xC8 <U00C8> LATIN CAPITAL LETTER E WITH GRAVE
+<E'> /xC9 <U00C9> LATIN CAPITAL LETTER E WITH ACUTE
+<E/>> /xCA <U00CA> LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+<E:> /xCB <U00CB> LATIN CAPITAL LETTER E WITH DIAERESIS
+<I!> /xCC <U00CC> LATIN CAPITAL LETTER I WITH GRAVE
+<I'> /xCD <U00CD> LATIN CAPITAL LETTER I WITH ACUTE
+<I/>> /xCE <U00CE> LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+<I:> /xCF <U00CF> LATIN CAPITAL LETTER I WITH DIAERESIS
+<D-> /xD0 <U00D0> LATIN CAPITAL LETTER ETH (Icelandic)
+<N?> /xD1 <U00D1> LATIN CAPITAL LETTER N WITH TILDE
+<O!> /xD2 <U00D2> LATIN CAPITAL LETTER O WITH GRAVE
+<O'> /xD3 <U00D3> LATIN CAPITAL LETTER O WITH ACUTE
+<O/>> /xD4 <U00D4> LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+<O?> /xD5 <U00D5> LATIN CAPITAL LETTER O WITH TILDE
+<O:> /xD6 <U00D6> LATIN CAPITAL LETTER O WITH DIAERESIS
+<*X> /xD7 <U00D7> MULTIPLICATION SIGN
+<O//> /xD8 <U00D8> LATIN CAPITAL LETTER O WITH STROKE
+<U!> /xD9 <U00D9> LATIN CAPITAL LETTER U WITH GRAVE
+<U'> /xDA <U00DA> LATIN CAPITAL LETTER U WITH ACUTE
+<U/>> /xDB <U00DB> LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+<U:> /xDC <U00DC> LATIN CAPITAL LETTER U WITH DIAERESIS
+<Y'> /xDD <U00DD> LATIN CAPITAL LETTER Y WITH ACUTE
+<TH> /xDE <U00DE> LATIN CAPITAL LETTER THORN (Icelandic)
+<ss> /xDF <U00DF> LATIN SMALL LETTER SHARP S (German)
+<a!> /xE0 <U00E0> LATIN SMALL LETTER A WITH GRAVE
+<a'> /xE1 <U00E1> LATIN SMALL LETTER A WITH ACUTE
+<a/>> /xE2 <U00E2> LATIN SMALL LETTER A WITH CIRCUMFLEX
+<a?> /xE3 <U00E3> LATIN SMALL LETTER A WITH TILDE
+<a:> /xE4 <U00E4> LATIN SMALL LETTER A WITH DIAERESIS
+<aa> /xE5 <U00E5> LATIN SMALL LETTER A WITH RING ABOVE
+<ae> /xE6 <U00E6> LATIN SMALL LETTER AE
+<c,> /xE7 <U00E7> LATIN SMALL LETTER C WITH CEDILLA
+<e!> /xE8 <U00E8> LATIN SMALL LETTER E WITH GRAVE
+<e'> /xE9 <U00E9> LATIN SMALL LETTER E WITH ACUTE
+<e/>> /xEA <U00EA> LATIN SMALL LETTER E WITH CIRCUMFLEX
+<e:> /xEB <U00EB> LATIN SMALL LETTER E WITH DIAERESIS
+<i!> /xEC <U00EC> LATIN SMALL LETTER I WITH GRAVE
+<i'> /xED <U00ED> LATIN SMALL LETTER I WITH ACUTE
+<i/>> /xEE <U00EE> LATIN SMALL LETTER I WITH CIRCUMFLEX
+<i:> /xEF <U00EF> LATIN SMALL LETTER I WITH DIAERESIS
+<d-> /xF0 <U00F0> LATIN SMALL LETTER ETH (Icelandic)
+<n?> /xF1 <U00F1> LATIN SMALL LETTER N WITH TILDE
+<o!> /xF2 <U00F2> LATIN SMALL LETTER O WITH GRAVE
+<o'> /xF3 <U00F3> LATIN SMALL LETTER O WITH ACUTE
+<o/>> /xF4 <U00F4> LATIN SMALL LETTER O WITH CIRCUMFLEX
+<o?> /xF5 <U00F5> LATIN SMALL LETTER O WITH TILDE
+<o:> /xF6 <U00F6> LATIN SMALL LETTER O WITH DIAERESIS
+<-:> /xF7 <U00F7> DIVISION SIGN
+<o//> /xF8 <U00F8> LATIN SMALL LETTER O WITH STROKE
+<u!> /xF9 <U00F9> LATIN SMALL LETTER U WITH GRAVE
+<u'> /xFA <U00FA> LATIN SMALL LETTER U WITH ACUTE
+<u/>> /xFB <U00FB> LATIN SMALL LETTER U WITH CIRCUMFLEX
+<u:> /xFC <U00FC> LATIN SMALL LETTER U WITH DIAERESIS
+<y'> /xFD <U00FD> LATIN SMALL LETTER Y WITH ACUTE
+<th> /xFE <U00FE> LATIN SMALL LETTER THORN (Icelandic)
+<y:> /xFF <U00FF> LATIN SMALL LETTER Y WITH DIAERESIS
+<NUL> /x00 <U0000> NUL
+<SOH> /x01 <U0001> START OF HEADING (SOH)
+<STX> /x02 <U0002> START OF TEXT (STX)
+<ETX> /x03 <U0003> END OF TEXT (ETX)
+<EOT> /x04 <U0004> END OF TRANSMISSION (EOT)
+<ENQ> /x05 <U0005> ENQUIRY (ENQ)
+<ACK> /x06 <U0006> ACKNOWLEDGE (ACK)
+<alert> /x07 <U0007> BELL (BEL)
+<BEL> /x07 <U0007> BELL (BEL)
+<backspace> /x08 <U0008> BACKSPACE (BS)
+<tab> /x09 <U0009> CHARACTER TABULATION (HT)
+<newline> /x0A <U000A> LINE FEED (LF)
+<vertical-tab> /x0B <U000B> LINE TABULATION (VT)
+<form-feed> /x0C <U000C> FORM FEED (FF)
+<carriage-return> /x0D <U000D> CARRIAGE RETURN (CR)
+<DLE> /x10 <U0010> DATALINK ESCAPE (DLE)
+<DC1> /x11 <U0011> DEVICE CONTROL ONE (DC1)
+<DC2> /x12 <U0012> DEVICE CONTROL TWO (DC2)
+<DC3> /x13 <U0013> DEVICE CONTROL THREE (DC3)
+<DC4> /x14 <U0014> DEVICE CONTROL FOUR (DC4)
+<NAK> /x15 <U0015> NEGATIVE ACKNOWLEDGE (NAK)
+<SYN> /x16 <U0016> SYNCHRONOUS IDLE (SYN)
+<ETB> /x17 <U0017> END OF TRANSMISSION BLOCK (ETB)
+<CAN> /x18 <U0018> CANCEL (CAN)
+<SUB> /x1A <U001A> SUBSTITUTE (SUB)
+<ESC> /x1B <U001B> ESCAPE (ESC)
+<IS4> /x1C <U001C> FILE SEPARATOR (IS4)
+<IS3> /x1D <U001D> GROUP SEPARATOR (IS3)
+<intro> /x1D <U001D> GROUP SEPARATOR (IS3)
+<IS2> /x1E <U001E> RECORD SEPARATOR (IS2)
+<IS1> /x1F <U001F> UNIT SEPARATOR (IS1)
+<DEL> /x7F <U007F> DELETE (DEL)
+<space> /x20 <U0020> SPACE
+<exclamation-mark> /x21 <U0021> EXCLAMATION MARK
+<quotation-mark> /x22 <U0022> QUOTATION MARK
+<number-sign> /x23 <U0023> NUMBER SIGN
+<dollar-sign> /x24 <U0024> DOLLAR SIGN
+<percent-sign> /x25 <U0025> PERCENT SIGN
+<ampersand> /x26 <U0026> AMPERSAND
+<apostrophe> /x27 <U0027> APOSTROPHE
+<left-parenthesis> /x28 <U0028> LEFT PARENTHESIS
+<right-parenthesis> /x29 <U0029> RIGHT PARENTHESIS
+<asterisk> /x2A <U002A> ASTERISK
+<plus-sign> /x2B <U002B> PLUS SIGN
+<comma> /x2C <U002C> COMMA
+<hyphen> /x2D <U002D> HYPHEN-MINUS
+<hyphen-minus> /x2D <U002D> HYPHEN-MINUS
+<period> /x2E <U002E> FULL STOP
+<full-stop> /x2E <U002E> FULL STOP
+<slash> /x2F <U002F> SOLIDUS
+<solidus> /x2F <U002F> SOLIDUS
+<zero> /x30 <U0030> DIGIT ZERO
+<one> /x31 <U0031> DIGIT ONE
+<two> /x32 <U0032> DIGIT TWO
+<three> /x33 <U0033> DIGIT THREE
+<four> /x34 <U0034> DIGIT FOUR
+<five> /x35 <U0035> DIGIT FIVE
+<six> /x36 <U0036> DIGIT SIX
+<seven> /x37 <U0037> DIGIT SEVEN
+<eight> /x38 <U0038> DIGIT EIGHT
+<nine> /x39 <U0039> DIGIT NINE
+<colon> /x3A <U003A> COLON
+<semicolon> /x3B <U003B> SEMICOLON
+<less-than-sign> /x3C <U003C> LESS-THAN SIGN
+<equals-sign> /x3D <U003D> EQUALS SIGN
+<greater-than-sign> /x3E <U003E> GREATER-THAN SIGN
+<question-mark> /x3F <U003F> QUESTION MARK
+<commercial-at> /x40 <U0040> COMMERCIAL AT
+<left-square-bracket> /x5B <U005B> LEFT SQUARE BRACKET
+<backslash> /x5C <U005C> REVERSE SOLIDUS
+<reverse-solidus> /x5C <U005C> REVERSE SOLIDUS
+<right-square-bracket> /x5D <U005D> RIGHT SQUARE BRACKET
+<circumflex> /x5E <U005E> CIRCUMFLEX ACCENT
+<circumflex-accent> /x5E <U005E> CIRCUMFLEX ACCENT
+<underscore> /x5F <U005F> LOW LINE
+<low-line> /x5F <U005F> LOW LINE
+<grave-accent> /x60 <U0060> GRAVE ACCENT
+<left-brace> /x7B <U007B> LEFT CURLY BRACKET
+<left-curly-bracket> /x7B <U007B> LEFT CURLY BRACKET
+<vertical-line> /x7C <U007C> VERTICAL LINE
+<right-brace> /x7D <U007D> RIGHT CURLY BRACKET
+<right-curly-bracket> /x7D <U007D> RIGHT CURLY BRACKET
+<tilde> /x7E <U007E> TILDE
+END CHARMAP