:pserver:cvsanon@mok.lvcm.com:/CVS/ReactOS reactos
[reactos.git] / subsys / win32k / freetype / docs / glnames.py
1 #!/usr/bin/env python
2 #
3
4 #
5 # FreeType 2 glyph name builder
6 #
7
8
9 # Copyright 1996-2000 by
10 # David Turner, Robert Wilhelm, and Werner Lemberg.
11 #
12 # This file is part of the FreeType project, and may only be used, modified,
13 # and distributed under the terms of the FreeType project license,
14 # LICENSE.TXT.  By continuing to use, modify, or distribute this file you
15 # indicate that you have read the license and understand and accept it
16 # fully.
17
18
19 """\
20
21 usage: %s <output-file>
22
23   This very simple python script is used to generate the glyph names
24   tables defined in the PSNames module.
25
26   Its single argument is the name of the header file to be created.
27 """
28
29
30 import sys, string
31
32
33 # This table is used to name the glyph according to the Macintosh
34 # specification.  It is used by the TrueType Postscript names table
35 #
36 mac_standard_names = \
37 [
38   # 0
39   ".notdef", ".null", "CR", "space", "exclam",
40   "quotedbl", "numbersign", "dollar", "percent", "ampersand",
41
42   # 10
43   "quotesingle", "parenleft", "parenright", "asterisk", "plus",
44   "comma", "hyphen", "period", "slash", "zero",
45
46   # 20
47   "one", "two", "three", "four", "five",
48   "six", "seven", "eight", "nine", "colon",
49
50   # 30
51   "semicolon", "less", "equal", "greater", "question",
52   "at", "A", "B", "C", "D",
53
54   # 40
55   "E", "F", "G", "H", "I",
56   "J", "K", "L", "M", "N",
57
58   # 50
59   "O", "P", "Q", "R", "S",
60   "T", "U", "V", "W", "X",
61
62   # 60
63   "Y", "Z", "bracketleft", "backslash", "bracketright",
64   "asciicircum", "underscore", "grave", "a", "b",
65
66   # 70
67   "c", "d", "e", "f", "g",
68   "h", "i", "j", "k", "l",
69
70   # 80
71   "m", "n", "o", "p", "q",
72   "r", "s", "t", "u", "v",
73
74   # 90
75   "w", "x", "y", "z", "braceleft",
76   "bar", "braceright", "asciitilde", "Adieresis", "Aring",
77
78   # 100
79   "Ccedilla", "Eacute", "Ntilde", "Odieresis", "Udieresis",
80   "aacute", "agrave", "acircumflex", "adieresis", "atilde",
81
82   # 110
83   "aring", "ccedilla", "eacute", "egrave", "ecircumflex",
84   "edieresis", "iacute", "igrave", "icircumflex", "idieresis",
85
86   # 120
87   "ntilde", "oacute", "ograve", "ocircumflex", "odieresis",
88   "otilde", "uacute", "ugrave", "ucircumflex", "udieresis",
89  
90   # 130
91   "dagger", "degree", "cent", "sterling", "section",
92   "bullet", "paragraph", "germandbls", "registered", "copyright",
93  
94   # 140
95   "trademark", "acute", "dieresis", "notequal", "AE",
96   "Oslash", "infinity", "plusminus", "lessequal", "greaterequal",
97
98   # 150
99   "yen", "mu", "partialdiff", "summation", "product",
100   "pi", "integral", "ordfeminine", "ordmasculine", "Omega",
101
102   # 160
103   "ae", "oslash", "questiondown", "exclamdown", "logicalnot",
104   "radical", "florin", "approxequal", "Delta", "guillemotleft",
105
106   # 170
107   "guillemotright", "ellipsis", "nbspace", "Agrave", "Atilde",
108   "Otilde", "OE", "oe", "endash", "emdash",
109
110   # 180
111   "quotedblleft", "quotedblright", "quoteleft", "quoteright", "divide",
112   "lozenge", "ydieresis", "Ydieresis", "fraction", "currency",
113
114   # 190
115   "guilsinglleft", "guilsinglright", "fi", "fl", "daggerdbl",
116   "periodcentered", "quotesinglbase", "quotedblbase", "perthousand",
117     "Acircumflex",
118
119   # 200
120   "Ecircumflex", "Aacute", "Edieresis", "Egrave", "Iacute",
121   "Icircumflex", "Idieresis", "Igrave", "Oacute", "Ocircumflex",
122
123   # 210
124   "apple", "Ograve", "Uacute", "Ucircumflex", "Ugrave",
125   "dotlessi", "circumflex", "tilde", "macron", "breve",
126
127   # 220
128   "dotaccent", "ring", "cedilla", "hungarumlaut", "ogonek",
129   "caron", "Lslash", "lslash", "Scaron", "scaron",
130
131   # 230
132   "Zcaron", "zcaron", "brokenbar", "Eth", "eth",
133   "Yacute", "yacute", "Thorn", "thorn", "minus",
134
135   # 240
136   "multiply", "onesuperior", "twosuperior", "threesuperior", "onehalf",
137   "onequarter", "threequarters", "franc", "Gbreve", "gbreve",
138
139   # 250
140   "Idot", "Scedilla", "scedilla", "Cacute", "cacute",
141   "Ccaron", "ccaron", "dmacron"
142 ]
143
144
145 t1_standard_strings = \
146 [
147   # 0
148   ".notdef", "space", "exclam", "quotedbl", "numbersign",
149   "dollar", "percent", "ampersand", "quoteright", "parenleft",
150
151   # 10
152   "parenright", "asterisk", "plus", "comma", "hyphen",
153   "period", "slash", "zero", "one", "two",
154
155   # 20
156   "three", "four", "five", "six", "seven",
157   "eight", "nine", "colon", "semicolon", "less",
158
159   # 30
160   "equal", "greater", "question", "at", "A",
161   "B", "C", "D", "E", "F",
162
163   # 40
164   "G", "H", "I", "J", "K",
165   "L", "M", "N", "O", "P",
166
167   # 50
168   "Q", "R", "S", "T", "U",
169   "V", "W", "X", "Y", "Z",
170
171   # 60
172   "bracketleft", "backslash", "bracketright", "asciicircum", "underscore",
173   "quoteleft", "a", "b", "c", "d",
174
175   # 70
176   "e", "f", "g", "h", "i",
177   "j", "k", "l", "m", "n",
178
179   # 80
180   "o", "p", "q", "r", "s",
181   "t", "u", "v", "w", "x",
182
183   # 90
184   "y", "z", "braceleft", "bar", "braceright",
185   "asciitilde", "exclamdown", "cent", "sterling", "fraction",
186
187   # 100
188   "yen", "florin", "section", "currency", "quotesingle",
189   "quotedblleft", "guillemotleft", "guilsinglleft", "guilsinglright", "fi",
190
191   # 110
192   "fl", "endash", "dagger", "daggerdbl", "periodcenter",
193   "paragraph", "bullet", "quotesinglbase", "quotedblbase", "quotedblright",
194
195   # 120
196   "guillemotright", "ellipsis", "perthousand", "questiondown", "grave",
197   "acute", "circumflex", "tilde", "macron", "breve",
198
199   # 130
200   "dotaccent", "dieresis", "ring", "cedilla", "hungarumlaut",
201   "ogonek", "caron", "emdash", "AE", "ordfeminine",
202
203   # 140
204   "Lslash", "Oslash", "OE", "ordmasculine", "ae",
205   "dotlessi", "Islash", "oslash", "oe", "germandbls",
206
207   # 150
208   "onesuperior", "logicalnot", "mu", "trademark", "Eth",
209   "onehalf", "plusminus", "Thorn", "onequarter", "divide",
210
211   # 160
212   "brokenbar", "degree", "thorn", "threequarters", "twosuperior",
213   "registered", "minus", "eth", "multiply", "threesuperior",
214
215   # 170
216   "copyright", "Aacute", "Acircumflex", "Adieresis", "Agrave",
217   "Aring", "Atilde", "Ccedilla", "Eacute", "Ecircumflex",
218
219   # 180
220   "Edieresis", "Egrave", "Iacute", "Icircumflex", "Idieresis",
221   "Igrave", "Ntilde", "Oacute", "Ocircumflex", "Odieresis",
222
223   # 190
224   "Ograve", "Otilde", "Scaron", "Uacute", "Ucircumflex",
225   "Udieresis", "Ugrave", "Yacute", "Ydieresis", "Zcaron",
226
227   # 200
228   "aacute", "acircumflex", "adieresis", "agrave", "aring",
229   "atilde", "ccedilla", "eacute", "ecircumflex", "edieresis",
230
231   # 210
232   "egrave", "iacute", "icircumflex", "idieresis", "igrave",
233   "ntilde", "oacute", "ocircumflex", "odieresis", "ograve",
234
235   # 220
236   "otilde", "scaron", "uacute", "ucircumflex", "udieresis",
237   "ugrave", "yacute", "ydieresis", "zcaron", "exclamsmall",
238
239   # 230
240   "Hungarumlautsmall", "dollaroldstyle", "dollarsuperior", "ampersandsmall",
241     "Acutesmall",
242   "parenleftsuperior", "parenrightsuperior", "twodotenleader",
243     "onedotenleader", "zerooldstyle",
244
245   # 240
246   "oneoldstyle", "twooldstyle", "threeoldstyle", "fouroldstyle",
247     "fiveoldstyle",
248   "sixoldstyle", "sevenoldstyle", "eightoldstyle", "nineoldstyle",
249     "commasuperior",
250
251   # 250
252   "threequartersemdash", "periodsuperior", "questionsmall", "asuperior",
253     "bsuperior",
254   "centsuperior", "dsuperior", "esuperior", "isuperior", "lsuperior",
255
256   # 260
257   "msuperior", "nsuperior", "osuperior", "rsuperior", "ssuperior",
258   "tsuperior", "ff", "ffi", "ffl", "parenleftinferior",
259
260   # 270
261   "parenrightinferior", "Circumflexsmall", "hyphensuperior", "Gravesmall",
262     "Asmall",
263   "Bsmall", "Csmall", "Dsmall", "Esmall", "Fsmall",
264
265   # 280
266   "Gsmall", "Hsmall", "Ismall", "Jsmall", "Ksmall",
267   "Lsmall", "Msmall", "Nsmall", "Osmall", "Psmall",
268
269   # 290
270   "Qsmall", "Rsmall", "Ssmall", "Tsmall", "Usmall",
271   "Vsmall", "Wsmall", "Xsmall", "Ysmall", "Zsmall",
272
273   # 300
274   "colonmonetary", "onefitted", "rupiah", "Tildesmall", "exclamdownsmall",
275   "centoldstyle", "Lslashsmall", "Scaronsmall", "Zcaronsmall",
276     "Dieresissmall",
277
278   # 310
279   "Brevesmall", "Caronsmall", "Dotaccentsmall", "Macronsmall", "figuredash",
280   "hypheninferior", "Ogoneksmall", "Ringsmall", "Cedillasmall",
281     "questiondownsmall",
282
283   # 320
284   "oneeighth", "threeeighths", "fiveeighths", "seveneighths", "onethird",
285   "twothirds", "zerosuperior", "foursuperior", "fivesuperior",
286     "sixsuperior",
287
288   # 330
289   "sevensuperior", "eightsuperior", "ninesuperior", "zeroinferior",
290     "oneinferior",
291   "twoinferior", "threeinferior", "fourinferior", "fiveinferior",
292     "sixinferior",
293
294   # 340
295   "seveninferior", "eightinferior", "nineinferior", "centinferior",
296     "dollarinferior",
297   "periodinferior", "commainferior", "Agravesmall", "Aacutesmall",
298     "Acircumflexsmall",
299
300   # 350
301   "Atildesmall", "Adieresissmall", "Aringsmall", "AEsmall", "Ccedillasmall",
302   "Egravesmall", "Eacutesmall", "Ecircumflexsmall", "Edieresissmall",
303     "Igravesmall",
304
305   # 360
306   "Iacutesmall", "Icircumflexsmall", "Idieresissmall", "Ethsmall",
307     "Ntildesmall",
308   "Ogravesmall", "Oacutesmall", "Ocircumflexsmall", "Otildesmall",
309     "Odieresissmall",
310
311   # 370
312   "OEsmall", "Oslashsmall", "Ugravesmall", "Uacautesmall",
313     "Ucircumflexsmall",
314   "Udieresissmall", "Yacutesmall", "Thornsmall", "Ydieresissmall",
315     "001.000",
316
317   # 380
318   "001.001", "001.002", "001.003", "Black", "Bold",
319   "Book", "Light", "Medium", "Regular", "Roman",
320
321   # 390
322   "Semibold"
323 ]
324
325
326 t1_standard_encoding = \
327 [
328     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
329     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
330     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
331     0,   0,   1,   2,   3,   4,   5,   6,   7,   8,
332     9,  10,  11,  12,  13,  14,  15,  16,  17,  18,
333
334    19,  20,  21,  22,  23,  24,  25,  26,  27,  28,
335    29,  30,  31,  32,  33,  34,  35,  36,  37,  38,
336    39,  40,  41,  42,  43,  44,  45,  46,  47,  48,
337    49,  50,  51,  52,  53,  54,  55,  56,  57,  58,
338    59,  60,  61,  62,  63,  64,  65,  66,  67,  68,
339
340    69,  70,  71,  72,  73,  74,  75,  76,  77,  78,
341    79,  80,  81,  82,  83,  84,  85,  86,  87,  88,
342    89,  90,  91,  92,  93,  94,  95,   0,   0,   0,
343     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
344     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
345
346     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
347     0,  96,  97,  98,  99, 100, 101, 102, 103, 104,
348   105, 106, 107, 108, 109, 110,   0, 111, 112, 113,
349   114,   0, 115, 116, 117, 118, 119, 120, 121, 122,
350     0, 123,   0, 124, 125, 126, 127, 128, 129, 130,
351
352   131,   0, 132, 133,   0, 134, 135, 136, 137,   0,
353     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
354     0,   0,   0,   0,   0, 138,   0, 139,   0,   0,
355     0,   0, 140, 141, 142, 143,   0,   0,   0,   0,
356     0, 144,   0,   0,   0, 145,   0,   0, 146, 147,
357
358   148, 149,   0,   0,   0,   0
359 ]
360
361
362 t1_expert_encoding = \
363 [
364     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
365     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
366     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
367     0,   0,   1, 229, 230,   0, 231, 232, 233, 234,
368   235, 236, 237, 238,  13,  14,  15,  99, 239, 240,
369
370   241, 242, 243, 244, 245, 246, 247, 248,  27,  28,
371   249, 250, 251, 252,   0, 253, 254, 255, 256, 257,
372     0,   0,   0, 258,   0,   0, 259, 260, 261, 262,
373     0,   0, 263, 264, 265,   0, 266, 109, 110, 267,
374   268, 269,   0, 270, 271, 272, 273, 274, 275, 276,
375
376   277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
377   287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
378   297, 298, 299, 300, 301, 302, 303,   0,   0,   0,
379     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
380     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
381
382     0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
383     0, 304, 305, 306,   0,   0, 307, 308, 309, 310,
384   311,   0, 312,   0,   0, 312,   0,   0, 314, 315,
385     0,   0, 316, 317, 318,   0,   0,   0, 158, 155,
386   163, 319, 320, 321, 322, 323, 324, 325,   0,   0,
387
388   326, 150, 164, 169, 327, 328, 329, 330, 331, 332,
389   333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
390   343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
391   353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
392   363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
393
394   373, 374, 375, 376, 377, 378
395 ]
396
397
398 # This data has been taken literally from the file `glyphlist.txt',
399 # version 1.2, 22 Oct 1998.  It is available from
400 #
401 #   http://partners.adobe.com/asn/developer/typeforum/unicodegn.html
402 #
403 adobe_glyph_list = """\
404 0041;A;LATIN CAPITAL LETTER A
405 00C6;AE;LATIN CAPITAL LETTER AE
406 01FC;AEacute;LATIN CAPITAL LETTER AE WITH ACUTE
407 F7E6;AEsmall;LATIN SMALL CAPITAL LETTER AE
408 00C1;Aacute;LATIN CAPITAL LETTER A WITH ACUTE
409 F7E1;Aacutesmall;LATIN SMALL CAPITAL LETTER A WITH ACUTE
410 0102;Abreve;LATIN CAPITAL LETTER A WITH BREVE
411 00C2;Acircumflex;LATIN CAPITAL LETTER A WITH CIRCUMFLEX
412 F7E2;Acircumflexsmall;LATIN SMALL CAPITAL LETTER A WITH CIRCUMFLEX
413 F6C9;Acute;CAPITAL ACUTE ACCENT
414 F7B4;Acutesmall;SMALL CAPITAL ACUTE ACCENT
415 00C4;Adieresis;LATIN CAPITAL LETTER A WITH DIAERESIS
416 F7E4;Adieresissmall;LATIN SMALL CAPITAL LETTER A WITH DIAERESIS
417 00C0;Agrave;LATIN CAPITAL LETTER A WITH GRAVE
418 F7E0;Agravesmall;LATIN SMALL CAPITAL LETTER A WITH GRAVE
419 0391;Alpha;GREEK CAPITAL LETTER ALPHA
420 0386;Alphatonos;GREEK CAPITAL LETTER ALPHA WITH TONOS
421 0100;Amacron;LATIN CAPITAL LETTER A WITH MACRON
422 0104;Aogonek;LATIN CAPITAL LETTER A WITH OGONEK
423 00C5;Aring;LATIN CAPITAL LETTER A WITH RING ABOVE
424 01FA;Aringacute;LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE
425 F7E5;Aringsmall;LATIN SMALL CAPITAL LETTER A WITH RING ABOVE
426 F761;Asmall;LATIN SMALL CAPITAL LETTER A
427 00C3;Atilde;LATIN CAPITAL LETTER A WITH TILDE
428 F7E3;Atildesmall;LATIN SMALL CAPITAL LETTER A WITH TILDE
429 0042;B;LATIN CAPITAL LETTER B
430 0392;Beta;GREEK CAPITAL LETTER BETA
431 F6F4;Brevesmall;SMALL CAPITAL BREVE
432 F762;Bsmall;LATIN SMALL CAPITAL LETTER B
433 0043;C;LATIN CAPITAL LETTER C
434 0106;Cacute;LATIN CAPITAL LETTER C WITH ACUTE
435 F6CA;Caron;CAPITAL CARON
436 F6F5;Caronsmall;SMALL CAPITAL CARON
437 010C;Ccaron;LATIN CAPITAL LETTER C WITH CARON
438 00C7;Ccedilla;LATIN CAPITAL LETTER C WITH CEDILLA
439 F7E7;Ccedillasmall;LATIN SMALL CAPITAL LETTER C WITH CEDILLA
440 0108;Ccircumflex;LATIN CAPITAL LETTER C WITH CIRCUMFLEX
441 010A;Cdotaccent;LATIN CAPITAL LETTER C WITH DOT ABOVE
442 F7B8;Cedillasmall;SMALL CAPITAL CEDILLA
443 03A7;Chi;GREEK CAPITAL LETTER CHI
444 F6F6;Circumflexsmall;SMALL CAPITAL MODIFIER LETTER CIRCUMFLEX ACCENT
445 F763;Csmall;LATIN SMALL CAPITAL LETTER C
446 0044;D;LATIN CAPITAL LETTER D
447 010E;Dcaron;LATIN CAPITAL LETTER D WITH CARON
448 0110;Dcroat;LATIN CAPITAL LETTER D WITH STROKE
449 2206;Delta;INCREMENT
450 0394;Delta;GREEK CAPITAL LETTER DELTA;Duplicate
451 F6CB;Dieresis;CAPITAL DIAERESIS
452 F6CC;DieresisAcute;CAPITAL DIAERESIS ACUTE ACCENT
453 F6CD;DieresisGrave;CAPITAL DIAERESIS GRAVE ACCENT
454 F7A8;Dieresissmall;SMALL CAPITAL DIAERESIS
455 F6F7;Dotaccentsmall;SMALL CAPITAL DOT ABOVE
456 F764;Dsmall;LATIN SMALL CAPITAL LETTER D
457 0045;E;LATIN CAPITAL LETTER E
458 00C9;Eacute;LATIN CAPITAL LETTER E WITH ACUTE
459 F7E9;Eacutesmall;LATIN SMALL CAPITAL LETTER E WITH ACUTE
460 0114;Ebreve;LATIN CAPITAL LETTER E WITH BREVE
461 011A;Ecaron;LATIN CAPITAL LETTER E WITH CARON
462 00CA;Ecircumflex;LATIN CAPITAL LETTER E WITH CIRCUMFLEX
463 F7EA;Ecircumflexsmall;LATIN SMALL CAPITAL LETTER E WITH CIRCUMFLEX
464 00CB;Edieresis;LATIN CAPITAL LETTER E WITH DIAERESIS
465 F7EB;Edieresissmall;LATIN SMALL CAPITAL LETTER E WITH DIAERESIS
466 0116;Edotaccent;LATIN CAPITAL LETTER E WITH DOT ABOVE
467 00C8;Egrave;LATIN CAPITAL LETTER E WITH GRAVE
468 F7E8;Egravesmall;LATIN SMALL CAPITAL LETTER E WITH GRAVE
469 0112;Emacron;LATIN CAPITAL LETTER E WITH MACRON
470 014A;Eng;LATIN CAPITAL LETTER ENG
471 0118;Eogonek;LATIN CAPITAL LETTER E WITH OGONEK
472 0395;Epsilon;GREEK CAPITAL LETTER EPSILON
473 0388;Epsilontonos;GREEK CAPITAL LETTER EPSILON WITH TONOS
474 F765;Esmall;LATIN SMALL CAPITAL LETTER E
475 0397;Eta;GREEK CAPITAL LETTER ETA
476 0389;Etatonos;GREEK CAPITAL LETTER ETA WITH TONOS
477 00D0;Eth;LATIN CAPITAL LETTER ETH
478 F7F0;Ethsmall;LATIN SMALL CAPITAL LETTER ETH
479 20AC;Euro;EURO SIGN
480 0046;F;LATIN CAPITAL LETTER F
481 F766;Fsmall;LATIN SMALL CAPITAL LETTER F
482 0047;G;LATIN CAPITAL LETTER G
483 0393;Gamma;GREEK CAPITAL LETTER GAMMA
484 011E;Gbreve;LATIN CAPITAL LETTER G WITH BREVE
485 01E6;Gcaron;LATIN CAPITAL LETTER G WITH CARON
486 011C;Gcircumflex;LATIN CAPITAL LETTER G WITH CIRCUMFLEX
487 0122;Gcommaaccent;LATIN CAPITAL LETTER G WITH CEDILLA
488 0120;Gdotaccent;LATIN CAPITAL LETTER G WITH DOT ABOVE
489 F6CE;Grave;CAPITAL GRAVE ACCENT
490 F760;Gravesmall;SMALL CAPITAL GRAVE ACCENT
491 F767;Gsmall;LATIN SMALL CAPITAL LETTER G
492 0048;H;LATIN CAPITAL LETTER H
493 25CF;H18533;BLACK CIRCLE
494 25AA;H18543;BLACK SMALL SQUARE
495 25AB;H18551;WHITE SMALL SQUARE
496 25A1;H22073;WHITE SQUARE
497 0126;Hbar;LATIN CAPITAL LETTER H WITH STROKE
498 0124;Hcircumflex;LATIN CAPITAL LETTER H WITH CIRCUMFLEX
499 F768;Hsmall;LATIN SMALL CAPITAL LETTER H
500 F6CF;Hungarumlaut;CAPITAL DOUBLE ACUTE ACCENT
501 F6F8;Hungarumlautsmall;SMALL CAPITAL DOUBLE ACUTE ACCENT
502 0049;I;LATIN CAPITAL LETTER I
503 0132;IJ;LATIN CAPITAL LIGATURE IJ
504 00CD;Iacute;LATIN CAPITAL LETTER I WITH ACUTE
505 F7ED;Iacutesmall;LATIN SMALL CAPITAL LETTER I WITH ACUTE
506 012C;Ibreve;LATIN CAPITAL LETTER I WITH BREVE
507 00CE;Icircumflex;LATIN CAPITAL LETTER I WITH CIRCUMFLEX
508 F7EE;Icircumflexsmall;LATIN SMALL CAPITAL LETTER I WITH CIRCUMFLEX
509 00CF;Idieresis;LATIN CAPITAL LETTER I WITH DIAERESIS
510 F7EF;Idieresissmall;LATIN SMALL CAPITAL LETTER I WITH DIAERESIS
511 0130;Idotaccent;LATIN CAPITAL LETTER I WITH DOT ABOVE
512 2111;Ifraktur;BLACK-LETTER CAPITAL I
513 00CC;Igrave;LATIN CAPITAL LETTER I WITH GRAVE
514 F7EC;Igravesmall;LATIN SMALL CAPITAL LETTER I WITH GRAVE
515 012A;Imacron;LATIN CAPITAL LETTER I WITH MACRON
516 012E;Iogonek;LATIN CAPITAL LETTER I WITH OGONEK
517 0399;Iota;GREEK CAPITAL LETTER IOTA
518 03AA;Iotadieresis;GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
519 038A;Iotatonos;GREEK CAPITAL LETTER IOTA WITH TONOS
520 F769;Ismall;LATIN SMALL CAPITAL LETTER I
521 0128;Itilde;LATIN CAPITAL LETTER I WITH TILDE
522 004A;J;LATIN CAPITAL LETTER J
523 0134;Jcircumflex;LATIN CAPITAL LETTER J WITH CIRCUMFLEX
524 F76A;Jsmall;LATIN SMALL CAPITAL LETTER J
525 004B;K;LATIN CAPITAL LETTER K
526 039A;Kappa;GREEK CAPITAL LETTER KAPPA
527 0136;Kcommaaccent;LATIN CAPITAL LETTER K WITH CEDILLA
528 F76B;Ksmall;LATIN SMALL CAPITAL LETTER K
529 004C;L;LATIN CAPITAL LETTER L
530 F6BF;LL;LATIN CAPITAL LETTER LL
531 0139;Lacute;LATIN CAPITAL LETTER L WITH ACUTE
532 039B;Lambda;GREEK CAPITAL LETTER LAMDA
533 013D;Lcaron;LATIN CAPITAL LETTER L WITH CARON
534 013B;Lcommaaccent;LATIN CAPITAL LETTER L WITH CEDILLA
535 013F;Ldot;LATIN CAPITAL LETTER L WITH MIDDLE DOT
536 0141;Lslash;LATIN CAPITAL LETTER L WITH STROKE
537 F6F9;Lslashsmall;LATIN SMALL CAPITAL LETTER L WITH STROKE
538 F76C;Lsmall;LATIN SMALL CAPITAL LETTER L
539 004D;M;LATIN CAPITAL LETTER M
540 F6D0;Macron;CAPITAL MACRON
541 F7AF;Macronsmall;SMALL CAPITAL MACRON
542 F76D;Msmall;LATIN SMALL CAPITAL LETTER M
543 039C;Mu;GREEK CAPITAL LETTER MU
544 004E;N;LATIN CAPITAL LETTER N
545 0143;Nacute;LATIN CAPITAL LETTER N WITH ACUTE
546 0147;Ncaron;LATIN CAPITAL LETTER N WITH CARON
547 0145;Ncommaaccent;LATIN CAPITAL LETTER N WITH CEDILLA
548 F76E;Nsmall;LATIN SMALL CAPITAL LETTER N
549 00D1;Ntilde;LATIN CAPITAL LETTER N WITH TILDE
550 F7F1;Ntildesmall;LATIN SMALL CAPITAL LETTER N WITH TILDE
551 039D;Nu;GREEK CAPITAL LETTER NU
552 004F;O;LATIN CAPITAL LETTER O
553 0152;OE;LATIN CAPITAL LIGATURE OE
554 F6FA;OEsmall;LATIN SMALL CAPITAL LIGATURE OE
555 00D3;Oacute;LATIN CAPITAL LETTER O WITH ACUTE
556 F7F3;Oacutesmall;LATIN SMALL CAPITAL LETTER O WITH ACUTE
557 014E;Obreve;LATIN CAPITAL LETTER O WITH BREVE
558 00D4;Ocircumflex;LATIN CAPITAL LETTER O WITH CIRCUMFLEX
559 F7F4;Ocircumflexsmall;LATIN SMALL CAPITAL LETTER O WITH CIRCUMFLEX
560 00D6;Odieresis;LATIN CAPITAL LETTER O WITH DIAERESIS
561 F7F6;Odieresissmall;LATIN SMALL CAPITAL LETTER O WITH DIAERESIS
562 F6FB;Ogoneksmall;SMALL CAPITAL OGONEK
563 00D2;Ograve;LATIN CAPITAL LETTER O WITH GRAVE
564 F7F2;Ogravesmall;LATIN SMALL CAPITAL LETTER O WITH GRAVE
565 01A0;Ohorn;LATIN CAPITAL LETTER O WITH HORN
566 0150;Ohungarumlaut;LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
567 014C;Omacron;LATIN CAPITAL LETTER O WITH MACRON
568 2126;Omega;OHM SIGN
569 03A9;Omega;GREEK CAPITAL LETTER OMEGA;Duplicate
570 038F;Omegatonos;GREEK CAPITAL LETTER OMEGA WITH TONOS
571 039F;Omicron;GREEK CAPITAL LETTER OMICRON
572 038C;Omicrontonos;GREEK CAPITAL LETTER OMICRON WITH TONOS
573 00D8;Oslash;LATIN CAPITAL LETTER O WITH STROKE
574 01FE;Oslashacute;LATIN CAPITAL LETTER O WITH STROKE AND ACUTE
575 F7F8;Oslashsmall;LATIN SMALL CAPITAL LETTER O WITH STROKE
576 F76F;Osmall;LATIN SMALL CAPITAL LETTER O
577 00D5;Otilde;LATIN CAPITAL LETTER O WITH TILDE
578 F7F5;Otildesmall;LATIN SMALL CAPITAL LETTER O WITH TILDE
579 0050;P;LATIN CAPITAL LETTER P
580 03A6;Phi;GREEK CAPITAL LETTER PHI
581 03A0;Pi;GREEK CAPITAL LETTER PI
582 03A8;Psi;GREEK CAPITAL LETTER PSI
583 F770;Psmall;LATIN SMALL CAPITAL LETTER P
584 0051;Q;LATIN CAPITAL LETTER Q
585 F771;Qsmall;LATIN SMALL CAPITAL LETTER Q
586 0052;R;LATIN CAPITAL LETTER R
587 0154;Racute;LATIN CAPITAL LETTER R WITH ACUTE
588 0158;Rcaron;LATIN CAPITAL LETTER R WITH CARON
589 0156;Rcommaaccent;LATIN CAPITAL LETTER R WITH CEDILLA
590 211C;Rfraktur;BLACK-LETTER CAPITAL R
591 03A1;Rho;GREEK CAPITAL LETTER RHO
592 F6FC;Ringsmall;SMALL CAPITAL RING ABOVE
593 F772;Rsmall;LATIN SMALL CAPITAL LETTER R
594 0053;S;LATIN CAPITAL LETTER S
595 250C;SF010000;BOX DRAWINGS LIGHT DOWN AND RIGHT
596 2514;SF020000;BOX DRAWINGS LIGHT UP AND RIGHT
597 2510;SF030000;BOX DRAWINGS LIGHT DOWN AND LEFT
598 2518;SF040000;BOX DRAWINGS LIGHT UP AND LEFT
599 253C;SF050000;BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
600 252C;SF060000;BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
601 2534;SF070000;BOX DRAWINGS LIGHT UP AND HORIZONTAL
602 251C;SF080000;BOX DRAWINGS LIGHT VERTICAL AND RIGHT
603 2524;SF090000;BOX DRAWINGS LIGHT VERTICAL AND LEFT
604 2500;SF100000;BOX DRAWINGS LIGHT HORIZONTAL
605 2502;SF110000;BOX DRAWINGS LIGHT VERTICAL
606 2561;SF190000;BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
607 2562;SF200000;BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
608 2556;SF210000;BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
609 2555;SF220000;BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
610 2563;SF230000;BOX DRAWINGS DOUBLE VERTICAL AND LEFT
611 2551;SF240000;BOX DRAWINGS DOUBLE VERTICAL
612 2557;SF250000;BOX DRAWINGS DOUBLE DOWN AND LEFT
613 255D;SF260000;BOX DRAWINGS DOUBLE UP AND LEFT
614 255C;SF270000;BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
615 255B;SF280000;BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
616 255E;SF360000;BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
617 255F;SF370000;BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
618 255A;SF380000;BOX DRAWINGS DOUBLE UP AND RIGHT
619 2554;SF390000;BOX DRAWINGS DOUBLE DOWN AND RIGHT
620 2569;SF400000;BOX DRAWINGS DOUBLE UP AND HORIZONTAL
621 2566;SF410000;BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
622 2560;SF420000;BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
623 2550;SF430000;BOX DRAWINGS DOUBLE HORIZONTAL
624 256C;SF440000;BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
625 2567;SF450000;BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
626 2568;SF460000;BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
627 2564;SF470000;BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
628 2565;SF480000;BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
629 2559;SF490000;BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
630 2558;SF500000;BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
631 2552;SF510000;BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
632 2553;SF520000;BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
633 256B;SF530000;BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
634 256A;SF540000;BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
635 015A;Sacute;LATIN CAPITAL LETTER S WITH ACUTE
636 0160;Scaron;LATIN CAPITAL LETTER S WITH CARON
637 F6FD;Scaronsmall;LATIN SMALL CAPITAL LETTER S WITH CARON
638 015E;Scedilla;LATIN CAPITAL LETTER S WITH CEDILLA
639 F6C1;Scedilla;LATIN CAPITAL LETTER S WITH CEDILLA;Duplicate
640 015C;Scircumflex;LATIN CAPITAL LETTER S WITH CIRCUMFLEX
641 0218;Scommaaccent;LATIN CAPITAL LETTER S WITH COMMA BELOW
642 03A3;Sigma;GREEK CAPITAL LETTER SIGMA
643 F773;Ssmall;LATIN SMALL CAPITAL LETTER S
644 0054;T;LATIN CAPITAL LETTER T
645 03A4;Tau;GREEK CAPITAL LETTER TAU
646 0166;Tbar;LATIN CAPITAL LETTER T WITH STROKE
647 0164;Tcaron;LATIN CAPITAL LETTER T WITH CARON
648 0162;Tcommaaccent;LATIN CAPITAL LETTER T WITH CEDILLA
649 021A;Tcommaaccent;LATIN CAPITAL LETTER T WITH COMMA BELOW;Duplicate
650 0398;Theta;GREEK CAPITAL LETTER THETA
651 00DE;Thorn;LATIN CAPITAL LETTER THORN
652 F7FE;Thornsmall;LATIN SMALL CAPITAL LETTER THORN
653 F6FE;Tildesmall;SMALL CAPITAL SMALL TILDE
654 F774;Tsmall;LATIN SMALL CAPITAL LETTER T
655 0055;U;LATIN CAPITAL LETTER U
656 00DA;Uacute;LATIN CAPITAL LETTER U WITH ACUTE
657 F7FA;Uacutesmall;LATIN SMALL CAPITAL LETTER U WITH ACUTE
658 016C;Ubreve;LATIN CAPITAL LETTER U WITH BREVE
659 00DB;Ucircumflex;LATIN CAPITAL LETTER U WITH CIRCUMFLEX
660 F7FB;Ucircumflexsmall;LATIN SMALL CAPITAL LETTER U WITH CIRCUMFLEX
661 00DC;Udieresis;LATIN CAPITAL LETTER U WITH DIAERESIS
662 F7FC;Udieresissmall;LATIN SMALL CAPITAL LETTER U WITH DIAERESIS
663 00D9;Ugrave;LATIN CAPITAL LETTER U WITH GRAVE
664 F7F9;Ugravesmall;LATIN SMALL CAPITAL LETTER U WITH GRAVE
665 01AF;Uhorn;LATIN CAPITAL LETTER U WITH HORN
666 0170;Uhungarumlaut;LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
667 016A;Umacron;LATIN CAPITAL LETTER U WITH MACRON
668 0172;Uogonek;LATIN CAPITAL LETTER U WITH OGONEK
669 03A5;Upsilon;GREEK CAPITAL LETTER UPSILON
670 03D2;Upsilon1;GREEK UPSILON WITH HOOK SYMBOL
671 03AB;Upsilondieresis;GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
672 038E;Upsilontonos;GREEK CAPITAL LETTER UPSILON WITH TONOS
673 016E;Uring;LATIN CAPITAL LETTER U WITH RING ABOVE
674 F775;Usmall;LATIN SMALL CAPITAL LETTER U
675 0168;Utilde;LATIN CAPITAL LETTER U WITH TILDE
676 0056;V;LATIN CAPITAL LETTER V
677 F776;Vsmall;LATIN SMALL CAPITAL LETTER V
678 0057;W;LATIN CAPITAL LETTER W
679 1E82;Wacute;LATIN CAPITAL LETTER W WITH ACUTE
680 0174;Wcircumflex;LATIN CAPITAL LETTER W WITH CIRCUMFLEX
681 1E84;Wdieresis;LATIN CAPITAL LETTER W WITH DIAERESIS
682 1E80;Wgrave;LATIN CAPITAL LETTER W WITH GRAVE
683 F777;Wsmall;LATIN SMALL CAPITAL LETTER W
684 0058;X;LATIN CAPITAL LETTER X
685 039E;Xi;GREEK CAPITAL LETTER XI
686 F778;Xsmall;LATIN SMALL CAPITAL LETTER X
687 0059;Y;LATIN CAPITAL LETTER Y
688 00DD;Yacute;LATIN CAPITAL LETTER Y WITH ACUTE
689 F7FD;Yacutesmall;LATIN SMALL CAPITAL LETTER Y WITH ACUTE
690 0176;Ycircumflex;LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
691 0178;Ydieresis;LATIN CAPITAL LETTER Y WITH DIAERESIS
692 F7FF;Ydieresissmall;LATIN SMALL CAPITAL LETTER Y WITH DIAERESIS
693 1EF2;Ygrave;LATIN CAPITAL LETTER Y WITH GRAVE
694 F779;Ysmall;LATIN SMALL CAPITAL LETTER Y
695 005A;Z;LATIN CAPITAL LETTER Z
696 0179;Zacute;LATIN CAPITAL LETTER Z WITH ACUTE
697 017D;Zcaron;LATIN CAPITAL LETTER Z WITH CARON
698 F6FF;Zcaronsmall;LATIN SMALL CAPITAL LETTER Z WITH CARON
699 017B;Zdotaccent;LATIN CAPITAL LETTER Z WITH DOT ABOVE
700 0396;Zeta;GREEK CAPITAL LETTER ZETA
701 F77A;Zsmall;LATIN SMALL CAPITAL LETTER Z
702 0061;a;LATIN SMALL LETTER A
703 00E1;aacute;LATIN SMALL LETTER A WITH ACUTE
704 0103;abreve;LATIN SMALL LETTER A WITH BREVE
705 00E2;acircumflex;LATIN SMALL LETTER A WITH CIRCUMFLEX
706 00B4;acute;ACUTE ACCENT
707 0301;acutecomb;COMBINING ACUTE ACCENT
708 00E4;adieresis;LATIN SMALL LETTER A WITH DIAERESIS
709 00E6;ae;LATIN SMALL LETTER AE
710 01FD;aeacute;LATIN SMALL LETTER AE WITH ACUTE
711 2015;afii00208;HORIZONTAL BAR
712 0410;afii10017;CYRILLIC CAPITAL LETTER A
713 0411;afii10018;CYRILLIC CAPITAL LETTER BE
714 0412;afii10019;CYRILLIC CAPITAL LETTER VE
715 0413;afii10020;CYRILLIC CAPITAL LETTER GHE
716 0414;afii10021;CYRILLIC CAPITAL LETTER DE
717 0415;afii10022;CYRILLIC CAPITAL LETTER IE
718 0401;afii10023;CYRILLIC CAPITAL LETTER IO
719 0416;afii10024;CYRILLIC CAPITAL LETTER ZHE
720 0417;afii10025;CYRILLIC CAPITAL LETTER ZE
721 0418;afii10026;CYRILLIC CAPITAL LETTER I
722 0419;afii10027;CYRILLIC CAPITAL LETTER SHORT I
723 041A;afii10028;CYRILLIC CAPITAL LETTER KA
724 041B;afii10029;CYRILLIC CAPITAL LETTER EL
725 041C;afii10030;CYRILLIC CAPITAL LETTER EM
726 041D;afii10031;CYRILLIC CAPITAL LETTER EN
727 041E;afii10032;CYRILLIC CAPITAL LETTER O
728 041F;afii10033;CYRILLIC CAPITAL LETTER PE
729 0420;afii10034;CYRILLIC CAPITAL LETTER ER
730 0421;afii10035;CYRILLIC CAPITAL LETTER ES
731 0422;afii10036;CYRILLIC CAPITAL LETTER TE
732 0423;afii10037;CYRILLIC CAPITAL LETTER U
733 0424;afii10038;CYRILLIC CAPITAL LETTER EF
734 0425;afii10039;CYRILLIC CAPITAL LETTER HA
735 0426;afii10040;CYRILLIC CAPITAL LETTER TSE
736 0427;afii10041;CYRILLIC CAPITAL LETTER CHE
737 0428;afii10042;CYRILLIC CAPITAL LETTER SHA
738 0429;afii10043;CYRILLIC CAPITAL LETTER SHCHA
739 042A;afii10044;CYRILLIC CAPITAL LETTER HARD SIGN
740 042B;afii10045;CYRILLIC CAPITAL LETTER YERU
741 042C;afii10046;CYRILLIC CAPITAL LETTER SOFT SIGN
742 042D;afii10047;CYRILLIC CAPITAL LETTER E
743 042E;afii10048;CYRILLIC CAPITAL LETTER YU
744 042F;afii10049;CYRILLIC CAPITAL LETTER YA
745 0490;afii10050;CYRILLIC CAPITAL LETTER GHE WITH UPTURN
746 0402;afii10051;CYRILLIC CAPITAL LETTER DJE
747 0403;afii10052;CYRILLIC CAPITAL LETTER GJE
748 0404;afii10053;CYRILLIC CAPITAL LETTER UKRAINIAN IE
749 0405;afii10054;CYRILLIC CAPITAL LETTER DZE
750 0406;afii10055;CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
751 0407;afii10056;CYRILLIC CAPITAL LETTER YI
752 0408;afii10057;CYRILLIC CAPITAL LETTER JE
753 0409;afii10058;CYRILLIC CAPITAL LETTER LJE
754 040A;afii10059;CYRILLIC CAPITAL LETTER NJE
755 040B;afii10060;CYRILLIC CAPITAL LETTER TSHE
756 040C;afii10061;CYRILLIC CAPITAL LETTER KJE
757 040E;afii10062;CYRILLIC CAPITAL LETTER SHORT U
758 F6C4;afii10063;CYRILLIC SMALL LETTER GHE VARIANT
759 F6C5;afii10064;CYRILLIC SMALL LETTER BE VARIANT
760 0430;afii10065;CYRILLIC SMALL LETTER A
761 0431;afii10066;CYRILLIC SMALL LETTER BE
762 0432;afii10067;CYRILLIC SMALL LETTER VE
763 0433;afii10068;CYRILLIC SMALL LETTER GHE
764 0434;afii10069;CYRILLIC SMALL LETTER DE
765 0435;afii10070;CYRILLIC SMALL LETTER IE
766 0451;afii10071;CYRILLIC SMALL LETTER IO
767 0436;afii10072;CYRILLIC SMALL LETTER ZHE
768 0437;afii10073;CYRILLIC SMALL LETTER ZE
769 0438;afii10074;CYRILLIC SMALL LETTER I
770 0439;afii10075;CYRILLIC SMALL LETTER SHORT I
771 043A;afii10076;CYRILLIC SMALL LETTER KA
772 043B;afii10077;CYRILLIC SMALL LETTER EL
773 043C;afii10078;CYRILLIC SMALL LETTER EM
774 043D;afii10079;CYRILLIC SMALL LETTER EN
775 043E;afii10080;CYRILLIC SMALL LETTER O
776 043F;afii10081;CYRILLIC SMALL LETTER PE
777 0440;afii10082;CYRILLIC SMALL LETTER ER
778 0441;afii10083;CYRILLIC SMALL LETTER ES
779 0442;afii10084;CYRILLIC SMALL LETTER TE
780 0443;afii10085;CYRILLIC SMALL LETTER U
781 0444;afii10086;CYRILLIC SMALL LETTER EF
782 0445;afii10087;CYRILLIC SMALL LETTER HA
783 0446;afii10088;CYRILLIC SMALL LETTER TSE
784 0447;afii10089;CYRILLIC SMALL LETTER CHE
785 0448;afii10090;CYRILLIC SMALL LETTER SHA
786 0449;afii10091;CYRILLIC SMALL LETTER SHCHA
787 044A;afii10092;CYRILLIC SMALL LETTER HARD SIGN
788 044B;afii10093;CYRILLIC SMALL LETTER YERU
789 044C;afii10094;CYRILLIC SMALL LETTER SOFT SIGN
790 044D;afii10095;CYRILLIC SMALL LETTER E
791 044E;afii10096;CYRILLIC SMALL LETTER YU
792 044F;afii10097;CYRILLIC SMALL LETTER YA
793 0491;afii10098;CYRILLIC SMALL LETTER GHE WITH UPTURN
794 0452;afii10099;CYRILLIC SMALL LETTER DJE
795 0453;afii10100;CYRILLIC SMALL LETTER GJE
796 0454;afii10101;CYRILLIC SMALL LETTER UKRAINIAN IE
797 0455;afii10102;CYRILLIC SMALL LETTER DZE
798 0456;afii10103;CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
799 0457;afii10104;CYRILLIC SMALL LETTER YI
800 0458;afii10105;CYRILLIC SMALL LETTER JE
801 0459;afii10106;CYRILLIC SMALL LETTER LJE
802 045A;afii10107;CYRILLIC SMALL LETTER NJE
803 045B;afii10108;CYRILLIC SMALL LETTER TSHE
804 045C;afii10109;CYRILLIC SMALL LETTER KJE
805 045E;afii10110;CYRILLIC SMALL LETTER SHORT U
806 040F;afii10145;CYRILLIC CAPITAL LETTER DZHE
807 0462;afii10146;CYRILLIC CAPITAL LETTER YAT
808 0472;afii10147;CYRILLIC CAPITAL LETTER FITA
809 0474;afii10148;CYRILLIC CAPITAL LETTER IZHITSA
810 F6C6;afii10192;CYRILLIC SMALL LETTER DE VARIANT
811 045F;afii10193;CYRILLIC SMALL LETTER DZHE
812 0463;afii10194;CYRILLIC SMALL LETTER YAT
813 0473;afii10195;CYRILLIC SMALL LETTER FITA
814 0475;afii10196;CYRILLIC SMALL LETTER IZHITSA
815 F6C7;afii10831;CYRILLIC SMALL LETTER PE VARIANT
816 F6C8;afii10832;CYRILLIC SMALL LETTER TE VARIANT
817 04D9;afii10846;CYRILLIC SMALL LETTER SCHWA
818 200E;afii299;LEFT-TO-RIGHT MARK
819 200F;afii300;RIGHT-TO-LEFT MARK
820 200D;afii301;ZERO WIDTH JOINER
821 066A;afii57381;ARABIC PERCENT SIGN
822 060C;afii57388;ARABIC COMMA
823 0660;afii57392;ARABIC-INDIC DIGIT ZERO
824 0661;afii57393;ARABIC-INDIC DIGIT ONE
825 0662;afii57394;ARABIC-INDIC DIGIT TWO
826 0663;afii57395;ARABIC-INDIC DIGIT THREE
827 0664;afii57396;ARABIC-INDIC DIGIT FOUR
828 0665;afii57397;ARABIC-INDIC DIGIT FIVE
829 0666;afii57398;ARABIC-INDIC DIGIT SIX
830 0667;afii57399;ARABIC-INDIC DIGIT SEVEN
831 0668;afii57400;ARABIC-INDIC DIGIT EIGHT
832 0669;afii57401;ARABIC-INDIC DIGIT NINE
833 061B;afii57403;ARABIC SEMICOLON
834 061F;afii57407;ARABIC QUESTION MARK
835 0621;afii57409;ARABIC LETTER HAMZA
836 0622;afii57410;ARABIC LETTER ALEF WITH MADDA ABOVE
837 0623;afii57411;ARABIC LETTER ALEF WITH HAMZA ABOVE
838 0624;afii57412;ARABIC LETTER WAW WITH HAMZA ABOVE
839 0625;afii57413;ARABIC LETTER ALEF WITH HAMZA BELOW
840 0626;afii57414;ARABIC LETTER YEH WITH HAMZA ABOVE
841 0627;afii57415;ARABIC LETTER ALEF
842 0628;afii57416;ARABIC LETTER BEH
843 0629;afii57417;ARABIC LETTER TEH MARBUTA
844 062A;afii57418;ARABIC LETTER TEH
845 062B;afii57419;ARABIC LETTER THEH
846 062C;afii57420;ARABIC LETTER JEEM
847 062D;afii57421;ARABIC LETTER HAH
848 062E;afii57422;ARABIC LETTER KHAH
849 062F;afii57423;ARABIC LETTER DAL
850 0630;afii57424;ARABIC LETTER THAL
851 0631;afii57425;ARABIC LETTER REH
852 0632;afii57426;ARABIC LETTER ZAIN
853 0633;afii57427;ARABIC LETTER SEEN
854 0634;afii57428;ARABIC LETTER SHEEN
855 0635;afii57429;ARABIC LETTER SAD
856 0636;afii57430;ARABIC LETTER DAD
857 0637;afii57431;ARABIC LETTER TAH
858 0638;afii57432;ARABIC LETTER ZAH
859 0639;afii57433;ARABIC LETTER AIN
860 063A;afii57434;ARABIC LETTER GHAIN
861 0640;afii57440;ARABIC TATWEEL
862 0641;afii57441;ARABIC LETTER FEH
863 0642;afii57442;ARABIC LETTER QAF
864 0643;afii57443;ARABIC LETTER KAF
865 0644;afii57444;ARABIC LETTER LAM
866 0645;afii57445;ARABIC LETTER MEEM
867 0646;afii57446;ARABIC LETTER NOON
868 0648;afii57448;ARABIC LETTER WAW
869 0649;afii57449;ARABIC LETTER ALEF MAKSURA
870 064A;afii57450;ARABIC LETTER YEH
871 064B;afii57451;ARABIC FATHATAN
872 064C;afii57452;ARABIC DAMMATAN
873 064D;afii57453;ARABIC KASRATAN
874 064E;afii57454;ARABIC FATHA
875 064F;afii57455;ARABIC DAMMA
876 0650;afii57456;ARABIC KASRA
877 0651;afii57457;ARABIC SHADDA
878 0652;afii57458;ARABIC SUKUN
879 0647;afii57470;ARABIC LETTER HEH
880 06A4;afii57505;ARABIC LETTER VEH
881 067E;afii57506;ARABIC LETTER PEH
882 0686;afii57507;ARABIC LETTER TCHEH
883 0698;afii57508;ARABIC LETTER JEH
884 06AF;afii57509;ARABIC LETTER GAF
885 0679;afii57511;ARABIC LETTER TTEH
886 0688;afii57512;ARABIC LETTER DDAL
887 0691;afii57513;ARABIC LETTER RREH
888 06BA;afii57514;ARABIC LETTER NOON GHUNNA
889 06D2;afii57519;ARABIC LETTER YEH BARREE
890 06D5;afii57534;ARABIC LETTER AE
891 20AA;afii57636;NEW SHEQEL SIGN
892 05BE;afii57645;HEBREW PUNCTUATION MAQAF
893 05C3;afii57658;HEBREW PUNCTUATION SOF PASUQ
894 05D0;afii57664;HEBREW LETTER ALEF
895 05D1;afii57665;HEBREW LETTER BET
896 05D2;afii57666;HEBREW LETTER GIMEL
897 05D3;afii57667;HEBREW LETTER DALET
898 05D4;afii57668;HEBREW LETTER HE
899 05D5;afii57669;HEBREW LETTER VAV
900 05D6;afii57670;HEBREW LETTER ZAYIN
901 05D7;afii57671;HEBREW LETTER HET
902 05D8;afii57672;HEBREW LETTER TET
903 05D9;afii57673;HEBREW LETTER YOD
904 05DA;afii57674;HEBREW LETTER FINAL KAF
905 05DB;afii57675;HEBREW LETTER KAF
906 05DC;afii57676;HEBREW LETTER LAMED
907 05DD;afii57677;HEBREW LETTER FINAL MEM
908 05DE;afii57678;HEBREW LETTER MEM
909 05DF;afii57679;HEBREW LETTER FINAL NUN
910 05E0;afii57680;HEBREW LETTER NUN
911 05E1;afii57681;HEBREW LETTER SAMEKH
912 05E2;afii57682;HEBREW LETTER AYIN
913 05E3;afii57683;HEBREW LETTER FINAL PE
914 05E4;afii57684;HEBREW LETTER PE
915 05E5;afii57685;HEBREW LETTER FINAL TSADI
916 05E6;afii57686;HEBREW LETTER TSADI
917 05E7;afii57687;HEBREW LETTER QOF
918 05E8;afii57688;HEBREW LETTER RESH
919 05E9;afii57689;HEBREW LETTER SHIN
920 05EA;afii57690;HEBREW LETTER TAV
921 FB2A;afii57694;HEBREW LETTER SHIN WITH SHIN DOT
922 FB2B;afii57695;HEBREW LETTER SHIN WITH SIN DOT
923 FB4B;afii57700;HEBREW LETTER VAV WITH HOLAM
924 FB1F;afii57705;HEBREW LIGATURE YIDDISH YOD YOD PATAH
925 05F0;afii57716;HEBREW LIGATURE YIDDISH DOUBLE VAV
926 05F1;afii57717;HEBREW LIGATURE YIDDISH VAV YOD
927 05F2;afii57718;HEBREW LIGATURE YIDDISH DOUBLE YOD
928 FB35;afii57723;HEBREW LETTER VAV WITH DAGESH
929 05B4;afii57793;HEBREW POINT HIRIQ
930 05B5;afii57794;HEBREW POINT TSERE
931 05B6;afii57795;HEBREW POINT SEGOL
932 05BB;afii57796;HEBREW POINT QUBUTS
933 05B8;afii57797;HEBREW POINT QAMATS
934 05B7;afii57798;HEBREW POINT PATAH
935 05B0;afii57799;HEBREW POINT SHEVA
936 05B2;afii57800;HEBREW POINT HATAF PATAH
937 05B1;afii57801;HEBREW POINT HATAF SEGOL
938 05B3;afii57802;HEBREW POINT HATAF QAMATS
939 05C2;afii57803;HEBREW POINT SIN DOT
940 05C1;afii57804;HEBREW POINT SHIN DOT
941 05B9;afii57806;HEBREW POINT HOLAM
942 05BC;afii57807;HEBREW POINT DAGESH OR MAPIQ
943 05BD;afii57839;HEBREW POINT METEG
944 05BF;afii57841;HEBREW POINT RAFE
945 05C0;afii57842;HEBREW PUNCTUATION PASEQ
946 02BC;afii57929;MODIFIER LETTER APOSTROPHE
947 2105;afii61248;CARE OF
948 2113;afii61289;SCRIPT SMALL L
949 2116;afii61352;NUMERO SIGN
950 202C;afii61573;POP DIRECTIONAL FORMATTING
951 202D;afii61574;LEFT-TO-RIGHT OVERRIDE
952 202E;afii61575;RIGHT-TO-LEFT OVERRIDE
953 200C;afii61664;ZERO WIDTH NON-JOINER
954 066D;afii63167;ARABIC FIVE POINTED STAR
955 02BD;afii64937;MODIFIER LETTER REVERSED COMMA
956 00E0;agrave;LATIN SMALL LETTER A WITH GRAVE
957 2135;aleph;ALEF SYMBOL
958 03B1;alpha;GREEK SMALL LETTER ALPHA
959 03AC;alphatonos;GREEK SMALL LETTER ALPHA WITH TONOS
960 0101;amacron;LATIN SMALL LETTER A WITH MACRON
961 0026;ampersand;AMPERSAND
962 F726;ampersandsmall;SMALL CAPITAL AMPERSAND
963 2220;angle;ANGLE
964 2329;angleleft;LEFT-POINTING ANGLE BRACKET
965 232A;angleright;RIGHT-POINTING ANGLE BRACKET
966 0387;anoteleia;GREEK ANO TELEIA
967 0105;aogonek;LATIN SMALL LETTER A WITH OGONEK
968 2248;approxequal;ALMOST EQUAL TO
969 00E5;aring;LATIN SMALL LETTER A WITH RING ABOVE
970 01FB;aringacute;LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE
971 2194;arrowboth;LEFT RIGHT ARROW
972 21D4;arrowdblboth;LEFT RIGHT DOUBLE ARROW
973 21D3;arrowdbldown;DOWNWARDS DOUBLE ARROW
974 21D0;arrowdblleft;LEFTWARDS DOUBLE ARROW
975 21D2;arrowdblright;RIGHTWARDS DOUBLE ARROW
976 21D1;arrowdblup;UPWARDS DOUBLE ARROW
977 2193;arrowdown;DOWNWARDS ARROW
978 F8E7;arrowhorizex;HORIZONTAL ARROW EXTENDER
979 2190;arrowleft;LEFTWARDS ARROW
980 2192;arrowright;RIGHTWARDS ARROW
981 2191;arrowup;UPWARDS ARROW
982 2195;arrowupdn;UP DOWN ARROW
983 21A8;arrowupdnbse;UP DOWN ARROW WITH BASE
984 F8E6;arrowvertex;VERTICAL ARROW EXTENDER
985 005E;asciicircum;CIRCUMFLEX ACCENT
986 007E;asciitilde;TILDE
987 002A;asterisk;ASTERISK
988 2217;asteriskmath;ASTERISK OPERATOR
989 F6E9;asuperior;SUPERSCRIPT LATIN SMALL LETTER A
990 0040;at;COMMERCIAL AT
991 00E3;atilde;LATIN SMALL LETTER A WITH TILDE
992 0062;b;LATIN SMALL LETTER B
993 005C;backslash;REVERSE SOLIDUS
994 007C;bar;VERTICAL LINE
995 03B2;beta;GREEK SMALL LETTER BETA
996 2588;block;FULL BLOCK
997 F8F4;braceex;CURLY BRACKET EXTENDER
998 007B;braceleft;LEFT CURLY BRACKET
999 F8F3;braceleftbt;LEFT CURLY BRACKET BOTTOM
1000 F8F2;braceleftmid;LEFT CURLY BRACKET MID
1001 F8F1;bracelefttp;LEFT CURLY BRACKET TOP
1002 007D;braceright;RIGHT CURLY BRACKET
1003 F8FE;bracerightbt;RIGHT CURLY BRACKET BOTTOM
1004 F8FD;bracerightmid;RIGHT CURLY BRACKET MID
1005 F8FC;bracerighttp;RIGHT CURLY BRACKET TOP
1006 005B;bracketleft;LEFT SQUARE BRACKET
1007 F8F0;bracketleftbt;LEFT SQUARE BRACKET BOTTOM
1008 F8EF;bracketleftex;LEFT SQUARE BRACKET EXTENDER
1009 F8EE;bracketlefttp;LEFT SQUARE BRACKET TOP
1010 005D;bracketright;RIGHT SQUARE BRACKET
1011 F8FB;bracketrightbt;RIGHT SQUARE BRACKET BOTTOM
1012 F8FA;bracketrightex;RIGHT SQUARE BRACKET EXTENDER
1013 F8F9;bracketrighttp;RIGHT SQUARE BRACKET TOP
1014 02D8;breve;BREVE
1015 00A6;brokenbar;BROKEN BAR
1016 F6EA;bsuperior;SUPERSCRIPT LATIN SMALL LETTER B
1017 2022;bullet;BULLET
1018 0063;c;LATIN SMALL LETTER C
1019 0107;cacute;LATIN SMALL LETTER C WITH ACUTE
1020 02C7;caron;CARON
1021 21B5;carriagereturn;DOWNWARDS ARROW WITH CORNER LEFTWARDS
1022 010D;ccaron;LATIN SMALL LETTER C WITH CARON
1023 00E7;ccedilla;LATIN SMALL LETTER C WITH CEDILLA
1024 0109;ccircumflex;LATIN SMALL LETTER C WITH CIRCUMFLEX
1025 010B;cdotaccent;LATIN SMALL LETTER C WITH DOT ABOVE
1026 00B8;cedilla;CEDILLA
1027 00A2;cent;CENT SIGN
1028 F6DF;centinferior;SUBSCRIPT CENT SIGN
1029 F7A2;centoldstyle;OLDSTYLE CENT SIGN
1030 F6E0;centsuperior;SUPERSCRIPT CENT SIGN
1031 03C7;chi;GREEK SMALL LETTER CHI
1032 25CB;circle;WHITE CIRCLE
1033 2297;circlemultiply;CIRCLED TIMES
1034 2295;circleplus;CIRCLED PLUS
1035 02C6;circumflex;MODIFIER LETTER CIRCUMFLEX ACCENT
1036 2663;club;BLACK CLUB SUIT
1037 003A;colon;COLON
1038 20A1;colonmonetary;COLON SIGN
1039 002C;comma;COMMA
1040 F6C3;commaaccent;COMMA BELOW
1041 F6E1;commainferior;SUBSCRIPT COMMA
1042 F6E2;commasuperior;SUPERSCRIPT COMMA
1043 2245;congruent;APPROXIMATELY EQUAL TO
1044 00A9;copyright;COPYRIGHT SIGN
1045 F8E9;copyrightsans;COPYRIGHT SIGN SANS SERIF
1046 F6D9;copyrightserif;COPYRIGHT SIGN SERIF
1047 00A4;currency;CURRENCY SIGN
1048 F6D1;cyrBreve;CAPITAL CYRILLIC BREVE
1049 F6D2;cyrFlex;CAPITAL CYRILLIC CIRCUMFLEX
1050 F6D4;cyrbreve;CYRILLIC BREVE
1051 F6D5;cyrflex;CYRILLIC CIRCUMFLEX
1052 0064;d;LATIN SMALL LETTER D
1053 2020;dagger;DAGGER
1054 2021;daggerdbl;DOUBLE DAGGER
1055 F6D3;dblGrave;CAPITAL DOUBLE GRAVE ACCENT
1056 F6D6;dblgrave;DOUBLE GRAVE ACCENT
1057 010F;dcaron;LATIN SMALL LETTER D WITH CARON
1058 0111;dcroat;LATIN SMALL LETTER D WITH STROKE
1059 00B0;degree;DEGREE SIGN
1060 03B4;delta;GREEK SMALL LETTER DELTA
1061 2666;diamond;BLACK DIAMOND SUIT
1062 00A8;dieresis;DIAERESIS
1063 F6D7;dieresisacute;DIAERESIS ACUTE ACCENT
1064 F6D8;dieresisgrave;DIAERESIS GRAVE ACCENT
1065 0385;dieresistonos;GREEK DIALYTIKA TONOS
1066 00F7;divide;DIVISION SIGN
1067 2593;dkshade;DARK SHADE
1068 2584;dnblock;LOWER HALF BLOCK
1069 0024;dollar;DOLLAR SIGN
1070 F6E3;dollarinferior;SUBSCRIPT DOLLAR SIGN
1071 F724;dollaroldstyle;OLDSTYLE DOLLAR SIGN
1072 F6E4;dollarsuperior;SUPERSCRIPT DOLLAR SIGN
1073 20AB;dong;DONG SIGN
1074 02D9;dotaccent;DOT ABOVE
1075 0323;dotbelowcomb;COMBINING DOT BELOW
1076 0131;dotlessi;LATIN SMALL LETTER DOTLESS I
1077 F6BE;dotlessj;LATIN SMALL LETTER DOTLESS J
1078 22C5;dotmath;DOT OPERATOR
1079 F6EB;dsuperior;SUPERSCRIPT LATIN SMALL LETTER D
1080 0065;e;LATIN SMALL LETTER E
1081 00E9;eacute;LATIN SMALL LETTER E WITH ACUTE
1082 0115;ebreve;LATIN SMALL LETTER E WITH BREVE
1083 011B;ecaron;LATIN SMALL LETTER E WITH CARON
1084 00EA;ecircumflex;LATIN SMALL LETTER E WITH CIRCUMFLEX
1085 00EB;edieresis;LATIN SMALL LETTER E WITH DIAERESIS
1086 0117;edotaccent;LATIN SMALL LETTER E WITH DOT ABOVE
1087 00E8;egrave;LATIN SMALL LETTER E WITH GRAVE
1088 0038;eight;DIGIT EIGHT
1089 2088;eightinferior;SUBSCRIPT EIGHT
1090 F738;eightoldstyle;OLDSTYLE DIGIT EIGHT
1091 2078;eightsuperior;SUPERSCRIPT EIGHT
1092 2208;element;ELEMENT OF
1093 2026;ellipsis;HORIZONTAL ELLIPSIS
1094 0113;emacron;LATIN SMALL LETTER E WITH MACRON
1095 2014;emdash;EM DASH
1096 2205;emptyset;EMPTY SET
1097 2013;endash;EN DASH
1098 014B;eng;LATIN SMALL LETTER ENG
1099 0119;eogonek;LATIN SMALL LETTER E WITH OGONEK
1100 03B5;epsilon;GREEK SMALL LETTER EPSILON
1101 03AD;epsilontonos;GREEK SMALL LETTER EPSILON WITH TONOS
1102 003D;equal;EQUALS SIGN
1103 2261;equivalence;IDENTICAL TO
1104 212E;estimated;ESTIMATED SYMBOL
1105 F6EC;esuperior;SUPERSCRIPT LATIN SMALL LETTER E
1106 03B7;eta;GREEK SMALL LETTER ETA
1107 03AE;etatonos;GREEK SMALL LETTER ETA WITH TONOS
1108 00F0;eth;LATIN SMALL LETTER ETH
1109 0021;exclam;EXCLAMATION MARK
1110 203C;exclamdbl;DOUBLE EXCLAMATION MARK
1111 00A1;exclamdown;INVERTED EXCLAMATION MARK
1112 F7A1;exclamdownsmall;SMALL CAPITAL INVERTED EXCLAMATION MARK
1113 F721;exclamsmall;SMALL CAPITAL EXCLAMATION MARK
1114 2203;existential;THERE EXISTS
1115 0066;f;LATIN SMALL LETTER F
1116 2640;female;FEMALE SIGN
1117 FB00;ff;LATIN SMALL LIGATURE FF
1118 FB03;ffi;LATIN SMALL LIGATURE FFI
1119 FB04;ffl;LATIN SMALL LIGATURE FFL
1120 FB01;fi;LATIN SMALL LIGATURE FI
1121 2012;figuredash;FIGURE DASH
1122 25A0;filledbox;BLACK SQUARE
1123 25AC;filledrect;BLACK RECTANGLE
1124 0035;five;DIGIT FIVE
1125 215D;fiveeighths;VULGAR FRACTION FIVE EIGHTHS
1126 2085;fiveinferior;SUBSCRIPT FIVE
1127 F735;fiveoldstyle;OLDSTYLE DIGIT FIVE
1128 2075;fivesuperior;SUPERSCRIPT FIVE
1129 FB02;fl;LATIN SMALL LIGATURE FL
1130 0192;florin;LATIN SMALL LETTER F WITH HOOK
1131 0034;four;DIGIT FOUR
1132 2084;fourinferior;SUBSCRIPT FOUR
1133 F734;fouroldstyle;OLDSTYLE DIGIT FOUR
1134 2074;foursuperior;SUPERSCRIPT FOUR
1135 2044;fraction;FRACTION SLASH
1136 2215;fraction;DIVISION SLASH;Duplicate
1137 20A3;franc;FRENCH FRANC SIGN
1138 0067;g;LATIN SMALL LETTER G
1139 03B3;gamma;GREEK SMALL LETTER GAMMA
1140 011F;gbreve;LATIN SMALL LETTER G WITH BREVE
1141 01E7;gcaron;LATIN SMALL LETTER G WITH CARON
1142 011D;gcircumflex;LATIN SMALL LETTER G WITH CIRCUMFLEX
1143 0123;gcommaaccent;LATIN SMALL LETTER G WITH CEDILLA
1144 0121;gdotaccent;LATIN SMALL LETTER G WITH DOT ABOVE
1145 00DF;germandbls;LATIN SMALL LETTER SHARP S
1146 2207;gradient;NABLA
1147 0060;grave;GRAVE ACCENT
1148 0300;gravecomb;COMBINING GRAVE ACCENT
1149 003E;greater;GREATER-THAN SIGN
1150 2265;greaterequal;GREATER-THAN OR EQUAL TO
1151 00AB;guillemotleft;LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
1152 00BB;guillemotright;RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
1153 2039;guilsinglleft;SINGLE LEFT-POINTING ANGLE QUOTATION MARK
1154 203A;guilsinglright;SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
1155 0068;h;LATIN SMALL LETTER H
1156 0127;hbar;LATIN SMALL LETTER H WITH STROKE
1157 0125;hcircumflex;LATIN SMALL LETTER H WITH CIRCUMFLEX
1158 2665;heart;BLACK HEART SUIT
1159 0309;hookabovecomb;COMBINING HOOK ABOVE
1160 2302;house;HOUSE
1161 02DD;hungarumlaut;DOUBLE ACUTE ACCENT
1162 002D;hyphen;HYPHEN-MINUS
1163 00AD;hyphen;SOFT HYPHEN;Duplicate
1164 F6E5;hypheninferior;SUBSCRIPT HYPHEN-MINUS
1165 F6E6;hyphensuperior;SUPERSCRIPT HYPHEN-MINUS
1166 0069;i;LATIN SMALL LETTER I
1167 00ED;iacute;LATIN SMALL LETTER I WITH ACUTE
1168 012D;ibreve;LATIN SMALL LETTER I WITH BREVE
1169 00EE;icircumflex;LATIN SMALL LETTER I WITH CIRCUMFLEX
1170 00EF;idieresis;LATIN SMALL LETTER I WITH DIAERESIS
1171 00EC;igrave;LATIN SMALL LETTER I WITH GRAVE
1172 0133;ij;LATIN SMALL LIGATURE IJ
1173 012B;imacron;LATIN SMALL LETTER I WITH MACRON
1174 221E;infinity;INFINITY
1175 222B;integral;INTEGRAL
1176 2321;integralbt;BOTTOM HALF INTEGRAL
1177 F8F5;integralex;INTEGRAL EXTENDER
1178 2320;integraltp;TOP HALF INTEGRAL
1179 2229;intersection;INTERSECTION
1180 25D8;invbullet;INVERSE BULLET
1181 25D9;invcircle;INVERSE WHITE CIRCLE
1182 263B;invsmileface;BLACK SMILING FACE
1183 012F;iogonek;LATIN SMALL LETTER I WITH OGONEK
1184 03B9;iota;GREEK SMALL LETTER IOTA
1185 03CA;iotadieresis;GREEK SMALL LETTER IOTA WITH DIALYTIKA
1186 0390;iotadieresistonos;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
1187 03AF;iotatonos;GREEK SMALL LETTER IOTA WITH TONOS
1188 F6ED;isuperior;SUPERSCRIPT LATIN SMALL LETTER I
1189 0129;itilde;LATIN SMALL LETTER I WITH TILDE
1190 006A;j;LATIN SMALL LETTER J
1191 0135;jcircumflex;LATIN SMALL LETTER J WITH CIRCUMFLEX
1192 006B;k;LATIN SMALL LETTER K
1193 03BA;kappa;GREEK SMALL LETTER KAPPA
1194 0137;kcommaaccent;LATIN SMALL LETTER K WITH CEDILLA
1195 0138;kgreenlandic;LATIN SMALL LETTER KRA
1196 006C;l;LATIN SMALL LETTER L
1197 013A;lacute;LATIN SMALL LETTER L WITH ACUTE
1198 03BB;lambda;GREEK SMALL LETTER LAMDA
1199 013E;lcaron;LATIN SMALL LETTER L WITH CARON
1200 013C;lcommaaccent;LATIN SMALL LETTER L WITH CEDILLA
1201 0140;ldot;LATIN SMALL LETTER L WITH MIDDLE DOT
1202 003C;less;LESS-THAN SIGN
1203 2264;lessequal;LESS-THAN OR EQUAL TO
1204 258C;lfblock;LEFT HALF BLOCK
1205 20A4;lira;LIRA SIGN
1206 F6C0;ll;LATIN SMALL LETTER LL
1207 2227;logicaland;LOGICAL AND
1208 00AC;logicalnot;NOT SIGN
1209 2228;logicalor;LOGICAL OR
1210 017F;longs;LATIN SMALL LETTER LONG S
1211 25CA;lozenge;LOZENGE
1212 0142;lslash;LATIN SMALL LETTER L WITH STROKE
1213 F6EE;lsuperior;SUPERSCRIPT LATIN SMALL LETTER L
1214 2591;ltshade;LIGHT SHADE
1215 006D;m;LATIN SMALL LETTER M
1216 00AF;macron;MACRON
1217 02C9;macron;MODIFIER LETTER MACRON;Duplicate
1218 2642;male;MALE SIGN
1219 2212;minus;MINUS SIGN
1220 2032;minute;PRIME
1221 F6EF;msuperior;SUPERSCRIPT LATIN SMALL LETTER M
1222 00B5;mu;MICRO SIGN
1223 03BC;mu;GREEK SMALL LETTER MU;Duplicate
1224 00D7;multiply;MULTIPLICATION SIGN
1225 266A;musicalnote;EIGHTH NOTE
1226 266B;musicalnotedbl;BEAMED EIGHTH NOTES
1227 006E;n;LATIN SMALL LETTER N
1228 0144;nacute;LATIN SMALL LETTER N WITH ACUTE
1229 0149;napostrophe;LATIN SMALL LETTER N PRECEDED BY APOSTROPHE
1230 0148;ncaron;LATIN SMALL LETTER N WITH CARON
1231 0146;ncommaaccent;LATIN SMALL LETTER N WITH CEDILLA
1232 0039;nine;DIGIT NINE
1233 2089;nineinferior;SUBSCRIPT NINE
1234 F739;nineoldstyle;OLDSTYLE DIGIT NINE
1235 2079;ninesuperior;SUPERSCRIPT NINE
1236 2209;notelement;NOT AN ELEMENT OF
1237 2260;notequal;NOT EQUAL TO
1238 2284;notsubset;NOT A SUBSET OF
1239 207F;nsuperior;SUPERSCRIPT LATIN SMALL LETTER N
1240 00F1;ntilde;LATIN SMALL LETTER N WITH TILDE
1241 03BD;nu;GREEK SMALL LETTER NU
1242 0023;numbersign;NUMBER SIGN
1243 006F;o;LATIN SMALL LETTER O
1244 00F3;oacute;LATIN SMALL LETTER O WITH ACUTE
1245 014F;obreve;LATIN SMALL LETTER O WITH BREVE
1246 00F4;ocircumflex;LATIN SMALL LETTER O WITH CIRCUMFLEX
1247 00F6;odieresis;LATIN SMALL LETTER O WITH DIAERESIS
1248 0153;oe;LATIN SMALL LIGATURE OE
1249 02DB;ogonek;OGONEK
1250 00F2;ograve;LATIN SMALL LETTER O WITH GRAVE
1251 01A1;ohorn;LATIN SMALL LETTER O WITH HORN
1252 0151;ohungarumlaut;LATIN SMALL LETTER O WITH DOUBLE ACUTE
1253 014D;omacron;LATIN SMALL LETTER O WITH MACRON
1254 03C9;omega;GREEK SMALL LETTER OMEGA
1255 03D6;omega1;GREEK PI SYMBOL
1256 03CE;omegatonos;GREEK SMALL LETTER OMEGA WITH TONOS
1257 03BF;omicron;GREEK SMALL LETTER OMICRON
1258 03CC;omicrontonos;GREEK SMALL LETTER OMICRON WITH TONOS
1259 0031;one;DIGIT ONE
1260 2024;onedotenleader;ONE DOT LEADER
1261 215B;oneeighth;VULGAR FRACTION ONE EIGHTH
1262 F6DC;onefitted;PROPORTIONAL DIGIT ONE
1263 00BD;onehalf;VULGAR FRACTION ONE HALF
1264 2081;oneinferior;SUBSCRIPT ONE
1265 F731;oneoldstyle;OLDSTYLE DIGIT ONE
1266 00BC;onequarter;VULGAR FRACTION ONE QUARTER
1267 00B9;onesuperior;SUPERSCRIPT ONE
1268 2153;onethird;VULGAR FRACTION ONE THIRD
1269 25E6;openbullet;WHITE BULLET
1270 00AA;ordfeminine;FEMININE ORDINAL INDICATOR
1271 00BA;ordmasculine;MASCULINE ORDINAL INDICATOR
1272 221F;orthogonal;RIGHT ANGLE
1273 00F8;oslash;LATIN SMALL LETTER O WITH STROKE
1274 01FF;oslashacute;LATIN SMALL LETTER O WITH STROKE AND ACUTE
1275 F6F0;osuperior;SUPERSCRIPT LATIN SMALL LETTER O
1276 00F5;otilde;LATIN SMALL LETTER O WITH TILDE
1277 0070;p;LATIN SMALL LETTER P
1278 00B6;paragraph;PILCROW SIGN
1279 0028;parenleft;LEFT PARENTHESIS
1280 F8ED;parenleftbt;LEFT PAREN BOTTOM
1281 F8EC;parenleftex;LEFT PAREN EXTENDER
1282 208D;parenleftinferior;SUBSCRIPT LEFT PARENTHESIS
1283 207D;parenleftsuperior;SUPERSCRIPT LEFT PARENTHESIS
1284 F8EB;parenlefttp;LEFT PAREN TOP
1285 0029;parenright;RIGHT PARENTHESIS
1286 F8F8;parenrightbt;RIGHT PAREN BOTTOM
1287 F8F7;parenrightex;RIGHT PAREN EXTENDER
1288 208E;parenrightinferior;SUBSCRIPT RIGHT PARENTHESIS
1289 207E;parenrightsuperior;SUPERSCRIPT RIGHT PARENTHESIS
1290 F8F6;parenrighttp;RIGHT PAREN TOP
1291 2202;partialdiff;PARTIAL DIFFERENTIAL
1292 0025;percent;PERCENT SIGN
1293 002E;period;FULL STOP
1294 00B7;periodcentered;MIDDLE DOT
1295 2219;periodcentered;BULLET OPERATOR;Duplicate
1296 F6E7;periodinferior;SUBSCRIPT FULL STOP
1297 F6E8;periodsuperior;SUPERSCRIPT FULL STOP
1298 22A5;perpendicular;UP TACK
1299 2030;perthousand;PER MILLE SIGN
1300 20A7;peseta;PESETA SIGN
1301 03C6;phi;GREEK SMALL LETTER PHI
1302 03D5;phi1;GREEK PHI SYMBOL
1303 03C0;pi;GREEK SMALL LETTER PI
1304 002B;plus;PLUS SIGN
1305 00B1;plusminus;PLUS-MINUS SIGN
1306 211E;prescription;PRESCRIPTION TAKE
1307 220F;product;N-ARY PRODUCT
1308 2282;propersubset;SUBSET OF
1309 2283;propersuperset;SUPERSET OF
1310 221D;proportional;PROPORTIONAL TO
1311 03C8;psi;GREEK SMALL LETTER PSI
1312 0071;q;LATIN SMALL LETTER Q
1313 003F;question;QUESTION MARK
1314 00BF;questiondown;INVERTED QUESTION MARK
1315 F7BF;questiondownsmall;SMALL CAPITAL INVERTED QUESTION MARK
1316 F73F;questionsmall;SMALL CAPITAL QUESTION MARK
1317 0022;quotedbl;QUOTATION MARK
1318 201E;quotedblbase;DOUBLE LOW-9 QUOTATION MARK
1319 201C;quotedblleft;LEFT DOUBLE QUOTATION MARK
1320 201D;quotedblright;RIGHT DOUBLE QUOTATION MARK
1321 2018;quoteleft;LEFT SINGLE QUOTATION MARK
1322 201B;quotereversed;SINGLE HIGH-REVERSED-9 QUOTATION MARK
1323 2019;quoteright;RIGHT SINGLE QUOTATION MARK
1324 201A;quotesinglbase;SINGLE LOW-9 QUOTATION MARK
1325 0027;quotesingle;APOSTROPHE
1326 0072;r;LATIN SMALL LETTER R
1327 0155;racute;LATIN SMALL LETTER R WITH ACUTE
1328 221A;radical;SQUARE ROOT
1329 F8E5;radicalex;RADICAL EXTENDER
1330 0159;rcaron;LATIN SMALL LETTER R WITH CARON
1331 0157;rcommaaccent;LATIN SMALL LETTER R WITH CEDILLA
1332 2286;reflexsubset;SUBSET OF OR EQUAL TO
1333 2287;reflexsuperset;SUPERSET OF OR EQUAL TO
1334 00AE;registered;REGISTERED SIGN
1335 F8E8;registersans;REGISTERED SIGN SANS SERIF
1336 F6DA;registerserif;REGISTERED SIGN SERIF
1337 2310;revlogicalnot;REVERSED NOT SIGN
1338 03C1;rho;GREEK SMALL LETTER RHO
1339 02DA;ring;RING ABOVE
1340 F6F1;rsuperior;SUPERSCRIPT LATIN SMALL LETTER R
1341 2590;rtblock;RIGHT HALF BLOCK
1342 F6DD;rupiah;RUPIAH SIGN
1343 0073;s;LATIN SMALL LETTER S
1344 015B;sacute;LATIN SMALL LETTER S WITH ACUTE
1345 0161;scaron;LATIN SMALL LETTER S WITH CARON
1346 015F;scedilla;LATIN SMALL LETTER S WITH CEDILLA
1347 F6C2;scedilla;LATIN SMALL LETTER S WITH CEDILLA;Duplicate
1348 015D;scircumflex;LATIN SMALL LETTER S WITH CIRCUMFLEX
1349 0219;scommaaccent;LATIN SMALL LETTER S WITH COMMA BELOW
1350 2033;second;DOUBLE PRIME
1351 00A7;section;SECTION SIGN
1352 003B;semicolon;SEMICOLON
1353 0037;seven;DIGIT SEVEN
1354 215E;seveneighths;VULGAR FRACTION SEVEN EIGHTHS
1355 2087;seveninferior;SUBSCRIPT SEVEN
1356 F737;sevenoldstyle;OLDSTYLE DIGIT SEVEN
1357 2077;sevensuperior;SUPERSCRIPT SEVEN
1358 2592;shade;MEDIUM SHADE
1359 03C3;sigma;GREEK SMALL LETTER SIGMA
1360 03C2;sigma1;GREEK SMALL LETTER FINAL SIGMA
1361 223C;similar;TILDE OPERATOR
1362 0036;six;DIGIT SIX
1363 2086;sixinferior;SUBSCRIPT SIX
1364 F736;sixoldstyle;OLDSTYLE DIGIT SIX
1365 2076;sixsuperior;SUPERSCRIPT SIX
1366 002F;slash;SOLIDUS
1367 263A;smileface;WHITE SMILING FACE
1368 0020;space;SPACE
1369 00A0;space;NO-BREAK SPACE;Duplicate
1370 2660;spade;BLACK SPADE SUIT
1371 F6F2;ssuperior;SUPERSCRIPT LATIN SMALL LETTER S
1372 00A3;sterling;POUND SIGN
1373 220B;suchthat;CONTAINS AS MEMBER
1374 2211;summation;N-ARY SUMMATION
1375 263C;sun;WHITE SUN WITH RAYS
1376 0074;t;LATIN SMALL LETTER T
1377 03C4;tau;GREEK SMALL LETTER TAU
1378 0167;tbar;LATIN SMALL LETTER T WITH STROKE
1379 0165;tcaron;LATIN SMALL LETTER T WITH CARON
1380 0163;tcommaaccent;LATIN SMALL LETTER T WITH CEDILLA
1381 021B;tcommaaccent;LATIN SMALL LETTER T WITH COMMA BELOW;Duplicate
1382 2234;therefore;THEREFORE
1383 03B8;theta;GREEK SMALL LETTER THETA
1384 03D1;theta1;GREEK THETA SYMBOL
1385 00FE;thorn;LATIN SMALL LETTER THORN
1386 0033;three;DIGIT THREE
1387 215C;threeeighths;VULGAR FRACTION THREE EIGHTHS
1388 2083;threeinferior;SUBSCRIPT THREE
1389 F733;threeoldstyle;OLDSTYLE DIGIT THREE
1390 00BE;threequarters;VULGAR FRACTION THREE QUARTERS
1391 F6DE;threequartersemdash;THREE QUARTERS EM DASH
1392 00B3;threesuperior;SUPERSCRIPT THREE
1393 02DC;tilde;SMALL TILDE
1394 0303;tildecomb;COMBINING TILDE
1395 0384;tonos;GREEK TONOS
1396 2122;trademark;TRADE MARK SIGN
1397 F8EA;trademarksans;TRADE MARK SIGN SANS SERIF
1398 F6DB;trademarkserif;TRADE MARK SIGN SERIF
1399 25BC;triagdn;BLACK DOWN-POINTING TRIANGLE
1400 25C4;triaglf;BLACK LEFT-POINTING POINTER
1401 25BA;triagrt;BLACK RIGHT-POINTING POINTER
1402 25B2;triagup;BLACK UP-POINTING TRIANGLE
1403 F6F3;tsuperior;SUPERSCRIPT LATIN SMALL LETTER T
1404 0032;two;DIGIT TWO
1405 2025;twodotenleader;TWO DOT LEADER
1406 2082;twoinferior;SUBSCRIPT TWO
1407 F732;twooldstyle;OLDSTYLE DIGIT TWO
1408 00B2;twosuperior;SUPERSCRIPT TWO
1409 2154;twothirds;VULGAR FRACTION TWO THIRDS
1410 0075;u;LATIN SMALL LETTER U
1411 00FA;uacute;LATIN SMALL LETTER U WITH ACUTE
1412 016D;ubreve;LATIN SMALL LETTER U WITH BREVE
1413 00FB;ucircumflex;LATIN SMALL LETTER U WITH CIRCUMFLEX
1414 00FC;udieresis;LATIN SMALL LETTER U WITH DIAERESIS
1415 00F9;ugrave;LATIN SMALL LETTER U WITH GRAVE
1416 01B0;uhorn;LATIN SMALL LETTER U WITH HORN
1417 0171;uhungarumlaut;LATIN SMALL LETTER U WITH DOUBLE ACUTE
1418 016B;umacron;LATIN SMALL LETTER U WITH MACRON
1419 005F;underscore;LOW LINE
1420 2017;underscoredbl;DOUBLE LOW LINE
1421 222A;union;UNION
1422 2200;universal;FOR ALL
1423 0173;uogonek;LATIN SMALL LETTER U WITH OGONEK
1424 2580;upblock;UPPER HALF BLOCK
1425 03C5;upsilon;GREEK SMALL LETTER UPSILON
1426 03CB;upsilondieresis;GREEK SMALL LETTER UPSILON WITH DIALYTIKA
1427 03B0;upsilondieresistonos;GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
1428 03CD;upsilontonos;GREEK SMALL LETTER UPSILON WITH TONOS
1429 016F;uring;LATIN SMALL LETTER U WITH RING ABOVE
1430 0169;utilde;LATIN SMALL LETTER U WITH TILDE
1431 0076;v;LATIN SMALL LETTER V
1432 0077;w;LATIN SMALL LETTER W
1433 1E83;wacute;LATIN SMALL LETTER W WITH ACUTE
1434 0175;wcircumflex;LATIN SMALL LETTER W WITH CIRCUMFLEX
1435 1E85;wdieresis;LATIN SMALL LETTER W WITH DIAERESIS
1436 2118;weierstrass;SCRIPT CAPITAL P
1437 1E81;wgrave;LATIN SMALL LETTER W WITH GRAVE
1438 0078;x;LATIN SMALL LETTER X
1439 03BE;xi;GREEK SMALL LETTER XI
1440 0079;y;LATIN SMALL LETTER Y
1441 00FD;yacute;LATIN SMALL LETTER Y WITH ACUTE
1442 0177;ycircumflex;LATIN SMALL LETTER Y WITH CIRCUMFLEX
1443 00FF;ydieresis;LATIN SMALL LETTER Y WITH DIAERESIS
1444 00A5;yen;YEN SIGN
1445 1EF3;ygrave;LATIN SMALL LETTER Y WITH GRAVE
1446 007A;z;LATIN SMALL LETTER Z
1447 017A;zacute;LATIN SMALL LETTER Z WITH ACUTE
1448 017E;zcaron;LATIN SMALL LETTER Z WITH CARON
1449 017C;zdotaccent;LATIN SMALL LETTER Z WITH DOT ABOVE
1450 0030;zero;DIGIT ZERO
1451 2080;zeroinferior;SUBSCRIPT ZERO
1452 F730;zerooldstyle;OLDSTYLE DIGIT ZERO
1453 2070;zerosuperior;SUPERSCRIPT ZERO
1454 03B6;zeta;GREEK SMALL LETTER ZETA
1455 """
1456
1457
1458 t1_bias    = 0
1459 glyph_list = []
1460
1461
1462 def the_adobe_glyph_list():
1463   """return the list of glyph names in the adobe list"""
1464
1465   lines  = string.split( adobe_glyph_list, '\n' )
1466   glyphs = []
1467
1468   for line in lines:
1469     if line:
1470       fields = string.split( line, ';' )
1471 #     print fields[0] + ' - ' + fields[1]
1472       glyphs.append( fields[1] )
1473
1474   return glyphs
1475
1476
1477 def the_adobe_glyphs():
1478   """return the list of unicode values"""
1479
1480   lines  = string.split( adobe_glyph_list, '\n' )
1481   glyphs = []
1482   values = []
1483
1484   for line in lines:
1485     if line:
1486       fields = string.split( line, ';' )
1487 #     print fields[0] + ' - ' + fields[1]
1488       glyphs.append( fields[1] )
1489       values.append( fields[0] )
1490
1491   return glyphs, values
1492
1493
1494 def count_extra_glyphs( alist, filter ):
1495   """count the number of extra glyphs"""
1496
1497   count  = 0
1498   extras = []
1499
1500   for name in alist:
1501     try:
1502       filtered_index = filter.index( name )
1503     except:
1504       extras.append( name )
1505             
1506   return extras
1507
1508
1509 def dump_mac_indices( file ):
1510   write = file.write
1511
1512   write( "  static const unsigned short  mac_standard_names[" + \
1513         repr( len( mac_standard_names ) + 1 ) + "] =\n" )
1514   write( "  {\n" )
1515
1516   count = 0
1517   for name in mac_standard_names:
1518     try:
1519       t1_index = t1_standard_strings.index( name )
1520       write( "    " + repr( t1_bias + t1_index ) + ",\n" )
1521     except:
1522       write( "    " + repr( count ) + ",\n" )
1523       count = count + 1
1524       
1525   write( "    0\n" )
1526   write( "  };\n" )
1527   write( "\n" )
1528   write( "\n" )
1529
1530
1531 def dump_glyph_list( file, glyph_list, adobe_extra ):
1532   write = file.write
1533
1534   name_list = []
1535
1536   write( "  static const char*  standard_glyph_names[] =\n" )
1537   write( "  {\n" )
1538
1539   for name in glyph_list:
1540     write( '    "' + name + '",\n' )
1541     name_list.append( name )
1542
1543   write( "\n" )
1544   write( "#ifdef FT_CONFIG_OPTION_ADOBE_GLYPH_LIST\n" )
1545   write( "\n" )
1546
1547   for name in adobe_extra:
1548     write( '    "' + name + '",\n' )
1549     name_list.append( name )
1550
1551   write( "\n" )
1552   write( "#endif /* FT_CONFIG_OPTION_ADOBE_GLYPH_LIST */\n" )
1553   write( "\n" )
1554   write( "    0\n" )
1555   write( "  };\n" )
1556   write( "\n" )
1557   write( "\n" )
1558   
1559   return name_list
1560
1561
1562 def dump_unicode_values( file, base_list, adobe_list ):
1563   """build the glyph names to unicode values table"""
1564
1565   write = file.write
1566
1567   adobe_glyphs, uni_values = the_adobe_glyphs()
1568
1569   write( "\n" )
1570   write( "  static const unsigned short  names_to_unicode[" + \
1571           repr( len( base_list ) + len( adobe_list ) + 1 ) + "] =\n" )
1572   write( "  {\n" )
1573              
1574   for name in base_list:
1575     try:
1576       index = adobe_glyphs.index( name )
1577       write( "    0x" + uni_values[index] + ",\n" )
1578     except:
1579       write( "    0,\n" )
1580
1581   write( "\n" )
1582   write( "#ifdef FT_CONFIG_OPTION_ADOBE_GLYPH_LIST\n" )
1583   write( "\n" )
1584
1585   for name in adobe_list:
1586     try:
1587       index = adobe_glyphs.index( name )
1588       write( "    0x" + uni_values[index] + ",\n" )
1589     except:
1590       write( "    0,\n" )
1591
1592   write( "\n" )
1593   write( "#endif /* FT_CONFIG_OPTION_ADOBE_GLYPH_LIST */\n" )
1594   write( "    0\n" )
1595   write( "  };\n" )
1596   write( "\n" )
1597   write( "\n" )
1598   write( "\n" )
1599
1600
1601 def dump_encoding( file, encoding_name, encoding_list ):
1602   """dumps a given encoding"""
1603
1604   write = file.write
1605
1606   write( "  static const unsigned short  " + encoding_name + "[" + \
1607           repr( len( encoding_list ) + 1 ) + "] =\n" )
1608   write( "  {\n" )
1609
1610   for value in encoding_list:
1611     write( "    " + repr( value ) + ",\n" )
1612   write( "    0\n" )
1613   write( "  };\n" )
1614   write( "\n" )
1615   write( "\n" )
1616
1617
1618 def main():
1619   """main program body"""
1620
1621   if len( sys.argv ) != 2:
1622     print __doc__ % sys.argv[0]
1623     sys.exit( 1 )
1624
1625   file  = open( sys.argv[1], "w\n" )
1626   write = file.write
1627
1628   count_sid = len( t1_standard_strings )
1629     
1630   # build mac index table & supplemental glyph names
1631   mac_list   = count_extra_glyphs( mac_standard_names, t1_standard_strings )
1632   count_mac  = len( mac_list )  
1633   t1_bias    = count_mac
1634   base_list  = mac_list + t1_standard_strings
1635     
1636   # build adobe unicode index table & supplemental glyph names
1637   adobe_list  = the_adobe_glyph_list()
1638   adobe_list  = count_extra_glyphs( adobe_list, base_list )
1639   count_adobe = len( adobe_list )
1640
1641   write( "/***************************************************************************/\n" )
1642   write( "/*                                                                         */\n" )
1643
1644   write( "/*  %-71s*/\n" % sys.argv[1] )
1645
1646   write( "/*                                                                         */\n" )
1647   write( "/*    PostScript glyph names (specification only).                         */\n" )
1648   write( "/*                                                                         */\n" )
1649   write( "/*  Copyright 2000 by                                                      */\n" )
1650   write( "/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */\n" )
1651   write( "/*                                                                         */\n" )
1652   write( "/*  This file is part of the FreeType project, and may only be used,       */\n" )
1653   write( "/*  modified, and distributed under the terms of the FreeType project      */\n" )
1654   write( "/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */\n" )
1655   write( "/*  this file you indicate that you have read the license and              */\n" )
1656   write( "/*  understand and accept it fully.                                        */\n" )
1657   write( "/*                                                                         */\n" )
1658   write( "/***************************************************************************/\n" )
1659   write( "\n" )
1660   write( "\n" )
1661   write( "  /* this file has been generated automatically -- do not edit! */\n" )
1662   write( "\n" )
1663   write( "\n" )
1664
1665   # dump glyph list
1666   name_list = dump_glyph_list( file, base_list, adobe_list )
1667     
1668   # dump t1_standard_list
1669   write( "  static const char**  t1_standard_glyphs = " \
1670           + "standard_glyph_names + " + repr( t1_bias ) + ";\n" )
1671   write( "\n" )
1672   write( "\n" )
1673
1674   write( "#define NUM_STD_GLYPHS " + repr( len( t1_standard_strings ) ) + "\n" )
1675   write( "\n" )
1676   write( "#ifdef FT_CONFIG_OPTION_ADOBE_GLYPH_LIST\n" )
1677   write( "#define NUM_ADOBE_GLYPHS " + \
1678           repr( len( base_list ) + len( adobe_list ) - t1_bias ) + "\n" )
1679   write( "#else\n" )
1680   write( "#define NUM_ADOBE_GLYPHS " + \
1681           repr( len( base_list ) - t1_bias )  + "\n" )
1682   write( "#endif\n" )
1683   write( "\n" )
1684   write( "\n" )
1685
1686   # dump mac indices table
1687   dump_mac_indices( file )    
1688
1689   # discard mac names from base list
1690   base_list = base_list[t1_bias:]
1691   
1692   # dump unicode values table
1693   dump_unicode_values( file, base_list, adobe_list )
1694
1695   dump_encoding( file, "t1_standard_encoding", t1_standard_encoding )
1696   dump_encoding( file, "t1_expert_encoding", t1_expert_encoding )
1697     
1698   write( "/* END */\n" )
1699
1700
1701 # Now run the main routine
1702 #
1703 main()
1704
1705
1706 # END