|
1 "{ Encoding: utf8 }" |
|
2 |
|
3 "{ Package: 'stx:libbasic' }" |
|
4 |
|
5 "{ NameSpace: CharacterEncoderImplementations }" |
|
6 |
|
7 SingleByteEncoder subclass:#MAC_Greek |
|
8 instanceVariableNames:'' |
|
9 classVariableNames:'' |
|
10 poolDictionaries:'' |
|
11 category:'Collections-Text-Encodings' |
|
12 ! |
|
13 |
|
14 |
|
15 !MAC_Greek class methodsFor:'mapping'! |
|
16 |
|
17 mapFileURL1_relativePathName |
|
18 ^ 'VENDORS/APPLE/GREEK.TXT' |
|
19 ! |
|
20 |
|
21 mapping |
|
22 " |
|
23 # From: http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/GREEK.TXT |
|
24 |
|
25 #======================================================================= |
|
26 # File name: GREEK.TXT |
|
27 # |
|
28 # Contents: Map (external version) from Mac OS Greek |
|
29 # character set to Unicode 2.1 through Unicode 3.2 |
|
30 # |
|
31 # Copyright: (c) 1995-2002 by Apple Computer, Inc., all rights |
|
32 # reserved. |
|
33 # |
|
34 # Contact: charsets@apple.com |
|
35 # |
|
36 # Changes: |
|
37 # |
|
38 # b3,c1 2002-Dec-19 Update to match changes in Mac OS Greek |
|
39 # encoding for Mac OS 9.2.2 and later. |
|
40 # Update URLs, notes. Matches internal |
|
41 # utom<b3>. |
|
42 # b02 1999-Sep-22 Update contact e-mail address. Matches |
|
43 # internal utom<b1>, ufrm<b1>, and Text |
|
44 # Encoding Converter version 1.5. |
|
45 # n06 1998-Feb-05 Update to match internal utom<n4>, ufrm<n17>, |
|
46 # and Text Encoding Converter versions 1.3: |
|
47 # Change mapping for 0xAF from U+0387 to its |
|
48 # canonical decomposition, U+00B7. Also |
|
49 # update header comments to new format. |
|
50 # n04 1995-Apr-15 First version (after fixing some typos). |
|
51 # Matches internal ufrm<n7>. |
|
52 # |
|
53 # Standard header: |
|
54 # ---------------- |
|
55 # |
|
56 # Apple, the Apple logo, and Macintosh are trademarks of Apple |
|
57 # Computer, Inc., registered in the United States and other countries. |
|
58 # Unicode is a trademark of Unicode Inc. For the sake of brevity, |
|
59 # throughout this document, 'Macintosh' can be used to refer to |
|
60 # Macintosh computers and 'Unicode' can be used to refer to the |
|
61 # Unicode standard. |
|
62 # |
|
63 # Apple makes no warranty or representation, either express or |
|
64 # implied, with respect to these tables, their quality, accuracy, or |
|
65 # fitness for a particular purpose. In no event will Apple be liable |
|
66 # for direct, indirect, special, incidental, or consequential damages |
|
67 # resulting from any defect or inaccuracy in this document or the |
|
68 # accompanying tables. |
|
69 # |
|
70 # These mapping tables and character lists are subject to change. |
|
71 # The latest tables should be available from the following: |
|
72 # |
|
73 # <http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/> |
|
74 # |
|
75 # For general information about Mac OS encodings and these mapping |
|
76 # tables, see the file 'README.TXT'. |
|
77 # |
|
78 # Format: |
|
79 # ------- |
|
80 # |
|
81 # Three tab-separated columns; |
|
82 # '#' begins a comment which continues to the end of the line. |
|
83 # Column #1 is the Mac OS Greek code (in hex as 0xNN) |
|
84 # Column #2 is the corresponding Unicode (in hex as 0xNNNN) |
|
85 # Column #3 is a comment containing the Unicode name |
|
86 # |
|
87 # The entries are in Mac OS Greek code order. |
|
88 # |
|
89 # One of these mappings requires the use of a corporate character. |
|
90 # See the file 'CORPCHAR.TXT' and notes below. |
|
91 # |
|
92 # Control character mappings are not shown in this table, following |
|
93 # the conventions of the standard UTC mapping tables. However, the |
|
94 # Mac OS Greek character set uses the standard control characters at |
|
95 # 0x00-0x1F and 0x7F. |
|
96 # |
|
97 # Notes on Mac OS Greek: |
|
98 # ---------------------- |
|
99 # |
|
100 # Although a Mac OS script code is defined for Greek (smGreek = 6), |
|
101 # the Greek localized system does not currently use it (the font |
|
102 # family IDs are in the Mac OS Roman range). To determine if the |
|
103 # Greek encoding is being used when the script code is smRoman (0), |
|
104 # you must check if the system region code is 20, verGreece. |
|
105 # |
|
106 # The Mac OS Greek encoding is a superset of the repertoire of |
|
107 # ISO 8859-7 (although characters are not at the same code points), |
|
108 # except that LEFT & RIGHT SINGLE QUOTATION MARK replace the |
|
109 # MODIFIER LETTER REVERSED COMMA & APOSTROPHE (spacing versions of |
|
110 # Greek rough & smooth breathing marks) that are in ISO 8859-7. |
|
111 # The added characters in Mac OS Greek include more punctuation and |
|
112 # symbols and several accented Latin letters. |
|
113 # |
|
114 # Before Mac OS 9.2.2, code point 0x9C was SOFT HYPHEN (U+00AD), and |
|
115 # code point 0xFF was undefined. In Mac OS 9.2.2 and later versions, |
|
116 # SOFT HYPHEN was moved to 0xFF, and code point 0x9C was changed to be |
|
117 # EURO SIGN (U+20AC); the standard Apple fonts are updated for Mac OS |
|
118 # 9.2.2 to reflect this. There is a 'no Euro sign' variant of the Mac |
|
119 # OS Greek encoding that uses the older mapping; this can be used for |
|
120 # older fonts. |
|
121 # |
|
122 # This 'no Euro sign' variant of Mac OS Greek was the character set |
|
123 # used by Mac OS Greek systems before 9.2.2 except for system 6.0.7, |
|
124 # which used a variant character set but was quickly replaced with |
|
125 # Greek system 6.0.7.1 using the no Euro sign' character set |
|
126 # documented here. Greek system 4.1 used a variant Greek set that had |
|
127 # ISO 8859-7 in 0xA0-0xFF (with some holes filled in with DTP |
|
128 # characters), and Mac OS Roman accented Roman letters in 0x80-0x9F. |
|
129 # |
|
130 # Unicode mapping issues and notes: |
|
131 # --------------------------------- |
|
132 # |
|
133 # Details of mapping changes in each version: |
|
134 # ------------------------------------------- |
|
135 # |
|
136 # Changes from version b02 to version b03/c01: |
|
137 # |
|
138 # - The Mac OS Greek encoding changed for Mac OS 9.2.2 and later |
|
139 # as follows: |
|
140 # 0x9C, changed from 0x00AD SOFT HYPHEN to 0x20AC EURO SIGN |
|
141 # 0xFF, changed from undefined to 0x00AD SOFT HYPHEN |
|
142 # |
|
143 # Changes from version n04 to version n06: |
|
144 # |
|
145 # - Change mapping of 0xAF from U+0387 to its canonical |
|
146 # decomposition, U+00B7. |
|
147 # |
|
148 ################## |
|
149 |
|
150 0x20 0x0020 # SPACE |
|
151 0x21 0x0021 # EXCLAMATION MARK |
|
152 0x22 0x0022 # QUOTATION MARK |
|
153 0x23 0x0023 # NUMBER SIGN |
|
154 0x24 0x0024 # DOLLAR SIGN |
|
155 0x25 0x0025 # PERCENT SIGN |
|
156 0x26 0x0026 # AMPERSAND |
|
157 0x27 0x0027 # APOSTROPHE |
|
158 0x28 0x0028 # LEFT PARENTHESIS |
|
159 0x29 0x0029 # RIGHT PARENTHESIS |
|
160 0x2A 0x002A # ASTERISK |
|
161 0x2B 0x002B # PLUS SIGN |
|
162 0x2C 0x002C # COMMA |
|
163 0x2D 0x002D # HYPHEN-MINUS |
|
164 0x2E 0x002E # FULL STOP |
|
165 0x2F 0x002F # SOLIDUS |
|
166 0x30 0x0030 # DIGIT ZERO |
|
167 0x31 0x0031 # DIGIT ONE |
|
168 0x32 0x0032 # DIGIT TWO |
|
169 0x33 0x0033 # DIGIT THREE |
|
170 0x34 0x0034 # DIGIT FOUR |
|
171 0x35 0x0035 # DIGIT FIVE |
|
172 0x36 0x0036 # DIGIT SIX |
|
173 0x37 0x0037 # DIGIT SEVEN |
|
174 0x38 0x0038 # DIGIT EIGHT |
|
175 0x39 0x0039 # DIGIT NINE |
|
176 0x3A 0x003A # COLON |
|
177 0x3B 0x003B # SEMICOLON |
|
178 0x3C 0x003C # LESS-THAN SIGN |
|
179 0x3D 0x003D # EQUALS SIGN |
|
180 0x3E 0x003E # GREATER-THAN SIGN |
|
181 0x3F 0x003F # QUESTION MARK |
|
182 0x40 0x0040 # COMMERCIAL AT |
|
183 0x41 0x0041 # LATIN CAPITAL LETTER A |
|
184 0x42 0x0042 # LATIN CAPITAL LETTER B |
|
185 0x43 0x0043 # LATIN CAPITAL LETTER C |
|
186 0x44 0x0044 # LATIN CAPITAL LETTER D |
|
187 0x45 0x0045 # LATIN CAPITAL LETTER E |
|
188 0x46 0x0046 # LATIN CAPITAL LETTER F |
|
189 0x47 0x0047 # LATIN CAPITAL LETTER G |
|
190 0x48 0x0048 # LATIN CAPITAL LETTER H |
|
191 0x49 0x0049 # LATIN CAPITAL LETTER I |
|
192 0x4A 0x004A # LATIN CAPITAL LETTER J |
|
193 0x4B 0x004B # LATIN CAPITAL LETTER K |
|
194 0x4C 0x004C # LATIN CAPITAL LETTER L |
|
195 0x4D 0x004D # LATIN CAPITAL LETTER M |
|
196 0x4E 0x004E # LATIN CAPITAL LETTER N |
|
197 0x4F 0x004F # LATIN CAPITAL LETTER O |
|
198 0x50 0x0050 # LATIN CAPITAL LETTER P |
|
199 0x51 0x0051 # LATIN CAPITAL LETTER Q |
|
200 0x52 0x0052 # LATIN CAPITAL LETTER R |
|
201 0x53 0x0053 # LATIN CAPITAL LETTER S |
|
202 0x54 0x0054 # LATIN CAPITAL LETTER T |
|
203 0x55 0x0055 # LATIN CAPITAL LETTER U |
|
204 0x56 0x0056 # LATIN CAPITAL LETTER V |
|
205 0x57 0x0057 # LATIN CAPITAL LETTER W |
|
206 0x58 0x0058 # LATIN CAPITAL LETTER X |
|
207 0x59 0x0059 # LATIN CAPITAL LETTER Y |
|
208 0x5A 0x005A # LATIN CAPITAL LETTER Z |
|
209 0x5B 0x005B # LEFT SQUARE BRACKET |
|
210 0x5C 0x005C # REVERSE SOLIDUS |
|
211 0x5D 0x005D # RIGHT SQUARE BRACKET |
|
212 0x5E 0x005E # CIRCUMFLEX ACCENT |
|
213 0x5F 0x005F # LOW LINE |
|
214 0x60 0x0060 # GRAVE ACCENT |
|
215 0x61 0x0061 # LATIN SMALL LETTER A |
|
216 0x62 0x0062 # LATIN SMALL LETTER B |
|
217 0x63 0x0063 # LATIN SMALL LETTER C |
|
218 0x64 0x0064 # LATIN SMALL LETTER D |
|
219 0x65 0x0065 # LATIN SMALL LETTER E |
|
220 0x66 0x0066 # LATIN SMALL LETTER F |
|
221 0x67 0x0067 # LATIN SMALL LETTER G |
|
222 0x68 0x0068 # LATIN SMALL LETTER H |
|
223 0x69 0x0069 # LATIN SMALL LETTER I |
|
224 0x6A 0x006A # LATIN SMALL LETTER J |
|
225 0x6B 0x006B # LATIN SMALL LETTER K |
|
226 0x6C 0x006C # LATIN SMALL LETTER L |
|
227 0x6D 0x006D # LATIN SMALL LETTER M |
|
228 0x6E 0x006E # LATIN SMALL LETTER N |
|
229 0x6F 0x006F # LATIN SMALL LETTER O |
|
230 0x70 0x0070 # LATIN SMALL LETTER P |
|
231 0x71 0x0071 # LATIN SMALL LETTER Q |
|
232 0x72 0x0072 # LATIN SMALL LETTER R |
|
233 0x73 0x0073 # LATIN SMALL LETTER S |
|
234 0x74 0x0074 # LATIN SMALL LETTER T |
|
235 0x75 0x0075 # LATIN SMALL LETTER U |
|
236 0x76 0x0076 # LATIN SMALL LETTER V |
|
237 0x77 0x0077 # LATIN SMALL LETTER W |
|
238 0x78 0x0078 # LATIN SMALL LETTER X |
|
239 0x79 0x0079 # LATIN SMALL LETTER Y |
|
240 0x7A 0x007A # LATIN SMALL LETTER Z |
|
241 0x7B 0x007B # LEFT CURLY BRACKET |
|
242 0x7C 0x007C # VERTICAL LINE |
|
243 0x7D 0x007D # RIGHT CURLY BRACKET |
|
244 0x7E 0x007E # TILDE |
|
245 # |
|
246 0x80 0x00C4 # LATIN CAPITAL LETTER A WITH DIAERESIS |
|
247 0x81 0x00B9 # SUPERSCRIPT ONE |
|
248 0x82 0x00B2 # SUPERSCRIPT TWO |
|
249 0x83 0x00C9 # LATIN CAPITAL LETTER E WITH ACUTE |
|
250 0x84 0x00B3 # SUPERSCRIPT THREE |
|
251 0x85 0x00D6 # LATIN CAPITAL LETTER O WITH DIAERESIS |
|
252 0x86 0x00DC # LATIN CAPITAL LETTER U WITH DIAERESIS |
|
253 0x87 0x0385 # GREEK DIALYTIKA TONOS |
|
254 0x88 0x00E0 # LATIN SMALL LETTER A WITH GRAVE |
|
255 0x89 0x00E2 # LATIN SMALL LETTER A WITH CIRCUMFLEX |
|
256 0x8A 0x00E4 # LATIN SMALL LETTER A WITH DIAERESIS |
|
257 0x8B 0x0384 # GREEK TONOS |
|
258 0x8C 0x00A8 # DIAERESIS |
|
259 0x8D 0x00E7 # LATIN SMALL LETTER C WITH CEDILLA |
|
260 0x8E 0x00E9 # LATIN SMALL LETTER E WITH ACUTE |
|
261 0x8F 0x00E8 # LATIN SMALL LETTER E WITH GRAVE |
|
262 0x90 0x00EA # LATIN SMALL LETTER E WITH CIRCUMFLEX |
|
263 0x91 0x00EB # LATIN SMALL LETTER E WITH DIAERESIS |
|
264 0x92 0x00A3 # POUND SIGN |
|
265 0x93 0x2122 # TRADE MARK SIGN |
|
266 0x94 0x00EE # LATIN SMALL LETTER I WITH CIRCUMFLEX |
|
267 0x95 0x00EF # LATIN SMALL LETTER I WITH DIAERESIS |
|
268 0x96 0x2022 # BULLET |
|
269 0x97 0x00BD # VULGAR FRACTION ONE HALF |
|
270 0x98 0x2030 # PER MILLE SIGN |
|
271 0x99 0x00F4 # LATIN SMALL LETTER O WITH CIRCUMFLEX |
|
272 0x9A 0x00F6 # LATIN SMALL LETTER O WITH DIAERESIS |
|
273 0x9B 0x00A6 # BROKEN BAR |
|
274 0x9C 0x20AC # EURO SIGN # before Mac OS 9.2.2, was SOFT HYPHEN |
|
275 0x9D 0x00F9 # LATIN SMALL LETTER U WITH GRAVE |
|
276 0x9E 0x00FB # LATIN SMALL LETTER U WITH CIRCUMFLEX |
|
277 0x9F 0x00FC # LATIN SMALL LETTER U WITH DIAERESIS |
|
278 0xA0 0x2020 # DAGGER |
|
279 0xA1 0x0393 # GREEK CAPITAL LETTER GAMMA |
|
280 0xA2 0x0394 # GREEK CAPITAL LETTER DELTA |
|
281 0xA3 0x0398 # GREEK CAPITAL LETTER THETA |
|
282 0xA4 0x039B # GREEK CAPITAL LETTER LAMDA |
|
283 0xA5 0x039E # GREEK CAPITAL LETTER XI |
|
284 0xA6 0x03A0 # GREEK CAPITAL LETTER PI |
|
285 0xA7 0x00DF # LATIN SMALL LETTER SHARP S |
|
286 0xA8 0x00AE # REGISTERED SIGN |
|
287 0xA9 0x00A9 # COPYRIGHT SIGN |
|
288 0xAA 0x03A3 # GREEK CAPITAL LETTER SIGMA |
|
289 0xAB 0x03AA # GREEK CAPITAL LETTER IOTA WITH DIALYTIKA |
|
290 0xAC 0x00A7 # SECTION SIGN |
|
291 0xAD 0x2260 # NOT EQUAL TO |
|
292 0xAE 0x00B0 # DEGREE SIGN |
|
293 0xAF 0x00B7 # MIDDLE DOT |
|
294 0xB0 0x0391 # GREEK CAPITAL LETTER ALPHA |
|
295 0xB1 0x00B1 # PLUS-MINUS SIGN |
|
296 0xB2 0x2264 # LESS-THAN OR EQUAL TO |
|
297 0xB3 0x2265 # GREATER-THAN OR EQUAL TO |
|
298 0xB4 0x00A5 # YEN SIGN |
|
299 0xB5 0x0392 # GREEK CAPITAL LETTER BETA |
|
300 0xB6 0x0395 # GREEK CAPITAL LETTER EPSILON |
|
301 0xB7 0x0396 # GREEK CAPITAL LETTER ZETA |
|
302 0xB8 0x0397 # GREEK CAPITAL LETTER ETA |
|
303 0xB9 0x0399 # GREEK CAPITAL LETTER IOTA |
|
304 0xBA 0x039A # GREEK CAPITAL LETTER KAPPA |
|
305 0xBB 0x039C # GREEK CAPITAL LETTER MU |
|
306 0xBC 0x03A6 # GREEK CAPITAL LETTER PHI |
|
307 0xBD 0x03AB # GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA |
|
308 0xBE 0x03A8 # GREEK CAPITAL LETTER PSI |
|
309 0xBF 0x03A9 # GREEK CAPITAL LETTER OMEGA |
|
310 0xC0 0x03AC # GREEK SMALL LETTER ALPHA WITH TONOS |
|
311 0xC1 0x039D # GREEK CAPITAL LETTER NU |
|
312 0xC2 0x00AC # NOT SIGN |
|
313 0xC3 0x039F # GREEK CAPITAL LETTER OMICRON |
|
314 0xC4 0x03A1 # GREEK CAPITAL LETTER RHO |
|
315 0xC5 0x2248 # ALMOST EQUAL TO |
|
316 0xC6 0x03A4 # GREEK CAPITAL LETTER TAU |
|
317 0xC7 0x00AB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK |
|
318 0xC8 0x00BB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK |
|
319 0xC9 0x2026 # HORIZONTAL ELLIPSIS |
|
320 0xCA 0x00A0 # NO-BREAK SPACE |
|
321 0xCB 0x03A5 # GREEK CAPITAL LETTER UPSILON |
|
322 0xCC 0x03A7 # GREEK CAPITAL LETTER CHI |
|
323 0xCD 0x0386 # GREEK CAPITAL LETTER ALPHA WITH TONOS |
|
324 0xCE 0x0388 # GREEK CAPITAL LETTER EPSILON WITH TONOS |
|
325 0xCF 0x0153 # LATIN SMALL LIGATURE OE |
|
326 0xD0 0x2013 # EN DASH |
|
327 0xD1 0x2015 # HORIZONTAL BAR |
|
328 0xD2 0x201C # LEFT DOUBLE QUOTATION MARK |
|
329 0xD3 0x201D # RIGHT DOUBLE QUOTATION MARK |
|
330 0xD4 0x2018 # LEFT SINGLE QUOTATION MARK |
|
331 0xD5 0x2019 # RIGHT SINGLE QUOTATION MARK |
|
332 0xD6 0x00F7 # DIVISION SIGN |
|
333 0xD7 0x0389 # GREEK CAPITAL LETTER ETA WITH TONOS |
|
334 0xD8 0x038A # GREEK CAPITAL LETTER IOTA WITH TONOS |
|
335 0xD9 0x038C # GREEK CAPITAL LETTER OMICRON WITH TONOS |
|
336 0xDA 0x038E # GREEK CAPITAL LETTER UPSILON WITH TONOS |
|
337 0xDB 0x03AD # GREEK SMALL LETTER EPSILON WITH TONOS |
|
338 0xDC 0x03AE # GREEK SMALL LETTER ETA WITH TONOS |
|
339 0xDD 0x03AF # GREEK SMALL LETTER IOTA WITH TONOS |
|
340 0xDE 0x03CC # GREEK SMALL LETTER OMICRON WITH TONOS |
|
341 0xDF 0x038F # GREEK CAPITAL LETTER OMEGA WITH TONOS |
|
342 0xE0 0x03CD # GREEK SMALL LETTER UPSILON WITH TONOS |
|
343 0xE1 0x03B1 # GREEK SMALL LETTER ALPHA |
|
344 0xE2 0x03B2 # GREEK SMALL LETTER BETA |
|
345 0xE3 0x03C8 # GREEK SMALL LETTER PSI |
|
346 0xE4 0x03B4 # GREEK SMALL LETTER DELTA |
|
347 0xE5 0x03B5 # GREEK SMALL LETTER EPSILON |
|
348 0xE6 0x03C6 # GREEK SMALL LETTER PHI |
|
349 0xE7 0x03B3 # GREEK SMALL LETTER GAMMA |
|
350 0xE8 0x03B7 # GREEK SMALL LETTER ETA |
|
351 0xE9 0x03B9 # GREEK SMALL LETTER IOTA |
|
352 0xEA 0x03BE # GREEK SMALL LETTER XI |
|
353 0xEB 0x03BA # GREEK SMALL LETTER KAPPA |
|
354 0xEC 0x03BB # GREEK SMALL LETTER LAMDA |
|
355 0xED 0x03BC # GREEK SMALL LETTER MU |
|
356 0xEE 0x03BD # GREEK SMALL LETTER NU |
|
357 0xEF 0x03BF # GREEK SMALL LETTER OMICRON |
|
358 0xF0 0x03C0 # GREEK SMALL LETTER PI |
|
359 0xF1 0x03CE # GREEK SMALL LETTER OMEGA WITH TONOS |
|
360 0xF2 0x03C1 # GREEK SMALL LETTER RHO |
|
361 0xF3 0x03C3 # GREEK SMALL LETTER SIGMA |
|
362 0xF4 0x03C4 # GREEK SMALL LETTER TAU |
|
363 0xF5 0x03B8 # GREEK SMALL LETTER THETA |
|
364 0xF6 0x03C9 # GREEK SMALL LETTER OMEGA |
|
365 0xF7 0x03C2 # GREEK SMALL LETTER FINAL SIGMA |
|
366 0xF8 0x03C7 # GREEK SMALL LETTER CHI |
|
367 0xF9 0x03C5 # GREEK SMALL LETTER UPSILON |
|
368 0xFA 0x03B6 # GREEK SMALL LETTER ZETA |
|
369 0xFB 0x03CA # GREEK SMALL LETTER IOTA WITH DIALYTIKA |
|
370 0xFC 0x03CB # GREEK SMALL LETTER UPSILON WITH DIALYTIKA |
|
371 0xFD 0x0390 # GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS |
|
372 0xFE 0x03B0 # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS |
|
373 0xFF 0x00AD # SOFT HYPHEN # before Mac OS 9.2.2, was undefined |
|
374 |
|
375 " |
|
376 ! ! |
|
377 |
|
378 !MAC_Greek class methodsFor:'queries'! |
|
379 |
|
380 namesOfEncoding |
|
381 ^ #( #'mac-greek' #'macgreek' ) |
|
382 ! ! |
|
383 |
|
384 !MAC_Greek methodsFor:'encoding & decoding'! |
|
385 |
|
386 decode:codeArg |
|
387 "Automagically generated by generateCode - do not modify. |
|
388 Decode from my encoding into unicode." |
|
389 |
|
390 |code "{ Class: SmallInteger }"| |
|
391 |
|
392 code := codeArg. |
|
393 code <= 16r1F ifTrue:[ |
|
394 ^ self decodingError. |
|
395 ]. |
|
396 code <= 16r7E ifTrue:[ ^ code ]. |
|
397 code > 16rFF ifTrue:[ |
|
398 ^ self decodingError. |
|
399 ]. |
|
400 [ |
|
401 |t| |
|
402 t := #( |
|
403 "16r007F" 16r0000 " invalid " |
|
404 "16r0080" 16r00C4 " LATIN CAPITAL LETTER A WITH DIAERESIS " |
|
405 "16r0081" 16r00B9 " SUPERSCRIPT ONE " |
|
406 "16r0082" 16r00B2 " SUPERSCRIPT TWO " |
|
407 "16r0083" 16r00C9 " LATIN CAPITAL LETTER E WITH ACUTE " |
|
408 "16r0084" 16r00B3 " SUPERSCRIPT THREE " |
|
409 "16r0085" 16r00D6 " LATIN CAPITAL LETTER O WITH DIAERESIS " |
|
410 "16r0086" 16r00DC " LATIN CAPITAL LETTER U WITH DIAERESIS " |
|
411 "16r0087" 16r0385 " GREEK DIALYTIKA TONOS " |
|
412 "16r0088" 16r00E0 " LATIN SMALL LETTER A WITH GRAVE " |
|
413 "16r0089" 16r00E2 " LATIN SMALL LETTER A WITH CIRCUMFLEX " |
|
414 "16r008A" 16r00E4 " LATIN SMALL LETTER A WITH DIAERESIS " |
|
415 "16r008B" 16r0384 " GREEK TONOS " |
|
416 "16r008C" 16r00A8 " DIAERESIS " |
|
417 "16r008D" 16r00E7 " LATIN SMALL LETTER C WITH CEDILLA " |
|
418 "16r008E" 16r00E9 " LATIN SMALL LETTER E WITH ACUTE " |
|
419 "16r008F" 16r00E8 " LATIN SMALL LETTER E WITH GRAVE " |
|
420 "16r0090" 16r00EA " LATIN SMALL LETTER E WITH CIRCUMFLEX " |
|
421 "16r0091" 16r00EB " LATIN SMALL LETTER E WITH DIAERESIS " |
|
422 "16r0092" 16r00A3 " POUND SIGN " |
|
423 "16r0093" 16r2122 " TRADE MARK SIGN " |
|
424 "16r0094" 16r00EE " LATIN SMALL LETTER I WITH CIRCUMFLEX " |
|
425 "16r0095" 16r00EF " LATIN SMALL LETTER I WITH DIAERESIS " |
|
426 "16r0096" 16r2022 " BULLET " |
|
427 "16r0097" 16r00BD " VULGAR FRACTION ONE HALF " |
|
428 "16r0098" 16r2030 " PER MILLE SIGN " |
|
429 "16r0099" 16r00F4 " LATIN SMALL LETTER O WITH CIRCUMFLEX " |
|
430 "16r009A" 16r00F6 " LATIN SMALL LETTER O WITH DIAERESIS " |
|
431 "16r009B" 16r00A6 " BROKEN BAR " |
|
432 "16r009C" 16r20AC " EURO SIGN # before Mac OS 9.2.2, was SOFT HYPHEN " |
|
433 "16r009D" 16r00F9 " LATIN SMALL LETTER U WITH GRAVE " |
|
434 "16r009E" 16r00FB " LATIN SMALL LETTER U WITH CIRCUMFLEX " |
|
435 "16r009F" 16r00FC " LATIN SMALL LETTER U WITH DIAERESIS " |
|
436 "16r00A0" 16r2020 " DAGGER " |
|
437 "16r00A1" 16r0393 " GREEK CAPITAL LETTER GAMMA " |
|
438 "16r00A2" 16r0394 " GREEK CAPITAL LETTER DELTA " |
|
439 "16r00A3" 16r0398 " GREEK CAPITAL LETTER THETA " |
|
440 "16r00A4" 16r039B " GREEK CAPITAL LETTER LAMDA " |
|
441 "16r00A5" 16r039E " GREEK CAPITAL LETTER XI " |
|
442 "16r00A6" 16r03A0 " GREEK CAPITAL LETTER PI " |
|
443 "16r00A7" 16r00DF " LATIN SMALL LETTER SHARP S " |
|
444 "16r00A8" 16r00AE " REGISTERED SIGN " |
|
445 "16r00A9" 16r00A9 " COPYRIGHT SIGN " |
|
446 "16r00AA" 16r03A3 " GREEK CAPITAL LETTER SIGMA " |
|
447 "16r00AB" 16r03AA " GREEK CAPITAL LETTER IOTA WITH DIALYTIKA " |
|
448 "16r00AC" 16r00A7 " SECTION SIGN " |
|
449 "16r00AD" 16r2260 " NOT EQUAL TO " |
|
450 "16r00AE" 16r00B0 " DEGREE SIGN " |
|
451 "16r00AF" 16r00B7 " MIDDLE DOT " |
|
452 "16r00B0" 16r0391 " GREEK CAPITAL LETTER ALPHA " |
|
453 "16r00B1" 16r00B1 " PLUS-MINUS SIGN " |
|
454 "16r00B2" 16r2264 " LESS-THAN OR EQUAL TO " |
|
455 "16r00B3" 16r2265 " GREATER-THAN OR EQUAL TO " |
|
456 "16r00B4" 16r00A5 " YEN SIGN " |
|
457 "16r00B5" 16r0392 " GREEK CAPITAL LETTER BETA " |
|
458 "16r00B6" 16r0395 " GREEK CAPITAL LETTER EPSILON " |
|
459 "16r00B7" 16r0396 " GREEK CAPITAL LETTER ZETA " |
|
460 "16r00B8" 16r0397 " GREEK CAPITAL LETTER ETA " |
|
461 "16r00B9" 16r0399 " GREEK CAPITAL LETTER IOTA " |
|
462 "16r00BA" 16r039A " GREEK CAPITAL LETTER KAPPA " |
|
463 "16r00BB" 16r039C " GREEK CAPITAL LETTER MU " |
|
464 "16r00BC" 16r03A6 " GREEK CAPITAL LETTER PHI " |
|
465 "16r00BD" 16r03AB " GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA " |
|
466 "16r00BE" 16r03A8 " GREEK CAPITAL LETTER PSI " |
|
467 "16r00BF" 16r03A9 " GREEK CAPITAL LETTER OMEGA " |
|
468 "16r00C0" 16r03AC " GREEK SMALL LETTER ALPHA WITH TONOS " |
|
469 "16r00C1" 16r039D " GREEK CAPITAL LETTER NU " |
|
470 "16r00C2" 16r00AC " NOT SIGN " |
|
471 "16r00C3" 16r039F " GREEK CAPITAL LETTER OMICRON " |
|
472 "16r00C4" 16r03A1 " GREEK CAPITAL LETTER RHO " |
|
473 "16r00C5" 16r2248 " ALMOST EQUAL TO " |
|
474 "16r00C6" 16r03A4 " GREEK CAPITAL LETTER TAU " |
|
475 "16r00C7" 16r00AB " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
476 "16r00C8" 16r00BB " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
477 "16r00C9" 16r2026 " HORIZONTAL ELLIPSIS " |
|
478 "16r00CA" 16r00A0 " NO-BREAK SPACE " |
|
479 "16r00CB" 16r03A5 " GREEK CAPITAL LETTER UPSILON " |
|
480 "16r00CC" 16r03A7 " GREEK CAPITAL LETTER CHI " |
|
481 "16r00CD" 16r0386 " GREEK CAPITAL LETTER ALPHA WITH TONOS " |
|
482 "16r00CE" 16r0388 " GREEK CAPITAL LETTER EPSILON WITH TONOS " |
|
483 "16r00CF" 16r0153 " LATIN SMALL LIGATURE OE " |
|
484 "16r00D0" 16r2013 " EN DASH " |
|
485 "16r00D1" 16r2015 " HORIZONTAL BAR " |
|
486 "16r00D2" 16r201C " LEFT DOUBLE QUOTATION MARK " |
|
487 "16r00D3" 16r201D " RIGHT DOUBLE QUOTATION MARK " |
|
488 "16r00D4" 16r2018 " LEFT SINGLE QUOTATION MARK " |
|
489 "16r00D5" 16r2019 " RIGHT SINGLE QUOTATION MARK " |
|
490 "16r00D6" 16r00F7 " DIVISION SIGN " |
|
491 "16r00D7" 16r0389 " GREEK CAPITAL LETTER ETA WITH TONOS " |
|
492 "16r00D8" 16r038A " GREEK CAPITAL LETTER IOTA WITH TONOS " |
|
493 "16r00D9" 16r038C " GREEK CAPITAL LETTER OMICRON WITH TONOS " |
|
494 "16r00DA" 16r038E " GREEK CAPITAL LETTER UPSILON WITH TONOS " |
|
495 "16r00DB" 16r03AD " GREEK SMALL LETTER EPSILON WITH TONOS " |
|
496 "16r00DC" 16r03AE " GREEK SMALL LETTER ETA WITH TONOS " |
|
497 "16r00DD" 16r03AF " GREEK SMALL LETTER IOTA WITH TONOS " |
|
498 "16r00DE" 16r03CC " GREEK SMALL LETTER OMICRON WITH TONOS " |
|
499 "16r00DF" 16r038F " GREEK CAPITAL LETTER OMEGA WITH TONOS " |
|
500 "16r00E0" 16r03CD " GREEK SMALL LETTER UPSILON WITH TONOS " |
|
501 "16r00E1" 16r03B1 " GREEK SMALL LETTER ALPHA " |
|
502 "16r00E2" 16r03B2 " GREEK SMALL LETTER BETA " |
|
503 "16r00E3" 16r03C8 " GREEK SMALL LETTER PSI " |
|
504 "16r00E4" 16r03B4 " GREEK SMALL LETTER DELTA " |
|
505 "16r00E5" 16r03B5 " GREEK SMALL LETTER EPSILON " |
|
506 "16r00E6" 16r03C6 " GREEK SMALL LETTER PHI " |
|
507 "16r00E7" 16r03B3 " GREEK SMALL LETTER GAMMA " |
|
508 "16r00E8" 16r03B7 " GREEK SMALL LETTER ETA " |
|
509 "16r00E9" 16r03B9 " GREEK SMALL LETTER IOTA " |
|
510 "16r00EA" 16r03BE " GREEK SMALL LETTER XI " |
|
511 "16r00EB" 16r03BA " GREEK SMALL LETTER KAPPA " |
|
512 "16r00EC" 16r03BB " GREEK SMALL LETTER LAMDA " |
|
513 "16r00ED" 16r03BC " GREEK SMALL LETTER MU " |
|
514 "16r00EE" 16r03BD " GREEK SMALL LETTER NU " |
|
515 "16r00EF" 16r03BF " GREEK SMALL LETTER OMICRON " |
|
516 "16r00F0" 16r03C0 " GREEK SMALL LETTER PI " |
|
517 "16r00F1" 16r03CE " GREEK SMALL LETTER OMEGA WITH TONOS " |
|
518 "16r00F2" 16r03C1 " GREEK SMALL LETTER RHO " |
|
519 "16r00F3" 16r03C3 " GREEK SMALL LETTER SIGMA " |
|
520 "16r00F4" 16r03C4 " GREEK SMALL LETTER TAU " |
|
521 "16r00F5" 16r03B8 " GREEK SMALL LETTER THETA " |
|
522 "16r00F6" 16r03C9 " GREEK SMALL LETTER OMEGA " |
|
523 "16r00F7" 16r03C2 " GREEK SMALL LETTER FINAL SIGMA " |
|
524 "16r00F8" 16r03C7 " GREEK SMALL LETTER CHI " |
|
525 "16r00F9" 16r03C5 " GREEK SMALL LETTER UPSILON " |
|
526 "16r00FA" 16r03B6 " GREEK SMALL LETTER ZETA " |
|
527 "16r00FB" 16r03CA " GREEK SMALL LETTER IOTA WITH DIALYTIKA " |
|
528 "16r00FC" 16r03CB " GREEK SMALL LETTER UPSILON WITH DIALYTIKA " |
|
529 "16r00FD" 16r0390 " GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS " |
|
530 "16r00FE" 16r03B0 " GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS " |
|
531 "16r00FF" 16r00AD " SOFT HYPHEN # before Mac OS 9.2.2, was undefined " |
|
532 ) at:(code - 16r7E). |
|
533 t == 0 ifFalse:[^ t]. |
|
534 ^ self decodingError. |
|
535 ] value. |
|
536 ! |
|
537 |
|
538 encode:unicodeArg |
|
539 "Automagically generated by generateCode - do not modify. |
|
540 Encode from unicode into my encoding." |
|
541 |
|
542 |unicode "{ Class: SmallInteger }"| |
|
543 |
|
544 unicode := unicodeArg. |
|
545 unicode <= 16r1F ifTrue:[ |
|
546 ^ self decodingError. |
|
547 ]. |
|
548 unicode <= 16r7E ifTrue:[ ^ unicode ]. |
|
549 unicode > 16r2265 ifTrue:[ |
|
550 ^ self encodingError. |
|
551 ]. |
|
552 unicode <= 16r9F ifTrue:[ |
|
553 ^ self encodingError |
|
554 ]. |
|
555 unicode <= 16r3CE ifTrue:[ |
|
556 unicode <= 16r153 ifTrue:[ |
|
557 unicode <= 16rFC ifTrue:[ |
|
558 [ |
|
559 |t| |
|
560 t := #[ |
|
561 "16r00A0" 16rCA " NO-BREAK SPACE " |
|
562 "16r00A1" 16r00 " invalid " |
|
563 "16r00A2" 16r00 " invalid " |
|
564 "16r00A3" 16r92 " POUND SIGN " |
|
565 "16r00A4" 16r00 " invalid " |
|
566 "16r00A5" 16rB4 " YEN SIGN " |
|
567 "16r00A6" 16r9B " BROKEN BAR " |
|
568 "16r00A7" 16rAC " SECTION SIGN " |
|
569 "16r00A8" 16r8C " DIAERESIS " |
|
570 "16r00A9" 16rA9 " COPYRIGHT SIGN " |
|
571 "16r00AA" 16r00 " invalid " |
|
572 "16r00AB" 16rC7 " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
573 "16r00AC" 16rC2 " NOT SIGN " |
|
574 "16r00AD" 16rFF " SOFT HYPHEN # before Mac OS 9.2.2, was undefined " |
|
575 "16r00AE" 16rA8 " REGISTERED SIGN " |
|
576 "16r00AF" 16r00 " invalid " |
|
577 "16r00B0" 16rAE " DEGREE SIGN " |
|
578 "16r00B1" 16rB1 " PLUS-MINUS SIGN " |
|
579 "16r00B2" 16r82 " SUPERSCRIPT TWO " |
|
580 "16r00B3" 16r84 " SUPERSCRIPT THREE " |
|
581 "16r00B4" 16r00 " invalid " |
|
582 "16r00B5" 16r00 " invalid " |
|
583 "16r00B6" 16r00 " invalid " |
|
584 "16r00B7" 16rAF " MIDDLE DOT " |
|
585 "16r00B8" 16r00 " invalid " |
|
586 "16r00B9" 16r81 " SUPERSCRIPT ONE " |
|
587 "16r00BA" 16r00 " invalid " |
|
588 "16r00BB" 16rC8 " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
589 "16r00BC" 16r00 " invalid " |
|
590 "16r00BD" 16r97 " VULGAR FRACTION ONE HALF " |
|
591 "16r00BE" 16r00 " invalid " |
|
592 "16r00BF" 16r00 " invalid " |
|
593 "16r00C0" 16r00 " invalid " |
|
594 "16r00C1" 16r00 " invalid " |
|
595 "16r00C2" 16r00 " invalid " |
|
596 "16r00C3" 16r00 " invalid " |
|
597 "16r00C4" 16r80 " LATIN CAPITAL LETTER A WITH DIAERESIS " |
|
598 "16r00C5" 16r00 " invalid " |
|
599 "16r00C6" 16r00 " invalid " |
|
600 "16r00C7" 16r00 " invalid " |
|
601 "16r00C8" 16r00 " invalid " |
|
602 "16r00C9" 16r83 " LATIN CAPITAL LETTER E WITH ACUTE " |
|
603 "16r00CA" 16r00 " invalid " |
|
604 "16r00CB" 16r00 " invalid " |
|
605 "16r00CC" 16r00 " invalid " |
|
606 "16r00CD" 16r00 " invalid " |
|
607 "16r00CE" 16r00 " invalid " |
|
608 "16r00CF" 16r00 " invalid " |
|
609 "16r00D0" 16r00 " invalid " |
|
610 "16r00D1" 16r00 " invalid " |
|
611 "16r00D2" 16r00 " invalid " |
|
612 "16r00D3" 16r00 " invalid " |
|
613 "16r00D4" 16r00 " invalid " |
|
614 "16r00D5" 16r00 " invalid " |
|
615 "16r00D6" 16r85 " LATIN CAPITAL LETTER O WITH DIAERESIS " |
|
616 "16r00D7" 16r00 " invalid " |
|
617 "16r00D8" 16r00 " invalid " |
|
618 "16r00D9" 16r00 " invalid " |
|
619 "16r00DA" 16r00 " invalid " |
|
620 "16r00DB" 16r00 " invalid " |
|
621 "16r00DC" 16r86 " LATIN CAPITAL LETTER U WITH DIAERESIS " |
|
622 "16r00DD" 16r00 " invalid " |
|
623 "16r00DE" 16r00 " invalid " |
|
624 "16r00DF" 16rA7 " LATIN SMALL LETTER SHARP S " |
|
625 "16r00E0" 16r88 " LATIN SMALL LETTER A WITH GRAVE " |
|
626 "16r00E1" 16r00 " invalid " |
|
627 "16r00E2" 16r89 " LATIN SMALL LETTER A WITH CIRCUMFLEX " |
|
628 "16r00E3" 16r00 " invalid " |
|
629 "16r00E4" 16r8A " LATIN SMALL LETTER A WITH DIAERESIS " |
|
630 "16r00E5" 16r00 " invalid " |
|
631 "16r00E6" 16r00 " invalid " |
|
632 "16r00E7" 16r8D " LATIN SMALL LETTER C WITH CEDILLA " |
|
633 "16r00E8" 16r8F " LATIN SMALL LETTER E WITH GRAVE " |
|
634 "16r00E9" 16r8E " LATIN SMALL LETTER E WITH ACUTE " |
|
635 "16r00EA" 16r90 " LATIN SMALL LETTER E WITH CIRCUMFLEX " |
|
636 "16r00EB" 16r91 " LATIN SMALL LETTER E WITH DIAERESIS " |
|
637 "16r00EC" 16r00 " invalid " |
|
638 "16r00ED" 16r00 " invalid " |
|
639 "16r00EE" 16r94 " LATIN SMALL LETTER I WITH CIRCUMFLEX " |
|
640 "16r00EF" 16r95 " LATIN SMALL LETTER I WITH DIAERESIS " |
|
641 "16r00F0" 16r00 " invalid " |
|
642 "16r00F1" 16r00 " invalid " |
|
643 "16r00F2" 16r00 " invalid " |
|
644 "16r00F3" 16r00 " invalid " |
|
645 "16r00F4" 16r99 " LATIN SMALL LETTER O WITH CIRCUMFLEX " |
|
646 "16r00F5" 16r00 " invalid " |
|
647 "16r00F6" 16r9A " LATIN SMALL LETTER O WITH DIAERESIS " |
|
648 "16r00F7" 16rD6 " DIVISION SIGN " |
|
649 "16r00F8" 16r00 " invalid " |
|
650 "16r00F9" 16r9D " LATIN SMALL LETTER U WITH GRAVE " |
|
651 "16r00FA" 16r00 " invalid " |
|
652 "16r00FB" 16r9E " LATIN SMALL LETTER U WITH CIRCUMFLEX " |
|
653 "16r00FC" 16r9F " LATIN SMALL LETTER U WITH DIAERESIS " |
|
654 ] at:(unicode - 16r9F). |
|
655 t == 0 ifFalse:[^ t]. |
|
656 ^ self encodingError |
|
657 ] value. |
|
658 ]. |
|
659 unicode <= 16r152 ifTrue:[ |
|
660 ^ self encodingError |
|
661 ]. |
|
662 ^ "16r0153" 16r00CF " LATIN SMALL LIGATURE OE " |
|
663 ]. |
|
664 unicode <= 16r383 ifTrue:[ |
|
665 ^ self encodingError |
|
666 ]. |
|
667 [ |
|
668 |t| |
|
669 t := #[ |
|
670 "16r0384" 16r8B " GREEK TONOS " |
|
671 "16r0385" 16r87 " GREEK DIALYTIKA TONOS " |
|
672 "16r0386" 16rCD " GREEK CAPITAL LETTER ALPHA WITH TONOS " |
|
673 "16r0387" 16r00 " invalid " |
|
674 "16r0388" 16rCE " GREEK CAPITAL LETTER EPSILON WITH TONOS " |
|
675 "16r0389" 16rD7 " GREEK CAPITAL LETTER ETA WITH TONOS " |
|
676 "16r038A" 16rD8 " GREEK CAPITAL LETTER IOTA WITH TONOS " |
|
677 "16r038B" 16r00 " invalid " |
|
678 "16r038C" 16rD9 " GREEK CAPITAL LETTER OMICRON WITH TONOS " |
|
679 "16r038D" 16r00 " invalid " |
|
680 "16r038E" 16rDA " GREEK CAPITAL LETTER UPSILON WITH TONOS " |
|
681 "16r038F" 16rDF " GREEK CAPITAL LETTER OMEGA WITH TONOS " |
|
682 "16r0390" 16rFD " GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS " |
|
683 "16r0391" 16rB0 " GREEK CAPITAL LETTER ALPHA " |
|
684 "16r0392" 16rB5 " GREEK CAPITAL LETTER BETA " |
|
685 "16r0393" 16rA1 " GREEK CAPITAL LETTER GAMMA " |
|
686 "16r0394" 16rA2 " GREEK CAPITAL LETTER DELTA " |
|
687 "16r0395" 16rB6 " GREEK CAPITAL LETTER EPSILON " |
|
688 "16r0396" 16rB7 " GREEK CAPITAL LETTER ZETA " |
|
689 "16r0397" 16rB8 " GREEK CAPITAL LETTER ETA " |
|
690 "16r0398" 16rA3 " GREEK CAPITAL LETTER THETA " |
|
691 "16r0399" 16rB9 " GREEK CAPITAL LETTER IOTA " |
|
692 "16r039A" 16rBA " GREEK CAPITAL LETTER KAPPA " |
|
693 "16r039B" 16rA4 " GREEK CAPITAL LETTER LAMDA " |
|
694 "16r039C" 16rBB " GREEK CAPITAL LETTER MU " |
|
695 "16r039D" 16rC1 " GREEK CAPITAL LETTER NU " |
|
696 "16r039E" 16rA5 " GREEK CAPITAL LETTER XI " |
|
697 "16r039F" 16rC3 " GREEK CAPITAL LETTER OMICRON " |
|
698 "16r03A0" 16rA6 " GREEK CAPITAL LETTER PI " |
|
699 "16r03A1" 16rC4 " GREEK CAPITAL LETTER RHO " |
|
700 "16r03A2" 16r00 " invalid " |
|
701 "16r03A3" 16rAA " GREEK CAPITAL LETTER SIGMA " |
|
702 "16r03A4" 16rC6 " GREEK CAPITAL LETTER TAU " |
|
703 "16r03A5" 16rCB " GREEK CAPITAL LETTER UPSILON " |
|
704 "16r03A6" 16rBC " GREEK CAPITAL LETTER PHI " |
|
705 "16r03A7" 16rCC " GREEK CAPITAL LETTER CHI " |
|
706 "16r03A8" 16rBE " GREEK CAPITAL LETTER PSI " |
|
707 "16r03A9" 16rBF " GREEK CAPITAL LETTER OMEGA " |
|
708 "16r03AA" 16rAB " GREEK CAPITAL LETTER IOTA WITH DIALYTIKA " |
|
709 "16r03AB" 16rBD " GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA " |
|
710 "16r03AC" 16rC0 " GREEK SMALL LETTER ALPHA WITH TONOS " |
|
711 "16r03AD" 16rDB " GREEK SMALL LETTER EPSILON WITH TONOS " |
|
712 "16r03AE" 16rDC " GREEK SMALL LETTER ETA WITH TONOS " |
|
713 "16r03AF" 16rDD " GREEK SMALL LETTER IOTA WITH TONOS " |
|
714 "16r03B0" 16rFE " GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS " |
|
715 "16r03B1" 16rE1 " GREEK SMALL LETTER ALPHA " |
|
716 "16r03B2" 16rE2 " GREEK SMALL LETTER BETA " |
|
717 "16r03B3" 16rE7 " GREEK SMALL LETTER GAMMA " |
|
718 "16r03B4" 16rE4 " GREEK SMALL LETTER DELTA " |
|
719 "16r03B5" 16rE5 " GREEK SMALL LETTER EPSILON " |
|
720 "16r03B6" 16rFA " GREEK SMALL LETTER ZETA " |
|
721 "16r03B7" 16rE8 " GREEK SMALL LETTER ETA " |
|
722 "16r03B8" 16rF5 " GREEK SMALL LETTER THETA " |
|
723 "16r03B9" 16rE9 " GREEK SMALL LETTER IOTA " |
|
724 "16r03BA" 16rEB " GREEK SMALL LETTER KAPPA " |
|
725 "16r03BB" 16rEC " GREEK SMALL LETTER LAMDA " |
|
726 "16r03BC" 16rED " GREEK SMALL LETTER MU " |
|
727 "16r03BD" 16rEE " GREEK SMALL LETTER NU " |
|
728 "16r03BE" 16rEA " GREEK SMALL LETTER XI " |
|
729 "16r03BF" 16rEF " GREEK SMALL LETTER OMICRON " |
|
730 "16r03C0" 16rF0 " GREEK SMALL LETTER PI " |
|
731 "16r03C1" 16rF2 " GREEK SMALL LETTER RHO " |
|
732 "16r03C2" 16rF7 " GREEK SMALL LETTER FINAL SIGMA " |
|
733 "16r03C3" 16rF3 " GREEK SMALL LETTER SIGMA " |
|
734 "16r03C4" 16rF4 " GREEK SMALL LETTER TAU " |
|
735 "16r03C5" 16rF9 " GREEK SMALL LETTER UPSILON " |
|
736 "16r03C6" 16rE6 " GREEK SMALL LETTER PHI " |
|
737 "16r03C7" 16rF8 " GREEK SMALL LETTER CHI " |
|
738 "16r03C8" 16rE3 " GREEK SMALL LETTER PSI " |
|
739 "16r03C9" 16rF6 " GREEK SMALL LETTER OMEGA " |
|
740 "16r03CA" 16rFB " GREEK SMALL LETTER IOTA WITH DIALYTIKA " |
|
741 "16r03CB" 16rFC " GREEK SMALL LETTER UPSILON WITH DIALYTIKA " |
|
742 "16r03CC" 16rDE " GREEK SMALL LETTER OMICRON WITH TONOS " |
|
743 "16r03CD" 16rE0 " GREEK SMALL LETTER UPSILON WITH TONOS " |
|
744 "16r03CE" 16rF1 " GREEK SMALL LETTER OMEGA WITH TONOS " |
|
745 ] at:(unicode - 16r383). |
|
746 t == 0 ifFalse:[^ t]. |
|
747 ^ self encodingError |
|
748 ] value. |
|
749 ]. |
|
750 unicode <= 16r2012 ifTrue:[ |
|
751 ^ self encodingError |
|
752 ]. |
|
753 unicode <= 16r2122 ifTrue:[ |
|
754 unicode <= 16r2030 ifTrue:[ |
|
755 [ |
|
756 |t| |
|
757 t := #[ |
|
758 "16r2013" 16rD0 " EN DASH " |
|
759 "16r2014" 16r00 " invalid " |
|
760 "16r2015" 16rD1 " HORIZONTAL BAR " |
|
761 "16r2016" 16r00 " invalid " |
|
762 "16r2017" 16r00 " invalid " |
|
763 "16r2018" 16rD4 " LEFT SINGLE QUOTATION MARK " |
|
764 "16r2019" 16rD5 " RIGHT SINGLE QUOTATION MARK " |
|
765 "16r201A" 16r00 " invalid " |
|
766 "16r201B" 16r00 " invalid " |
|
767 "16r201C" 16rD2 " LEFT DOUBLE QUOTATION MARK " |
|
768 "16r201D" 16rD3 " RIGHT DOUBLE QUOTATION MARK " |
|
769 "16r201E" 16r00 " invalid " |
|
770 "16r201F" 16r00 " invalid " |
|
771 "16r2020" 16rA0 " DAGGER " |
|
772 "16r2021" 16r00 " invalid " |
|
773 "16r2022" 16r96 " BULLET " |
|
774 "16r2023" 16r00 " invalid " |
|
775 "16r2024" 16r00 " invalid " |
|
776 "16r2025" 16r00 " invalid " |
|
777 "16r2026" 16rC9 " HORIZONTAL ELLIPSIS " |
|
778 "16r2027" 16r00 " invalid " |
|
779 "16r2028" 16r00 " invalid " |
|
780 "16r2029" 16r00 " invalid " |
|
781 "16r202A" 16r00 " invalid " |
|
782 "16r202B" 16r00 " invalid " |
|
783 "16r202C" 16r00 " invalid " |
|
784 "16r202D" 16r00 " invalid " |
|
785 "16r202E" 16r00 " invalid " |
|
786 "16r202F" 16r00 " invalid " |
|
787 "16r2030" 16r98 " PER MILLE SIGN " |
|
788 ] at:(unicode - 16r2012). |
|
789 t == 0 ifFalse:[^ t]. |
|
790 ^ self encodingError |
|
791 ] value. |
|
792 ]. |
|
793 unicode <= 16r20AB ifTrue:[ |
|
794 ^ self encodingError |
|
795 ]. |
|
796 unicode == 16r20AC ifTrue:[ |
|
797 ^ "16r20AC" 16r009C " EURO SIGN # before Mac OS 9.2.2, was SOFT HYPHEN " |
|
798 ]. |
|
799 unicode <= 16r2121 ifTrue:[ |
|
800 ^ self encodingError |
|
801 ]. |
|
802 ^ "16r2122" 16r0093 " TRADE MARK SIGN " |
|
803 ]. |
|
804 unicode <= 16r2247 ifTrue:[ |
|
805 ^ self encodingError |
|
806 ]. |
|
807 unicode == 16r2248 ifTrue:[ |
|
808 ^ "16r2248" 16r00C5 " ALMOST EQUAL TO " |
|
809 ]. |
|
810 unicode <= 16r225F ifTrue:[ |
|
811 ^ self encodingError |
|
812 ]. |
|
813 [ |
|
814 |t| |
|
815 t := #[ |
|
816 "16r2260" 16rAD " NOT EQUAL TO " |
|
817 "16r2261" 16r00 " invalid " |
|
818 "16r2262" 16r00 " invalid " |
|
819 "16r2263" 16r00 " invalid " |
|
820 "16r2264" 16rB2 " LESS-THAN OR EQUAL TO " |
|
821 "16r2265" 16rB3 " GREATER-THAN OR EQUAL TO " |
|
822 ] at:(unicode - 16r225F). |
|
823 t == 0 ifFalse:[^ t]. |
|
824 ^ self encodingError |
|
825 ] value. |
|
826 ! ! |
|
827 |
|
828 !MAC_Greek class methodsFor:'documentation'! |
|
829 |
|
830 version |
|
831 ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoderImplementations__MAC_Greek.st,v 1.1 2004-03-05 17:24:32 cg Exp $' |
|
832 ! ! |