From 39c1918939bf270e63b708cc831082110575080b Mon Sep 17 00:00:00 2001 From: jvr Date: Sat, 25 Sep 2004 08:12:50 +0000 Subject: [PATCH] "Downgraded" AGL list to the "Adobe Glyph List For New Fonts", which is most appropriate here. There may be a use for the "big" AGL, but that will have to become a new module. git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@466 4cde692c-a291-49d1-8350-778aa11640f8 --- Lib/fontTools/agl.py | 355 +++++++------------------------------------ 1 file changed, 53 insertions(+), 302 deletions(-) diff --git a/Lib/fontTools/agl.py b/Lib/fontTools/agl.py index 7efcf5a83..3d07ceb3a 100644 --- a/Lib/fontTools/agl.py +++ b/Lib/fontTools/agl.py @@ -1,33 +1,34 @@ -# The URLs in the text below are not correct. They should be: -# http://partners.adobe.com/asn/developer/typeforum/unicodegn.html -# http://partners.adobe.com/asn/developer/typeforum/corporateuse.txt -# +# The table below is taken from +# http://partners.adobe.com/asn/tech/type/aglfn13.txt + _aglText = """\ # -# Name: Adobe Glyph List -# Table version: 1.2 -# Date: 22 Oct 1998 +# Name: Adobe Glyph List For New Fonts +# Table version: 1.1 +# Date: 17 April 2003 # # Description: # -# The Adobe Glyph List (AGL) list relates Unicode values (UVs) to glyph -# names, and should be used only as described in the document "Unicode and -# Glyph Names," at -# http://www.adobe.com/asn/developer/typeforum/unicodegn.html . +# The Adobe Glyph List For New Fonts (AGLFN) is meant to provide a list of +# base glyph names which are compatible with the AGL specification at +# http://partners.adobe.com/asn/developer/type/unicodegn.html. +# and which can be used as described in section 6 of that document. # -# The glyph name to UV relation is one to many. 12 glyph names are mapped to -# two UVs each; each UV has a separate entry. All other glyph names are -# mapped to one UV each. +# This list comprises the set of glyph names from the AGLv1.2 which +# map to via the AGL rules to the semanticly correct Unicode value. +# For example, Asmall is omitted as the AGL maps this to the Unicode +# Private Use Area value F761, rather than to the Unicode value for +# the character "A". "ffi" is also omitted, as the AGL maps this to the +# Unicode Private Use Area value FB03, rather than decomposing it to the +# three-value Unicode sequence 0066,0066,0069. "arrowvertex" is omitted +# becuase this now has a real Unicode character value, and the AGL is +# now incorrect in mapping this to the Private Use Area value F8E6. # -# The Unicode Standard version 2.1 is used for all UVs outside of the Private -# Use area, except for 4 entries (see Revision History for 1.2 below). +# If you do not find an appropriate name for your glyph in this list, +# then please refer to section 6 of the document: +# http://partners.adobe.com/asn/developer/typeforum/unicodegn.html. # -# There are 1051 entries in this list, 171 of which are in the Corporate Use -# subarea (CUS). Refer to the document "Unicode Corporate Use Subarea as used -# by Adobe Systems," at -# http://www.adobe.com/supportservice/devrelations/typeforum/corporateuse.txt -# for compatibility decompositions for these characters, and to the document -# "Unicode and Glyph Names" for more information the CUS. +# The Unicode values and names are given for convenience. # # Format: Semicolon-delimited fields: # @@ -38,149 +39,64 @@ _aglText = """\ # (3) Character names: Unicode character names for standard UVs, and # descriptive names for CUS UVs. (uppercase letters, hyphen, space) # -# (4) [optional] Comment. A comment of "Duplicate" indicates one of two -# UVs of a double-mapping. It is the UV that may be given a uni -# override, or the UV that is in the CUS, as described in the document -# "Unicode and Glyph Names." -# # The entries are sorted by glyph name in increasing ASCII order; entries # with the same glyph name are sorted in decreasing priority order. # # Lines starting with "#" are comments; blank lines should be ignored. # -# Revision History: +# 1.1 [17 April 2003] Renamed [Tt]cedilla back to [Tt]commaaccent: # -# 1.2 [22 Oct 1998] -# -# Some Central European glyph names were remapped and the glyph "dotlessj" -# was added. Some entries in the table below have not changed but are -# included to provide a complete context for other glyphs that have been -# remapped or double-mapped. "-" means that the entry for that UV does not -# exist in the AGL. -# -# -------- ---------------------- ---------------- -------------- -# UV Character name AGL 1.1 AGL 1.2 -# (shortened) glyph name glyph name -# -------- ---------------------- ---------------- -------------- -# 015E/F S/s with cedilla S/scommaaccent S/scedilla -# 0162/3 T/t with cedilla T/tcommaaccent T/tcommaaccent -# 0218/9 S/s with comma below - S/scommaaccent -# 021A/B T/t with comma below - T/tcommaaccent -# 1E9E/F S/s with comma below S/scedilla - -# F6C1/2 S/s with cedilla S/scedilla S/scedilla -# F6BE dotless j - dotlessj -# -------- ---------------------- ---------------- -------------- -# -# The characters at U+1E9E/F in AGL 1.1, LATIN CAPITAL/SMALL LETTER S WITH -# COMMA BELOW, which are proposed new characters (see (b) in the notes for -# AGL 1.1 below), have since been reassigned by the Unicode Standard to new -# proposed values of U+0218/9. These characters, as well as U+021A/B, LATIN -# CAPITAL/SMALL LETTER T WITH COMMA BELOW, are not in the Unicode Standard -# 2.1. -# -# Entries with the same glyph name are now sorted in decreasing priority -# order instead of in increasing UV order. -# -# 1.1 [24 Nov 1997] -# -# a. The "Euro" glyph's UV assignment is changed from U+20A0 (EURO-CURRENCY -# SIGN) to U+20AC (EURO SIGN). While U+20AC is not defined in the -# Unicode Standard 2.0, it has been accepted by the Unicode Technical -# Committee for the next version of the Standard; it has not yet passed -# the ISO approval process as of 7 November '97. -# -# b. Glyphs "Scedilla" and "scedilla", which were assigned in the Corporate -# Use Subarea in AGL 1.0, are now additionally mapped to U+1E9E and -# U+1E9F respectively. These two UVs share the same Unicode approval -# status as the Euro glyph (see a. above). -# -# c. The "fraction" glyph is now additionally mapped to U+2215, to match -# Windows Glyph List 4. -# -# d. The descriptive name for glyph "onefitted", in the Corporate Use -# subarea, is changed from "TABULAR DIGIT ONE" to "PROPORTIONAL DIGIT -# ONE". -# -# 1.0 [17 Jul 1997] Original version +# 1.0 [31 Jan 2003] Original version. Derived from the AGLv1.2 by: +# - removing the PUA area codes +# - removing duplicate Unicode mappings, and +# - renaming tcommaaccent to tcedilla and Tcommaaccent to Tcedilla # 0041;A;LATIN CAPITAL LETTER A 00C6;AE;LATIN CAPITAL LETTER AE 01FC;AEacute;LATIN CAPITAL LETTER AE WITH ACUTE -F7E6;AEsmall;LATIN SMALL CAPITAL LETTER AE 00C1;Aacute;LATIN CAPITAL LETTER A WITH ACUTE -F7E1;Aacutesmall;LATIN SMALL CAPITAL LETTER A WITH ACUTE 0102;Abreve;LATIN CAPITAL LETTER A WITH BREVE 00C2;Acircumflex;LATIN CAPITAL LETTER A WITH CIRCUMFLEX -F7E2;Acircumflexsmall;LATIN SMALL CAPITAL LETTER A WITH CIRCUMFLEX -F6C9;Acute;CAPITAL ACUTE ACCENT -F7B4;Acutesmall;SMALL CAPITAL ACUTE ACCENT 00C4;Adieresis;LATIN CAPITAL LETTER A WITH DIAERESIS -F7E4;Adieresissmall;LATIN SMALL CAPITAL LETTER A WITH DIAERESIS 00C0;Agrave;LATIN CAPITAL LETTER A WITH GRAVE -F7E0;Agravesmall;LATIN SMALL CAPITAL LETTER A WITH GRAVE 0391;Alpha;GREEK CAPITAL LETTER ALPHA 0386;Alphatonos;GREEK CAPITAL LETTER ALPHA WITH TONOS 0100;Amacron;LATIN CAPITAL LETTER A WITH MACRON 0104;Aogonek;LATIN CAPITAL LETTER A WITH OGONEK 00C5;Aring;LATIN CAPITAL LETTER A WITH RING ABOVE 01FA;Aringacute;LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE -F7E5;Aringsmall;LATIN SMALL CAPITAL LETTER A WITH RING ABOVE -F761;Asmall;LATIN SMALL CAPITAL LETTER A 00C3;Atilde;LATIN CAPITAL LETTER A WITH TILDE -F7E3;Atildesmall;LATIN SMALL CAPITAL LETTER A WITH TILDE 0042;B;LATIN CAPITAL LETTER B 0392;Beta;GREEK CAPITAL LETTER BETA -F6F4;Brevesmall;SMALL CAPITAL BREVE -F762;Bsmall;LATIN SMALL CAPITAL LETTER B 0043;C;LATIN CAPITAL LETTER C 0106;Cacute;LATIN CAPITAL LETTER C WITH ACUTE -F6CA;Caron;CAPITAL CARON -F6F5;Caronsmall;SMALL CAPITAL CARON 010C;Ccaron;LATIN CAPITAL LETTER C WITH CARON 00C7;Ccedilla;LATIN CAPITAL LETTER C WITH CEDILLA -F7E7;Ccedillasmall;LATIN SMALL CAPITAL LETTER C WITH CEDILLA 0108;Ccircumflex;LATIN CAPITAL LETTER C WITH CIRCUMFLEX 010A;Cdotaccent;LATIN CAPITAL LETTER C WITH DOT ABOVE -F7B8;Cedillasmall;SMALL CAPITAL CEDILLA 03A7;Chi;GREEK CAPITAL LETTER CHI -F6F6;Circumflexsmall;SMALL CAPITAL MODIFIER LETTER CIRCUMFLEX ACCENT -F763;Csmall;LATIN SMALL CAPITAL LETTER C 0044;D;LATIN CAPITAL LETTER D 010E;Dcaron;LATIN CAPITAL LETTER D WITH CARON 0110;Dcroat;LATIN CAPITAL LETTER D WITH STROKE 2206;Delta;INCREMENT -0394;Delta;GREEK CAPITAL LETTER DELTA;Duplicate -F6CB;Dieresis;CAPITAL DIAERESIS -F6CC;DieresisAcute;CAPITAL DIAERESIS ACUTE ACCENT -F6CD;DieresisGrave;CAPITAL DIAERESIS GRAVE ACCENT -F7A8;Dieresissmall;SMALL CAPITAL DIAERESIS -F6F7;Dotaccentsmall;SMALL CAPITAL DOT ABOVE -F764;Dsmall;LATIN SMALL CAPITAL LETTER D 0045;E;LATIN CAPITAL LETTER E 00C9;Eacute;LATIN CAPITAL LETTER E WITH ACUTE -F7E9;Eacutesmall;LATIN SMALL CAPITAL LETTER E WITH ACUTE 0114;Ebreve;LATIN CAPITAL LETTER E WITH BREVE 011A;Ecaron;LATIN CAPITAL LETTER E WITH CARON 00CA;Ecircumflex;LATIN CAPITAL LETTER E WITH CIRCUMFLEX -F7EA;Ecircumflexsmall;LATIN SMALL CAPITAL LETTER E WITH CIRCUMFLEX 00CB;Edieresis;LATIN CAPITAL LETTER E WITH DIAERESIS -F7EB;Edieresissmall;LATIN SMALL CAPITAL LETTER E WITH DIAERESIS 0116;Edotaccent;LATIN CAPITAL LETTER E WITH DOT ABOVE 00C8;Egrave;LATIN CAPITAL LETTER E WITH GRAVE -F7E8;Egravesmall;LATIN SMALL CAPITAL LETTER E WITH GRAVE 0112;Emacron;LATIN CAPITAL LETTER E WITH MACRON 014A;Eng;LATIN CAPITAL LETTER ENG 0118;Eogonek;LATIN CAPITAL LETTER E WITH OGONEK 0395;Epsilon;GREEK CAPITAL LETTER EPSILON 0388;Epsilontonos;GREEK CAPITAL LETTER EPSILON WITH TONOS -F765;Esmall;LATIN SMALL CAPITAL LETTER E 0397;Eta;GREEK CAPITAL LETTER ETA 0389;Etatonos;GREEK CAPITAL LETTER ETA WITH TONOS 00D0;Eth;LATIN CAPITAL LETTER ETH -F7F0;Ethsmall;LATIN SMALL CAPITAL LETTER ETH 20AC;Euro;EURO SIGN 0046;F;LATIN CAPITAL LETTER F -F766;Fsmall;LATIN SMALL CAPITAL LETTER F 0047;G;LATIN CAPITAL LETTER G 0393;Gamma;GREEK CAPITAL LETTER GAMMA 011E;Gbreve;LATIN CAPITAL LETTER G WITH BREVE @@ -188,9 +104,6 @@ F766;Fsmall;LATIN SMALL CAPITAL LETTER F 011C;Gcircumflex;LATIN CAPITAL LETTER G WITH CIRCUMFLEX 0122;Gcommaaccent;LATIN CAPITAL LETTER G WITH CEDILLA 0120;Gdotaccent;LATIN CAPITAL LETTER G WITH DOT ABOVE -F6CE;Grave;CAPITAL GRAVE ACCENT -F760;Gravesmall;SMALL CAPITAL GRAVE ACCENT -F767;Gsmall;LATIN SMALL CAPITAL LETTER G 0048;H;LATIN CAPITAL LETTER H 25CF;H18533;BLACK CIRCLE 25AA;H18543;BLACK SMALL SQUARE @@ -198,101 +111,69 @@ F767;Gsmall;LATIN SMALL CAPITAL LETTER G 25A1;H22073;WHITE SQUARE 0126;Hbar;LATIN CAPITAL LETTER H WITH STROKE 0124;Hcircumflex;LATIN CAPITAL LETTER H WITH CIRCUMFLEX -F768;Hsmall;LATIN SMALL CAPITAL LETTER H -F6CF;Hungarumlaut;CAPITAL DOUBLE ACUTE ACCENT -F6F8;Hungarumlautsmall;SMALL CAPITAL DOUBLE ACUTE ACCENT 0049;I;LATIN CAPITAL LETTER I 0132;IJ;LATIN CAPITAL LIGATURE IJ 00CD;Iacute;LATIN CAPITAL LETTER I WITH ACUTE -F7ED;Iacutesmall;LATIN SMALL CAPITAL LETTER I WITH ACUTE 012C;Ibreve;LATIN CAPITAL LETTER I WITH BREVE 00CE;Icircumflex;LATIN CAPITAL LETTER I WITH CIRCUMFLEX -F7EE;Icircumflexsmall;LATIN SMALL CAPITAL LETTER I WITH CIRCUMFLEX 00CF;Idieresis;LATIN CAPITAL LETTER I WITH DIAERESIS -F7EF;Idieresissmall;LATIN SMALL CAPITAL LETTER I WITH DIAERESIS 0130;Idotaccent;LATIN CAPITAL LETTER I WITH DOT ABOVE 2111;Ifraktur;BLACK-LETTER CAPITAL I 00CC;Igrave;LATIN CAPITAL LETTER I WITH GRAVE -F7EC;Igravesmall;LATIN SMALL CAPITAL LETTER I WITH GRAVE 012A;Imacron;LATIN CAPITAL LETTER I WITH MACRON 012E;Iogonek;LATIN CAPITAL LETTER I WITH OGONEK 0399;Iota;GREEK CAPITAL LETTER IOTA 03AA;Iotadieresis;GREEK CAPITAL LETTER IOTA WITH DIALYTIKA 038A;Iotatonos;GREEK CAPITAL LETTER IOTA WITH TONOS -F769;Ismall;LATIN SMALL CAPITAL LETTER I 0128;Itilde;LATIN CAPITAL LETTER I WITH TILDE 004A;J;LATIN CAPITAL LETTER J 0134;Jcircumflex;LATIN CAPITAL LETTER J WITH CIRCUMFLEX -F76A;Jsmall;LATIN SMALL CAPITAL LETTER J 004B;K;LATIN CAPITAL LETTER K 039A;Kappa;GREEK CAPITAL LETTER KAPPA 0136;Kcommaaccent;LATIN CAPITAL LETTER K WITH CEDILLA -F76B;Ksmall;LATIN SMALL CAPITAL LETTER K 004C;L;LATIN CAPITAL LETTER L -F6BF;LL;LATIN CAPITAL LETTER LL 0139;Lacute;LATIN CAPITAL LETTER L WITH ACUTE 039B;Lambda;GREEK CAPITAL LETTER LAMDA 013D;Lcaron;LATIN CAPITAL LETTER L WITH CARON 013B;Lcommaaccent;LATIN CAPITAL LETTER L WITH CEDILLA 013F;Ldot;LATIN CAPITAL LETTER L WITH MIDDLE DOT 0141;Lslash;LATIN CAPITAL LETTER L WITH STROKE -F6F9;Lslashsmall;LATIN SMALL CAPITAL LETTER L WITH STROKE -F76C;Lsmall;LATIN SMALL CAPITAL LETTER L 004D;M;LATIN CAPITAL LETTER M -F6D0;Macron;CAPITAL MACRON -F7AF;Macronsmall;SMALL CAPITAL MACRON -F76D;Msmall;LATIN SMALL CAPITAL LETTER M 039C;Mu;GREEK CAPITAL LETTER MU 004E;N;LATIN CAPITAL LETTER N 0143;Nacute;LATIN CAPITAL LETTER N WITH ACUTE 0147;Ncaron;LATIN CAPITAL LETTER N WITH CARON 0145;Ncommaaccent;LATIN CAPITAL LETTER N WITH CEDILLA -F76E;Nsmall;LATIN SMALL CAPITAL LETTER N 00D1;Ntilde;LATIN CAPITAL LETTER N WITH TILDE -F7F1;Ntildesmall;LATIN SMALL CAPITAL LETTER N WITH TILDE 039D;Nu;GREEK CAPITAL LETTER NU 004F;O;LATIN CAPITAL LETTER O 0152;OE;LATIN CAPITAL LIGATURE OE -F6FA;OEsmall;LATIN SMALL CAPITAL LIGATURE OE 00D3;Oacute;LATIN CAPITAL LETTER O WITH ACUTE -F7F3;Oacutesmall;LATIN SMALL CAPITAL LETTER O WITH ACUTE 014E;Obreve;LATIN CAPITAL LETTER O WITH BREVE 00D4;Ocircumflex;LATIN CAPITAL LETTER O WITH CIRCUMFLEX -F7F4;Ocircumflexsmall;LATIN SMALL CAPITAL LETTER O WITH CIRCUMFLEX 00D6;Odieresis;LATIN CAPITAL LETTER O WITH DIAERESIS -F7F6;Odieresissmall;LATIN SMALL CAPITAL LETTER O WITH DIAERESIS -F6FB;Ogoneksmall;SMALL CAPITAL OGONEK 00D2;Ograve;LATIN CAPITAL LETTER O WITH GRAVE -F7F2;Ogravesmall;LATIN SMALL CAPITAL LETTER O WITH GRAVE 01A0;Ohorn;LATIN CAPITAL LETTER O WITH HORN 0150;Ohungarumlaut;LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 014C;Omacron;LATIN CAPITAL LETTER O WITH MACRON 2126;Omega;OHM SIGN -03A9;Omega;GREEK CAPITAL LETTER OMEGA;Duplicate 038F;Omegatonos;GREEK CAPITAL LETTER OMEGA WITH TONOS 039F;Omicron;GREEK CAPITAL LETTER OMICRON 038C;Omicrontonos;GREEK CAPITAL LETTER OMICRON WITH TONOS 00D8;Oslash;LATIN CAPITAL LETTER O WITH STROKE 01FE;Oslashacute;LATIN CAPITAL LETTER O WITH STROKE AND ACUTE -F7F8;Oslashsmall;LATIN SMALL CAPITAL LETTER O WITH STROKE -F76F;Osmall;LATIN SMALL CAPITAL LETTER O 00D5;Otilde;LATIN CAPITAL LETTER O WITH TILDE -F7F5;Otildesmall;LATIN SMALL CAPITAL LETTER O WITH TILDE 0050;P;LATIN CAPITAL LETTER P 03A6;Phi;GREEK CAPITAL LETTER PHI 03A0;Pi;GREEK CAPITAL LETTER PI 03A8;Psi;GREEK CAPITAL LETTER PSI -F770;Psmall;LATIN SMALL CAPITAL LETTER P 0051;Q;LATIN CAPITAL LETTER Q -F771;Qsmall;LATIN SMALL CAPITAL LETTER Q 0052;R;LATIN CAPITAL LETTER R 0154;Racute;LATIN CAPITAL LETTER R WITH ACUTE 0158;Rcaron;LATIN CAPITAL LETTER R WITH CARON 0156;Rcommaaccent;LATIN CAPITAL LETTER R WITH CEDILLA 211C;Rfraktur;BLACK-LETTER CAPITAL R 03A1;Rho;GREEK CAPITAL LETTER RHO -F6FC;Ringsmall;SMALL CAPITAL RING ABOVE -F772;Rsmall;LATIN SMALL CAPITAL LETTER R 0053;S;LATIN CAPITAL LETTER S 250C;SF010000;BOX DRAWINGS LIGHT DOWN AND RIGHT 2514;SF020000;BOX DRAWINGS LIGHT UP AND RIGHT @@ -336,34 +217,23 @@ F772;Rsmall;LATIN SMALL CAPITAL LETTER R 256A;SF540000;BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE 015A;Sacute;LATIN CAPITAL LETTER S WITH ACUTE 0160;Scaron;LATIN CAPITAL LETTER S WITH CARON -F6FD;Scaronsmall;LATIN SMALL CAPITAL LETTER S WITH CARON 015E;Scedilla;LATIN CAPITAL LETTER S WITH CEDILLA -F6C1;Scedilla;LATIN CAPITAL LETTER S WITH CEDILLA;Duplicate 015C;Scircumflex;LATIN CAPITAL LETTER S WITH CIRCUMFLEX 0218;Scommaaccent;LATIN CAPITAL LETTER S WITH COMMA BELOW 03A3;Sigma;GREEK CAPITAL LETTER SIGMA -F773;Ssmall;LATIN SMALL CAPITAL LETTER S 0054;T;LATIN CAPITAL LETTER T 03A4;Tau;GREEK CAPITAL LETTER TAU 0166;Tbar;LATIN CAPITAL LETTER T WITH STROKE 0164;Tcaron;LATIN CAPITAL LETTER T WITH CARON 0162;Tcommaaccent;LATIN CAPITAL LETTER T WITH CEDILLA -021A;Tcommaaccent;LATIN CAPITAL LETTER T WITH COMMA BELOW;Duplicate 0398;Theta;GREEK CAPITAL LETTER THETA 00DE;Thorn;LATIN CAPITAL LETTER THORN -F7FE;Thornsmall;LATIN SMALL CAPITAL LETTER THORN -F6FE;Tildesmall;SMALL CAPITAL SMALL TILDE -F774;Tsmall;LATIN SMALL CAPITAL LETTER T 0055;U;LATIN CAPITAL LETTER U 00DA;Uacute;LATIN CAPITAL LETTER U WITH ACUTE -F7FA;Uacutesmall;LATIN SMALL CAPITAL LETTER U WITH ACUTE 016C;Ubreve;LATIN CAPITAL LETTER U WITH BREVE 00DB;Ucircumflex;LATIN CAPITAL LETTER U WITH CIRCUMFLEX -F7FB;Ucircumflexsmall;LATIN SMALL CAPITAL LETTER U WITH CIRCUMFLEX 00DC;Udieresis;LATIN CAPITAL LETTER U WITH DIAERESIS -F7FC;Udieresissmall;LATIN SMALL CAPITAL LETTER U WITH DIAERESIS 00D9;Ugrave;LATIN CAPITAL LETTER U WITH GRAVE -F7F9;Ugravesmall;LATIN SMALL CAPITAL LETTER U WITH GRAVE 01AF;Uhorn;LATIN CAPITAL LETTER U WITH HORN 0170;Uhungarumlaut;LATIN CAPITAL LETTER U WITH DOUBLE ACUTE 016A;Umacron;LATIN CAPITAL LETTER U WITH MACRON @@ -373,34 +243,25 @@ F7F9;Ugravesmall;LATIN SMALL CAPITAL LETTER U WITH GRAVE 03AB;Upsilondieresis;GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA 038E;Upsilontonos;GREEK CAPITAL LETTER UPSILON WITH TONOS 016E;Uring;LATIN CAPITAL LETTER U WITH RING ABOVE -F775;Usmall;LATIN SMALL CAPITAL LETTER U 0168;Utilde;LATIN CAPITAL LETTER U WITH TILDE 0056;V;LATIN CAPITAL LETTER V -F776;Vsmall;LATIN SMALL CAPITAL LETTER V 0057;W;LATIN CAPITAL LETTER W 1E82;Wacute;LATIN CAPITAL LETTER W WITH ACUTE 0174;Wcircumflex;LATIN CAPITAL LETTER W WITH CIRCUMFLEX 1E84;Wdieresis;LATIN CAPITAL LETTER W WITH DIAERESIS 1E80;Wgrave;LATIN CAPITAL LETTER W WITH GRAVE -F777;Wsmall;LATIN SMALL CAPITAL LETTER W 0058;X;LATIN CAPITAL LETTER X 039E;Xi;GREEK CAPITAL LETTER XI -F778;Xsmall;LATIN SMALL CAPITAL LETTER X 0059;Y;LATIN CAPITAL LETTER Y 00DD;Yacute;LATIN CAPITAL LETTER Y WITH ACUTE -F7FD;Yacutesmall;LATIN SMALL CAPITAL LETTER Y WITH ACUTE 0176;Ycircumflex;LATIN CAPITAL LETTER Y WITH CIRCUMFLEX 0178;Ydieresis;LATIN CAPITAL LETTER Y WITH DIAERESIS -F7FF;Ydieresissmall;LATIN SMALL CAPITAL LETTER Y WITH DIAERESIS 1EF2;Ygrave;LATIN CAPITAL LETTER Y WITH GRAVE -F779;Ysmall;LATIN SMALL CAPITAL LETTER Y 005A;Z;LATIN CAPITAL LETTER Z 0179;Zacute;LATIN CAPITAL LETTER Z WITH ACUTE 017D;Zcaron;LATIN CAPITAL LETTER Z WITH CARON -F6FF;Zcaronsmall;LATIN SMALL CAPITAL LETTER Z WITH CARON 017B;Zdotaccent;LATIN CAPITAL LETTER Z WITH DOT ABOVE 0396;Zeta;GREEK CAPITAL LETTER ZETA -F77A;Zsmall;LATIN SMALL CAPITAL LETTER Z 0061;a;LATIN SMALL LETTER A 00E1;aacute;LATIN SMALL LETTER A WITH ACUTE 0103;abreve;LATIN SMALL LETTER A WITH BREVE @@ -457,8 +318,6 @@ F77A;Zsmall;LATIN SMALL CAPITAL LETTER Z 040B;afii10060;CYRILLIC CAPITAL LETTER TSHE 040C;afii10061;CYRILLIC CAPITAL LETTER KJE 040E;afii10062;CYRILLIC CAPITAL LETTER SHORT U -F6C4;afii10063;CYRILLIC SMALL LETTER GHE VARIANT -F6C5;afii10064;CYRILLIC SMALL LETTER BE VARIANT 0430;afii10065;CYRILLIC SMALL LETTER A 0431;afii10066;CYRILLIC SMALL LETTER BE 0432;afii10067;CYRILLIC SMALL LETTER VE @@ -509,13 +368,10 @@ F6C5;afii10064;CYRILLIC SMALL LETTER BE VARIANT 0462;afii10146;CYRILLIC CAPITAL LETTER YAT 0472;afii10147;CYRILLIC CAPITAL LETTER FITA 0474;afii10148;CYRILLIC CAPITAL LETTER IZHITSA -F6C6;afii10192;CYRILLIC SMALL LETTER DE VARIANT 045F;afii10193;CYRILLIC SMALL LETTER DZHE 0463;afii10194;CYRILLIC SMALL LETTER YAT 0473;afii10195;CYRILLIC SMALL LETTER FITA 0475;afii10196;CYRILLIC SMALL LETTER IZHITSA -F6C7;afii10831;CYRILLIC SMALL LETTER PE VARIANT -F6C8;afii10832;CYRILLIC SMALL LETTER TE VARIANT 04D9;afii10846;CYRILLIC SMALL LETTER SCHWA 200E;afii299;LEFT-TO-RIGHT MARK 200F;afii300;RIGHT-TO-LEFT MARK @@ -620,14 +476,9 @@ F6C8;afii10832;CYRILLIC SMALL LETTER TE VARIANT 05E8;afii57688;HEBREW LETTER RESH 05E9;afii57689;HEBREW LETTER SHIN 05EA;afii57690;HEBREW LETTER TAV -FB2A;afii57694;HEBREW LETTER SHIN WITH SHIN DOT -FB2B;afii57695;HEBREW LETTER SHIN WITH SIN DOT -FB4B;afii57700;HEBREW LETTER VAV WITH HOLAM -FB1F;afii57705;HEBREW LIGATURE YIDDISH YOD YOD PATAH 05F0;afii57716;HEBREW LIGATURE YIDDISH DOUBLE VAV 05F1;afii57717;HEBREW LIGATURE YIDDISH VAV YOD 05F2;afii57718;HEBREW LIGATURE YIDDISH DOUBLE YOD -FB35;afii57723;HEBREW LETTER VAV WITH DAGESH 05B4;afii57793;HEBREW POINT HIRIQ 05B5;afii57794;HEBREW POINT TSERE 05B6;afii57795;HEBREW POINT SEGOL @@ -661,7 +512,6 @@ FB35;afii57723;HEBREW LETTER VAV WITH DAGESH 03AC;alphatonos;GREEK SMALL LETTER ALPHA WITH TONOS 0101;amacron;LATIN SMALL LETTER A WITH MACRON 0026;ampersand;AMPERSAND -F726;ampersandsmall;SMALL CAPITAL AMPERSAND 2220;angle;ANGLE 2329;angleleft;LEFT-POINTING ANGLE BRACKET 232A;angleright;RIGHT-POINTING ANGLE BRACKET @@ -677,18 +527,16 @@ F726;ampersandsmall;SMALL CAPITAL AMPERSAND 21D2;arrowdblright;RIGHTWARDS DOUBLE ARROW 21D1;arrowdblup;UPWARDS DOUBLE ARROW 2193;arrowdown;DOWNWARDS ARROW -F8E7;arrowhorizex;HORIZONTAL ARROW EXTENDER 2190;arrowleft;LEFTWARDS ARROW 2192;arrowright;RIGHTWARDS ARROW 2191;arrowup;UPWARDS ARROW 2195;arrowupdn;UP DOWN ARROW 21A8;arrowupdnbse;UP DOWN ARROW WITH BASE -F8E6;arrowvertex;VERTICAL ARROW EXTENDER +# XXXX ;arrowvertex;VERTICAL ARROW EXTENDER 005E;asciicircum;CIRCUMFLEX ACCENT 007E;asciitilde;TILDE 002A;asterisk;ASTERISK 2217;asteriskmath;ASTERISK OPERATOR -F6E9;asuperior;SUPERSCRIPT LATIN SMALL LETTER A 0040;at;COMMERCIAL AT 00E3;atilde;LATIN SMALL LETTER A WITH TILDE 0062;b;LATIN SMALL LETTER B @@ -696,26 +544,12 @@ F6E9;asuperior;SUPERSCRIPT LATIN SMALL LETTER A 007C;bar;VERTICAL LINE 03B2;beta;GREEK SMALL LETTER BETA 2588;block;FULL BLOCK -F8F4;braceex;CURLY BRACKET EXTENDER 007B;braceleft;LEFT CURLY BRACKET -F8F3;braceleftbt;LEFT CURLY BRACKET BOTTOM -F8F2;braceleftmid;LEFT CURLY BRACKET MID -F8F1;bracelefttp;LEFT CURLY BRACKET TOP 007D;braceright;RIGHT CURLY BRACKET -F8FE;bracerightbt;RIGHT CURLY BRACKET BOTTOM -F8FD;bracerightmid;RIGHT CURLY BRACKET MID -F8FC;bracerighttp;RIGHT CURLY BRACKET TOP 005B;bracketleft;LEFT SQUARE BRACKET -F8F0;bracketleftbt;LEFT SQUARE BRACKET BOTTOM -F8EF;bracketleftex;LEFT SQUARE BRACKET EXTENDER -F8EE;bracketlefttp;LEFT SQUARE BRACKET TOP 005D;bracketright;RIGHT SQUARE BRACKET -F8FB;bracketrightbt;RIGHT SQUARE BRACKET BOTTOM -F8FA;bracketrightex;RIGHT SQUARE BRACKET EXTENDER -F8F9;bracketrighttp;RIGHT SQUARE BRACKET TOP 02D8;breve;BREVE 00A6;brokenbar;BROKEN BAR -F6EA;bsuperior;SUPERSCRIPT LATIN SMALL LETTER B 2022;bullet;BULLET 0063;c;LATIN SMALL LETTER C 0107;cacute;LATIN SMALL LETTER C WITH ACUTE @@ -727,9 +561,6 @@ F6EA;bsuperior;SUPERSCRIPT LATIN SMALL LETTER B 010B;cdotaccent;LATIN SMALL LETTER C WITH DOT ABOVE 00B8;cedilla;CEDILLA 00A2;cent;CENT SIGN -F6DF;centinferior;SUBSCRIPT CENT SIGN -F7A2;centoldstyle;OLDSTYLE CENT SIGN -F6E0;centsuperior;SUPERSCRIPT CENT SIGN 03C7;chi;GREEK SMALL LETTER CHI 25CB;circle;WHITE CIRCLE 2297;circlemultiply;CIRCLED TIMES @@ -739,46 +570,28 @@ F6E0;centsuperior;SUPERSCRIPT CENT SIGN 003A;colon;COLON 20A1;colonmonetary;COLON SIGN 002C;comma;COMMA -F6C3;commaaccent;COMMA BELOW -F6E1;commainferior;SUBSCRIPT COMMA -F6E2;commasuperior;SUPERSCRIPT COMMA 2245;congruent;APPROXIMATELY EQUAL TO 00A9;copyright;COPYRIGHT SIGN -F8E9;copyrightsans;COPYRIGHT SIGN SANS SERIF -F6D9;copyrightserif;COPYRIGHT SIGN SERIF 00A4;currency;CURRENCY SIGN -F6D1;cyrBreve;CAPITAL CYRILLIC BREVE -F6D2;cyrFlex;CAPITAL CYRILLIC CIRCUMFLEX -F6D4;cyrbreve;CYRILLIC BREVE -F6D5;cyrflex;CYRILLIC CIRCUMFLEX 0064;d;LATIN SMALL LETTER D 2020;dagger;DAGGER 2021;daggerdbl;DOUBLE DAGGER -F6D3;dblGrave;CAPITAL DOUBLE GRAVE ACCENT -F6D6;dblgrave;DOUBLE GRAVE ACCENT 010F;dcaron;LATIN SMALL LETTER D WITH CARON 0111;dcroat;LATIN SMALL LETTER D WITH STROKE 00B0;degree;DEGREE SIGN 03B4;delta;GREEK SMALL LETTER DELTA 2666;diamond;BLACK DIAMOND SUIT 00A8;dieresis;DIAERESIS -F6D7;dieresisacute;DIAERESIS ACUTE ACCENT -F6D8;dieresisgrave;DIAERESIS GRAVE ACCENT 0385;dieresistonos;GREEK DIALYTIKA TONOS 00F7;divide;DIVISION SIGN 2593;dkshade;DARK SHADE 2584;dnblock;LOWER HALF BLOCK 0024;dollar;DOLLAR SIGN -F6E3;dollarinferior;SUBSCRIPT DOLLAR SIGN -F724;dollaroldstyle;OLDSTYLE DOLLAR SIGN -F6E4;dollarsuperior;SUPERSCRIPT DOLLAR SIGN 20AB;dong;DONG SIGN 02D9;dotaccent;DOT ABOVE 0323;dotbelowcomb;COMBINING DOT BELOW 0131;dotlessi;LATIN SMALL LETTER DOTLESS I -F6BE;dotlessj;LATIN SMALL LETTER DOTLESS J 22C5;dotmath;DOT OPERATOR -F6EB;dsuperior;SUPERSCRIPT LATIN SMALL LETTER D 0065;e;LATIN SMALL LETTER E 00E9;eacute;LATIN SMALL LETTER E WITH ACUTE 0115;ebreve;LATIN SMALL LETTER E WITH BREVE @@ -788,9 +601,6 @@ F6EB;dsuperior;SUPERSCRIPT LATIN SMALL LETTER D 0117;edotaccent;LATIN SMALL LETTER E WITH DOT ABOVE 00E8;egrave;LATIN SMALL LETTER E WITH GRAVE 0038;eight;DIGIT EIGHT -2088;eightinferior;SUBSCRIPT EIGHT -F738;eightoldstyle;OLDSTYLE DIGIT EIGHT -2078;eightsuperior;SUPERSCRIPT EIGHT 2208;element;ELEMENT OF 2026;ellipsis;HORIZONTAL ELLIPSIS 0113;emacron;LATIN SMALL LETTER E WITH MACRON @@ -804,38 +614,23 @@ F738;eightoldstyle;OLDSTYLE DIGIT EIGHT 003D;equal;EQUALS SIGN 2261;equivalence;IDENTICAL TO 212E;estimated;ESTIMATED SYMBOL -F6EC;esuperior;SUPERSCRIPT LATIN SMALL LETTER E 03B7;eta;GREEK SMALL LETTER ETA 03AE;etatonos;GREEK SMALL LETTER ETA WITH TONOS 00F0;eth;LATIN SMALL LETTER ETH 0021;exclam;EXCLAMATION MARK 203C;exclamdbl;DOUBLE EXCLAMATION MARK 00A1;exclamdown;INVERTED EXCLAMATION MARK -F7A1;exclamdownsmall;SMALL CAPITAL INVERTED EXCLAMATION MARK -F721;exclamsmall;SMALL CAPITAL EXCLAMATION MARK 2203;existential;THERE EXISTS 0066;f;LATIN SMALL LETTER F 2640;female;FEMALE SIGN -FB00;ff;LATIN SMALL LIGATURE FF -FB03;ffi;LATIN SMALL LIGATURE FFI -FB04;ffl;LATIN SMALL LIGATURE FFL -FB01;fi;LATIN SMALL LIGATURE FI 2012;figuredash;FIGURE DASH 25A0;filledbox;BLACK SQUARE 25AC;filledrect;BLACK RECTANGLE 0035;five;DIGIT FIVE 215D;fiveeighths;VULGAR FRACTION FIVE EIGHTHS -2085;fiveinferior;SUBSCRIPT FIVE -F735;fiveoldstyle;OLDSTYLE DIGIT FIVE -2075;fivesuperior;SUPERSCRIPT FIVE -FB02;fl;LATIN SMALL LIGATURE FL 0192;florin;LATIN SMALL LETTER F WITH HOOK 0034;four;DIGIT FOUR -2084;fourinferior;SUBSCRIPT FOUR -F734;fouroldstyle;OLDSTYLE DIGIT FOUR -2074;foursuperior;SUPERSCRIPT FOUR 2044;fraction;FRACTION SLASH -2215;fraction;DIVISION SLASH;Duplicate 20A3;franc;FRENCH FRANC SIGN 0067;g;LATIN SMALL LETTER G 03B3;gamma;GREEK SMALL LETTER GAMMA @@ -862,9 +657,6 @@ F734;fouroldstyle;OLDSTYLE DIGIT FOUR 2302;house;HOUSE 02DD;hungarumlaut;DOUBLE ACUTE ACCENT 002D;hyphen;HYPHEN-MINUS -00AD;hyphen;SOFT HYPHEN;Duplicate -F6E5;hypheninferior;SUBSCRIPT HYPHEN-MINUS -F6E6;hyphensuperior;SUPERSCRIPT HYPHEN-MINUS 0069;i;LATIN SMALL LETTER I 00ED;iacute;LATIN SMALL LETTER I WITH ACUTE 012D;ibreve;LATIN SMALL LETTER I WITH BREVE @@ -876,7 +668,6 @@ F6E6;hyphensuperior;SUPERSCRIPT HYPHEN-MINUS 221E;infinity;INFINITY 222B;integral;INTEGRAL 2321;integralbt;BOTTOM HALF INTEGRAL -F8F5;integralex;INTEGRAL EXTENDER 2320;integraltp;TOP HALF INTEGRAL 2229;intersection;INTERSECTION 25D8;invbullet;INVERSE BULLET @@ -887,7 +678,6 @@ F8F5;integralex;INTEGRAL EXTENDER 03CA;iotadieresis;GREEK SMALL LETTER IOTA WITH DIALYTIKA 0390;iotadieresistonos;GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS 03AF;iotatonos;GREEK SMALL LETTER IOTA WITH TONOS -F6ED;isuperior;SUPERSCRIPT LATIN SMALL LETTER I 0129;itilde;LATIN SMALL LETTER I WITH TILDE 006A;j;LATIN SMALL LETTER J 0135;jcircumflex;LATIN SMALL LETTER J WITH CIRCUMFLEX @@ -905,24 +695,19 @@ F6ED;isuperior;SUPERSCRIPT LATIN SMALL LETTER I 2264;lessequal;LESS-THAN OR EQUAL TO 258C;lfblock;LEFT HALF BLOCK 20A4;lira;LIRA SIGN -F6C0;ll;LATIN SMALL LETTER LL 2227;logicaland;LOGICAL AND 00AC;logicalnot;NOT SIGN 2228;logicalor;LOGICAL OR 017F;longs;LATIN SMALL LETTER LONG S 25CA;lozenge;LOZENGE 0142;lslash;LATIN SMALL LETTER L WITH STROKE -F6EE;lsuperior;SUPERSCRIPT LATIN SMALL LETTER L 2591;ltshade;LIGHT SHADE 006D;m;LATIN SMALL LETTER M 00AF;macron;MACRON -02C9;macron;MODIFIER LETTER MACRON;Duplicate 2642;male;MALE SIGN 2212;minus;MINUS SIGN 2032;minute;PRIME -F6EF;msuperior;SUPERSCRIPT LATIN SMALL LETTER M 00B5;mu;MICRO SIGN -03BC;mu;GREEK SMALL LETTER MU;Duplicate 00D7;multiply;MULTIPLICATION SIGN 266A;musicalnote;EIGHTH NOTE 266B;musicalnotedbl;BEAMED EIGHTH NOTES @@ -932,13 +717,9 @@ F6EF;msuperior;SUPERSCRIPT LATIN SMALL LETTER M 0148;ncaron;LATIN SMALL LETTER N WITH CARON 0146;ncommaaccent;LATIN SMALL LETTER N WITH CEDILLA 0039;nine;DIGIT NINE -2089;nineinferior;SUBSCRIPT NINE -F739;nineoldstyle;OLDSTYLE DIGIT NINE -2079;ninesuperior;SUPERSCRIPT NINE 2209;notelement;NOT AN ELEMENT OF 2260;notequal;NOT EQUAL TO 2284;notsubset;NOT A SUBSET OF -207F;nsuperior;SUPERSCRIPT LATIN SMALL LETTER N 00F1;ntilde;LATIN SMALL LETTER N WITH TILDE 03BD;nu;GREEK SMALL LETTER NU 0023;numbersign;NUMBER SIGN @@ -961,12 +742,8 @@ F739;nineoldstyle;OLDSTYLE DIGIT NINE 0031;one;DIGIT ONE 2024;onedotenleader;ONE DOT LEADER 215B;oneeighth;VULGAR FRACTION ONE EIGHTH -F6DC;onefitted;PROPORTIONAL DIGIT ONE 00BD;onehalf;VULGAR FRACTION ONE HALF -2081;oneinferior;SUBSCRIPT ONE -F731;oneoldstyle;OLDSTYLE DIGIT ONE 00BC;onequarter;VULGAR FRACTION ONE QUARTER -00B9;onesuperior;SUPERSCRIPT ONE 2153;onethird;VULGAR FRACTION ONE THIRD 25E6;openbullet;WHITE BULLET 00AA;ordfeminine;FEMININE ORDINAL INDICATOR @@ -974,29 +751,15 @@ F731;oneoldstyle;OLDSTYLE DIGIT ONE 221F;orthogonal;RIGHT ANGLE 00F8;oslash;LATIN SMALL LETTER O WITH STROKE 01FF;oslashacute;LATIN SMALL LETTER O WITH STROKE AND ACUTE -F6F0;osuperior;SUPERSCRIPT LATIN SMALL LETTER O 00F5;otilde;LATIN SMALL LETTER O WITH TILDE 0070;p;LATIN SMALL LETTER P 00B6;paragraph;PILCROW SIGN 0028;parenleft;LEFT PARENTHESIS -F8ED;parenleftbt;LEFT PAREN BOTTOM -F8EC;parenleftex;LEFT PAREN EXTENDER -208D;parenleftinferior;SUBSCRIPT LEFT PARENTHESIS -207D;parenleftsuperior;SUPERSCRIPT LEFT PARENTHESIS -F8EB;parenlefttp;LEFT PAREN TOP 0029;parenright;RIGHT PARENTHESIS -F8F8;parenrightbt;RIGHT PAREN BOTTOM -F8F7;parenrightex;RIGHT PAREN EXTENDER -208E;parenrightinferior;SUBSCRIPT RIGHT PARENTHESIS -207E;parenrightsuperior;SUPERSCRIPT RIGHT PARENTHESIS -F8F6;parenrighttp;RIGHT PAREN TOP 2202;partialdiff;PARTIAL DIFFERENTIAL 0025;percent;PERCENT SIGN 002E;period;FULL STOP 00B7;periodcentered;MIDDLE DOT -2219;periodcentered;BULLET OPERATOR;Duplicate -F6E7;periodinferior;SUBSCRIPT FULL STOP -F6E8;periodsuperior;SUPERSCRIPT FULL STOP 22A5;perpendicular;UP TACK 2030;perthousand;PER MILLE SIGN 20A7;peseta;PESETA SIGN @@ -1014,8 +777,6 @@ F6E8;periodsuperior;SUPERSCRIPT FULL STOP 0071;q;LATIN SMALL LETTER Q 003F;question;QUESTION MARK 00BF;questiondown;INVERTED QUESTION MARK -F7BF;questiondownsmall;SMALL CAPITAL INVERTED QUESTION MARK -F73F;questionsmall;SMALL CAPITAL QUESTION MARK 0022;quotedbl;QUOTATION MARK 201E;quotedblbase;DOUBLE LOW-9 QUOTATION MARK 201C;quotedblleft;LEFT DOUBLE QUOTATION MARK @@ -1028,25 +789,19 @@ F73F;questionsmall;SMALL CAPITAL QUESTION MARK 0072;r;LATIN SMALL LETTER R 0155;racute;LATIN SMALL LETTER R WITH ACUTE 221A;radical;SQUARE ROOT -F8E5;radicalex;RADICAL EXTENDER 0159;rcaron;LATIN SMALL LETTER R WITH CARON 0157;rcommaaccent;LATIN SMALL LETTER R WITH CEDILLA 2286;reflexsubset;SUBSET OF OR EQUAL TO 2287;reflexsuperset;SUPERSET OF OR EQUAL TO 00AE;registered;REGISTERED SIGN -F8E8;registersans;REGISTERED SIGN SANS SERIF -F6DA;registerserif;REGISTERED SIGN SERIF 2310;revlogicalnot;REVERSED NOT SIGN 03C1;rho;GREEK SMALL LETTER RHO 02DA;ring;RING ABOVE -F6F1;rsuperior;SUPERSCRIPT LATIN SMALL LETTER R 2590;rtblock;RIGHT HALF BLOCK -F6DD;rupiah;RUPIAH SIGN 0073;s;LATIN SMALL LETTER S 015B;sacute;LATIN SMALL LETTER S WITH ACUTE 0161;scaron;LATIN SMALL LETTER S WITH CARON 015F;scedilla;LATIN SMALL LETTER S WITH CEDILLA -F6C2;scedilla;LATIN SMALL LETTER S WITH CEDILLA;Duplicate 015D;scircumflex;LATIN SMALL LETTER S WITH CIRCUMFLEX 0219;scommaaccent;LATIN SMALL LETTER S WITH COMMA BELOW 2033;second;DOUBLE PRIME @@ -1054,23 +809,15 @@ F6C2;scedilla;LATIN SMALL LETTER S WITH CEDILLA;Duplicate 003B;semicolon;SEMICOLON 0037;seven;DIGIT SEVEN 215E;seveneighths;VULGAR FRACTION SEVEN EIGHTHS -2087;seveninferior;SUBSCRIPT SEVEN -F737;sevenoldstyle;OLDSTYLE DIGIT SEVEN -2077;sevensuperior;SUPERSCRIPT SEVEN 2592;shade;MEDIUM SHADE 03C3;sigma;GREEK SMALL LETTER SIGMA 03C2;sigma1;GREEK SMALL LETTER FINAL SIGMA 223C;similar;TILDE OPERATOR 0036;six;DIGIT SIX -2086;sixinferior;SUBSCRIPT SIX -F736;sixoldstyle;OLDSTYLE DIGIT SIX -2076;sixsuperior;SUPERSCRIPT SIX 002F;slash;SOLIDUS 263A;smileface;WHITE SMILING FACE 0020;space;SPACE -00A0;space;NO-BREAK SPACE;Duplicate 2660;spade;BLACK SPADE SUIT -F6F2;ssuperior;SUPERSCRIPT LATIN SMALL LETTER S 00A3;sterling;POUND SIGN 220B;suchthat;CONTAINS AS MEMBER 2211;summation;N-ARY SUMMATION @@ -1080,34 +827,23 @@ F6F2;ssuperior;SUPERSCRIPT LATIN SMALL LETTER S 0167;tbar;LATIN SMALL LETTER T WITH STROKE 0165;tcaron;LATIN SMALL LETTER T WITH CARON 0163;tcommaaccent;LATIN SMALL LETTER T WITH CEDILLA -021B;tcommaaccent;LATIN SMALL LETTER T WITH COMMA BELOW;Duplicate 2234;therefore;THEREFORE 03B8;theta;GREEK SMALL LETTER THETA 03D1;theta1;GREEK THETA SYMBOL 00FE;thorn;LATIN SMALL LETTER THORN 0033;three;DIGIT THREE 215C;threeeighths;VULGAR FRACTION THREE EIGHTHS -2083;threeinferior;SUBSCRIPT THREE -F733;threeoldstyle;OLDSTYLE DIGIT THREE 00BE;threequarters;VULGAR FRACTION THREE QUARTERS -F6DE;threequartersemdash;THREE QUARTERS EM DASH -00B3;threesuperior;SUPERSCRIPT THREE 02DC;tilde;SMALL TILDE 0303;tildecomb;COMBINING TILDE 0384;tonos;GREEK TONOS 2122;trademark;TRADE MARK SIGN -F8EA;trademarksans;TRADE MARK SIGN SANS SERIF -F6DB;trademarkserif;TRADE MARK SIGN SERIF 25BC;triagdn;BLACK DOWN-POINTING TRIANGLE 25C4;triaglf;BLACK LEFT-POINTING POINTER 25BA;triagrt;BLACK RIGHT-POINTING POINTER 25B2;triagup;BLACK UP-POINTING TRIANGLE -F6F3;tsuperior;SUPERSCRIPT LATIN SMALL LETTER T 0032;two;DIGIT TWO 2025;twodotenleader;TWO DOT LEADER -2082;twoinferior;SUBSCRIPT TWO -F732;twooldstyle;OLDSTYLE DIGIT TWO -00B2;twosuperior;SUPERSCRIPT TWO 2154;twothirds;VULGAR FRACTION TWO THIRDS 0075;u;LATIN SMALL LETTER U 00FA;uacute;LATIN SMALL LETTER U WITH ACUTE @@ -1150,9 +886,26 @@ F732;twooldstyle;OLDSTYLE DIGIT TWO 017E;zcaron;LATIN SMALL LETTER Z WITH CARON 017C;zdotaccent;LATIN SMALL LETTER Z WITH DOT ABOVE 0030;zero;DIGIT ZERO -2080;zeroinferior;SUBSCRIPT ZERO -F730;zerooldstyle;OLDSTYLE DIGIT ZERO -2070;zerosuperior;SUPERSCRIPT ZERO +03B6;zeta;GREEK SMALL LETTER ZETA +0077;w;LATIN SMALL LETTER W +1E83;wacute;LATIN SMALL LETTER W WITH ACUTE +0175;wcircumflex;LATIN SMALL LETTER W WITH CIRCUMFLEX +1E85;wdieresis;LATIN SMALL LETTER W WITH DIAERESIS +2118;weierstrass;SCRIPT CAPITAL P +1E81;wgrave;LATIN SMALL LETTER W WITH GRAVE +0078;x;LATIN SMALL LETTER X +03BE;xi;GREEK SMALL LETTER XI +0079;y;LATIN SMALL LETTER Y +00FD;yacute;LATIN SMALL LETTER Y WITH ACUTE +0177;ycircumflex;LATIN SMALL LETTER Y WITH CIRCUMFLEX +00FF;ydieresis;LATIN SMALL LETTER Y WITH DIAERESIS +00A5;yen;YEN SIGN +1EF3;ygrave;LATIN SMALL LETTER Y WITH GRAVE +007A;z;LATIN SMALL LETTER Z +017A;zacute;LATIN SMALL LETTER Z WITH ACUTE +017E;zcaron;LATIN SMALL LETTER Z WITH CARON +017C;zdotaccent;LATIN SMALL LETTER Z WITH DOT ABOVE +0030;zero;DIGIT ZERO 03B6;zeta;GREEK SMALL LETTER ZETA """ @@ -1164,9 +917,8 @@ UV2AGL = {} def _builddicts(): import re - import string - lines = string.split(_aglText, "\n") + lines = _aglText.splitlines() parseAGL_RE = re.compile("([0-9A-F]{4});([A-Za-z_0-9.]+);.*?$") @@ -1180,14 +932,13 @@ def _builddicts(): raise AGLError, "syntax error in glyphlist.txt: %s" % repr(line[:20]) unicode = m.group(1) assert len(unicode) == 4 - unicode = string.atoi(unicode, 16) + unicode = int(unicode, 16) glyphName = m.group(2) if AGL2UV.has_key(glyphName): - assert type(AGL2UV[glyphName]) == type(0) - AGL2UV[glyphName] = AGL2UV[glyphName], unicode + # the above table contains identical duplicates + assert AGL2UV[glyphName] == unicode else: AGL2UV[glyphName] = unicode UV2AGL[unicode] = glyphName _builddicts() -