1% @@psencodingfile@{ 2% date = "6jul08", 3% filename = "ec.enc", 4% email = "tex-fonts@@tug.org", 5% docstring = "This is the EC (aka Cork aka T1) encoding vector 6% for 8-bit fonts to be used with TeX." 7% @} 8% 9% Names of the glyphs try to comply with: 10% Adobe Glyph List For New Fonts, ver. 1.6, 30 Januaury 2006 11% http://partners.adobe.com/public/developer/en/opentype/aglfn13.txt 12% but some exceptions are listed below. 13% 14% The following characters are not present in Unicode: 15% - /perthousandzero = used to compose /perthousand, /pertenthousand, ... out of /percent + this character 16% - Germandbls = now there is a related character in Unicode, 17% U+1E9E - LATIN CAPITAL LETTER SHARP S 18% but probably /S_S ligature name should be used instead 19% 20% The following two characters have different Unicode mappings than on the AGL: 21% - /tcedilla = U+0163 - LATIN SMALL LETTER T WITH CEDILLA 22% according to AGL it should be /tcommaaccent 23% - /Tcedilla = U+0162 - LATIN CAPITAL LETTER T WITH CEDILLA 24% according to AGL it should be /Tcommaaccent 25% But having /scedilla and /tcommaaccent mixed is even more ugly. 26% 27% The following characters are not present on the AGL: 28% - /dotlessj = U+0237 - LATIN SMALL LETTER DOTLESS J 29% - /cwm = U+200B - ZERO WIDTH SPACE 30% - /visiblespace = U+2423 - OPEN BOX 31% 32% The following ligatures are deprecated by recent AGL: 33% - /ff, /fi, /fl, /ffi, /ffl = /f_i and similar should have been used instead 34% 35% Special characters: 36% - /hyphen.alt = hanging hyphen char (half-width) 37% used when no micro-typographic extensions were available yet 38% 39% Other remarks: 40% - /Eth = U+00D0 - LATIN CAPITAL LETTER ETH 41% must also be used as /Dcroat 42% U+0110 - LATIN CAPITAL LETTER D WITH STROKE 43% 44% Misleading names and shapes of letters (that lead to different names in past) 45% - /lcaron = U+013E - LATIN SMALL LETTER L WITH CARON 46% /lquoteright 47% - /Lcaron = U+013D - LATIN CAPITAL LETTER L WITH CARON 48% /Lquoteright 49% - /dcaron = U+010F - LATIN SMALL LETTER D WITH CARON 50% /dquoteright 51% - /tcaron = U+0165 - LATIN SMALL LETTER T WITH CARON 52% /tquoteright 53% - /dcroat = U+0111 - LATIN SMALL LETTER D WITH STROKE 54% /dbar, /dmacron 55% 56% - /cwm - /bom, /zerowidthnobreakspace 57% - /underscore - /underline 58% - /hyphen.alt - /sfthyphen, /hyphen, /dash 59% 60% 61% Turkish & Romanian 62% -------------------- 63% EC encoding has been defined to include /tcedilla and /scedilla. 64% For Turkish one needs /scedilla, while for Romanian one would need 65% "t with comma below" (/tcommaaccent) and "s with comma below" (/scommaaccent). 66% "t with cedilla" in not used in any language except in inferior 67% Romanian typography that can use cedillas instead of commas below. 68% AGL has a strange mapping as well. 69% 70% Without adding an additional character, it is impossible to support both 71% languages at the same time, so EC is not really best choice for Romanians, 72% even though it can be "misused" if one replaces both /scedilla and /tcedilla 73% with /scommaaccent and /tcommaaccent. 74% 75% Characters that have been renamed in July 2008: 76% 0x18 /zeroinferior -> /perthousandzero 77% 0x20 U+2423 /visualspace -> /visiblespace (if font doesn't have it, use /space) 78% 0x7F U+002D /hyphen -> /hyphen.alt U+??? 79% 0x8D U+014A /Ng -> /Eng 80% 0x9E U+0111 /dbar -> /dcroat 81% 0xAD U+014B /ng -> /eng 82% 0xB4 U+0165 /tquoteright -> /tcaron 83% 84% Although these ligatures and kerns are somewhat questionable to have 85% in an encoding file, they've been here forever, and they are 86% traditional in the TeX world, so we preserve them. 87% 88% LIGKERN space l =: lslash ; space L =: Lslash ; 89% LIGKERN question quoteleft =: questiondown ; exclam quoteleft =: exclamdown ; 90% LIGKERN hyphen hyphen =: endash ; endash hyphen =: emdash ; 91% LIGKERN quoteleft quoteleft =: quotedblleft ; 92% LIGKERN quoteright quoteright =: quotedblright ; 93% 94% We blow away kerns to and from spaces (TeX doesn't have a 95% space) and also remove any kerns from the numbers (although 96% the only kern pair that mentions a number in Times-Roman.afm 97% is one one.) 98% 99% LIGKERN space {} * ; * {} space ; zero {} * ; * {} zero ; 100% LIGKERN one {} * ; * {} one ; two {} * ; * {} two ; 101% LIGKERN three {} * ; * {} three ; four {} * ; * {} four ; 102% LIGKERN five {} * ; * {} five ; six {} * ; * {} six ; 103% LIGKERN seven {} * ; * {} seven ; eight {} * ; * {} eight ; 104% LIGKERN nine {} * ; * {} nine ; 105% LIGKERN comma comma =: quotedblbase ; less less =: guillemotleft ; 106% LIGKERN greater greater =: guillemotright ; 107% 108/ECEncoding [ % now 256 chars follow 109/grave % 0x00 U+0060 110/acute % 0x01 U+00B4 111/circumflex % 0x02 U+02C6 112/tilde % 0x03 U+02DC 113/dieresis % 0x04 U+00A8 114/hungarumlaut % 0x05 U+02DD 115/ring % 0x06 U+02DA 116/caron % 0x07 U+02C7 117/breve % 0x08 U+02D8 118/macron % 0x09 U+00AF 119/dotaccent % 0x0A U+02D9 120/cedilla % 0x0B U+00B8 121/ogonek % 0x0C U+02DB 122/quotesinglbase % 0x0D U+201A 123/guilsinglleft % 0x0E U+2039 124/guilsinglright % 0x0F U+203A 125/quotedblleft % 0x10 U+201C 126/quotedblright % 0x11 U+201D 127/quotedblbase % 0x12 U+201E 128/guillemotleft % 0x13 U+00AB 129/guillemotright % 0x14 U+00BB 130/endash % 0x15 U+2013 131/emdash % 0x16 U+2014 132/cwm % 0x17 U+200B 133/perthousandzero % 0x18 ______ 134/dotlessi % 0x19 U+0131 135/dotlessj % 0x1A U+0237 136/ff % 0x1B U+FB00 137/fi % 0x1C U+FB01 138/fl % 0x1D U+FB02 139/ffi % 0x1E U+FB03 140/ffl % 0x1F U+FB04 141/visiblespace % 0x20 U+2423 142/exclam % 0x21 143/quotedbl % 0x22 144/numbersign % 0x23 145/dollar % 0x24 146/percent % 0x25 147/ampersand % 0x26 148/quoteright % 0x27 U+2019 149/parenleft % 0x28 150/parenright % 0x29 151/asterisk % 0x2A 152/plus % 0x2B 153/comma % 0x2C 154/hyphen % 0x2D 155/period % 0x2E 156/slash % 0x2F 157/zero % 0x30 158/one % 0x31 159/two % 0x32 160/three % 0x33 161/four % 0x34 162/five % 0x35 163/six % 0x36 164/seven % 0x37 165/eight % 0x38 166/nine % 0x39 167/colon % 0x3A 168/semicolon % 0x3B 169/less % 0x3C 170/equal % 0x3D 171/greater % 0x3E 172/question % 0x3F 173/at % 0x40 174/A % 0x41 175/B % 0x42 176/C % 0x43 177/D % 0x44 178/E % 0x45 179/F % 0x46 180/G % 0x47 181/H % 0x48 182/I % 0x49 183/J % 0x4A 184/K % 0x4B 185/L % 0x4C 186/M % 0x4D 187/N % 0x4E 188/O % 0x4F 189/P % 0x50 190/Q % 0x51 191/R % 0x52 192/S % 0x53 193/T % 0x54 194/U % 0x55 195/V % 0x56 196/W % 0x57 197/X % 0x58 198/Y % 0x59 199/Z % 0x5A 200/bracketleft % 0x5B 201/backslash % 0x5C 202/bracketright % 0x5D 203/asciicircum % 0x5E 204/underscore % 0x5F 205/quoteleft % 0x60 U+2018 206/a % 0x61 207/b % 0x62 208/c % 0x63 209/d % 0x64 210/e % 0x65 211/f % 0x66 212/g % 0x67 213/h % 0x68 214/i % 0x69 215/j % 0x6A 216/k % 0x6B 217/l % 0x6C 218/m % 0x6D 219/n % 0x6E 220/o % 0x6F 221/p % 0x70 222/q % 0x71 223/r % 0x72 224/s % 0x73 225/t % 0x74 226/u % 0x75 227/v % 0x76 228/w % 0x77 229/x % 0x78 230/y % 0x79 231/z % 0x7A 232/braceleft % 0x7B 233/bar % 0x7C 234/braceright % 0x7D 235/asciitilde % 0x7E 236/hyphen.alt % 0x7F U+002D % U+???? 237/Abreve % 0x80 U+0102 238/Aogonek % 0x81 U+0104 239/Cacute % 0x82 U+0106 240/Ccaron % 0x83 U+010C 241/Dcaron % 0x84 U+010E 242/Ecaron % 0x85 U+011A 243/Eogonek % 0x86 U+0118 244/Gbreve % 0x87 U+011E 245/Lacute % 0x88 U+0139 246/Lcaron % 0x89 U+013D 247/Lslash % 0x8A U+0141 248/Nacute % 0x8B U+0143 249/Ncaron % 0x8C U+0147 250/Eng % 0x8D U+014A 251/Ohungarumlaut % 0x8E U+0150 252/Racute % 0x8F U+0154 253/Rcaron % 0x90 U+0158 254/Sacute % 0x91 U+015A 255/Scaron % 0x92 U+0160 256/Scedilla % 0x93 U+015E 257/Tcaron % 0x94 U+0164 258/Tcedilla % 0x95 U+0162 259/Uhungarumlaut % 0x96 U+0170 260/Uring % 0x97 U+016E 261/Ydieresis % 0x98 U+0178 262/Zacute % 0x99 U+0179 263/Zcaron % 0x9A U+017D 264/Zdotaccent % 0x9B U+017B 265/IJ % 0x9C U+0132 266/Idotaccent % 0x9D U+0130 267/dcroat % 0x9E U+0111 268/section % 0x9F U+00A7 269/abreve % 0xA0 U+0103 270/aogonek % 0xA1 U+0105 271/cacute % 0xA2 U+0107 272/ccaron % 0xA3 U+010D 273/dcaron % 0xA4 U+010F 274/ecaron % 0xA5 U+011B 275/eogonek % 0xA6 U+0119 276/gbreve % 0xA7 U+011F 277/lacute % 0xA8 U+013A 278/lcaron % 0xA9 U+013E 279/lslash % 0xAA U+0142 280/nacute % 0xAB U+0144 281/ncaron % 0xAC U+0148 282/eng % 0xAD U+014B 283/ohungarumlaut % 0xAE U+0151 284/racute % 0xAF U+0155 285/rcaron % 0xB0 U+0159 286/sacute % 0xB1 U+015B 287/scaron % 0xB2 U+0161 288/scedilla % 0xB3 U+015F 289/tcaron % 0xB4 U+0165 290/tcedilla % 0xB5 U+0163 291/uhungarumlaut % 0xB6 U+0171 292/uring % 0xB7 U+016F 293/ydieresis % 0xB8 U+00FF 294/zacute % 0xB9 U+017A 295/zcaron % 0xBA U+017E 296/zdotaccent % 0xBB U+017C 297/ij % 0xBC U+0133 298/exclamdown % 0xBD U+00A1 299/questiondown % 0xBE U+00BF 300/sterling % 0xBF U+00A3 301/Agrave % 0xC0 302/Aacute % 0xC1 303/Acircumflex % 0xC2 304/Atilde % 0xC3 305/Adieresis % 0xC4 306/Aring % 0xC5 307/AE % 0xC6 308/Ccedilla % 0xC7 309/Egrave % 0xC8 310/Eacute % 0xC9 311/Ecircumflex % 0xCA 312/Edieresis % 0xCB 313/Igrave % 0xCC 314/Iacute % 0xCD 315/Icircumflex % 0xCE 316/Idieresis % 0xCF 317/Eth % 0xD0 318/Ntilde % 0xD1 319/Ograve % 0xD2 320/Oacute % 0xD3 321/Ocircumflex % 0xD4 322/Otilde % 0xD5 323/Odieresis % 0xD6 324/OE % 0xD7 U+0152 325/Oslash % 0xD8 326/Ugrave % 0xD9 327/Uacute % 0xDA 328/Ucircumflex % 0xDB 329/Udieresis % 0xDC 330/Yacute % 0xDD 331/Thorn % 0xDE 332/Germandbls % 0xDF (U+1E9E, /S_S) 333/agrave % 0xE0 334/aacute % 0xE1 335/acircumflex % 0xE2 336/atilde % 0xE3 337/adieresis % 0xE4 338/aring % 0xE5 339/ae % 0xE6 340/ccedilla % 0xE7 341/egrave % 0xE8 342/eacute % 0xE9 343/ecircumflex % 0xEA 344/edieresis % 0xEB 345/igrave % 0xEC 346/iacute % 0xED 347/icircumflex % 0xEE 348/idieresis % 0xEF 349/eth % 0xF0 350/ntilde % 0xF1 351/ograve % 0xF2 352/oacute % 0xF3 353/ocircumflex % 0xF4 354/otilde % 0xF5 355/odieresis % 0xF6 356/oe % 0xF7 U+0153 357/oslash % 0xF8 358/ugrave % 0xF9 359/uacute % 0xFA 360/ucircumflex % 0xFB 361/udieresis % 0xFC 362/yacute % 0xFD 363/thorn % 0xFE 364/germandbls % 0xFF U+00DF 365] def 366