font-agl.lua /size: 26 Kb    last modification: 2020-07-01 14:35
1if not modules then modules = { } end modules ['font-agl'] = {
2    version   = 1.001,
3    comment   = "companion to font-ini.mkiv",
4    author    = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
5    copyright = "derived from http://www.adobe.com/devnet/opentype/archives/glyphlist.txt",
6    original  = "Adobe Glyph List, version 2.0, September 20, 2002",
7}
8
9local next = next
10
11local allocate      = utilities.storage.allocate
12local mark          = utilities.storage.mark
13
14fonts               = fonts or { }
15local encodings     = fonts.encodings or { }
16fonts.encodings     = encodings
17local agl           = fonts.encodings.agl or { }
18fonts.encodings.agl = agl
19
20table.setmetatableindex(agl,nil) -- prevent recursive lookups otherwise when autoloaded
21
22local synonyms = allocate {
23    Acyrillic                      = 0x0410,
24    Becyrillic                     = 0x0411,
25    Cdot                           = 0x010A,
26    Checyrillic                    = 0x0427,
27    Decyrillic                     = 0x0414,
28    Djecyrillic                    = 0x0402,
29    Dzecyrillic                    = 0x0405,
30    Dzhecyrillic                   = 0x040F,
31    Ecyrillic                      = 0x0404,
32    Edot                           = 0x0116,
33    Efcyrillic                     = 0x0424,
34    Elcyrillic                     = 0x041B,
35    Emcyrillic                     = 0x041C,
36    Encyrillic                     = 0x041D,
37    Ercyrillic                     = 0x0420,
38    Ereversedcyrillic              = 0x042D,
39    Escyrillic                     = 0x0421,
40    Fitacyrillic                   = 0x0472,
41    Gcedilla                       = 0x0122,
42    Gdot                           = 0x0120,
43    Gecyrillic                     = 0x0413,
44    Gheupturncyrillic              = 0x0490,
45    Gjecyrillic                    = 0x0403,
46    Hardsigncyrillic               = 0x042A,
47    IAcyrillic                     = 0x042F,
48    IUcyrillic                     = 0x042E,
49    Icyrillic                      = 0x0406,
50    Idot                           = 0x0130,
51    Iecyrillic                     = 0x0415,
52    Iicyrillic                     = 0x0418,
53    Iishortcyrillic                = 0x0419,
54    Iocyrillic                     = 0x0401,
55    Izhitsacyrillic                = 0x0474,
56    Jecyrillic                     = 0x0408,
57    Kacyrillic                     = 0x041A,
58    Kcedilla                       = 0x0136,
59    Khacyrillic                    = 0x0425,
60    Kjecyrillic                    = 0x040C,
61    Lcedilla                       = 0x013B,
62    Ljecyrillic                    = 0x0409,
63    Ncedilla                       = 0x0145,
64    Njecyrillic                    = 0x040A,
65    Ocyrillic                      = 0x041E,
66    Odblacute                      = 0x0150,
67    Ohm                            = 0x2126,
68    Pecyrillic                     = 0x041F,
69    Rcedilla                       = 0x0156,
70    Shacyrillic                    = 0x0428,
71    Shchacyrillic                  = 0x0429,
72    Softsigncyrillic               = 0x042C,
73    Tcedilla                       = 0x0162,
74    Tecyrillic                     = 0x0422,
75    Tsecyrillic                    = 0x0426,
76    Tshecyrillic                   = 0x040B,
77    Ucyrillic                      = 0x0423,
78    Udblacute                      = 0x0170,
79    Ushortcyrillic                 = 0x040E,
80    Vecyrillic                     = 0x0412,
81    Yatcyrillic                    = 0x0462,
82    Yericyrillic                   = 0x042B,
83    Yicyrillic                     = 0x0407,
84    Zdot                           = 0x017B,
85    Zecyrillic                     = 0x0417,
86    Zhecyrillic                    = 0x0416,
87    acutecmb                       = 0x0301,
88    acyrillic                      = 0x0430,
89    afii00208                      = 0x2015,
90    afii08941                      = 0x20A4,
91    afii57694                      = 0xFB2A,
92    afii57695                      = 0xFB2B,
93    afii57700                      = 0xFB4B,
94    afii57705                      = 0xFB1F,
95    afii57723                      = 0xFB35,
96    alef                           = 0x05D0,
97    alefmaksurainitialarabic       = 0xFEF3,
98    alefmaksuramedialarabic        = 0xFEF4,
99    approximatelyequal             = 0x2245,
100    asteriskaltonearabic           = 0x066D,
101    ayin                           = 0x05E2,
102    bet                            = 0x05D1,
103    betdagesh                      = 0xFB31,
104    blackdownpointingtriangle      = 0x25BC,
105    blackleftpointingpointer       = 0x25C4,
106    blackrectangle                 = 0x25AC,
107    blackrightpointingpointer      = 0x25BA,
108    blacksmilingface               = 0x263B,
109    blacksquare                    = 0x25A0,
110    blackuppointingtriangle        = 0x25B2,
111    bulletinverse                  = 0x25D8,
112    cdot                           = 0x010B,
113    compass                        = 0x263C,
114    dagesh                         = 0x05BC,
115    dalet                          = 0x05D3,
116    daletdagesh                    = 0xFB33,
117    dalethatafpatah                = 0x05D3,
118    dalethatafpatahhebrew          = 0x05D3,
119    dalethatafsegol                = 0x05D3,
120    dalethatafsegolhebrew          = 0x05D3,
121    dalethebrew                    = 0x05D3,
122    dalethiriq                     = 0x05D3,
123    dalethiriqhebrew               = 0x05D3,
124    daletholam                     = 0x05D3,
125    daletholamhebrew               = 0x05D3,
126    daletpatah                     = 0x05D3,
127    daletpatahhebrew               = 0x05D3,
128    daletqamats                    = 0x05D3,
129    daletqamatshebrew              = 0x05D3,
130    daletqubuts                    = 0x05D3,
131    daletqubutshebrew              = 0x05D3,
132    daletsegol                     = 0x05D3,
133    daletsegolhebrew               = 0x05D3,
134    daletsheva                     = 0x05D3,
135    daletshevahebrew               = 0x05D3,
136    dalettsere                     = 0x05D3,
137    dammaarabic                    = 0x064F,
138    dammatanaltonearabic           = 0x064C,
139    dargahebrew                    = 0x05A7,
140    dbllowline                     = 0x2017,
141    decimalseparatorarabic         = 0x066B,
142    dialytikatonos                 = 0x0385,
143    dotbelowcmb                    = 0x0323,
144    doubleyodpatah                 = 0xFB1F,
145    doubleyodpatahhebrew           = 0xFB1F,
146    edot                           = 0x0117,
147    eightarabic                    = 0x0668,
148    eighthnotebeamed               = 0x266B,
149    etnahtafoukhhebrew             = 0x0591,
150    etnahtafoukhlefthebrew         = 0x0591,
151    etnahtahebrew                  = 0x0591,
152    fathaarabic                    = 0x064E,
153    finalkaf                       = 0x05DA,
154    finalkafdagesh                 = 0xFB3A,
155    finalkafhebrew                 = 0x05DA,
156    finalkafqamats                 = 0x05DA,
157    finalkafqamatshebrew           = 0x05DA,
158    finalkafsheva                  = 0x05DA,
159    finalmem                       = 0x05DD,
160    finalnun                       = 0x05DF,
161    finalpe                        = 0x05E3,
162    finaltsadi                     = 0x05E5,
163    fivearabic                     = 0x0665,
164    forall                         = 0x2200,
165    fourarabic                     = 0x0664,
166    gcedilla                       = 0x0123,
167    gdot                           = 0x0121,
168    gimel                          = 0x05D2,
169    gimeldagesh                    = 0xFB32,
170    gravecmb                       = 0x0300,
171    haaltonearabic                 = 0x06C1,
172    hamzaarabic                    = 0x0621,
173    hamzadammaarabic               = 0x0621,
174    hamzadammatanarabic            = 0x0621,
175    hamzafathaarabic               = 0x0621,
176    hamzafathatanarabic            = 0x0621,
177    hamzalowarabic                 = 0x0621,
178    hamzalowkasraarabic            = 0x0621,
179    hamzalowkasratanarabic         = 0x0621,
180    hatafpatah                     = 0x05B2,
181    hatafpatah16                   = 0x05B2,
182    hatafpatah23                   = 0x05B2,
183    hatafpatah2f                   = 0x05B2,
184    hatafpatahhebrew               = 0x05B2,
185    hatafpatahnarrowhebrew         = 0x05B2,
186    hatafpatahquarterhebrew        = 0x05B2,
187    hatafqamats                    = 0x05B3,
188    hatafqamats1b                  = 0x05B3,
189    hatafqamats28                  = 0x05B3,
190    hatafqamats34                  = 0x05B3,
191    hatafqamatshebrew              = 0x05B3,
192    hatafqamatsnarrowhebrew        = 0x05B3,
193    hatafqamatsquarterhebrew       = 0x05B3,
194    hatafsegol                     = 0x05B1,
195    hatafsegol17                   = 0x05B1,
196    hatafsegol24                   = 0x05B1,
197    hatafsegol30                   = 0x05B1,
198    hatafsegolhebrew               = 0x05B1,
199    hatafsegolnarrowhebrew         = 0x05B1,
200    hatafsegolquarterhebrew        = 0x05B1,
201    he                             = 0x05D4,
202    hedagesh                       = 0xFB34,
203    hehfinalalttwoarabic           = 0xFEEA,
204    het                            = 0x05D7,
205    hiriq                          = 0x05B4,
206    hiriq14                        = 0x05B4,
207    hiriq21                        = 0x05B4,
208    hiriq2d                        = 0x05B4,
209    hiriqhebrew                    = 0x05B4,
210    hiriqnarrowhebrew              = 0x05B4,
211    hiriqquarterhebrew             = 0x05B4,
212    holam                          = 0x05B9,
213    holam19                        = 0x05B9,
214    holam26                        = 0x05B9,
215    holam32                        = 0x05B9,
216    holamhebrew                    = 0x05B9,
217    holamnarrowhebrew              = 0x05B9,
218    holamquarterhebrew             = 0x05B9,
219    ilde                           = 0x02DC,
220    integralbottom                 = 0x2321,
221    integraltop                    = 0x2320,
222    kaf                            = 0x05DB,
223    kafdagesh                      = 0xFB3B,
224    kashidaautoarabic              = 0x0640,
225    kashidaautonosidebearingarabic = 0x0640,
226    kcedilla                       = 0x0137,
227    lamed                          = 0x05DC,
228    lameddagesh                    = 0xFB3C,
229    lamedhebrew                    = 0x05DC,
230    lamedholam                     = 0x05DC,
231    lamedholamdagesh               = 0x05DC,
232    lamedholamdageshhebrew         = 0x05DC,
233    laminitialarabic               = 0xFEDF,
234    lammeemjeeminitialarabic       = 0xFEDF,
235    lcedilla                       = 0x013C,
236    logicalnotreversed             = 0x2310,
237    mahapakhhebrew                 = 0x05A4,
238    mem                            = 0x05DE,
239    memdagesh                      = 0xFB3E,
240    merkhahebrew                   = 0x05A5,
241    merkhakefulahebrew             = 0x05A6,
242    middot                         = 0x00B7,
243    munahhebrew                    = 0x05A3,
244    nbspace                        = 0x00A0,
245    ncedilla                       = 0x0146,
246    newsheqelsign                  = 0x20AA,
247    ninearabic                     = 0x0669,
248    noonhehinitialarabic           = 0xFEE7,
249    nun                            = 0x05E0,
250    nundagesh                      = 0xFB40,
251    odblacute                      = 0x0151,
252    onearabic                      = 0x0661,
253    overscore                      = 0x00AF,
254    patah                          = 0x05B7,
255    patah11                        = 0x05B7,
256    patah1d                        = 0x05B7,
257    patah2a                        = 0x05B7,
258    patahhebrew                    = 0x05B7,
259    patahnarrowhebrew              = 0x05B7,
260    patahquarterhebrew             = 0x05B7,
261    pe                             = 0x05E4,
262    pedagesh                       = 0xFB44,
263    qamats                         = 0x05B8,
264    qamats10                       = 0x05B8,
265    qamats1a                       = 0x05B8,
266    qamats1c                       = 0x05B8,
267    qamats27                       = 0x05B8,
268    qamats29                       = 0x05B8,
269    qamats33                       = 0x05B8,
270    qamatsde                       = 0x05B8,
271    qamatshebrew                   = 0x05B8,
272    qamatsnarrowhebrew             = 0x05B8,
273    qamatsqatanhebrew              = 0x05B8,
274    qamatsqatannarrowhebrew        = 0x05B8,
275    qamatsqatanquarterhebrew       = 0x05B8,
276    qamatsqatanwidehebrew          = 0x05B8,
277    qamatsquarterhebrew            = 0x05B8,
278    qof                            = 0x05E7,
279    qofdagesh                      = 0xFB47,
280    qofhatafpatah                  = 0x05E7,
281    qofhatafpatahhebrew            = 0x05E7,
282    qofhatafsegol                  = 0x05E7,
283    qofhatafsegolhebrew            = 0x05E7,
284    qofhebrew                      = 0x05E7,
285    qofhiriq                       = 0x05E7,
286    qofhiriqhebrew                 = 0x05E7,
287    qofholam                       = 0x05E7,
288    qofholamhebrew                 = 0x05E7,
289    qofpatah                       = 0x05E7,
290    qofpatahhebrew                 = 0x05E7,
291    qofqamats                      = 0x05E7,
292    qofqamatshebrew                = 0x05E7,
293    qofqubuts                      = 0x05E7,
294    qofqubutshebrew                = 0x05E7,
295    qofsegol                       = 0x05E7,
296    qofsegolhebrew                 = 0x05E7,
297    qofsheva                       = 0x05E7,
298    qofshevahebrew                 = 0x05E7,
299    qoftsere                       = 0x05E7,
300    qubuts                         = 0x05BB,
301    qubuts18                       = 0x05BB,
302    qubuts25                       = 0x05BB,
303    qubuts31                       = 0x05BB,
304    qubutshebrew                   = 0x05BB,
305    qubutsnarrowhebrew             = 0x05BB,
306    qubutsquarterhebrew            = 0x05BB,
307    quoteleftreversed              = 0x201B,
308    rafe                           = 0x05BF,
309    rcedilla                       = 0x0157,
310    reharabic                      = 0x0631,
311    resh                           = 0x05E8,
312    reshhatafpatah                 = 0x05E8,
313    reshhatafpatahhebrew           = 0x05E8,
314    reshhatafsegol                 = 0x05E8,
315    reshhatafsegolhebrew           = 0x05E8,
316    reshhebrew                     = 0x05E8,
317    reshhiriq                      = 0x05E8,
318    reshhiriqhebrew                = 0x05E8,
319    reshholam                      = 0x05E8,
320    reshholamhebrew                = 0x05E8,
321    reshpatah                      = 0x05E8,
322    reshpatahhebrew                = 0x05E8,
323    reshqamats                     = 0x05E8,
324    reshqamatshebrew               = 0x05E8,
325    reshqubuts                     = 0x05E8,
326    reshqubutshebrew               = 0x05E8,
327    reshsegol                      = 0x05E8,
328    reshsegolhebrew                = 0x05E8,
329    reshsheva                      = 0x05E8,
330    reshshevahebrew                = 0x05E8,
331    reshtsere                      = 0x05E8,
332    reviahebrew                    = 0x0597,
333    samekh                         = 0x05E1,
334    samekhdagesh                   = 0xFB41,
335    segol                          = 0x05B6,
336    segol13                        = 0x05B6,
337    segol1f                        = 0x05B6,
338    segol2c                        = 0x05B6,
339    segolhebrew                    = 0x05B6,
340    segolnarrowhebrew              = 0x05B6,
341    segolquarterhebrew             = 0x05B6,
342    sevenarabic                    = 0x0667,
343    sfthyphen                      = 0x00AD,
344    shaddaarabic                   = 0x0651,
345    sheqel                         = 0x20AA,
346    sheva                          = 0x05B0,
347    sheva115                       = 0x05B0,
348    sheva15                        = 0x05B0,
349    sheva22                        = 0x05B0,
350    sheva2e                        = 0x05B0,
351    shevahebrew                    = 0x05B0,
352    shevanarrowhebrew              = 0x05B0,
353    shevaquarterhebrew             = 0x05B0,
354    shin                           = 0x05E9,
355    shindagesh                     = 0xFB49,
356    shindageshshindot              = 0xFB2C,
357    shindageshsindot               = 0xFB2D,
358    shinshindot                    = 0xFB2A,
359    shinsindot                     = 0xFB2B,
360    siluqhebrew                    = 0x05BD,
361    sixarabic                      = 0x0666,
362    tav                            = 0x05EA,
363    tavdages                       = 0xFB4A,
364    tavdagesh                      = 0xFB4A,
365    tcedilla                       = 0x0163,
366    tchehinitialarabic             = 0xFB7C,
367    tet                            = 0x05D8,
368    tetdagesh                      = 0xFB38,
369    tevirhebrew                    = 0x059B,
370    thousandsseparatorarabic       = 0x066C,
371    threearabic                    = 0x0663,
372    tildecmb                       = 0x0303,
373    tipehahebrew                   = 0x0596,
374    tsadi                          = 0x05E6,
375    tsadidagesh                    = 0xFB46,
376    tsere                          = 0x05B5,
377    tsere12                        = 0x05B5,
378    tsere1e                        = 0x05B5,
379    tsere2b                        = 0x05B5,
380    tserehebrew                    = 0x05B5,
381    tserenarrowhebrew              = 0x05B5,
382    tserequarterhebrew             = 0x05B5,
383    twoarabic                      = 0x0662,
384    udblacute                      = 0x0171,
385    vav                            = 0x05D5,
386    vavdagesh                      = 0xFB35,
387    vavdagesh65                    = 0xFB35,
388    vavholam                       = 0xFB4B,
389    yerahbenyomohebrew             = 0x05AA,
390    yod                            = 0x05D9,
391    yoddagesh                      = 0xFB39,
392    zayin                          = 0x05D6,
393    zayindagesh                    = 0xFB36,
394    zdot                           = 0x017C,
395    zeroarabic                     = 0x0660,
396}
397
398local extras = allocate { -- private extensions
399    Dcroat          = 0x0110,
400    Delta           = 0x2206,
401    Euro            = 0x20AC,
402    H18533          = 0x25CF,
403    H18543          = 0x25AA,
404    H18551          = 0x25AB,
405    H22073          = 0x25A1,
406    Ldot            = 0x013F,
407    Oslashacute     = 0x01FE,
408    SF10000         = 0x250C,
409    SF20000         = 0x2514,
410    SF30000         = 0x2510,
411    SF40000         = 0x2518,
412    SF50000         = 0x253C,
413    SF60000         = 0x252C,
414    SF70000         = 0x2534,
415    SF80000         = 0x251C,
416    SF90000         = 0x2524,
417    Upsilon1        = 0x03D2,
418    afii10066       = 0x0431,
419    afii10067       = 0x0432,
420    afii10068       = 0x0433,
421    afii10069       = 0x0434,
422    afii10070       = 0x0435,
423    afii10071       = 0x0451,
424    afii10072       = 0x0436,
425    afii10073       = 0x0437,
426    afii10074       = 0x0438,
427    afii10075       = 0x0439,
428    afii10076       = 0x043A,
429    afii10077       = 0x043B,
430    afii10078       = 0x043C,
431    afii10079       = 0x043D,
432    afii10080       = 0x043E,
433    afii10081       = 0x043F,
434    afii10082       = 0x0440,
435    afii10083       = 0x0441,
436    afii10084       = 0x0442,
437    afii10085       = 0x0443,
438    afii10086       = 0x0444,
439    afii10087       = 0x0445,
440    afii10088       = 0x0446,
441    afii10089       = 0x0447,
442    afii10090       = 0x0448,
443    afii10091       = 0x0449,
444    afii10092       = 0x044A,
445    afii10093       = 0x044B,
446    afii10094       = 0x044C,
447    afii10095       = 0x044D,
448    afii10096       = 0x044E,
449    afii10097       = 0x044F,
450    afii10098       = 0x0491,
451    afii10099       = 0x0452,
452    afii10100       = 0x0453,
453    afii10101       = 0x0454,
454    afii10102       = 0x0455,
455    afii10103       = 0x0456,
456    afii10104       = 0x0457,
457    afii10105       = 0x0458,
458    afii10106       = 0x0459,
459    afii10107       = 0x045A,
460    afii10108       = 0x045B,
461    afii10109       = 0x045C,
462    afii10110       = 0x045E,
463    afii10193       = 0x045F,
464    afii10194       = 0x0463,
465    afii10195       = 0x0473,
466    afii10196       = 0x0475,
467    afii10846       = 0x04D9,
468    afii208         = 0x2015,
469    afii57381       = 0x066A,
470    afii57388       = 0x060C,
471    afii57392       = 0x0660,
472    afii57393       = 0x0661,
473    afii57394       = 0x0662,
474    afii57395       = 0x0663,
475    afii57396       = 0x0664,
476    afii57397       = 0x0665,
477    afii57398       = 0x0666,
478    afii57399       = 0x0667,
479    afii57400       = 0x0668,
480    afii57401       = 0x0669,
481    afii57403       = 0x061B,
482    afii57407       = 0x061F,
483    afii57409       = 0x0621,
484    afii57410       = 0x0622,
485    afii57411       = 0x0623,
486    afii57412       = 0x0624,
487    afii57413       = 0x0625,
488    afii57414       = 0x0626,
489    afii57415       = 0x0627,
490    afii57416       = 0x0628,
491    afii57417       = 0x0629,
492    afii57418       = 0x062A,
493    afii57419       = 0x062B,
494    afii57420       = 0x062C,
495    afii57421       = 0x062D,
496    afii57422       = 0x062E,
497    afii57423       = 0x062F,
498    afii57424       = 0x0630,
499    afii57425       = 0x0631,
500    afii57426       = 0x0632,
501    afii57427       = 0x0633,
502    afii57428       = 0x0634,
503    afii57429       = 0x0635,
504    afii57430       = 0x0636,
505    afii57431       = 0x0637,
506    afii57432       = 0x0638,
507    afii57433       = 0x0639,
508    afii57434       = 0x063A,
509    afii57440       = 0x0640,
510    afii57441       = 0x0641,
511    afii57442       = 0x0642,
512    afii57443       = 0x0643,
513    afii57444       = 0x0644,
514    afii57445       = 0x0645,
515    afii57446       = 0x0646,
516    afii57448       = 0x0648,
517    afii57449       = 0x0649,
518    afii57450       = 0x064A,
519    afii57451       = 0x064B,
520    afii57452       = 0x064C,
521    afii57453       = 0x064D,
522    afii57454       = 0x064E,
523    afii57455       = 0x064F,
524    afii57456       = 0x0650,
525    afii57457       = 0x0651,
526    afii57458       = 0x0652,
527    afii57470       = 0x0647,
528    afii57505       = 0x06A4,
529    afii57506       = 0x067E,
530    afii57507       = 0x0686,
531    afii57508       = 0x0698,
532    afii57509       = 0x06AF,
533    afii57511       = 0x0679,
534    afii57512       = 0x0688,
535    afii57513       = 0x0691,
536    afii57514       = 0x06BA,
537    afii57519       = 0x06D2,
538    afii57636       = 0x20AA,
539    afii57645       = 0x05BE,
540    afii57658       = 0x05C3,
541    afii57664       = 0x05D0,
542    afii57665       = 0x05D1,
543    afii57666       = 0x05D2,
544    afii57667       = 0x05D3,
545    afii57668       = 0x05D4,
546    afii57669       = 0x05D5,
547    afii57670       = 0x05D6,
548    afii57671       = 0x05D7,
549    afii57672       = 0x05D8,
550    afii57673       = 0x05D9,
551    afii57674       = 0x05DA,
552    afii57675       = 0x05DB,
553    afii57676       = 0x05DC,
554    afii57677       = 0x05DD,
555    afii57678       = 0x05DE,
556    afii57679       = 0x05DF,
557    afii57680       = 0x05E0,
558    afii57681       = 0x05E1,
559    afii57682       = 0x05E2,
560    afii57683       = 0x05E3,
561    afii57684       = 0x05E4,
562    afii57685       = 0x05E5,
563    afii57686       = 0x05E6,
564    afii57687       = 0x05E7,
565    afii57688       = 0x05E8,
566    afii57689       = 0x05E9,
567    afii57690       = 0x05EA,
568    afii57716       = 0x05F0,
569    afii57717       = 0x05F1,
570    afii57718       = 0x05F2,
571    afii57793       = 0x05B4,
572    afii57794       = 0x05B5,
573    afii57795       = 0x05B6,
574    afii57796       = 0x05BB,
575    afii57797       = 0x05B8,
576    afii57798       = 0x05B7,
577    afii57799       = 0x05B0,
578    afii57800       = 0x05B2,
579    afii57801       = 0x05B1,
580    afii57802       = 0x05B3,
581    afii57803       = 0x05C2,
582    afii57804       = 0x05C1,
583    afii57806       = 0x05B9,
584    afii57807       = 0x05BC,
585    afii57839       = 0x05BD,
586    afii57841       = 0x05BF,
587    afii57842       = 0x05C0,
588    afii57929       = 0x02BC,
589    afii61248       = 0x2105,
590    afii61289       = 0x2113,
591    afii61352       = 0x2116,
592    afii61664       = 0x200C,
593    afii63167       = 0x066D,
594    afii64937       = 0x02BD,
595    arrowdblboth    = 0x21D4,
596    arrowdblleft    = 0x21D0,
597    arrowdblright   = 0x21D2,
598    arrowupdnbse    = 0x21A8,
599    bar             = 0x007C,
600    circle          = 0x25CB,
601    circlemultiply  = 0x2297,
602    circleplus      = 0x2295,
603    club            = 0x2663,
604    colonmonetary   = 0x20A1,
605    dcroat          = 0x0111,
606    dkshade         = 0x2593,
607    existential     = 0x2203,
608    female          = 0x2640,
609    gradient        = 0x2207,
610    heart           = 0x2665,
611    hookabovecomb   = 0x0309,
612    invcircle       = 0x25D9,
613    ldot            = 0x0140,
614    longs           = 0x017F,
615    ltshade         = 0x2591,
616    male            = 0x2642,
617    mu              = 0x00B5,
618    napostrophe     = 0x0149,
619    notelement      = 0x2209,
620    omega1          = 0x03D6,
621    openbullet      = 0x25E6,
622    orthogonal      = 0x221F,
623    oslashacute     = 0x01FF,
624    phi1            = 0x03D5,
625    propersubset    = 0x2282,
626    propersuperset  = 0x2283,
627    reflexsubset    = 0x2286,
628    reflexsuperset  = 0x2287,
629    shade           = 0x2592,
630    sigma1          = 0x03C2,
631    similar         = 0x223C,
632    smileface       = 0x263A,
633    spacehackarabic = 0x0020,
634    spade           = 0x2660,
635    theta1          = 0x03D1,
636    twodotenleader  = 0x2025,
637
638    zerooldstyle    = 0x0030,
639    oneoldstyle     = 0x0031,
640    twooldstyle     = 0x0032,
641    threeoldstyle   = 0x0033,
642    fouroldstyle    = 0x0034,
643    fiveoldstyle    = 0x0035,
644    sixoldstyle     = 0x0036,
645    sevenoldstyle   = 0x0037,
646    eightoldstyle   = 0x0038,
647    nineoldstyle    = 0x0039,
648
649    dotlessj        = 0x0237,
650}
651
652-- We load this table only when needed. We could use a loading mechanism
653-- return the table but there are no more vectors like this so why bother.
654--
655-- Well, we currently have this table preloaded anyway.
656
657local names    = agl.names
658local unicodes = agl.unicodes
659local ctxcodes = agl.ctxcodes
660
661if names then
662
663    mark(names)
664    mark(unicodes)
665    mark(ctxcodes)
666
667elseif characters then
668
669    names    = allocate { } -- filled from char-def.lua
670    unicodes = allocate { }
671    ctxcodes = allocate { }
672
673    for u, c in next, characters.data do
674        local a = c.adobename
675        if a then
676            unicodes[a] = u
677            names   [u] = a
678        end
679        local n = c.contextname
680        if n then
681            ctxcodes[n] = u
682         -- names   [u] = a
683        end
684    end
685
686    for a, u in next, extras do
687        unicodes[a] = u
688        if not names[u] then
689            names[u] = a
690        end
691    end
692
693    for s, u in next, synonyms do
694        unicodes[s] = u
695        if not names[u] then
696            names[u] = s
697        end
698    end
699
700    if storage then
701        storage.register("encodings/names",    names,    "fonts.encodings.agl.names")
702        storage.register("encodings/unicodes", unicodes, "fonts.encodings.agl.unicodes")
703        storage.register("encodings/ctxcodes", ctxcodes, "fonts.encodings.agl.ctxcodes")
704    end
705
706end
707
708agl.names    = names     -- unicode -> name
709agl.unicodes = unicodes  -- name -> unicode
710agl.ctxcodes = ctxcodes  -- name -> unicode
711agl.synonyms = synonyms  -- merged into the other two
712agl.extras   = extras    -- merged into the other two
713
714return agl
715