aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/xterm/unicode
diff options
context:
space:
mode:
Diffstat (limited to 'nx-X11/programs/xterm/unicode')
-rw-r--r--nx-X11/programs/xterm/unicode/README24
-rw-r--r--nx-X11/programs/xterm/unicode/convmap.pl177
-rw-r--r--nx-X11/programs/xterm/unicode/keysym.map1062
-rw-r--r--nx-X11/programs/xterm/unicode/make-precompose.sh8
-rw-r--r--nx-X11/programs/xterm/unicode/precompose.c.head16
-rw-r--r--nx-X11/programs/xterm/unicode/precompose.c.tail23
6 files changed, 0 insertions, 1310 deletions
diff --git a/nx-X11/programs/xterm/unicode/README b/nx-X11/programs/xterm/unicode/README
deleted file mode 100644
index a6b4fb1db..000000000
--- a/nx-X11/programs/xterm/unicode/README
+++ /dev/null
@@ -1,24 +0,0 @@
--- $XTermId: README,v 1.10 2004/12/01 01:27:49 tom Exp $
--- $XFree86: xc/programs/xterm/unicode/README,v 1.5 2004/12/01 01:27:49 dickey Exp $
--- Thomas E. Dickey
-
-These are some scripts and datafiles used for generating tables used in the
-experimental UTF-8 implementation in xterm.
-
-To run the convmap.pl script, you will need a copy of UnicodeData-Latest.txt
-which is currently available as
-
- ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt
-
-It is a large file (~877kb), so it is not included in this distribution.
-
-convmap.pl is used to generate ../keysym2ucs.c, e.g.,
-
- ./convmap.pl >../keysym2ucs.c
-
-keysym.map is input data for convmap.pl
-
-
-The make-precompose.sh script makes the precompose.c file, which is used to
-handle canonical composition. This also needs UnicodeData-Latest.txt. It uses
-precompose.c.head and precompose.c.tail as templates.
diff --git a/nx-X11/programs/xterm/unicode/convmap.pl b/nx-X11/programs/xterm/unicode/convmap.pl
deleted file mode 100644
index aa85b6fb7..000000000
--- a/nx-X11/programs/xterm/unicode/convmap.pl
+++ /dev/null
@@ -1,177 +0,0 @@
-#!/usr/bin/perl
-# Generate keysym2ucs.c file
-#
-# $XFree86: xc/programs/xterm/unicode/convmap.pl,v 1.5 2000/01/24 22:22:05 dawes Exp $
-
-sub utf8 ($) {
- my $c = shift(@_);
-
- if ($c < 0x80) {
- return sprintf("%c", $c);
- } elsif ($c < 0x800) {
- return sprintf("%c%c", 0xc0 | ($c >> 6), 0x80 | ($c & 0x3f));
- } elsif ($c < 0x10000) {
- return sprintf("%c%c%c",
- 0xe0 | ($c >> 12),
- 0x80 | (($c >> 6) & 0x3f),
- 0x80 | ( $c & 0x3f));
- } elsif ($c < 0x200000) {
- return sprintf("%c%c%c%c",
- 0xf0 | ($c >> 18),
- 0x80 | (($c >> 12) & 0x3f),
- 0x80 | (($c >> 6) & 0x3f),
- 0x80 | ( $c & 0x3f));
- } elsif ($c < 0x4000000) {
- return sprintf("%c%c%c%c%c",
- 0xf8 | ($c >> 24),
- 0x80 | (($c >> 18) & 0x3f),
- 0x80 | (($c >> 12) & 0x3f),
- 0x80 | (($c >> 6) & 0x3f),
- 0x80 | ( $c & 0x3f));
-
- } elsif ($c < 0x80000000) {
- return sprintf("%c%c%c%c%c%c",
- 0xfe | ($c >> 30),
- 0x80 | (($c >> 24) & 0x3f),
- 0x80 | (($c >> 18) & 0x3f),
- 0x80 | (($c >> 12) & 0x3f),
- 0x80 | (($c >> 6) & 0x3f),
- 0x80 | ( $c & 0x3f));
- } else {
- return utf8(0xfffd);
- }
-}
-
-$unicodedata = "UnicodeData-Latest.txt";
-
-# read list of all Unicode names
-if (!open(UDATA, $unicodedata) && !open(UDATA, "$unicodedata")) {
- die ("Can't open Unicode database '$unicodedata':\n$!\n\n" .
- "Please make sure that you have downloaded the file\n" .
- "ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData-Latest.txt\n");
-}
-while (<UDATA>) {
- if (/^([0-9,A-F]{4});([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*);([^;]*)$/) {
- $name{hex($1)} = $2;
- } else {
- die("Syntax error in line '$_' in file '$unicodedata'");
- }
-}
-close(UDATA);
-
-# read mapping (from http://wsinwp07.win.tue.nl:1234/unicode/keysym.map)
-open(LIST, "<keysym.map") || die ("Can't open map file:\n$!\n");
-while (<LIST>) {
- if (/^0x([0-9a-f]{4})\s+U([0-9a-f]{4})\s*(\#.*)?$/){
- $keysym = hex($1);
- $ucs = hex($2);
- $keysym_to_ucs{$keysym} = $ucs;
- } elsif (/^\s*\#/ || /^\s*$/) {
- } else {
- die("Syntax error in 'list' in line\n$_\n");
- }
-}
-close(LIST);
-
-# read entries in keysymdef.h
-open(LIST, "</usr/include/X11/keysymdef.h") || die ("Can't open keysymdef.h:\n$!\n");
-while (<LIST>) {
- if (/^\#define\s+XK_([A-Za-z_0-9]+)\s+0x([0-9a-fA-F]+)\s*(\/.*)?$/) {
- next if /\/\* deprecated \*\//;
- $keysymname = $1;
- $keysym = hex($2);
- $keysym_to_keysymname{$keysym} = $keysymname;
- }
-}
-close(LIST);
-
-print <<EOT;
-/* \$XFree86\$
- * This module converts keysym values into the corresponding ISO 10646-1
- * (UCS, Unicode) values.
- *
- * The array keysymtab[] contains pairs of X11 keysym values for graphical
- * characters and the corresponding Unicode value. The function
- * keysym2ucs() maps a keysym onto a Unicode value using a binary search,
- * therefore keysymtab[] must remain SORTED by keysym value.
- *
- * The keysym -> UTF-8 conversion will hopefully one day be provided
- * by Xlib via XmbLookupString() and should ideally not have to be
- * done in X applications. But we are not there yet.
- *
- * We allow to represent any UCS character in the range U+00000000 to
- * U+00FFFFFF by a keysym value in the range 0x01000000 to 0x01ffffff.
- * This admittedly does not cover the entire 31-bit space of UCS, but
- * it does cover all of the characters up to U+10FFFF, which can be
- * represented by UTF-16, and more, and it is very unlikely that higher
- * UCS codes will ever be assigned by ISO. So to get Unicode character
- * U+ABCD you can directly use keysym 0x1000abcd.
- *
- * NOTE: The comments in the table below contain the actual character
- * encoded in UTF-8, so for viewing and editing best use an editor in
- * UTF-8 mode.
- *
- * Author: Markus G. Kuhn <mkuhn\@acm.org>, University of Cambridge, June 1999
- *
- * Special thanks to Richard Verhoeven <river\@win.tue.nl> for preparing
- * an initial draft of the mapping table.
- *
- * This software is in the public domain. Share and enjoy!
- */
-
-#include <keysym2ucs.h>
-
-struct codepair {
- unsigned short keysym;
- unsigned short ucs;
-} keysymtab[] = {
-EOT
-
-for $keysym (sort {$a <=> $b} keys(%keysym_to_keysymname)) {
- $ucs = $keysym_to_ucs{$keysym};
- next if $keysym >= 0xf000 || $keysym < 0x100;
- if ($ucs) {
- printf(" { 0x%04x, 0x%04x }, /*%28s %s %s */\n",
- $keysym, $ucs, $keysym_to_keysymname{$keysym}, utf8($ucs),
- defined($name{$ucs}) ? $name{$ucs} : "???" );
- } else {
- printf("/* 0x%04x %39s ? ??? */\n",
- $keysym, $keysym_to_keysymname{$keysym});
- }
-}
-
-print <<EOT;
-};
-
-long keysym2ucs(KeySym keysym)
-{
- int min = 0;
- int max = sizeof(keysymtab) / sizeof(struct codepair) - 1;
- int mid;
-
- /* first check for Latin-1 characters (1:1 mapping) */
- if ((keysym >= 0x0020 && keysym <= 0x007e) ||
- (keysym >= 0x00a0 && keysym <= 0x00ff))
- return keysym;
-
- /* also check for directly encoded 24-bit UCS characters */
- if ((keysym & 0xff000000) == 0x01000000)
- return keysym & 0x00ffffff;
-
- /* binary search in table */
- while (max >= min) {
- mid = (min + max) / 2;
- if (keysymtab[mid].keysym < keysym)
- min = mid + 1;
- else if (keysymtab[mid].keysym > keysym)
- max = mid - 1;
- else {
- /* found it */
- return keysymtab[mid].ucs;
- }
- }
-
- /* no matching Unicode value found */
- return -1;
-}
-EOT
diff --git a/nx-X11/programs/xterm/unicode/keysym.map b/nx-X11/programs/xterm/unicode/keysym.map
deleted file mode 100644
index 6e587bdc0..000000000
--- a/nx-X11/programs/xterm/unicode/keysym.map
+++ /dev/null
@@ -1,1062 +0,0 @@
-# This list can be used to convert X11 Keysyms to Unicode 2.1 character.
-# The list is not checked for correctness by Unicode officials. Use it
-# at your own risk and the creator is not responsable for any damage that
-# occured due to using this list.
-#
-# The list is created by looking at the Keysym names and the Unicode data
-# file. Other mapping tables were used as a reference where needed.
-# Due to a lack of knowledge of the Hebrew, Thai and Hangul symbols,
-# expect errors in these sections. The mapping of the keypad keys
-# might also require some adjustments.
-#
-# The following fields are used:
-# 1 The X11 keysym numbers from the include file keysymdef.h
-# 2 The Unicode (2.1) position (U0000 means unknown Unicode position)
-# #
-# 3 the name of the X11 keysym (without XK_)
-#
-# Authors: Richard Verhoeven, TUE, <river@win.tue.nl>
-# Markus Kuhn, University of Cambridge, <mkuhn@acm.org>
-#
-# You are free to use and modify this table. If you introduce errors
-# in the table, please remove the copyright line. If you remove errors,
-# please let me know, so I can update my version.
-#
-# $XFree86: xc/programs/xterm/unicode/keysym.map,v 1.1 1999/06/12 15:37:24 dawes Exp $
-#
-0x0020 U0020 # space
-0x0021 U0021 # exclam
-0x0022 U0022 # quotedbl
-0x0023 U0023 # numbersign
-0x0024 U0024 # dollar
-0x0025 U0025 # percent
-0x0026 U0026 # ampersand
-0x0027 U0027 # apostrophe
-0x0027 U0027 # quoteright /* deprecated */
-0x0028 U0028 # parenleft
-0x0029 U0029 # parenright
-0x002a U002a # asterisk
-0x002b U002b # plus
-0x002c U002c # comma
-0x002d U002d # minus
-0x002e U002e # period
-0x002f U002f # slash
-0x0030 U0030 # 0
-0x0031 U0031 # 1
-0x0032 U0032 # 2
-0x0033 U0033 # 3
-0x0034 U0034 # 4
-0x0035 U0035 # 5
-0x0036 U0036 # 6
-0x0037 U0037 # 7
-0x0038 U0038 # 8
-0x0039 U0039 # 9
-0x003a U003a # colon
-0x003b U003b # semicolon
-0x003c U003c # less
-0x003d U003d # equal
-0x003e U003e # greater
-0x003f U003f # question
-0x0040 U0040 # at
-0x0041 U0041 # A
-0x0042 U0042 # B
-0x0043 U0043 # C
-0x0044 U0044 # D
-0x0045 U0045 # E
-0x0046 U0046 # F
-0x0047 U0047 # G
-0x0048 U0048 # H
-0x0049 U0049 # I
-0x004a U004a # J
-0x004b U004b # K
-0x004c U004c # L
-0x004d U004d # M
-0x004e U004e # N
-0x004f U004f # O
-0x0050 U0050 # P
-0x0051 U0051 # Q
-0x0052 U0052 # R
-0x0053 U0053 # S
-0x0054 U0054 # T
-0x0055 U0055 # U
-0x0056 U0056 # V
-0x0057 U0057 # W
-0x0058 U0058 # X
-0x0059 U0059 # Y
-0x005a U005a # Z
-0x005b U005b # bracketleft
-0x005c U005c # backslash
-0x005d U005d # bracketright
-0x005e U005e # asciicircum
-0x005f U005f # underscore
-0x0060 U0060 # grave
-0x0060 U0060 # quoteleft /* deprecated */
-0x0061 U0061 # a
-0x0062 U0062 # b
-0x0063 U0063 # c
-0x0064 U0064 # d
-0x0065 U0065 # e
-0x0066 U0066 # f
-0x0067 U0067 # g
-0x0068 U0068 # h
-0x0069 U0069 # i
-0x006a U006a # j
-0x006b U006b # k
-0x006c U006c # l
-0x006d U006d # m
-0x006e U006e # n
-0x006f U006f # o
-0x0070 U0070 # p
-0x0071 U0071 # q
-0x0072 U0072 # r
-0x0073 U0073 # s
-0x0074 U0074 # t
-0x0075 U0075 # u
-0x0076 U0076 # v
-0x0077 U0077 # w
-0x0078 U0078 # x
-0x0079 U0079 # y
-0x007a U007a # z
-0x007b U007b # braceleft
-0x007c U007c # bar
-0x007d U007d # braceright
-0x007e U007e # asciitilde
-0x00a0 U00a0 # nobreakspace
-0x00a1 U00a1 # exclamdown
-0x00a2 U00a2 # cent
-0x00a3 U00a3 # sterling
-0x00a4 U00a4 # currency
-0x00a5 U00a5 # yen
-0x00a6 U00a6 # brokenbar
-0x00a7 U00a7 # section
-0x00a8 U00a8 # diaeresis
-0x00a9 U00a9 # copyright
-0x00aa U00aa # ordfeminine
-0x00ab U00ab # guillemotleft /* left angle quotation mark */
-0x00ac U00ac # notsign
-0x00ad U00ad # hyphen
-0x00ae U00ae # registered
-0x00af U00af # macron
-0x00b0 U00b0 # degree
-0x00b1 U00b1 # plusminus
-0x00b2 U00b2 # twosuperior
-0x00b3 U00b3 # threesuperior
-0x00b4 U00b4 # acute
-0x00b5 U00b5 # mu
-0x00b6 U00b6 # paragraph
-0x00b7 U00b7 # periodcentered
-0x00b8 U00b8 # cedilla
-0x00b9 U00b9 # onesuperior
-0x00ba U00ba # masculine
-0x00bb U00bb # guillemotright /* right angle quotation mark */
-0x00bc U00bc # onequarter
-0x00bd U00bd # onehalf
-0x00be U00be # threequarters
-0x00bf U00bf # questiondown
-0x00c0 U00c0 # Agrave
-0x00c1 U00c1 # Aacute
-0x00c2 U00c2 # Acircumflex
-0x00c3 U00c3 # Atilde
-0x00c4 U00c4 # Adiaeresis
-0x00c5 U00c5 # Aring
-0x00c6 U00c6 # AE
-0x00c7 U00c7 # Ccedilla
-0x00c8 U00c8 # Egrave
-0x00c9 U00c9 # Eacute
-0x00ca U00ca # Ecircumflex
-0x00cb U00cb # Ediaeresis
-0x00cc U00cc # Igrave
-0x00cd U00cd # Iacute
-0x00ce U00ce # Icircumflex
-0x00cf U00cf # Idiaeresis
-0x00d0 U00d0 # ETH
-0x00d0 U00d0 # Eth /* deprecated */
-0x00d1 U00d1 # Ntilde
-0x00d2 U00d2 # Ograve
-0x00d3 U00d3 # Oacute
-0x00d4 U00d4 # Ocircumflex
-0x00d5 U00d5 # Otilde
-0x00d6 U00d6 # Odiaeresis
-0x00d7 U00d7 # multiply
-0x00d8 U00d8 # Ooblique
-0x00d9 U00d9 # Ugrave
-0x00da U00da # Uacute
-0x00db U00db # Ucircumflex
-0x00dc U00dc # Udiaeresis
-0x00dd U00dd # Yacute
-0x00de U00de # THORN
-0x00de U00de # Thorn /* deprecated */
-0x00df U00df # ssharp
-0x00e0 U00e0 # agrave
-0x00e1 U00e1 # aacute
-0x00e2 U00e2 # acircumflex
-0x00e3 U00e3 # atilde
-0x00e4 U00e4 # adiaeresis
-0x00e5 U00e5 # aring
-0x00e6 U00e6 # ae
-0x00e7 U00e7 # ccedilla
-0x00e8 U00e8 # egrave
-0x00e9 U00e9 # eacute
-0x00ea U00ea # ecircumflex
-0x00eb U00eb # ediaeresis
-0x00ec U00ec # igrave
-0x00ed U00ed # iacute
-0x00ee U00ee # icircumflex
-0x00ef U00ef # idiaeresis
-0x00f0 U00f0 # eth
-0x00f1 U00f1 # ntilde
-0x00f2 U00f2 # ograve
-0x00f3 U00f3 # oacute
-0x00f4 U00f4 # ocircumflex
-0x00f5 U00f5 # otilde
-0x00f6 U00f6 # odiaeresis
-0x00f7 U00f7 # division
-0x00f8 U00f8 # oslash
-0x00f9 U00f9 # ugrave
-0x00fa U00fa # uacute
-0x00fb U00fb # ucircumflex
-0x00fc U00fc # udiaeresis
-0x00fd U00fd # yacute
-0x00fe U00fe # thorn
-0x00ff U00ff # ydiaeresis
-0x01a1 U0104 # Aogonek
-0x01a2 U02d8 # breve
-0x01a3 U0141 # Lstroke
-0x01a5 U013d # Lcaron
-0x01a6 U015a # Sacute
-0x01a9 U0160 # Scaron
-0x01aa U015e # Scedilla
-0x01ab U0164 # Tcaron
-0x01ac U0179 # Zacute
-0x01ae U017d # Zcaron
-0x01af U017b # Zabovedot
-0x01b1 U0105 # aogonek
-0x01b2 U02db # ogonek
-0x01b3 U0142 # lstroke
-0x01b5 U013e # lcaron
-0x01b6 U015b # sacute
-0x01b7 U02c7 # caron
-0x01b9 U0161 # scaron
-0x01ba U015f # scedilla
-0x01bb U0165 # tcaron
-0x01bc U017a # zacute
-0x01bd U02dd # doubleacute
-0x01be U017e # zcaron
-0x01bf U017c # zabovedot
-0x01c0 U0154 # Racute
-0x01c3 U0102 # Abreve
-0x01c5 U0139 # Lacute
-0x01c6 U0106 # Cacute
-0x01c8 U010c # Ccaron
-0x01ca U0118 # Eogonek
-0x01cc U011a # Ecaron
-0x01cf U010e # Dcaron
-0x01d0 U0110 # Dstroke
-0x01d1 U0143 # Nacute
-0x01d2 U0147 # Ncaron
-0x01d5 U0150 # Odoubleacute
-0x01d8 U0158 # Rcaron
-0x01d9 U016e # Uring
-0x01db U0170 # Udoubleacute
-0x01de U0162 # Tcedilla
-0x01e0 U0155 # racute
-0x01e3 U0103 # abreve
-0x01e5 U013a # lacute
-0x01e6 U0107 # cacute
-0x01e8 U010d # ccaron
-0x01ea U0119 # eogonek
-0x01ec U011b # ecaron
-0x01ef U010f # dcaron
-0x01f0 U0111 # dstroke
-0x01f1 U0144 # nacute
-0x01f2 U0148 # ncaron
-0x01f5 U0151 # odoubleacute
-0x01f8 U0159 # rcaron
-0x01f9 U016f # uring
-0x01fb U0171 # udoubleacute
-0x01fe U0163 # tcedilla
-0x01ff U02d9 # abovedot
-0x02a1 U0126 # Hstroke
-0x02a6 U0124 # Hcircumflex
-0x02a9 U0130 # Iabovedot
-0x02ab U011e # Gbreve
-0x02ac U0134 # Jcircumflex
-0x02b1 U0127 # hstroke
-0x02b6 U0125 # hcircumflex
-0x02b9 U0131 # idotless
-0x02bb U011f # gbreve
-0x02bc U0135 # jcircumflex
-0x02c5 U010a # Cabovedot
-0x02c6 U0108 # Ccircumflex
-0x02d5 U0120 # Gabovedot
-0x02d8 U011c # Gcircumflex
-0x02dd U016c # Ubreve
-0x02de U015c # Scircumflex
-0x02e5 U010b # cabovedot
-0x02e6 U0109 # ccircumflex
-0x02f5 U0121 # gabovedot
-0x02f8 U011d # gcircumflex
-0x02fd U016d # ubreve
-0x02fe U015d # scircumflex
-0x03a2 U0138 # kra
-0x03a3 U0156 # Rcedilla
-0x03a5 U0128 # Itilde
-0x03a6 U013b # Lcedilla
-0x03aa U0112 # Emacron
-0x03ab U0122 # Gcedilla
-0x03ac U0166 # Tslash
-0x03b3 U0157 # rcedilla
-0x03b5 U0129 # itilde
-0x03b6 U013c # lcedilla
-0x03ba U0113 # emacron
-0x03bb U0123 # gcedilla
-0x03bc U0167 # tslash
-0x03bd U014a # ENG
-0x03bf U014b # eng
-0x03c0 U0100 # Amacron
-0x03c7 U012e # Iogonek
-0x03cc U0116 # Eabovedot
-0x03cf U012a # Imacron
-0x03d1 U0145 # Ncedilla
-0x03d2 U014c # Omacron
-0x03d3 U0136 # Kcedilla
-0x03d9 U0172 # Uogonek
-0x03dd U0168 # Utilde
-0x03de U016a # Umacron
-0x03e0 U0101 # amacron
-0x03e7 U012f # iogonek
-0x03ec U0117 # eabovedot
-0x03ef U012b # imacron
-0x03f1 U0146 # ncedilla
-0x03f2 U014d # omacron
-0x03f3 U0137 # kcedilla
-0x03f9 U0173 # uogonek
-0x03fd U0169 # utilde
-0x03fe U016b # umacron
-0x13bc U0152 # OE
-0x13bd U0153 # oe
-0x13be U0178 # Ydiaeresis
-0x047e U203e # overline
-0x04a1 U3002 # kana_fullstop
-0x04a2 U300c # kana_openingbracket
-0x04a3 U300d # kana_closingbracket
-0x04a4 U3001 # kana_comma
-0x04a5 U30fb # kana_conjunctive
-0x04a6 U30f2 # kana_WO
-0x04a7 U30a1 # kana_a
-0x04a8 U30a3 # kana_i
-0x04a9 U30a5 # kana_u
-0x04aa U30a7 # kana_e
-0x04ab U30a9 # kana_o
-0x04ac U30e3 # kana_ya
-0x04ad U30e5 # kana_yu
-0x04ae U30e7 # kana_yo
-0x04af U30c3 # kana_tsu
-0x04b0 U30fc # prolongedsound
-0x04b1 U30a2 # kana_A
-0x04b2 U30a4 # kana_I
-0x04b3 U30a6 # kana_U
-0x04b4 U30a8 # kana_E
-0x04b5 U30aa # kana_O
-0x04b6 U30ab # kana_KA
-0x04b7 U30ad # kana_KI
-0x04b8 U30af # kana_KU
-0x04b9 U30b1 # kana_KE
-0x04ba U30b3 # kana_KO
-0x04bb U30b5 # kana_SA
-0x04bc U30b7 # kana_SHI
-0x04bd U30b9 # kana_SU
-0x04be U30bb # kana_SE
-0x04bf U30bd # kana_SO
-0x04c0 U30bf # kana_TA
-0x04c1 U30c1 # kana_CHI
-0x04c2 U30c4 # kana_TSU
-0x04c3 U30c6 # kana_TE
-0x04c4 U30c8 # kana_TO
-0x04c5 U30ca # kana_NA
-0x04c6 U30cb # kana_NI
-0x04c7 U30cc # kana_NU
-0x04c8 U30cd # kana_NE
-0x04c9 U30ce # kana_NO
-0x04ca U30cf # kana_HA
-0x04cb U30d2 # kana_HI
-0x04cc U30d5 # kana_FU
-0x04cd U30d8 # kana_HE
-0x04ce U30db # kana_HO
-0x04cf U30de # kana_MA
-0x04d0 U30df # kana_MI
-0x04d1 U30e0 # kana_MU
-0x04d2 U30e1 # kana_ME
-0x04d3 U30e2 # kana_MO
-0x04d4 U30e4 # kana_YA
-0x04d5 U30e6 # kana_YU
-0x04d6 U30e8 # kana_YO
-0x04d7 U30e9 # kana_RA
-0x04d8 U30ea # kana_RI
-0x04d9 U30eb # kana_RU
-0x04da U30ec # kana_RE
-0x04db U30ed # kana_RO
-0x04dc U30ef # kana_WA
-0x04dd U30f3 # kana_N
-0x04de U309b # voicedsound
-0x04df U309c # semivoicedsound
-0x05ac U060c # Arabic_comma
-0x05bb U061b # Arabic_semicolon
-0x05bf U061f # Arabic_question_mark
-0x05c1 U0621 # Arabic_hamza
-0x05c2 U0622 # Arabic_maddaonalef
-0x05c3 U0623 # Arabic_hamzaonalef
-0x05c4 U0624 # Arabic_hamzaonwaw
-0x05c5 U0625 # Arabic_hamzaunderalef
-0x05c6 U0626 # Arabic_hamzaonyeh
-0x05c7 U0627 # Arabic_alef
-0x05c8 U0628 # Arabic_beh
-0x05c9 U0629 # Arabic_tehmarbuta
-0x05ca U062a # Arabic_teh
-0x05cb U062b # Arabic_theh
-0x05cc U062c # Arabic_jeem
-0x05cd U062d # Arabic_hah
-0x05ce U062e # Arabic_khah
-0x05cf U062f # Arabic_dal
-0x05d0 U0630 # Arabic_thal
-0x05d1 U0631 # Arabic_ra
-0x05d2 U0632 # Arabic_zain
-0x05d3 U0633 # Arabic_seen
-0x05d4 U0634 # Arabic_sheen
-0x05d5 U0635 # Arabic_sad
-0x05d6 U0636 # Arabic_dad
-0x05d7 U0637 # Arabic_tah
-0x05d8 U0638 # Arabic_zah
-0x05d9 U0639 # Arabic_ain
-0x05da U063a # Arabic_ghain
-0x05e0 U0640 # Arabic_tatweel
-0x05e1 U0641 # Arabic_feh
-0x05e2 U0642 # Arabic_qaf
-0x05e3 U0643 # Arabic_kaf
-0x05e4 U0644 # Arabic_lam
-0x05e5 U0645 # Arabic_meem
-0x05e6 U0646 # Arabic_noon
-0x05e7 U0647 # Arabic_ha
-0x05e8 U0648 # Arabic_waw
-0x05e9 U0649 # Arabic_alefmaksura
-0x05ea U064a # Arabic_yeh
-0x05eb U064b # Arabic_fathatan
-0x05ec U064c # Arabic_dammatan
-0x05ed U064d # Arabic_kasratan
-0x05ee U064e # Arabic_fatha
-0x05ef U064f # Arabic_damma
-0x05f0 U0650 # Arabic_kasra
-0x05f1 U0651 # Arabic_shadda
-0x05f2 U0652 # Arabic_sukun
-0x06a1 U0452 # Serbian_dje
-0x06a2 U0453 # Macedonia_gje
-0x06a3 U0451 # Cyrillic_io
-0x06a4 U0454 # Ukrainian_ie
-0x06a5 U0455 # Macedonia_dse
-0x06a6 U0456 # Ukrainian_i
-0x06a7 U0457 # Ukrainian_yi
-0x06a8 U0458 # Cyrillic_je
-0x06a9 U0459 # Cyrillic_lje
-0x06aa U045a # Cyrillic_nje
-0x06ab U045b # Serbian_tshe
-0x06ac U045c # Macedonia_kje
-0x06ae U045e # Byelorussian_shortu
-0x06af U045f # Cyrillic_dzhe
-0x06b0 U2116 # numerosign
-0x06b1 U0402 # Serbian_DJE
-0x06b2 U0403 # Macedonia_GJE
-0x06b3 U0401 # Cyrillic_IO
-0x06b4 U0404 # Ukrainian_IE
-0x06b5 U0405 # Macedonia_DSE
-0x06b6 U0406 # Ukrainian_I
-0x06b7 U0407 # Ukrainian_YI
-0x06b8 U0408 # Cyrillic_JE
-0x06b9 U0409 # Cyrillic_LJE
-0x06ba U040a # Cyrillic_NJE
-0x06bb U040b # Serbian_TSHE
-0x06bc U040c # Macedonia_KJE
-0x06be U040e # Byelorussian_SHORTU
-0x06bf U040f # Cyrillic_DZHE
-0x06c0 U044e # Cyrillic_yu
-0x06c1 U0430 # Cyrillic_a
-0x06c2 U0431 # Cyrillic_be
-0x06c3 U0446 # Cyrillic_tse
-0x06c4 U0434 # Cyrillic_de
-0x06c5 U0435 # Cyrillic_ie
-0x06c6 U0444 # Cyrillic_ef
-0x06c7 U0433 # Cyrillic_ghe
-0x06c8 U0445 # Cyrillic_ha
-0x06c9 U0438 # Cyrillic_i
-0x06ca U0439 # Cyrillic_shorti
-0x06cb U043a # Cyrillic_ka
-0x06cc U043b # Cyrillic_el
-0x06cd U043c # Cyrillic_em
-0x06ce U043d # Cyrillic_en
-0x06cf U043e # Cyrillic_o
-0x06d0 U043f # Cyrillic_pe
-0x06d1 U044f # Cyrillic_ya
-0x06d2 U0440 # Cyrillic_er
-0x06d3 U0441 # Cyrillic_es
-0x06d4 U0442 # Cyrillic_te
-0x06d5 U0443 # Cyrillic_u
-0x06d6 U0436 # Cyrillic_zhe
-0x06d7 U0432 # Cyrillic_ve
-0x06d8 U044c # Cyrillic_softsign
-0x06d9 U044b # Cyrillic_yeru
-0x06da U0437 # Cyrillic_ze
-0x06db U0448 # Cyrillic_sha
-0x06dc U044d # Cyrillic_e
-0x06dd U0449 # Cyrillic_shcha
-0x06de U0447 # Cyrillic_che
-0x06df U044a # Cyrillic_hardsign
-0x06e0 U042e # Cyrillic_YU
-0x06e1 U0410 # Cyrillic_A
-0x06e2 U0411 # Cyrillic_BE
-0x06e3 U0426 # Cyrillic_TSE
-0x06e4 U0414 # Cyrillic_DE
-0x06e5 U0415 # Cyrillic_IE
-0x06e6 U0424 # Cyrillic_EF
-0x06e7 U0413 # Cyrillic_GHE
-0x06e8 U0425 # Cyrillic_HA
-0x06e9 U0418 # Cyrillic_I
-0x06ea U0419 # Cyrillic_SHORTI
-0x06eb U041a # Cyrillic_KA
-0x06ec U041b # Cyrillic_EL
-0x06ed U041c # Cyrillic_EM
-0x06ee U041d # Cyrillic_EN
-0x06ef U041e # Cyrillic_O
-0x06f0 U041f # Cyrillic_PE
-0x06f1 U042f # Cyrillic_YA
-0x06f2 U0420 # Cyrillic_ER
-0x06f3 U0421 # Cyrillic_ES
-0x06f4 U0422 # Cyrillic_TE
-0x06f5 U0423 # Cyrillic_U
-0x06f6 U0416 # Cyrillic_ZHE
-0x06f7 U0412 # Cyrillic_VE
-0x06f8 U042c # Cyrillic_SOFTSIGN
-0x06f9 U042b # Cyrillic_YERU
-0x06fa U0417 # Cyrillic_ZE
-0x06fb U0428 # Cyrillic_SHA
-0x06fc U042d # Cyrillic_E
-0x06fd U0429 # Cyrillic_SHCHA
-0x06fe U0427 # Cyrillic_CHE
-0x06ff U042a # Cyrillic_HARDSIGN
-0x07a1 U0386 # Greek_ALPHAaccent
-0x07a2 U0388 # Greek_EPSILONaccent
-0x07a3 U0389 # Greek_ETAaccent
-0x07a4 U038a # Greek_IOTAaccent
-0x07a5 U03aa # Greek_IOTAdiaeresis
-0x07a7 U038c # Greek_OMICRONaccent
-0x07a8 U038e # Greek_UPSILONaccent
-0x07a9 U03ab # Greek_UPSILONdieresis
-0x07ab U038f # Greek_OMEGAaccent
-0x07ae U0385 # Greek_accentdieresis
-0x07af U2015 # Greek_horizbar
-0x07b1 U03ac # Greek_alphaaccent
-0x07b2 U03ad # Greek_epsilonaccent
-0x07b3 U03ae # Greek_etaaccent
-0x07b4 U03af # Greek_iotaaccent
-0x07b5 U03ca # Greek_iotadieresis
-0x07b6 U0390 # Greek_iotaaccentdieresis
-0x07b7 U03cc # Greek_omicronaccent
-0x07b8 U03cd # Greek_upsilonaccent
-0x07b9 U03cb # Greek_upsilondieresis
-0x07ba U03b0 # Greek_upsilonaccentdieresis
-0x07bb U03ce # Greek_omegaaccent
-0x07c1 U0391 # Greek_ALPHA
-0x07c2 U0392 # Greek_BETA
-0x07c3 U0393 # Greek_GAMMA
-0x07c4 U0394 # Greek_DELTA
-0x07c5 U0395 # Greek_EPSILON
-0x07c6 U0396 # Greek_ZETA
-0x07c7 U0397 # Greek_ETA
-0x07c8 U0398 # Greek_THETA
-0x07c9 U0399 # Greek_IOTA
-0x07ca U039a # Greek_KAPPA
-0x07cb U039b # Greek_LAMBDA
-0x07cb U039b # Greek_LAMDA
-0x07cc U039c # Greek_MU
-0x07cd U039d # Greek_NU
-0x07ce U039e # Greek_XI
-0x07cf U039f # Greek_OMICRON
-0x07d0 U03a0 # Greek_PI
-0x07d1 U03a1 # Greek_RHO
-0x07d2 U03a3 # Greek_SIGMA
-0x07d4 U03a4 # Greek_TAU
-0x07d5 U03a5 # Greek_UPSILON
-0x07d6 U03a6 # Greek_PHI
-0x07d7 U03a7 # Greek_CHI
-0x07d8 U03a8 # Greek_PSI
-0x07d9 U03a9 # Greek_OMEGA
-0x07e1 U03b1 # Greek_alpha
-0x07e2 U03b2 # Greek_beta
-0x07e3 U03b3 # Greek_gamma
-0x07e4 U03b4 # Greek_delta
-0x07e5 U03b5 # Greek_epsilon
-0x07e6 U03b6 # Greek_zeta
-0x07e7 U03b7 # Greek_eta
-0x07e8 U03b8 # Greek_theta
-0x07e9 U03b9 # Greek_iota
-0x07ea U03ba # Greek_kappa
-0x07eb U03bb # Greek_lambda
-0x07ec U03bc # Greek_mu
-0x07ed U03bd # Greek_nu
-0x07ee U03be # Greek_xi
-0x07ef U03bf # Greek_omicron
-0x07f0 U03c0 # Greek_pi
-0x07f1 U03c1 # Greek_rho
-0x07f2 U03c3 # Greek_sigma
-0x07f3 U03c2 # Greek_finalsmallsigma
-0x07f4 U03c4 # Greek_tau
-0x07f5 U03c5 # Greek_upsilon
-0x07f6 U03c6 # Greek_phi
-0x07f7 U03c7 # Greek_chi
-0x07f8 U03c8 # Greek_psi
-0x07f9 U03c9 # Greek_omega
-0x08a1 U0000 # leftradical
-0x08a2 U0000 # topleftradical
-0x08a3 U0000 # horizconnector
-0x08a4 U2320 # topintegral
-0x08a5 U2321 # botintegral
-0x08a6 U2502 # vertconnector
-0x08a7 U0000 # topleftsqbracket
-0x08a8 U0000 # botleftsqbracket
-0x08a9 U0000 # toprightsqbracket
-0x08aa U0000 # botrightsqbracket
-0x08ab U0000 # topleftparens
-0x08ac U0000 # botleftparens
-0x08ad U0000 # toprightparens
-0x08ae U0000 # botrightparens
-0x08af U0000 # leftmiddlecurlybrace
-0x08b0 U0000 # rightmiddlecurlybrace
-0x08b1 U0000 # topleftsummation
-0x08b2 U0000 # botleftsummation
-0x08b3 U0000 # topvertsummationconnector
-0x08b4 U0000 # botvertsummationconnector
-0x08b5 U0000 # toprightsummation
-0x08b6 U0000 # botrightsummation
-0x08b7 U0000 # rightmiddlesummation
-0x08bc U2264 # lessthanequal
-0x08bd U2260 # notequal
-0x08be U2265 # greaterthanequal
-0x08bf U222b # integral
-0x08c0 U2234 # therefore
-0x08c1 U221d # variation
-0x08c2 U221e # infinity
-0x08c5 U2207 # nabla
-0x08c8 U2245 # approximate
-0x08c9 U0000 # similarequal
-0x08cd U21d4 # ifonlyif
-0x08ce U21d2 # implies
-0x08cf U2261 # identical
-0x08d6 U221a # radical
-0x08da U2282 # includedin
-0x08db U2283 # includes
-0x08dc U2229 # intersection
-0x08dd U222a # union
-0x08de U2227 # logicaland
-0x08df U2228 # logicalor
-0x08ef U2202 # partialderivative
-0x08f6 U0192 # function
-0x08fb U2190 # leftarrow
-0x08fc U2191 # uparrow
-0x08fd U2192 # rightarrow
-0x08fe U2193 # downarrow
-0x09df U2422 # blank
-0x09e0 U25c6 # soliddiamond
-0x09e1 U2592 # checkerboard
-0x09e2 U2409 # ht
-0x09e3 U240c # ff
-0x09e4 U240d # cr
-0x09e5 U240a # lf
-0x09e8 U2424 # nl
-0x09e9 U240b # vt
-0x09ea U2518 # lowrightcorner
-0x09eb U2510 # uprightcorner
-0x09ec U250c # upleftcorner
-0x09ed U2514 # lowleftcorner
-0x09ee U253c # crossinglines
-0x09ef U0000 # horizlinescan1
-0x09f0 U0000 # horizlinescan3
-0x09f1 U2500 # horizlinescan5
-0x09f2 U0000 # horizlinescan7
-0x09f3 U0000 # horizlinescan9
-0x09f4 U251c # leftt
-0x09f5 U2524 # rightt
-0x09f6 U2534 # bott
-0x09f7 U252c # topt
-0x09f8 U2502 # vertbar
-0xfe50 U0300 # dead_grave
-0xfe51 U0301 # dead_acute
-0xfe52 U0302 # dead_circumflex
-0xfe53 U0303 # dead_tilde
-0xfe54 U0304 # dead_macron
-0xfe55 U0306 # dead_breve
-0xfe56 U0307 # dead_abovedot
-0xfe57 U0308 # dead_diaeresis
-0xfe58 U030a # dead_abovering
-0xfe59 U030b # dead_doubleacute
-0xfe5a U030c # dead_caron
-0xfe5b U0327 # dead_cedilla
-0xfe5c U0328 # dead_ogonek
-0xfe5d U0345 # dead_iota
-0xfe5e U3099 # dead_voiced_sound
-0xfe5f U309a # dead_semivoiced_sound
-0xff08 U0008 # BackSpace /* back space, back char */
-0xff09 U0009 # Tab
-0xff0a U000a # Linefeed /* Linefeed, LF */
-0xff0b U000b # Clear
-0xff0d U000d # Return /* Return, enter */
-0xff13 U0013 # Pause /* Pause, hold */
-0xff14 U0014 # Scroll_Lock
-0xff15 U0015 # Sys_Req
-0xff1b U001b # Escape
-0xff80 U0032 # KP_Space /* space */
-0xff89 U0009 # KP_Tab
-0xff8d U000d # KP_Enter /* enter */
-0xffaa U002a # KP_Multiply
-0xffab U002b # KP_Add
-0xffac U002c # KP_Separator /* separator, often comma */
-0xffad U002d # KP_Subtract
-0xffae U002e # KP_Decimal
-0xffaf U002f # KP_Divide
-0xffb0 U0030 # KP_0
-0xffb1 U0031 # KP_1
-0xffb2 U0032 # KP_2
-0xffb3 U0033 # KP_3
-0xffb4 U0034 # KP_4
-0xffb5 U0035 # KP_5
-0xffb6 U0036 # KP_6
-0xffb7 U0037 # KP_7
-0xffb8 U0038 # KP_8
-0xffb9 U0039 # KP_9
-0xffbd U003d # KP_Equal /* equals */
-0x0aa1 U2003 # emspace
-0x0aa2 U2002 # enspace
-0x0aa3 U2004 # em3space
-0x0aa4 U2005 # em4space
-0x0aa5 U2007 # digitspace
-0x0aa6 U2008 # punctspace
-0x0aa7 U2009 # thinspace
-0x0aa8 U200a # hairspace
-0x0aa9 U2014 # emdash
-0x0aaa U2013 # endash
-0x0aac U0000 # signifblank
-0x0aae U2026 # ellipsis
-0x0aaf U0000 # doubbaselinedot
-0x0ab0 U2153 # onethird
-0x0ab1 U2154 # twothirds
-0x0ab2 U2155 # onefifth
-0x0ab3 U2156 # twofifths
-0x0ab4 U2157 # threefifths
-0x0ab5 U2158 # fourfifths
-0x0ab6 U2159 # onesixth
-0x0ab7 U215a # fivesixths
-0x0ab8 U2105 # careof
-0x0abb U2012 # figdash
-0x0abc U2329 # leftanglebracket
-0x0abd U002e # decimalpoint
-0x0abe U232a # rightanglebracket
-0x0abf U0000 # marker
-0x0ac3 U215b # oneeighth
-0x0ac4 U215c # threeeighths
-0x0ac5 U215d # fiveeighths
-0x0ac6 U215e # seveneighths
-0x0ac9 U2122 # trademark
-0x0aca U2613 # signaturemark
-0x0acb U0000 # trademarkincircle
-0x0acc U25c1 # leftopentriangle
-0x0acd U25b7 # rightopentriangle
-0x0ace U25cb # emopencircle
-0x0acf U25a1 # emopenrectangle
-0x0ad0 U2018 # leftsinglequotemark
-0x0ad1 U2019 # rightsinglequotemark
-0x0ad2 U201c # leftdoublequotemark
-0x0ad3 U201d # rightdoublequotemark
-0x0ad4 U211e # prescription
-0x0ad6 U2032 # minutes
-0x0ad7 U2033 # seconds
-0x0ad9 U271d # latincross
-0x0ada U0000 # hexagram
-0x0adb U25ac # filledrectbullet
-0x0adc U25c0 # filledlefttribullet
-0x0add U25b6 # filledrighttribullet
-0x0ade U25cf # emfilledcircle
-0x0adf U25a0 # emfilledrect
-0x0ae0 U25e6 # enopencircbullet
-0x0ae1 U25ab # enopensquarebullet
-0x0ae2 U25ad # openrectbullet
-0x0ae3 U25b3 # opentribulletup
-0x0ae4 U25bd # opentribulletdown
-0x0ae5 U2606 # openstar
-0x0ae6 U2022 # enfilledcircbullet
-0x0ae7 U25aa # enfilledsqbullet
-0x0ae8 U25b2 # filledtribulletup
-0x0ae9 U25bc # filledtribulletdown
-0x0aea U261c # leftpointer
-0x0aeb U261e # rightpointer
-0x0aec U2663 # club
-0x0aed U2666 # diamond
-0x0aee U2665 # heart
-0x0af0 U2720 # maltesecross
-0x0af1 U2020 # dagger
-0x0af2 U2021 # doubledagger
-0x0af3 U2713 # checkmark
-0x0af4 U2717 # ballotcross
-0x0af5 U266f # musicalsharp
-0x0af6 U266d # musicalflat
-0x0af7 U2642 # malesymbol
-0x0af8 U2640 # femalesymbol
-0x0af9 U260e # telephone
-0x0afa U2315 # telephonerecorder
-0x0afb U2117 # phonographcopyright
-0x0afc U2038 # caret
-0x0afd U201a # singlelowquotemark
-0x0afe U201e # doublelowquotemark
-0x0aff U0000 # cursor
-0x0ba3 U003c # leftcaret
-0x0ba6 U003e # rightcaret
-0x0ba8 U2228 # downcaret
-0x0ba9 U2227 # upcaret
-0x0bc0 U00af # overbar
-0x0bc2 U22a4 # downtack
-0x0bc3 U2229 # upshoe
-0x0bc4 U230a # downstile
-0x0bc6 U005f # underbar
-0x0bca U2218 # jot
-0x0bcc U2395 # quad
-0x0bce U22a5 # uptack
-0x0bcf U25cb # circle
-0x0bd3 U2308 # upstile
-0x0bd6 U222a # downshoe
-0x0bd8 U2283 # rightshoe
-0x0bda U2282 # leftshoe
-0x0bdc U22a3 # lefttack
-0x0bfc U22a2 # righttack
-0x0cdf U2017 # hebrew_doublelowline
-0x0ce0 U05d0 # hebrew_aleph
-0x0ce1 U05d1 # hebrew_bet
-0x0ce1 U05d1 # hebrew_beth /* deprecated */
-0x0ce2 U05d2 # hebrew_gimel
-0x0ce2 U05d2 # hebrew_gimmel /* deprecated */
-0x0ce3 U05d3 # hebrew_dalet
-0x0ce3 U05d3 # hebrew_daleth /* deprecated */
-0x0ce4 U05d4 # hebrew_he
-0x0ce5 U05d5 # hebrew_waw
-0x0ce6 U05d6 # hebrew_zain
-0x0ce6 U05d6 # hebrew_zayin /* deprecated */
-0x0ce7 U05d7 # hebrew_chet
-0x0ce7 U05d7 # hebrew_het /* deprecated */
-0x0ce8 U05d8 # hebrew_tet
-0x0ce8 U05d8 # hebrew_teth /* deprecated */
-0x0ce9 U05d9 # hebrew_yod
-0x0cea U05da # hebrew_finalkaph
-0x0ceb U05db # hebrew_kaph
-0x0cec U05dc # hebrew_lamed
-0x0ced U05dd # hebrew_finalmem
-0x0cee U05de # hebrew_mem
-0x0cef U05df # hebrew_finalnun
-0x0cf0 U05e0 # hebrew_nun
-0x0cf1 U05e1 # hebrew_samech
-0x0cf1 U05e1 # hebrew_samekh /* deprecated */
-0x0cf2 U05e2 # hebrew_ayin
-0x0cf3 U05e3 # hebrew_finalpe
-0x0cf4 U05e4 # hebrew_pe
-0x0cf5 U05e5 # hebrew_finalzade
-0x0cf5 U05e5 # hebrew_finalzadi /* deprecated */
-0x0cf6 U05e6 # hebrew_zade
-0x0cf6 U05e6 # hebrew_zadi /* deprecated */
-0x0cf7 U05e7 # hebrew_kuf /* deprecated */
-0x0cf7 U05e7 # hebrew_qoph
-0x0cf8 U05e8 # hebrew_resh
-0x0cf9 U05e9 # hebrew_shin
-0x0cfa U05ea # hebrew_taf /* deprecated */
-0x0cfa U05ea # hebrew_taw
-0x0da1 U0e01 # Thai_kokai
-0x0da2 U0e02 # Thai_khokhai
-0x0da3 U0e03 # Thai_khokhuat
-0x0da4 U0e04 # Thai_khokhwai
-0x0da5 U0e05 # Thai_khokhon
-0x0da6 U0e06 # Thai_khorakhang
-0x0da7 U0e07 # Thai_ngongu
-0x0da8 U0e08 # Thai_chochan
-0x0da9 U0e09 # Thai_choching
-0x0daa U0e0a # Thai_chochang
-0x0dab U0e0b # Thai_soso
-0x0dac U0e0c # Thai_chochoe
-0x0dad U0e0d # Thai_yoying
-0x0dae U0e0e # Thai_dochada
-0x0daf U0e0f # Thai_topatak
-0x0db0 U0e10 # Thai_thothan
-0x0db1 U0e11 # Thai_thonangmontho
-0x0db2 U0e12 # Thai_thophuthao
-0x0db3 U0e13 # Thai_nonen
-0x0db4 U0e14 # Thai_dodek
-0x0db5 U0e15 # Thai_totao
-0x0db6 U0e16 # Thai_thothung
-0x0db7 U0e17 # Thai_thothahan
-0x0db8 U0e18 # Thai_thothong
-0x0db9 U0e19 # Thai_nonu
-0x0dba U0e1a # Thai_bobaimai
-0x0dbb U0e1b # Thai_popla
-0x0dbc U0e1c # Thai_phophung
-0x0dbd U0e1d # Thai_fofa
-0x0dbe U0e1e # Thai_phophan
-0x0dbf U0e1f # Thai_fofan
-0x0dc0 U0e20 # Thai_phosamphao
-0x0dc1 U0e21 # Thai_moma
-0x0dc2 U0e22 # Thai_yoyak
-0x0dc3 U0e23 # Thai_rorua
-0x0dc4 U0e24 # Thai_ru
-0x0dc5 U0e25 # Thai_loling
-0x0dc6 U0e26 # Thai_lu
-0x0dc7 U0e27 # Thai_wowaen
-0x0dc8 U0e28 # Thai_sosala
-0x0dc9 U0e29 # Thai_sorusi
-0x0dca U0e2a # Thai_sosua
-0x0dcb U0e2b # Thai_hohip
-0x0dcc U0e2c # Thai_lochula
-0x0dcd U0e2d # Thai_oang
-0x0dce U0e2e # Thai_honokhuk
-0x0dcf U0e2f # Thai_paiyannoi
-0x0dd0 U0e30 # Thai_saraa
-0x0dd1 U0e31 # Thai_maihanakat
-0x0dd2 U0e32 # Thai_saraaa
-0x0dd3 U0e33 # Thai_saraam
-0x0dd4 U0e34 # Thai_sarai
-0x0dd5 U0e35 # Thai_saraii
-0x0dd6 U0e36 # Thai_saraue
-0x0dd7 U0e37 # Thai_sarauee
-0x0dd8 U0e38 # Thai_sarau
-0x0dd9 U0e39 # Thai_sarauu
-0x0dda U0e3a # Thai_phinthu
-0x0dde U0e3e # Thai_maihanakat_maitho
-0x0ddf U0e3f # Thai_baht
-0x0de0 U0e40 # Thai_sarae
-0x0de1 U0e41 # Thai_saraae
-0x0de2 U0e42 # Thai_sarao
-0x0de3 U0e43 # Thai_saraaimaimuan
-0x0de4 U0e44 # Thai_saraaimaimalai
-0x0de5 U0e45 # Thai_lakkhangyao
-0x0de6 U0e46 # Thai_maiyamok
-0x0de7 U0e47 # Thai_maitaikhu
-0x0de8 U0e48 # Thai_maiek
-0x0de9 U0e49 # Thai_maitho
-0x0dea U0e4a # Thai_maitri
-0x0deb U0e4b # Thai_maichattawa
-0x0dec U0e4c # Thai_thanthakhat
-0x0ded U0e4d # Thai_nikhahit
-0x0df0 U0e50 # Thai_leksun
-0x0df1 U0e51 # Thai_leknung
-0x0df2 U0e52 # Thai_leksong
-0x0df3 U0e53 # Thai_leksam
-0x0df4 U0e54 # Thai_leksi
-0x0df5 U0e55 # Thai_lekha
-0x0df6 U0e56 # Thai_lekhok
-0x0df7 U0e57 # Thai_lekchet
-0x0df8 U0e58 # Thai_lekpaet
-0x0df9 U0e59 # Thai_lekkao
-0x0ea1 U3131 # Hangul_Kiyeog
-0x0ea2 U3132 # Hangul_SsangKiyeog
-0x0ea3 U3133 # Hangul_KiyeogSios
-0x0ea4 U3134 # Hangul_Nieun
-0x0ea5 U3135 # Hangul_NieunJieuj
-0x0ea6 U3136 # Hangul_NieunHieuh
-0x0ea7 U3137 # Hangul_Dikeud
-0x0ea8 U3138 # Hangul_SsangDikeud
-0x0ea9 U3139 # Hangul_Rieul
-0x0eaa U313a # Hangul_RieulKiyeog
-0x0eab U313b # Hangul_RieulMieum
-0x0eac U313c # Hangul_RieulPieub
-0x0ead U313d # Hangul_RieulSios
-0x0eae U313e # Hangul_RieulTieut
-0x0eaf U313f # Hangul_RieulPhieuf
-0x0eb0 U3140 # Hangul_RieulHieuh
-0x0eb1 U3141 # Hangul_Mieum
-0x0eb2 U3142 # Hangul_Pieub
-0x0eb3 U3143 # Hangul_SsangPieub
-0x0eb4 U3144 # Hangul_PieubSios
-0x0eb5 U3145 # Hangul_Sios
-0x0eb6 U3146 # Hangul_SsangSios
-0x0eb7 U3147 # Hangul_Ieung
-0x0eb8 U3148 # Hangul_Jieuj
-0x0eb9 U3149 # Hangul_SsangJieuj
-0x0eba U314a # Hangul_Cieuc
-0x0ebb U314b # Hangul_Khieuq
-0x0ebc U314c # Hangul_Tieut
-0x0ebd U314d # Hangul_Phieuf
-0x0ebe U314e # Hangul_Hieuh
-0x0ebf U314f # Hangul_A
-0x0ec0 U3150 # Hangul_AE
-0x0ec1 U3151 # Hangul_YA
-0x0ec2 U3152 # Hangul_YAE
-0x0ec3 U3153 # Hangul_EO
-0x0ec4 U3154 # Hangul_E
-0x0ec5 U3155 # Hangul_YEO
-0x0ec6 U3156 # Hangul_YE
-0x0ec7 U3157 # Hangul_O
-0x0ec8 U3158 # Hangul_WA
-0x0ec9 U3159 # Hangul_WAE
-0x0eca U315a # Hangul_OE
-0x0ecb U315b # Hangul_YO
-0x0ecc U315c # Hangul_U
-0x0ecd U315d # Hangul_WEO
-0x0ece U315e # Hangul_WE
-0x0ecf U315f # Hangul_WI
-0x0ed0 U3160 # Hangul_YU
-0x0ed1 U3161 # Hangul_EU
-0x0ed2 U3162 # Hangul_YI
-0x0ed3 U3163 # Hangul_I
-0x0ed4 U11a8 # Hangul_J_Kiyeog
-0x0ed5 U11a9 # Hangul_J_SsangKiyeog
-0x0ed6 U11aa # Hangul_J_KiyeogSios
-0x0ed7 U11ab # Hangul_J_Nieun
-0x0ed8 U11ac # Hangul_J_NieunJieuj
-0x0ed9 U11ad # Hangul_J_NieunHieuh
-0x0eda U11ae # Hangul_J_Dikeud
-0x0edb U11af # Hangul_J_Rieul
-0x0edc U11b0 # Hangul_J_RieulKiyeog
-0x0edd U11b1 # Hangul_J_RieulMieum
-0x0ede U11b2 # Hangul_J_RieulPieub
-0x0edf U11b3 # Hangul_J_RieulSios
-0x0ee0 U11b4 # Hangul_J_RieulTieut
-0x0ee1 U11b5 # Hangul_J_RieulPhieuf
-0x0ee2 U11b6 # Hangul_J_RieulHieuh
-0x0ee3 U11b7 # Hangul_J_Mieum
-0x0ee4 U11b8 # Hangul_J_Pieub
-0x0ee5 U11b9 # Hangul_J_PieubSios
-0x0ee6 U11ba # Hangul_J_Sios
-0x0ee7 U11bb # Hangul_J_SsangSios
-0x0ee8 U11bc # Hangul_J_Ieung
-0x0ee9 U11bd # Hangul_J_Jieuj
-0x0eea U11be # Hangul_J_Cieuc
-0x0eeb U11bf # Hangul_J_Khieuq
-0x0eec U11c0 # Hangul_J_Tieut
-0x0eed U11c1 # Hangul_J_Phieuf
-0x0eee U11c2 # Hangul_J_Hieuh
-0x0eef U316d # Hangul_RieulYeorinHieuh
-0x0ef0 U3171 # Hangul_SunkyeongeumMieum
-0x0ef1 U3178 # Hangul_SunkyeongeumPieub
-0x0ef2 U317f # Hangul_PanSios
-0x0ef3 U0000 # Hangul_KkogjiDalrinIeung
-0x0ef4 U3184 # Hangul_SunkyeongeumPhieuf
-0x0ef5 U3186 # Hangul_YeorinHieuh
-0x0ef6 U318d # Hangul_AraeA
-0x0ef7 U318e # Hangul_AraeAE
-0x0ef8 U11eb # Hangul_J_PanSios
-0x0ef9 U0000 # Hangul_J_KkogjiDalrinIeung
-0x0efa U11f9 # Hangul_J_YeorinHieuh
-0x0eff U20a9 # Korean_Won
-0x20a0 U20a0 # EcuSign
-0x20a1 U20a1 # ColonSign
-0x20a2 U20a2 # CruzeiroSign
-0x20a3 U20a3 # FFrancSign
-0x20a4 U20a4 # LiraSign
-0x20a5 U20a5 # MillSign
-0x20a6 U20a6 # NairaSign
-0x20a7 U20a7 # PesetaSign
-0x20a8 U20a8 # RupeeSign
-0x20a9 U20a9 # WonSign
-0x20aa U20aa # NewSheqelSign
-0x20ab U20ab # DongSign
-0x20ac U20ac # EuroSign
diff --git a/nx-X11/programs/xterm/unicode/make-precompose.sh b/nx-X11/programs/xterm/unicode/make-precompose.sh
deleted file mode 100644
index 747866c4d..000000000
--- a/nx-X11/programs/xterm/unicode/make-precompose.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/bin/sh
-# $XTermId: make-precompose.sh,v 1.5 2005/04/03 16:58:30 tom Exp $
-# $XFree86: xc/programs/xterm/unicode/make-precompose.sh,v 1.4 2005/03/29 04:00:32 tsi Exp $
-cat precompose.c.head | sed -e's/@/$/g'
-cut UnicodeData.txt -d ";" -f 1,6 | \
- grep ";[0-9,A-F]" | grep " " | \
- sed -e "s/ /, 0x/;s/^/{ 0x/;s/;/, 0x/;s/$/},/" | (sort -k 3 || sort +2)
-cat precompose.c.tail
diff --git a/nx-X11/programs/xterm/unicode/precompose.c.head b/nx-X11/programs/xterm/unicode/precompose.c.head
deleted file mode 100644
index c51f752d7..000000000
--- a/nx-X11/programs/xterm/unicode/precompose.c.head
+++ /dev/null
@@ -1,16 +0,0 @@
-/*
- * Canonical Compositions
- *
- * DO NOT EDIT BY HAND! This is generated by the script
- * unicode/make-precompose.sh
- */
-/* @XTermId@ */
-/* @XFree86@ */
-
-#include <precompose.h>
-
-static struct {
- int replacement;
- int base;
- int comb;
-} precompositions[] = {
diff --git a/nx-X11/programs/xterm/unicode/precompose.c.tail b/nx-X11/programs/xterm/unicode/precompose.c.tail
deleted file mode 100644
index 0ceca9b6c..000000000
--- a/nx-X11/programs/xterm/unicode/precompose.c.tail
+++ /dev/null
@@ -1,23 +0,0 @@
-};
-
-int do_precomposition(int base, int comb) {
- int min = 0;
- int max = sizeof(precompositions) / sizeof(precompositions[0]) - 1;
- int mid;
- unsigned int sought = ((unsigned)base << 16) | (unsigned)comb, that;
-
- /* binary search */
- while (max >= min) {
- mid = (min + max) / 2;
- that = ((unsigned)precompositions[mid].base << 16) | ((unsigned)precompositions[mid].comb);
- if (that < sought) {
- min = mid + 1;
- } else if (that > sought) {
- max = mid - 1;
- } else {
- return precompositions[mid].replacement;
- }
- }
- /* no match */
- return -1;
-}