|
1 "{ Encoding: utf8 }" |
|
2 |
|
3 "{ Package: 'stx:libbasic' }" |
|
4 |
|
5 "{ NameSpace: CharacterEncoderImplementations }" |
|
6 |
|
7 SingleByteEncoder subclass:#ISO8859_15 |
|
8 instanceVariableNames:'' |
|
9 classVariableNames:'' |
|
10 poolDictionaries:'' |
|
11 category:'Collections-Text-Encodings' |
|
12 ! |
|
13 |
|
14 |
|
15 !ISO8859_15 class methodsFor:'mapping'! |
|
16 |
|
17 mapFileURL1_relativePathName |
|
18 ^ 'ISO8859/8859-15.TXT' |
|
19 ! |
|
20 |
|
21 mapping |
|
22 " |
|
23 # From: http://www.unicode.org/Public/MAPPINGS/ISO8859/8859-15.TXT |
|
24 |
|
25 # |
|
26 # Name: ISO/IEC 8859-15:1999 to Unicode |
|
27 # Unicode version: 3.0 |
|
28 # Table version: 1.0 |
|
29 # Table format: Format A |
|
30 # Date: 1999 July 27 |
|
31 # Authors: Markus Kuhn <mkuhn@acm.org> |
|
32 # Ken Whistler <kenw@sybase.com> |
|
33 # |
|
34 # Copyright (c) 1998 - 1999 Unicode, Inc. All Rights reserved. |
|
35 # |
|
36 # This file is provided as-is by Unicode, Inc. (The Unicode Consortium). |
|
37 # No claims are made as to fitness for any particular purpose. No |
|
38 # warranties of any kind are expressed or implied. The recipient |
|
39 # agrees to determine applicability of information provided. If this |
|
40 # file has been provided on optical media by Unicode, Inc., the sole |
|
41 # remedy for any claim will be exchange of defective media within 90 |
|
42 # days of receipt. |
|
43 # |
|
44 # Unicode, Inc. hereby grants the right to freely use the information |
|
45 # supplied in this file in the creation of products supporting the |
|
46 # Unicode Standard, and to make copies of this file in any form for |
|
47 # internal or external distribution as long as this notice remains |
|
48 # attached. |
|
49 # |
|
50 # General notes: |
|
51 # |
|
52 # This table contains the data the Unicode Consortium has on how |
|
53 # ISO/IEC 8859-15:1999 characters map into Unicode. |
|
54 # |
|
55 # Format: Three tab-separated columns |
|
56 # Column #1 is the ISO/IEC 8859-15 code (in hex as 0xXX) |
|
57 # Column #2 is the Unicode (in hex as 0xXXXX) |
|
58 # Column #3 the Unicode name (follows a comment sign, '#') |
|
59 # |
|
60 # The entries are in ISO/IEC 8859-15 order. |
|
61 # |
|
62 # Version history |
|
63 # |
|
64 # Updated versions of this file may be found in: |
|
65 # <ftp://ftp.unicode.org/Public/MAPPINGS/> |
|
66 # |
|
67 # Any comments or problems, contact <errata@unicode.org> |
|
68 # Please note that <errata@unicode.org> is an archival address; |
|
69 # notices will be checked, but do not expect an immediate response. |
|
70 # |
|
71 0x00 0x0000 # NULL |
|
72 0x01 0x0001 # START OF HEADING |
|
73 0x02 0x0002 # START OF TEXT |
|
74 0x03 0x0003 # END OF TEXT |
|
75 0x04 0x0004 # END OF TRANSMISSION |
|
76 0x05 0x0005 # ENQUIRY |
|
77 0x06 0x0006 # ACKNOWLEDGE |
|
78 0x07 0x0007 # BELL |
|
79 0x08 0x0008 # BACKSPACE |
|
80 0x09 0x0009 # HORIZONTAL TABULATION |
|
81 0x0A 0x000A # LINE FEED |
|
82 0x0B 0x000B # VERTICAL TABULATION |
|
83 0x0C 0x000C # FORM FEED |
|
84 0x0D 0x000D # CARRIAGE RETURN |
|
85 0x0E 0x000E # SHIFT OUT |
|
86 0x0F 0x000F # SHIFT IN |
|
87 0x10 0x0010 # DATA LINK ESCAPE |
|
88 0x11 0x0011 # DEVICE CONTROL ONE |
|
89 0x12 0x0012 # DEVICE CONTROL TWO |
|
90 0x13 0x0013 # DEVICE CONTROL THREE |
|
91 0x14 0x0014 # DEVICE CONTROL FOUR |
|
92 0x15 0x0015 # NEGATIVE ACKNOWLEDGE |
|
93 0x16 0x0016 # SYNCHRONOUS IDLE |
|
94 0x17 0x0017 # END OF TRANSMISSION BLOCK |
|
95 0x18 0x0018 # CANCEL |
|
96 0x19 0x0019 # END OF MEDIUM |
|
97 0x1A 0x001A # SUBSTITUTE |
|
98 0x1B 0x001B # ESCAPE |
|
99 0x1C 0x001C # FILE SEPARATOR |
|
100 0x1D 0x001D # GROUP SEPARATOR |
|
101 0x1E 0x001E # RECORD SEPARATOR |
|
102 0x1F 0x001F # UNIT SEPARATOR |
|
103 0x20 0x0020 # SPACE |
|
104 0x21 0x0021 # EXCLAMATION MARK |
|
105 0x22 0x0022 # QUOTATION MARK |
|
106 0x23 0x0023 # NUMBER SIGN |
|
107 0x24 0x0024 # DOLLAR SIGN |
|
108 0x25 0x0025 # PERCENT SIGN |
|
109 0x26 0x0026 # AMPERSAND |
|
110 0x27 0x0027 # APOSTROPHE |
|
111 0x28 0x0028 # LEFT PARENTHESIS |
|
112 0x29 0x0029 # RIGHT PARENTHESIS |
|
113 0x2A 0x002A # ASTERISK |
|
114 0x2B 0x002B # PLUS SIGN |
|
115 0x2C 0x002C # COMMA |
|
116 0x2D 0x002D # HYPHEN-MINUS |
|
117 0x2E 0x002E # FULL STOP |
|
118 0x2F 0x002F # SOLIDUS |
|
119 0x30 0x0030 # DIGIT ZERO |
|
120 0x31 0x0031 # DIGIT ONE |
|
121 0x32 0x0032 # DIGIT TWO |
|
122 0x33 0x0033 # DIGIT THREE |
|
123 0x34 0x0034 # DIGIT FOUR |
|
124 0x35 0x0035 # DIGIT FIVE |
|
125 0x36 0x0036 # DIGIT SIX |
|
126 0x37 0x0037 # DIGIT SEVEN |
|
127 0x38 0x0038 # DIGIT EIGHT |
|
128 0x39 0x0039 # DIGIT NINE |
|
129 0x3A 0x003A # COLON |
|
130 0x3B 0x003B # SEMICOLON |
|
131 0x3C 0x003C # LESS-THAN SIGN |
|
132 0x3D 0x003D # EQUALS SIGN |
|
133 0x3E 0x003E # GREATER-THAN SIGN |
|
134 0x3F 0x003F # QUESTION MARK |
|
135 0x40 0x0040 # COMMERCIAL AT |
|
136 0x41 0x0041 # LATIN CAPITAL LETTER A |
|
137 0x42 0x0042 # LATIN CAPITAL LETTER B |
|
138 0x43 0x0043 # LATIN CAPITAL LETTER C |
|
139 0x44 0x0044 # LATIN CAPITAL LETTER D |
|
140 0x45 0x0045 # LATIN CAPITAL LETTER E |
|
141 0x46 0x0046 # LATIN CAPITAL LETTER F |
|
142 0x47 0x0047 # LATIN CAPITAL LETTER G |
|
143 0x48 0x0048 # LATIN CAPITAL LETTER H |
|
144 0x49 0x0049 # LATIN CAPITAL LETTER I |
|
145 0x4A 0x004A # LATIN CAPITAL LETTER J |
|
146 0x4B 0x004B # LATIN CAPITAL LETTER K |
|
147 0x4C 0x004C # LATIN CAPITAL LETTER L |
|
148 0x4D 0x004D # LATIN CAPITAL LETTER M |
|
149 0x4E 0x004E # LATIN CAPITAL LETTER N |
|
150 0x4F 0x004F # LATIN CAPITAL LETTER O |
|
151 0x50 0x0050 # LATIN CAPITAL LETTER P |
|
152 0x51 0x0051 # LATIN CAPITAL LETTER Q |
|
153 0x52 0x0052 # LATIN CAPITAL LETTER R |
|
154 0x53 0x0053 # LATIN CAPITAL LETTER S |
|
155 0x54 0x0054 # LATIN CAPITAL LETTER T |
|
156 0x55 0x0055 # LATIN CAPITAL LETTER U |
|
157 0x56 0x0056 # LATIN CAPITAL LETTER V |
|
158 0x57 0x0057 # LATIN CAPITAL LETTER W |
|
159 0x58 0x0058 # LATIN CAPITAL LETTER X |
|
160 0x59 0x0059 # LATIN CAPITAL LETTER Y |
|
161 0x5A 0x005A # LATIN CAPITAL LETTER Z |
|
162 0x5B 0x005B # LEFT SQUARE BRACKET |
|
163 0x5C 0x005C # REVERSE SOLIDUS |
|
164 0x5D 0x005D # RIGHT SQUARE BRACKET |
|
165 0x5E 0x005E # CIRCUMFLEX ACCENT |
|
166 0x5F 0x005F # LOW LINE |
|
167 0x60 0x0060 # GRAVE ACCENT |
|
168 0x61 0x0061 # LATIN SMALL LETTER A |
|
169 0x62 0x0062 # LATIN SMALL LETTER B |
|
170 0x63 0x0063 # LATIN SMALL LETTER C |
|
171 0x64 0x0064 # LATIN SMALL LETTER D |
|
172 0x65 0x0065 # LATIN SMALL LETTER E |
|
173 0x66 0x0066 # LATIN SMALL LETTER F |
|
174 0x67 0x0067 # LATIN SMALL LETTER G |
|
175 0x68 0x0068 # LATIN SMALL LETTER H |
|
176 0x69 0x0069 # LATIN SMALL LETTER I |
|
177 0x6A 0x006A # LATIN SMALL LETTER J |
|
178 0x6B 0x006B # LATIN SMALL LETTER K |
|
179 0x6C 0x006C # LATIN SMALL LETTER L |
|
180 0x6D 0x006D # LATIN SMALL LETTER M |
|
181 0x6E 0x006E # LATIN SMALL LETTER N |
|
182 0x6F 0x006F # LATIN SMALL LETTER O |
|
183 0x70 0x0070 # LATIN SMALL LETTER P |
|
184 0x71 0x0071 # LATIN SMALL LETTER Q |
|
185 0x72 0x0072 # LATIN SMALL LETTER R |
|
186 0x73 0x0073 # LATIN SMALL LETTER S |
|
187 0x74 0x0074 # LATIN SMALL LETTER T |
|
188 0x75 0x0075 # LATIN SMALL LETTER U |
|
189 0x76 0x0076 # LATIN SMALL LETTER V |
|
190 0x77 0x0077 # LATIN SMALL LETTER W |
|
191 0x78 0x0078 # LATIN SMALL LETTER X |
|
192 0x79 0x0079 # LATIN SMALL LETTER Y |
|
193 0x7A 0x007A # LATIN SMALL LETTER Z |
|
194 0x7B 0x007B # LEFT CURLY BRACKET |
|
195 0x7C 0x007C # VERTICAL LINE |
|
196 0x7D 0x007D # RIGHT CURLY BRACKET |
|
197 0x7E 0x007E # TILDE |
|
198 0x7F 0x007F # DELETE |
|
199 0x80 0x0080 # <control> |
|
200 0x81 0x0081 # <control> |
|
201 0x82 0x0082 # <control> |
|
202 0x83 0x0083 # <control> |
|
203 0x84 0x0084 # <control> |
|
204 0x85 0x0085 # <control> |
|
205 0x86 0x0086 # <control> |
|
206 0x87 0x0087 # <control> |
|
207 0x88 0x0088 # <control> |
|
208 0x89 0x0089 # <control> |
|
209 0x8A 0x008A # <control> |
|
210 0x8B 0x008B # <control> |
|
211 0x8C 0x008C # <control> |
|
212 0x8D 0x008D # <control> |
|
213 0x8E 0x008E # <control> |
|
214 0x8F 0x008F # <control> |
|
215 0x90 0x0090 # <control> |
|
216 0x91 0x0091 # <control> |
|
217 0x92 0x0092 # <control> |
|
218 0x93 0x0093 # <control> |
|
219 0x94 0x0094 # <control> |
|
220 0x95 0x0095 # <control> |
|
221 0x96 0x0096 # <control> |
|
222 0x97 0x0097 # <control> |
|
223 0x98 0x0098 # <control> |
|
224 0x99 0x0099 # <control> |
|
225 0x9A 0x009A # <control> |
|
226 0x9B 0x009B # <control> |
|
227 0x9C 0x009C # <control> |
|
228 0x9D 0x009D # <control> |
|
229 0x9E 0x009E # <control> |
|
230 0x9F 0x009F # <control> |
|
231 0xA0 0x00A0 # NO-BREAK SPACE |
|
232 0xA1 0x00A1 # INVERTED EXCLAMATION MARK |
|
233 0xA2 0x00A2 # CENT SIGN |
|
234 0xA3 0x00A3 # POUND SIGN |
|
235 0xA4 0x20AC # EURO SIGN |
|
236 0xA5 0x00A5 # YEN SIGN |
|
237 0xA6 0x0160 # LATIN CAPITAL LETTER S WITH CARON |
|
238 0xA7 0x00A7 # SECTION SIGN |
|
239 0xA8 0x0161 # LATIN SMALL LETTER S WITH CARON |
|
240 0xA9 0x00A9 # COPYRIGHT SIGN |
|
241 0xAA 0x00AA # FEMININE ORDINAL INDICATOR |
|
242 0xAB 0x00AB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK |
|
243 0xAC 0x00AC # NOT SIGN |
|
244 0xAD 0x00AD # SOFT HYPHEN |
|
245 0xAE 0x00AE # REGISTERED SIGN |
|
246 0xAF 0x00AF # MACRON |
|
247 0xB0 0x00B0 # DEGREE SIGN |
|
248 0xB1 0x00B1 # PLUS-MINUS SIGN |
|
249 0xB2 0x00B2 # SUPERSCRIPT TWO |
|
250 0xB3 0x00B3 # SUPERSCRIPT THREE |
|
251 0xB4 0x017D # LATIN CAPITAL LETTER Z WITH CARON |
|
252 0xB5 0x00B5 # MICRO SIGN |
|
253 0xB6 0x00B6 # PILCROW SIGN |
|
254 0xB7 0x00B7 # MIDDLE DOT |
|
255 0xB8 0x017E # LATIN SMALL LETTER Z WITH CARON |
|
256 0xB9 0x00B9 # SUPERSCRIPT ONE |
|
257 0xBA 0x00BA # MASCULINE ORDINAL INDICATOR |
|
258 0xBB 0x00BB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK |
|
259 0xBC 0x0152 # LATIN CAPITAL LIGATURE OE |
|
260 0xBD 0x0153 # LATIN SMALL LIGATURE OE |
|
261 0xBE 0x0178 # LATIN CAPITAL LETTER Y WITH DIAERESIS |
|
262 0xBF 0x00BF # INVERTED QUESTION MARK |
|
263 0xC0 0x00C0 # LATIN CAPITAL LETTER A WITH GRAVE |
|
264 0xC1 0x00C1 # LATIN CAPITAL LETTER A WITH ACUTE |
|
265 0xC2 0x00C2 # LATIN CAPITAL LETTER A WITH CIRCUMFLEX |
|
266 0xC3 0x00C3 # LATIN CAPITAL LETTER A WITH TILDE |
|
267 0xC4 0x00C4 # LATIN CAPITAL LETTER A WITH DIAERESIS |
|
268 0xC5 0x00C5 # LATIN CAPITAL LETTER A WITH RING ABOVE |
|
269 0xC6 0x00C6 # LATIN CAPITAL LETTER AE |
|
270 0xC7 0x00C7 # LATIN CAPITAL LETTER C WITH CEDILLA |
|
271 0xC8 0x00C8 # LATIN CAPITAL LETTER E WITH GRAVE |
|
272 0xC9 0x00C9 # LATIN CAPITAL LETTER E WITH ACUTE |
|
273 0xCA 0x00CA # LATIN CAPITAL LETTER E WITH CIRCUMFLEX |
|
274 0xCB 0x00CB # LATIN CAPITAL LETTER E WITH DIAERESIS |
|
275 0xCC 0x00CC # LATIN CAPITAL LETTER I WITH GRAVE |
|
276 0xCD 0x00CD # LATIN CAPITAL LETTER I WITH ACUTE |
|
277 0xCE 0x00CE # LATIN CAPITAL LETTER I WITH CIRCUMFLEX |
|
278 0xCF 0x00CF # LATIN CAPITAL LETTER I WITH DIAERESIS |
|
279 0xD0 0x00D0 # LATIN CAPITAL LETTER ETH |
|
280 0xD1 0x00D1 # LATIN CAPITAL LETTER N WITH TILDE |
|
281 0xD2 0x00D2 # LATIN CAPITAL LETTER O WITH GRAVE |
|
282 0xD3 0x00D3 # LATIN CAPITAL LETTER O WITH ACUTE |
|
283 0xD4 0x00D4 # LATIN CAPITAL LETTER O WITH CIRCUMFLEX |
|
284 0xD5 0x00D5 # LATIN CAPITAL LETTER O WITH TILDE |
|
285 0xD6 0x00D6 # LATIN CAPITAL LETTER O WITH DIAERESIS |
|
286 0xD7 0x00D7 # MULTIPLICATION SIGN |
|
287 0xD8 0x00D8 # LATIN CAPITAL LETTER O WITH STROKE |
|
288 0xD9 0x00D9 # LATIN CAPITAL LETTER U WITH GRAVE |
|
289 0xDA 0x00DA # LATIN CAPITAL LETTER U WITH ACUTE |
|
290 0xDB 0x00DB # LATIN CAPITAL LETTER U WITH CIRCUMFLEX |
|
291 0xDC 0x00DC # LATIN CAPITAL LETTER U WITH DIAERESIS |
|
292 0xDD 0x00DD # LATIN CAPITAL LETTER Y WITH ACUTE |
|
293 0xDE 0x00DE # LATIN CAPITAL LETTER THORN |
|
294 0xDF 0x00DF # LATIN SMALL LETTER SHARP S |
|
295 0xE0 0x00E0 # LATIN SMALL LETTER A WITH GRAVE |
|
296 0xE1 0x00E1 # LATIN SMALL LETTER A WITH ACUTE |
|
297 0xE2 0x00E2 # LATIN SMALL LETTER A WITH CIRCUMFLEX |
|
298 0xE3 0x00E3 # LATIN SMALL LETTER A WITH TILDE |
|
299 0xE4 0x00E4 # LATIN SMALL LETTER A WITH DIAERESIS |
|
300 0xE5 0x00E5 # LATIN SMALL LETTER A WITH RING ABOVE |
|
301 0xE6 0x00E6 # LATIN SMALL LETTER AE |
|
302 0xE7 0x00E7 # LATIN SMALL LETTER C WITH CEDILLA |
|
303 0xE8 0x00E8 # LATIN SMALL LETTER E WITH GRAVE |
|
304 0xE9 0x00E9 # LATIN SMALL LETTER E WITH ACUTE |
|
305 0xEA 0x00EA # LATIN SMALL LETTER E WITH CIRCUMFLEX |
|
306 0xEB 0x00EB # LATIN SMALL LETTER E WITH DIAERESIS |
|
307 0xEC 0x00EC # LATIN SMALL LETTER I WITH GRAVE |
|
308 0xED 0x00ED # LATIN SMALL LETTER I WITH ACUTE |
|
309 0xEE 0x00EE # LATIN SMALL LETTER I WITH CIRCUMFLEX |
|
310 0xEF 0x00EF # LATIN SMALL LETTER I WITH DIAERESIS |
|
311 0xF0 0x00F0 # LATIN SMALL LETTER ETH |
|
312 0xF1 0x00F1 # LATIN SMALL LETTER N WITH TILDE |
|
313 0xF2 0x00F2 # LATIN SMALL LETTER O WITH GRAVE |
|
314 0xF3 0x00F3 # LATIN SMALL LETTER O WITH ACUTE |
|
315 0xF4 0x00F4 # LATIN SMALL LETTER O WITH CIRCUMFLEX |
|
316 0xF5 0x00F5 # LATIN SMALL LETTER O WITH TILDE |
|
317 0xF6 0x00F6 # LATIN SMALL LETTER O WITH DIAERESIS |
|
318 0xF7 0x00F7 # DIVISION SIGN |
|
319 0xF8 0x00F8 # LATIN SMALL LETTER O WITH STROKE |
|
320 0xF9 0x00F9 # LATIN SMALL LETTER U WITH GRAVE |
|
321 0xFA 0x00FA # LATIN SMALL LETTER U WITH ACUTE |
|
322 0xFB 0x00FB # LATIN SMALL LETTER U WITH CIRCUMFLEX |
|
323 0xFC 0x00FC # LATIN SMALL LETTER U WITH DIAERESIS |
|
324 0xFD 0x00FD # LATIN SMALL LETTER Y WITH ACUTE |
|
325 0xFE 0x00FE # LATIN SMALL LETTER THORN |
|
326 0xFF 0x00FF # LATIN SMALL LETTER Y WITH DIAERESIS |
|
327 |
|
328 |
|
329 " |
|
330 ! ! |
|
331 |
|
332 !ISO8859_15 class methodsFor:'queries'! |
|
333 |
|
334 namesOfEncoding |
|
335 ^ #( 'iso8859-15' 'iso-8859-15' 'latin9' 'latin-9' 'iso-ir-203') |
|
336 ! ! |
|
337 |
|
338 !ISO8859_15 methodsFor:'encoding & decoding'! |
|
339 |
|
340 decode:codeArg |
|
341 "Automagically generated by generateCode - do not modify. |
|
342 Decode from my encoding into unicode." |
|
343 |
|
344 |code "{ Class: SmallInteger }"| |
|
345 |
|
346 code := codeArg. |
|
347 code <= 16rA3 ifTrue:[ ^ code ]. |
|
348 code > 16rFF ifTrue:[ |
|
349 ^ self decodingError. |
|
350 ]. |
|
351 ^ #( |
|
352 "16r00A4" 16r20AC " EURO SIGN " |
|
353 "16r00A5" 16r00A5 " YEN SIGN " |
|
354 "16r00A6" 16r0160 " LATIN CAPITAL LETTER S WITH CARON " |
|
355 "16r00A7" 16r00A7 " SECTION SIGN " |
|
356 "16r00A8" 16r0161 " LATIN SMALL LETTER S WITH CARON " |
|
357 "16r00A9" 16r00A9 " COPYRIGHT SIGN " |
|
358 "16r00AA" 16r00AA " FEMININE ORDINAL INDICATOR " |
|
359 "16r00AB" 16r00AB " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
360 "16r00AC" 16r00AC " NOT SIGN " |
|
361 "16r00AD" 16r00AD " SOFT HYPHEN " |
|
362 "16r00AE" 16r00AE " REGISTERED SIGN " |
|
363 "16r00AF" 16r00AF " MACRON " |
|
364 "16r00B0" 16r00B0 " DEGREE SIGN " |
|
365 "16r00B1" 16r00B1 " PLUS-MINUS SIGN " |
|
366 "16r00B2" 16r00B2 " SUPERSCRIPT TWO " |
|
367 "16r00B3" 16r00B3 " SUPERSCRIPT THREE " |
|
368 "16r00B4" 16r017D " LATIN CAPITAL LETTER Z WITH CARON " |
|
369 "16r00B5" 16r00B5 " MICRO SIGN " |
|
370 "16r00B6" 16r00B6 " PILCROW SIGN " |
|
371 "16r00B7" 16r00B7 " MIDDLE DOT " |
|
372 "16r00B8" 16r017E " LATIN SMALL LETTER Z WITH CARON " |
|
373 "16r00B9" 16r00B9 " SUPERSCRIPT ONE " |
|
374 "16r00BA" 16r00BA " MASCULINE ORDINAL INDICATOR " |
|
375 "16r00BB" 16r00BB " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
376 "16r00BC" 16r0152 " LATIN CAPITAL LIGATURE OE " |
|
377 "16r00BD" 16r0153 " LATIN SMALL LIGATURE OE " |
|
378 "16r00BE" 16r0178 " LATIN CAPITAL LETTER Y WITH DIAERESIS " |
|
379 "16r00BF" 16r00BF " INVERTED QUESTION MARK " |
|
380 "16r00C0" 16r00C0 " LATIN CAPITAL LETTER A WITH GRAVE " |
|
381 "16r00C1" 16r00C1 " LATIN CAPITAL LETTER A WITH ACUTE " |
|
382 "16r00C2" 16r00C2 " LATIN CAPITAL LETTER A WITH CIRCUMFLEX " |
|
383 "16r00C3" 16r00C3 " LATIN CAPITAL LETTER A WITH TILDE " |
|
384 "16r00C4" 16r00C4 " LATIN CAPITAL LETTER A WITH DIAERESIS " |
|
385 "16r00C5" 16r00C5 " LATIN CAPITAL LETTER A WITH RING ABOVE " |
|
386 "16r00C6" 16r00C6 " LATIN CAPITAL LETTER AE " |
|
387 "16r00C7" 16r00C7 " LATIN CAPITAL LETTER C WITH CEDILLA " |
|
388 "16r00C8" 16r00C8 " LATIN CAPITAL LETTER E WITH GRAVE " |
|
389 "16r00C9" 16r00C9 " LATIN CAPITAL LETTER E WITH ACUTE " |
|
390 "16r00CA" 16r00CA " LATIN CAPITAL LETTER E WITH CIRCUMFLEX " |
|
391 "16r00CB" 16r00CB " LATIN CAPITAL LETTER E WITH DIAERESIS " |
|
392 "16r00CC" 16r00CC " LATIN CAPITAL LETTER I WITH GRAVE " |
|
393 "16r00CD" 16r00CD " LATIN CAPITAL LETTER I WITH ACUTE " |
|
394 "16r00CE" 16r00CE " LATIN CAPITAL LETTER I WITH CIRCUMFLEX " |
|
395 "16r00CF" 16r00CF " LATIN CAPITAL LETTER I WITH DIAERESIS " |
|
396 "16r00D0" 16r00D0 " LATIN CAPITAL LETTER ETH " |
|
397 "16r00D1" 16r00D1 " LATIN CAPITAL LETTER N WITH TILDE " |
|
398 "16r00D2" 16r00D2 " LATIN CAPITAL LETTER O WITH GRAVE " |
|
399 "16r00D3" 16r00D3 " LATIN CAPITAL LETTER O WITH ACUTE " |
|
400 "16r00D4" 16r00D4 " LATIN CAPITAL LETTER O WITH CIRCUMFLEX " |
|
401 "16r00D5" 16r00D5 " LATIN CAPITAL LETTER O WITH TILDE " |
|
402 "16r00D6" 16r00D6 " LATIN CAPITAL LETTER O WITH DIAERESIS " |
|
403 "16r00D7" 16r00D7 " MULTIPLICATION SIGN " |
|
404 "16r00D8" 16r00D8 " LATIN CAPITAL LETTER O WITH STROKE " |
|
405 "16r00D9" 16r00D9 " LATIN CAPITAL LETTER U WITH GRAVE " |
|
406 "16r00DA" 16r00DA " LATIN CAPITAL LETTER U WITH ACUTE " |
|
407 "16r00DB" 16r00DB " LATIN CAPITAL LETTER U WITH CIRCUMFLEX " |
|
408 "16r00DC" 16r00DC " LATIN CAPITAL LETTER U WITH DIAERESIS " |
|
409 "16r00DD" 16r00DD " LATIN CAPITAL LETTER Y WITH ACUTE " |
|
410 "16r00DE" 16r00DE " LATIN CAPITAL LETTER THORN " |
|
411 "16r00DF" 16r00DF " LATIN SMALL LETTER SHARP S " |
|
412 "16r00E0" 16r00E0 " LATIN SMALL LETTER A WITH GRAVE " |
|
413 "16r00E1" 16r00E1 " LATIN SMALL LETTER A WITH ACUTE " |
|
414 "16r00E2" 16r00E2 " LATIN SMALL LETTER A WITH CIRCUMFLEX " |
|
415 "16r00E3" 16r00E3 " LATIN SMALL LETTER A WITH TILDE " |
|
416 "16r00E4" 16r00E4 " LATIN SMALL LETTER A WITH DIAERESIS " |
|
417 "16r00E5" 16r00E5 " LATIN SMALL LETTER A WITH RING ABOVE " |
|
418 "16r00E6" 16r00E6 " LATIN SMALL LETTER AE " |
|
419 "16r00E7" 16r00E7 " LATIN SMALL LETTER C WITH CEDILLA " |
|
420 "16r00E8" 16r00E8 " LATIN SMALL LETTER E WITH GRAVE " |
|
421 "16r00E9" 16r00E9 " LATIN SMALL LETTER E WITH ACUTE " |
|
422 "16r00EA" 16r00EA " LATIN SMALL LETTER E WITH CIRCUMFLEX " |
|
423 "16r00EB" 16r00EB " LATIN SMALL LETTER E WITH DIAERESIS " |
|
424 "16r00EC" 16r00EC " LATIN SMALL LETTER I WITH GRAVE " |
|
425 "16r00ED" 16r00ED " LATIN SMALL LETTER I WITH ACUTE " |
|
426 "16r00EE" 16r00EE " LATIN SMALL LETTER I WITH CIRCUMFLEX " |
|
427 "16r00EF" 16r00EF " LATIN SMALL LETTER I WITH DIAERESIS " |
|
428 "16r00F0" 16r00F0 " LATIN SMALL LETTER ETH " |
|
429 "16r00F1" 16r00F1 " LATIN SMALL LETTER N WITH TILDE " |
|
430 "16r00F2" 16r00F2 " LATIN SMALL LETTER O WITH GRAVE " |
|
431 "16r00F3" 16r00F3 " LATIN SMALL LETTER O WITH ACUTE " |
|
432 "16r00F4" 16r00F4 " LATIN SMALL LETTER O WITH CIRCUMFLEX " |
|
433 "16r00F5" 16r00F5 " LATIN SMALL LETTER O WITH TILDE " |
|
434 "16r00F6" 16r00F6 " LATIN SMALL LETTER O WITH DIAERESIS " |
|
435 "16r00F7" 16r00F7 " DIVISION SIGN " |
|
436 "16r00F8" 16r00F8 " LATIN SMALL LETTER O WITH STROKE " |
|
437 "16r00F9" 16r00F9 " LATIN SMALL LETTER U WITH GRAVE " |
|
438 "16r00FA" 16r00FA " LATIN SMALL LETTER U WITH ACUTE " |
|
439 "16r00FB" 16r00FB " LATIN SMALL LETTER U WITH CIRCUMFLEX " |
|
440 "16r00FC" 16r00FC " LATIN SMALL LETTER U WITH DIAERESIS " |
|
441 "16r00FD" 16r00FD " LATIN SMALL LETTER Y WITH ACUTE " |
|
442 "16r00FE" 16r00FE " LATIN SMALL LETTER THORN " |
|
443 "16r00FF" 16r00FF " LATIN SMALL LETTER Y WITH DIAERESIS " |
|
444 ) at:(code - 16rA3). |
|
445 ! |
|
446 |
|
447 encode:unicodeArg |
|
448 "Automagically generated by generateCode - do not modify. |
|
449 Encode from unicode into my encoding." |
|
450 |
|
451 |unicode "{ Class: SmallInteger }"| |
|
452 |
|
453 unicode := unicodeArg. |
|
454 unicode <= 16rA3 ifTrue:[ ^ unicode ]. |
|
455 unicode > 16r20AC ifTrue:[ |
|
456 ^ self encodingError. |
|
457 ]. |
|
458 unicode <= 16r17E ifTrue:[ |
|
459 unicode <= 16rFF ifTrue:[ |
|
460 (#[ |
|
461 "16r00A4" 0 " invalid " |
|
462 "16r00A5" 1 " YEN SIGN " |
|
463 "16r00A6" 0 " invalid " |
|
464 "16r00A7" 1 " SECTION SIGN " |
|
465 "16r00A8" 0 " invalid " |
|
466 "16r00A9" 1 " COPYRIGHT SIGN " |
|
467 "16r00AA" 1 " FEMININE ORDINAL INDICATOR " |
|
468 "16r00AB" 1 " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
469 "16r00AC" 1 " NOT SIGN " |
|
470 "16r00AD" 1 " SOFT HYPHEN " |
|
471 "16r00AE" 1 " REGISTERED SIGN " |
|
472 "16r00AF" 1 " MACRON " |
|
473 "16r00B0" 1 " DEGREE SIGN " |
|
474 "16r00B1" 1 " PLUS-MINUS SIGN " |
|
475 "16r00B2" 1 " SUPERSCRIPT TWO " |
|
476 "16r00B3" 1 " SUPERSCRIPT THREE " |
|
477 "16r00B4" 0 " invalid " |
|
478 "16r00B5" 1 " MICRO SIGN " |
|
479 "16r00B6" 1 " PILCROW SIGN " |
|
480 "16r00B7" 1 " MIDDLE DOT " |
|
481 "16r00B8" 0 " invalid " |
|
482 "16r00B9" 1 " SUPERSCRIPT ONE " |
|
483 "16r00BA" 1 " MASCULINE ORDINAL INDICATOR " |
|
484 "16r00BB" 1 " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK " |
|
485 "16r00BC" 0 " invalid " |
|
486 "16r00BD" 0 " invalid " |
|
487 "16r00BE" 0 " invalid " |
|
488 "16r00BF" 1 " INVERTED QUESTION MARK " |
|
489 "16r00C0" 1 " LATIN CAPITAL LETTER A WITH GRAVE " |
|
490 "16r00C1" 1 " LATIN CAPITAL LETTER A WITH ACUTE " |
|
491 "16r00C2" 1 " LATIN CAPITAL LETTER A WITH CIRCUMFLEX " |
|
492 "16r00C3" 1 " LATIN CAPITAL LETTER A WITH TILDE " |
|
493 "16r00C4" 1 " LATIN CAPITAL LETTER A WITH DIAERESIS " |
|
494 "16r00C5" 1 " LATIN CAPITAL LETTER A WITH RING ABOVE " |
|
495 "16r00C6" 1 " LATIN CAPITAL LETTER AE " |
|
496 "16r00C7" 1 " LATIN CAPITAL LETTER C WITH CEDILLA " |
|
497 "16r00C8" 1 " LATIN CAPITAL LETTER E WITH GRAVE " |
|
498 "16r00C9" 1 " LATIN CAPITAL LETTER E WITH ACUTE " |
|
499 "16r00CA" 1 " LATIN CAPITAL LETTER E WITH CIRCUMFLEX " |
|
500 "16r00CB" 1 " LATIN CAPITAL LETTER E WITH DIAERESIS " |
|
501 "16r00CC" 1 " LATIN CAPITAL LETTER I WITH GRAVE " |
|
502 "16r00CD" 1 " LATIN CAPITAL LETTER I WITH ACUTE " |
|
503 "16r00CE" 1 " LATIN CAPITAL LETTER I WITH CIRCUMFLEX " |
|
504 "16r00CF" 1 " LATIN CAPITAL LETTER I WITH DIAERESIS " |
|
505 "16r00D0" 1 " LATIN CAPITAL LETTER ETH " |
|
506 "16r00D1" 1 " LATIN CAPITAL LETTER N WITH TILDE " |
|
507 "16r00D2" 1 " LATIN CAPITAL LETTER O WITH GRAVE " |
|
508 "16r00D3" 1 " LATIN CAPITAL LETTER O WITH ACUTE " |
|
509 "16r00D4" 1 " LATIN CAPITAL LETTER O WITH CIRCUMFLEX " |
|
510 "16r00D5" 1 " LATIN CAPITAL LETTER O WITH TILDE " |
|
511 "16r00D6" 1 " LATIN CAPITAL LETTER O WITH DIAERESIS " |
|
512 "16r00D7" 1 " MULTIPLICATION SIGN " |
|
513 "16r00D8" 1 " LATIN CAPITAL LETTER O WITH STROKE " |
|
514 "16r00D9" 1 " LATIN CAPITAL LETTER U WITH GRAVE " |
|
515 "16r00DA" 1 " LATIN CAPITAL LETTER U WITH ACUTE " |
|
516 "16r00DB" 1 " LATIN CAPITAL LETTER U WITH CIRCUMFLEX " |
|
517 "16r00DC" 1 " LATIN CAPITAL LETTER U WITH DIAERESIS " |
|
518 "16r00DD" 1 " LATIN CAPITAL LETTER Y WITH ACUTE " |
|
519 "16r00DE" 1 " LATIN CAPITAL LETTER THORN " |
|
520 "16r00DF" 1 " LATIN SMALL LETTER SHARP S " |
|
521 "16r00E0" 1 " LATIN SMALL LETTER A WITH GRAVE " |
|
522 "16r00E1" 1 " LATIN SMALL LETTER A WITH ACUTE " |
|
523 "16r00E2" 1 " LATIN SMALL LETTER A WITH CIRCUMFLEX " |
|
524 "16r00E3" 1 " LATIN SMALL LETTER A WITH TILDE " |
|
525 "16r00E4" 1 " LATIN SMALL LETTER A WITH DIAERESIS " |
|
526 "16r00E5" 1 " LATIN SMALL LETTER A WITH RING ABOVE " |
|
527 "16r00E6" 1 " LATIN SMALL LETTER AE " |
|
528 "16r00E7" 1 " LATIN SMALL LETTER C WITH CEDILLA " |
|
529 "16r00E8" 1 " LATIN SMALL LETTER E WITH GRAVE " |
|
530 "16r00E9" 1 " LATIN SMALL LETTER E WITH ACUTE " |
|
531 "16r00EA" 1 " LATIN SMALL LETTER E WITH CIRCUMFLEX " |
|
532 "16r00EB" 1 " LATIN SMALL LETTER E WITH DIAERESIS " |
|
533 "16r00EC" 1 " LATIN SMALL LETTER I WITH GRAVE " |
|
534 "16r00ED" 1 " LATIN SMALL LETTER I WITH ACUTE " |
|
535 "16r00EE" 1 " LATIN SMALL LETTER I WITH CIRCUMFLEX " |
|
536 "16r00EF" 1 " LATIN SMALL LETTER I WITH DIAERESIS " |
|
537 "16r00F0" 1 " LATIN SMALL LETTER ETH " |
|
538 "16r00F1" 1 " LATIN SMALL LETTER N WITH TILDE " |
|
539 "16r00F2" 1 " LATIN SMALL LETTER O WITH GRAVE " |
|
540 "16r00F3" 1 " LATIN SMALL LETTER O WITH ACUTE " |
|
541 "16r00F4" 1 " LATIN SMALL LETTER O WITH CIRCUMFLEX " |
|
542 "16r00F5" 1 " LATIN SMALL LETTER O WITH TILDE " |
|
543 "16r00F6" 1 " LATIN SMALL LETTER O WITH DIAERESIS " |
|
544 "16r00F7" 1 " DIVISION SIGN " |
|
545 "16r00F8" 1 " LATIN SMALL LETTER O WITH STROKE " |
|
546 "16r00F9" 1 " LATIN SMALL LETTER U WITH GRAVE " |
|
547 "16r00FA" 1 " LATIN SMALL LETTER U WITH ACUTE " |
|
548 "16r00FB" 1 " LATIN SMALL LETTER U WITH CIRCUMFLEX " |
|
549 "16r00FC" 1 " LATIN SMALL LETTER U WITH DIAERESIS " |
|
550 "16r00FD" 1 " LATIN SMALL LETTER Y WITH ACUTE " |
|
551 "16r00FE" 1 " LATIN SMALL LETTER THORN " |
|
552 "16r00FF" 1 " LATIN SMALL LETTER Y WITH DIAERESIS " |
|
553 ] at:(unicode - 163)) ~~ 0 ifTrue:[^ unicode]. |
|
554 ^ self encodingError. |
|
555 ]. |
|
556 unicode <= 16r151 ifTrue:[ |
|
557 ^ self encodingError. |
|
558 ]. |
|
559 unicode <= 16r161 ifTrue:[ |
|
560 [ |
|
561 |t| |
|
562 t := #[ |
|
563 "16r0152" 16rBC " LATIN CAPITAL LIGATURE OE " |
|
564 "16r0153" 16rBD " LATIN SMALL LIGATURE OE " |
|
565 "16r0154" 16r00 " invalid " |
|
566 "16r0155" 16r00 " invalid " |
|
567 "16r0156" 16r00 " invalid " |
|
568 "16r0157" 16r00 " invalid " |
|
569 "16r0158" 16r00 " invalid " |
|
570 "16r0159" 16r00 " invalid " |
|
571 "16r015A" 16r00 " invalid " |
|
572 "16r015B" 16r00 " invalid " |
|
573 "16r015C" 16r00 " invalid " |
|
574 "16r015D" 16r00 " invalid " |
|
575 "16r015E" 16r00 " invalid " |
|
576 "16r015F" 16r00 " invalid " |
|
577 "16r0160" 16rA6 " LATIN CAPITAL LETTER S WITH CARON " |
|
578 "16r0161" 16rA8 " LATIN SMALL LETTER S WITH CARON " |
|
579 ] at:(unicode - 16r151). |
|
580 t == 0 ifFalse:[^ t]. |
|
581 ^ self encodingError |
|
582 ] value. |
|
583 ]. |
|
584 unicode <= 16r177 ifTrue:[ |
|
585 ^ self encodingError. |
|
586 ]. |
|
587 [ |
|
588 |t| |
|
589 t := #[ |
|
590 "16r0178" 16rBE " LATIN CAPITAL LETTER Y WITH DIAERESIS " |
|
591 "16r0179" 16r00 " invalid " |
|
592 "16r017A" 16r00 " invalid " |
|
593 "16r017B" 16r00 " invalid " |
|
594 "16r017C" 16r00 " invalid " |
|
595 "16r017D" 16rB4 " LATIN CAPITAL LETTER Z WITH CARON " |
|
596 "16r017E" 16rB8 " LATIN SMALL LETTER Z WITH CARON " |
|
597 ] at:(unicode - 16r177). |
|
598 t == 0 ifFalse:[^ t]. |
|
599 ^ self encodingError |
|
600 ] value. |
|
601 ]. |
|
602 unicode <= 16r20AB ifTrue:[ |
|
603 ^ self encodingError. |
|
604 ]. |
|
605 ^ "16r20AC" 16r00A4 " EURO SIGN " |
|
606 ! ! |
|
607 |
|
608 !ISO8859_15 class methodsFor:'documentation'! |
|
609 |
|
610 version |
|
611 ^ '$Header: /cvs/stx/stx/libbasic/CharacterEncoderImplementations__ISO8859_15.st,v 1.1 2004-03-05 17:22:33 cg Exp $' |
|
612 ! ! |