blob: 8c29a87b662882aefed2413ec3706401c8206ee4 [file] [log] [blame]
Thomas Woutersa9773292006-04-21 09:43:23 +00001""" Python Character Mapping Codec iso8859_8 generated from 'MAPPINGS/ISO8859/8859-8.TXT' with gencodec.py.
Guido van Rossum0229bf62000-03-10 23:17:24 +00002
3"""#"
4
5import codecs
6
7### Codec APIs
8
9class Codec(codecs.Codec):
10
11 def encode(self,input,errors='strict'):
Guido van Rossum0229bf62000-03-10 23:17:24 +000012 return codecs.charmap_encode(input,errors,encoding_map)
Tim Peters469cdad2002-08-08 20:19:19 +000013
Guido van Rossum0229bf62000-03-10 23:17:24 +000014 def decode(self,input,errors='strict'):
Marc-André Lemburga1129f42005-10-21 13:49:12 +000015 return codecs.charmap_decode(input,errors,decoding_table)
Tim Peters536cf992005-12-25 23:18:31 +000016
Thomas Woutersa9773292006-04-21 09:43:23 +000017class IncrementalEncoder(codecs.IncrementalEncoder):
18 def encode(self, input, final=False):
19 return codecs.charmap_encode(input,self.errors,encoding_map)[0]
20
21class IncrementalDecoder(codecs.IncrementalDecoder):
22 def decode(self, input, final=False):
23 return codecs.charmap_decode(input,self.errors,decoding_table)[0]
24
Guido van Rossum0229bf62000-03-10 23:17:24 +000025class StreamWriter(Codec,codecs.StreamWriter):
26 pass
Tim Peters469cdad2002-08-08 20:19:19 +000027
Guido van Rossum0229bf62000-03-10 23:17:24 +000028class StreamReader(Codec,codecs.StreamReader):
29 pass
30
31### encodings module API
32
33def getregentry():
Thomas Woutersa9773292006-04-21 09:43:23 +000034 return codecs.CodecInfo(
35 name='iso8859-8',
36 encode=Codec().encode,
37 decode=Codec().decode,
38 incrementalencoder=IncrementalEncoder,
39 incrementaldecoder=IncrementalDecoder,
40 streamreader=StreamReader,
41 streamwriter=StreamWriter,
42 )
Guido van Rossum0229bf62000-03-10 23:17:24 +000043
Guido van Rossum0229bf62000-03-10 23:17:24 +000044
Marc-André Lemburga1129f42005-10-21 13:49:12 +000045### Decoding Table
46
47decoding_table = (
Tim Peters536cf992005-12-25 23:18:31 +000048 u'\x00' # 0x00 -> NULL
49 u'\x01' # 0x01 -> START OF HEADING
50 u'\x02' # 0x02 -> START OF TEXT
51 u'\x03' # 0x03 -> END OF TEXT
52 u'\x04' # 0x04 -> END OF TRANSMISSION
53 u'\x05' # 0x05 -> ENQUIRY
54 u'\x06' # 0x06 -> ACKNOWLEDGE
55 u'\x07' # 0x07 -> BELL
56 u'\x08' # 0x08 -> BACKSPACE
57 u'\t' # 0x09 -> HORIZONTAL TABULATION
58 u'\n' # 0x0A -> LINE FEED
59 u'\x0b' # 0x0B -> VERTICAL TABULATION
60 u'\x0c' # 0x0C -> FORM FEED
61 u'\r' # 0x0D -> CARRIAGE RETURN
62 u'\x0e' # 0x0E -> SHIFT OUT
63 u'\x0f' # 0x0F -> SHIFT IN
64 u'\x10' # 0x10 -> DATA LINK ESCAPE
65 u'\x11' # 0x11 -> DEVICE CONTROL ONE
66 u'\x12' # 0x12 -> DEVICE CONTROL TWO
67 u'\x13' # 0x13 -> DEVICE CONTROL THREE
68 u'\x14' # 0x14 -> DEVICE CONTROL FOUR
69 u'\x15' # 0x15 -> NEGATIVE ACKNOWLEDGE
70 u'\x16' # 0x16 -> SYNCHRONOUS IDLE
71 u'\x17' # 0x17 -> END OF TRANSMISSION BLOCK
72 u'\x18' # 0x18 -> CANCEL
73 u'\x19' # 0x19 -> END OF MEDIUM
74 u'\x1a' # 0x1A -> SUBSTITUTE
75 u'\x1b' # 0x1B -> ESCAPE
76 u'\x1c' # 0x1C -> FILE SEPARATOR
77 u'\x1d' # 0x1D -> GROUP SEPARATOR
78 u'\x1e' # 0x1E -> RECORD SEPARATOR
79 u'\x1f' # 0x1F -> UNIT SEPARATOR
80 u' ' # 0x20 -> SPACE
81 u'!' # 0x21 -> EXCLAMATION MARK
82 u'"' # 0x22 -> QUOTATION MARK
83 u'#' # 0x23 -> NUMBER SIGN
84 u'$' # 0x24 -> DOLLAR SIGN
85 u'%' # 0x25 -> PERCENT SIGN
86 u'&' # 0x26 -> AMPERSAND
87 u"'" # 0x27 -> APOSTROPHE
88 u'(' # 0x28 -> LEFT PARENTHESIS
89 u')' # 0x29 -> RIGHT PARENTHESIS
90 u'*' # 0x2A -> ASTERISK
91 u'+' # 0x2B -> PLUS SIGN
92 u',' # 0x2C -> COMMA
93 u'-' # 0x2D -> HYPHEN-MINUS
94 u'.' # 0x2E -> FULL STOP
95 u'/' # 0x2F -> SOLIDUS
96 u'0' # 0x30 -> DIGIT ZERO
97 u'1' # 0x31 -> DIGIT ONE
98 u'2' # 0x32 -> DIGIT TWO
99 u'3' # 0x33 -> DIGIT THREE
100 u'4' # 0x34 -> DIGIT FOUR
101 u'5' # 0x35 -> DIGIT FIVE
102 u'6' # 0x36 -> DIGIT SIX
103 u'7' # 0x37 -> DIGIT SEVEN
104 u'8' # 0x38 -> DIGIT EIGHT
105 u'9' # 0x39 -> DIGIT NINE
106 u':' # 0x3A -> COLON
107 u';' # 0x3B -> SEMICOLON
108 u'<' # 0x3C -> LESS-THAN SIGN
109 u'=' # 0x3D -> EQUALS SIGN
110 u'>' # 0x3E -> GREATER-THAN SIGN
111 u'?' # 0x3F -> QUESTION MARK
112 u'@' # 0x40 -> COMMERCIAL AT
113 u'A' # 0x41 -> LATIN CAPITAL LETTER A
114 u'B' # 0x42 -> LATIN CAPITAL LETTER B
115 u'C' # 0x43 -> LATIN CAPITAL LETTER C
116 u'D' # 0x44 -> LATIN CAPITAL LETTER D
117 u'E' # 0x45 -> LATIN CAPITAL LETTER E
118 u'F' # 0x46 -> LATIN CAPITAL LETTER F
119 u'G' # 0x47 -> LATIN CAPITAL LETTER G
120 u'H' # 0x48 -> LATIN CAPITAL LETTER H
121 u'I' # 0x49 -> LATIN CAPITAL LETTER I
122 u'J' # 0x4A -> LATIN CAPITAL LETTER J
123 u'K' # 0x4B -> LATIN CAPITAL LETTER K
124 u'L' # 0x4C -> LATIN CAPITAL LETTER L
125 u'M' # 0x4D -> LATIN CAPITAL LETTER M
126 u'N' # 0x4E -> LATIN CAPITAL LETTER N
127 u'O' # 0x4F -> LATIN CAPITAL LETTER O
128 u'P' # 0x50 -> LATIN CAPITAL LETTER P
129 u'Q' # 0x51 -> LATIN CAPITAL LETTER Q
130 u'R' # 0x52 -> LATIN CAPITAL LETTER R
131 u'S' # 0x53 -> LATIN CAPITAL LETTER S
132 u'T' # 0x54 -> LATIN CAPITAL LETTER T
133 u'U' # 0x55 -> LATIN CAPITAL LETTER U
134 u'V' # 0x56 -> LATIN CAPITAL LETTER V
135 u'W' # 0x57 -> LATIN CAPITAL LETTER W
136 u'X' # 0x58 -> LATIN CAPITAL LETTER X
137 u'Y' # 0x59 -> LATIN CAPITAL LETTER Y
138 u'Z' # 0x5A -> LATIN CAPITAL LETTER Z
139 u'[' # 0x5B -> LEFT SQUARE BRACKET
140 u'\\' # 0x5C -> REVERSE SOLIDUS
141 u']' # 0x5D -> RIGHT SQUARE BRACKET
142 u'^' # 0x5E -> CIRCUMFLEX ACCENT
143 u'_' # 0x5F -> LOW LINE
144 u'`' # 0x60 -> GRAVE ACCENT
145 u'a' # 0x61 -> LATIN SMALL LETTER A
146 u'b' # 0x62 -> LATIN SMALL LETTER B
147 u'c' # 0x63 -> LATIN SMALL LETTER C
148 u'd' # 0x64 -> LATIN SMALL LETTER D
149 u'e' # 0x65 -> LATIN SMALL LETTER E
150 u'f' # 0x66 -> LATIN SMALL LETTER F
151 u'g' # 0x67 -> LATIN SMALL LETTER G
152 u'h' # 0x68 -> LATIN SMALL LETTER H
153 u'i' # 0x69 -> LATIN SMALL LETTER I
154 u'j' # 0x6A -> LATIN SMALL LETTER J
155 u'k' # 0x6B -> LATIN SMALL LETTER K
156 u'l' # 0x6C -> LATIN SMALL LETTER L
157 u'm' # 0x6D -> LATIN SMALL LETTER M
158 u'n' # 0x6E -> LATIN SMALL LETTER N
159 u'o' # 0x6F -> LATIN SMALL LETTER O
160 u'p' # 0x70 -> LATIN SMALL LETTER P
161 u'q' # 0x71 -> LATIN SMALL LETTER Q
162 u'r' # 0x72 -> LATIN SMALL LETTER R
163 u's' # 0x73 -> LATIN SMALL LETTER S
164 u't' # 0x74 -> LATIN SMALL LETTER T
165 u'u' # 0x75 -> LATIN SMALL LETTER U
166 u'v' # 0x76 -> LATIN SMALL LETTER V
167 u'w' # 0x77 -> LATIN SMALL LETTER W
168 u'x' # 0x78 -> LATIN SMALL LETTER X
169 u'y' # 0x79 -> LATIN SMALL LETTER Y
170 u'z' # 0x7A -> LATIN SMALL LETTER Z
171 u'{' # 0x7B -> LEFT CURLY BRACKET
172 u'|' # 0x7C -> VERTICAL LINE
173 u'}' # 0x7D -> RIGHT CURLY BRACKET
174 u'~' # 0x7E -> TILDE
175 u'\x7f' # 0x7F -> DELETE
176 u'\x80' # 0x80 -> <control>
177 u'\x81' # 0x81 -> <control>
178 u'\x82' # 0x82 -> <control>
179 u'\x83' # 0x83 -> <control>
180 u'\x84' # 0x84 -> <control>
181 u'\x85' # 0x85 -> <control>
182 u'\x86' # 0x86 -> <control>
183 u'\x87' # 0x87 -> <control>
184 u'\x88' # 0x88 -> <control>
185 u'\x89' # 0x89 -> <control>
186 u'\x8a' # 0x8A -> <control>
187 u'\x8b' # 0x8B -> <control>
188 u'\x8c' # 0x8C -> <control>
189 u'\x8d' # 0x8D -> <control>
190 u'\x8e' # 0x8E -> <control>
191 u'\x8f' # 0x8F -> <control>
192 u'\x90' # 0x90 -> <control>
193 u'\x91' # 0x91 -> <control>
194 u'\x92' # 0x92 -> <control>
195 u'\x93' # 0x93 -> <control>
196 u'\x94' # 0x94 -> <control>
197 u'\x95' # 0x95 -> <control>
198 u'\x96' # 0x96 -> <control>
199 u'\x97' # 0x97 -> <control>
200 u'\x98' # 0x98 -> <control>
201 u'\x99' # 0x99 -> <control>
202 u'\x9a' # 0x9A -> <control>
203 u'\x9b' # 0x9B -> <control>
204 u'\x9c' # 0x9C -> <control>
205 u'\x9d' # 0x9D -> <control>
206 u'\x9e' # 0x9E -> <control>
207 u'\x9f' # 0x9F -> <control>
208 u'\xa0' # 0xA0 -> NO-BREAK SPACE
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000209 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000210 u'\xa2' # 0xA2 -> CENT SIGN
211 u'\xa3' # 0xA3 -> POUND SIGN
212 u'\xa4' # 0xA4 -> CURRENCY SIGN
213 u'\xa5' # 0xA5 -> YEN SIGN
214 u'\xa6' # 0xA6 -> BROKEN BAR
215 u'\xa7' # 0xA7 -> SECTION SIGN
216 u'\xa8' # 0xA8 -> DIAERESIS
217 u'\xa9' # 0xA9 -> COPYRIGHT SIGN
218 u'\xd7' # 0xAA -> MULTIPLICATION SIGN
219 u'\xab' # 0xAB -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
220 u'\xac' # 0xAC -> NOT SIGN
221 u'\xad' # 0xAD -> SOFT HYPHEN
222 u'\xae' # 0xAE -> REGISTERED SIGN
223 u'\xaf' # 0xAF -> MACRON
224 u'\xb0' # 0xB0 -> DEGREE SIGN
225 u'\xb1' # 0xB1 -> PLUS-MINUS SIGN
226 u'\xb2' # 0xB2 -> SUPERSCRIPT TWO
227 u'\xb3' # 0xB3 -> SUPERSCRIPT THREE
228 u'\xb4' # 0xB4 -> ACUTE ACCENT
229 u'\xb5' # 0xB5 -> MICRO SIGN
230 u'\xb6' # 0xB6 -> PILCROW SIGN
231 u'\xb7' # 0xB7 -> MIDDLE DOT
232 u'\xb8' # 0xB8 -> CEDILLA
233 u'\xb9' # 0xB9 -> SUPERSCRIPT ONE
234 u'\xf7' # 0xBA -> DIVISION SIGN
235 u'\xbb' # 0xBB -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
236 u'\xbc' # 0xBC -> VULGAR FRACTION ONE QUARTER
237 u'\xbd' # 0xBD -> VULGAR FRACTION ONE HALF
238 u'\xbe' # 0xBE -> VULGAR FRACTION THREE QUARTERS
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000239 u'\ufffe'
240 u'\ufffe'
241 u'\ufffe'
242 u'\ufffe'
243 u'\ufffe'
244 u'\ufffe'
245 u'\ufffe'
246 u'\ufffe'
247 u'\ufffe'
248 u'\ufffe'
249 u'\ufffe'
250 u'\ufffe'
251 u'\ufffe'
252 u'\ufffe'
253 u'\ufffe'
254 u'\ufffe'
255 u'\ufffe'
256 u'\ufffe'
257 u'\ufffe'
258 u'\ufffe'
259 u'\ufffe'
260 u'\ufffe'
261 u'\ufffe'
262 u'\ufffe'
263 u'\ufffe'
264 u'\ufffe'
265 u'\ufffe'
266 u'\ufffe'
267 u'\ufffe'
268 u'\ufffe'
269 u'\ufffe'
270 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000271 u'\u2017' # 0xDF -> DOUBLE LOW LINE
272 u'\u05d0' # 0xE0 -> HEBREW LETTER ALEF
273 u'\u05d1' # 0xE1 -> HEBREW LETTER BET
274 u'\u05d2' # 0xE2 -> HEBREW LETTER GIMEL
275 u'\u05d3' # 0xE3 -> HEBREW LETTER DALET
276 u'\u05d4' # 0xE4 -> HEBREW LETTER HE
277 u'\u05d5' # 0xE5 -> HEBREW LETTER VAV
278 u'\u05d6' # 0xE6 -> HEBREW LETTER ZAYIN
279 u'\u05d7' # 0xE7 -> HEBREW LETTER HET
280 u'\u05d8' # 0xE8 -> HEBREW LETTER TET
281 u'\u05d9' # 0xE9 -> HEBREW LETTER YOD
282 u'\u05da' # 0xEA -> HEBREW LETTER FINAL KAF
283 u'\u05db' # 0xEB -> HEBREW LETTER KAF
284 u'\u05dc' # 0xEC -> HEBREW LETTER LAMED
285 u'\u05dd' # 0xED -> HEBREW LETTER FINAL MEM
286 u'\u05de' # 0xEE -> HEBREW LETTER MEM
287 u'\u05df' # 0xEF -> HEBREW LETTER FINAL NUN
288 u'\u05e0' # 0xF0 -> HEBREW LETTER NUN
289 u'\u05e1' # 0xF1 -> HEBREW LETTER SAMEKH
290 u'\u05e2' # 0xF2 -> HEBREW LETTER AYIN
291 u'\u05e3' # 0xF3 -> HEBREW LETTER FINAL PE
292 u'\u05e4' # 0xF4 -> HEBREW LETTER PE
293 u'\u05e5' # 0xF5 -> HEBREW LETTER FINAL TSADI
294 u'\u05e6' # 0xF6 -> HEBREW LETTER TSADI
295 u'\u05e7' # 0xF7 -> HEBREW LETTER QOF
296 u'\u05e8' # 0xF8 -> HEBREW LETTER RESH
297 u'\u05e9' # 0xF9 -> HEBREW LETTER SHIN
298 u'\u05ea' # 0xFA -> HEBREW LETTER TAV
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000299 u'\ufffe'
300 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000301 u'\u200e' # 0xFD -> LEFT-TO-RIGHT MARK
302 u'\u200f' # 0xFE -> RIGHT-TO-LEFT MARK
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000303 u'\ufffe'
304)
305
Guido van Rossum0229bf62000-03-10 23:17:24 +0000306### Encoding Map
307
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000308encoding_map = {
Tim Peters536cf992005-12-25 23:18:31 +0000309 0x0000: 0x00, # NULL
310 0x0001: 0x01, # START OF HEADING
311 0x0002: 0x02, # START OF TEXT
312 0x0003: 0x03, # END OF TEXT
313 0x0004: 0x04, # END OF TRANSMISSION
314 0x0005: 0x05, # ENQUIRY
315 0x0006: 0x06, # ACKNOWLEDGE
316 0x0007: 0x07, # BELL
317 0x0008: 0x08, # BACKSPACE
318 0x0009: 0x09, # HORIZONTAL TABULATION
319 0x000A: 0x0A, # LINE FEED
320 0x000B: 0x0B, # VERTICAL TABULATION
321 0x000C: 0x0C, # FORM FEED
322 0x000D: 0x0D, # CARRIAGE RETURN
323 0x000E: 0x0E, # SHIFT OUT
324 0x000F: 0x0F, # SHIFT IN
325 0x0010: 0x10, # DATA LINK ESCAPE
326 0x0011: 0x11, # DEVICE CONTROL ONE
327 0x0012: 0x12, # DEVICE CONTROL TWO
328 0x0013: 0x13, # DEVICE CONTROL THREE
329 0x0014: 0x14, # DEVICE CONTROL FOUR
330 0x0015: 0x15, # NEGATIVE ACKNOWLEDGE
331 0x0016: 0x16, # SYNCHRONOUS IDLE
332 0x0017: 0x17, # END OF TRANSMISSION BLOCK
333 0x0018: 0x18, # CANCEL
334 0x0019: 0x19, # END OF MEDIUM
335 0x001A: 0x1A, # SUBSTITUTE
336 0x001B: 0x1B, # ESCAPE
337 0x001C: 0x1C, # FILE SEPARATOR
338 0x001D: 0x1D, # GROUP SEPARATOR
339 0x001E: 0x1E, # RECORD SEPARATOR
340 0x001F: 0x1F, # UNIT SEPARATOR
341 0x0020: 0x20, # SPACE
342 0x0021: 0x21, # EXCLAMATION MARK
343 0x0022: 0x22, # QUOTATION MARK
344 0x0023: 0x23, # NUMBER SIGN
345 0x0024: 0x24, # DOLLAR SIGN
346 0x0025: 0x25, # PERCENT SIGN
347 0x0026: 0x26, # AMPERSAND
348 0x0027: 0x27, # APOSTROPHE
349 0x0028: 0x28, # LEFT PARENTHESIS
350 0x0029: 0x29, # RIGHT PARENTHESIS
351 0x002A: 0x2A, # ASTERISK
352 0x002B: 0x2B, # PLUS SIGN
353 0x002C: 0x2C, # COMMA
354 0x002D: 0x2D, # HYPHEN-MINUS
355 0x002E: 0x2E, # FULL STOP
356 0x002F: 0x2F, # SOLIDUS
357 0x0030: 0x30, # DIGIT ZERO
358 0x0031: 0x31, # DIGIT ONE
359 0x0032: 0x32, # DIGIT TWO
360 0x0033: 0x33, # DIGIT THREE
361 0x0034: 0x34, # DIGIT FOUR
362 0x0035: 0x35, # DIGIT FIVE
363 0x0036: 0x36, # DIGIT SIX
364 0x0037: 0x37, # DIGIT SEVEN
365 0x0038: 0x38, # DIGIT EIGHT
366 0x0039: 0x39, # DIGIT NINE
367 0x003A: 0x3A, # COLON
368 0x003B: 0x3B, # SEMICOLON
369 0x003C: 0x3C, # LESS-THAN SIGN
370 0x003D: 0x3D, # EQUALS SIGN
371 0x003E: 0x3E, # GREATER-THAN SIGN
372 0x003F: 0x3F, # QUESTION MARK
373 0x0040: 0x40, # COMMERCIAL AT
374 0x0041: 0x41, # LATIN CAPITAL LETTER A
375 0x0042: 0x42, # LATIN CAPITAL LETTER B
376 0x0043: 0x43, # LATIN CAPITAL LETTER C
377 0x0044: 0x44, # LATIN CAPITAL LETTER D
378 0x0045: 0x45, # LATIN CAPITAL LETTER E
379 0x0046: 0x46, # LATIN CAPITAL LETTER F
380 0x0047: 0x47, # LATIN CAPITAL LETTER G
381 0x0048: 0x48, # LATIN CAPITAL LETTER H
382 0x0049: 0x49, # LATIN CAPITAL LETTER I
383 0x004A: 0x4A, # LATIN CAPITAL LETTER J
384 0x004B: 0x4B, # LATIN CAPITAL LETTER K
385 0x004C: 0x4C, # LATIN CAPITAL LETTER L
386 0x004D: 0x4D, # LATIN CAPITAL LETTER M
387 0x004E: 0x4E, # LATIN CAPITAL LETTER N
388 0x004F: 0x4F, # LATIN CAPITAL LETTER O
389 0x0050: 0x50, # LATIN CAPITAL LETTER P
390 0x0051: 0x51, # LATIN CAPITAL LETTER Q
391 0x0052: 0x52, # LATIN CAPITAL LETTER R
392 0x0053: 0x53, # LATIN CAPITAL LETTER S
393 0x0054: 0x54, # LATIN CAPITAL LETTER T
394 0x0055: 0x55, # LATIN CAPITAL LETTER U
395 0x0056: 0x56, # LATIN CAPITAL LETTER V
396 0x0057: 0x57, # LATIN CAPITAL LETTER W
397 0x0058: 0x58, # LATIN CAPITAL LETTER X
398 0x0059: 0x59, # LATIN CAPITAL LETTER Y
399 0x005A: 0x5A, # LATIN CAPITAL LETTER Z
400 0x005B: 0x5B, # LEFT SQUARE BRACKET
401 0x005C: 0x5C, # REVERSE SOLIDUS
402 0x005D: 0x5D, # RIGHT SQUARE BRACKET
403 0x005E: 0x5E, # CIRCUMFLEX ACCENT
404 0x005F: 0x5F, # LOW LINE
405 0x0060: 0x60, # GRAVE ACCENT
406 0x0061: 0x61, # LATIN SMALL LETTER A
407 0x0062: 0x62, # LATIN SMALL LETTER B
408 0x0063: 0x63, # LATIN SMALL LETTER C
409 0x0064: 0x64, # LATIN SMALL LETTER D
410 0x0065: 0x65, # LATIN SMALL LETTER E
411 0x0066: 0x66, # LATIN SMALL LETTER F
412 0x0067: 0x67, # LATIN SMALL LETTER G
413 0x0068: 0x68, # LATIN SMALL LETTER H
414 0x0069: 0x69, # LATIN SMALL LETTER I
415 0x006A: 0x6A, # LATIN SMALL LETTER J
416 0x006B: 0x6B, # LATIN SMALL LETTER K
417 0x006C: 0x6C, # LATIN SMALL LETTER L
418 0x006D: 0x6D, # LATIN SMALL LETTER M
419 0x006E: 0x6E, # LATIN SMALL LETTER N
420 0x006F: 0x6F, # LATIN SMALL LETTER O
421 0x0070: 0x70, # LATIN SMALL LETTER P
422 0x0071: 0x71, # LATIN SMALL LETTER Q
423 0x0072: 0x72, # LATIN SMALL LETTER R
424 0x0073: 0x73, # LATIN SMALL LETTER S
425 0x0074: 0x74, # LATIN SMALL LETTER T
426 0x0075: 0x75, # LATIN SMALL LETTER U
427 0x0076: 0x76, # LATIN SMALL LETTER V
428 0x0077: 0x77, # LATIN SMALL LETTER W
429 0x0078: 0x78, # LATIN SMALL LETTER X
430 0x0079: 0x79, # LATIN SMALL LETTER Y
431 0x007A: 0x7A, # LATIN SMALL LETTER Z
432 0x007B: 0x7B, # LEFT CURLY BRACKET
433 0x007C: 0x7C, # VERTICAL LINE
434 0x007D: 0x7D, # RIGHT CURLY BRACKET
435 0x007E: 0x7E, # TILDE
436 0x007F: 0x7F, # DELETE
437 0x0080: 0x80, # <control>
438 0x0081: 0x81, # <control>
439 0x0082: 0x82, # <control>
440 0x0083: 0x83, # <control>
441 0x0084: 0x84, # <control>
442 0x0085: 0x85, # <control>
443 0x0086: 0x86, # <control>
444 0x0087: 0x87, # <control>
445 0x0088: 0x88, # <control>
446 0x0089: 0x89, # <control>
447 0x008A: 0x8A, # <control>
448 0x008B: 0x8B, # <control>
449 0x008C: 0x8C, # <control>
450 0x008D: 0x8D, # <control>
451 0x008E: 0x8E, # <control>
452 0x008F: 0x8F, # <control>
453 0x0090: 0x90, # <control>
454 0x0091: 0x91, # <control>
455 0x0092: 0x92, # <control>
456 0x0093: 0x93, # <control>
457 0x0094: 0x94, # <control>
458 0x0095: 0x95, # <control>
459 0x0096: 0x96, # <control>
460 0x0097: 0x97, # <control>
461 0x0098: 0x98, # <control>
462 0x0099: 0x99, # <control>
463 0x009A: 0x9A, # <control>
464 0x009B: 0x9B, # <control>
465 0x009C: 0x9C, # <control>
466 0x009D: 0x9D, # <control>
467 0x009E: 0x9E, # <control>
468 0x009F: 0x9F, # <control>
469 0x00A0: 0xA0, # NO-BREAK SPACE
470 0x00A2: 0xA2, # CENT SIGN
471 0x00A3: 0xA3, # POUND SIGN
472 0x00A4: 0xA4, # CURRENCY SIGN
473 0x00A5: 0xA5, # YEN SIGN
474 0x00A6: 0xA6, # BROKEN BAR
475 0x00A7: 0xA7, # SECTION SIGN
476 0x00A8: 0xA8, # DIAERESIS
477 0x00A9: 0xA9, # COPYRIGHT SIGN
478 0x00AB: 0xAB, # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
479 0x00AC: 0xAC, # NOT SIGN
480 0x00AD: 0xAD, # SOFT HYPHEN
481 0x00AE: 0xAE, # REGISTERED SIGN
482 0x00AF: 0xAF, # MACRON
483 0x00B0: 0xB0, # DEGREE SIGN
484 0x00B1: 0xB1, # PLUS-MINUS SIGN
485 0x00B2: 0xB2, # SUPERSCRIPT TWO
486 0x00B3: 0xB3, # SUPERSCRIPT THREE
487 0x00B4: 0xB4, # ACUTE ACCENT
488 0x00B5: 0xB5, # MICRO SIGN
489 0x00B6: 0xB6, # PILCROW SIGN
490 0x00B7: 0xB7, # MIDDLE DOT
491 0x00B8: 0xB8, # CEDILLA
492 0x00B9: 0xB9, # SUPERSCRIPT ONE
493 0x00BB: 0xBB, # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
494 0x00BC: 0xBC, # VULGAR FRACTION ONE QUARTER
495 0x00BD: 0xBD, # VULGAR FRACTION ONE HALF
496 0x00BE: 0xBE, # VULGAR FRACTION THREE QUARTERS
497 0x00D7: 0xAA, # MULTIPLICATION SIGN
498 0x00F7: 0xBA, # DIVISION SIGN
499 0x05D0: 0xE0, # HEBREW LETTER ALEF
500 0x05D1: 0xE1, # HEBREW LETTER BET
501 0x05D2: 0xE2, # HEBREW LETTER GIMEL
502 0x05D3: 0xE3, # HEBREW LETTER DALET
503 0x05D4: 0xE4, # HEBREW LETTER HE
504 0x05D5: 0xE5, # HEBREW LETTER VAV
505 0x05D6: 0xE6, # HEBREW LETTER ZAYIN
506 0x05D7: 0xE7, # HEBREW LETTER HET
507 0x05D8: 0xE8, # HEBREW LETTER TET
508 0x05D9: 0xE9, # HEBREW LETTER YOD
509 0x05DA: 0xEA, # HEBREW LETTER FINAL KAF
510 0x05DB: 0xEB, # HEBREW LETTER KAF
511 0x05DC: 0xEC, # HEBREW LETTER LAMED
512 0x05DD: 0xED, # HEBREW LETTER FINAL MEM
513 0x05DE: 0xEE, # HEBREW LETTER MEM
514 0x05DF: 0xEF, # HEBREW LETTER FINAL NUN
515 0x05E0: 0xF0, # HEBREW LETTER NUN
516 0x05E1: 0xF1, # HEBREW LETTER SAMEKH
517 0x05E2: 0xF2, # HEBREW LETTER AYIN
518 0x05E3: 0xF3, # HEBREW LETTER FINAL PE
519 0x05E4: 0xF4, # HEBREW LETTER PE
520 0x05E5: 0xF5, # HEBREW LETTER FINAL TSADI
521 0x05E6: 0xF6, # HEBREW LETTER TSADI
522 0x05E7: 0xF7, # HEBREW LETTER QOF
523 0x05E8: 0xF8, # HEBREW LETTER RESH
524 0x05E9: 0xF9, # HEBREW LETTER SHIN
525 0x05EA: 0xFA, # HEBREW LETTER TAV
526 0x200E: 0xFD, # LEFT-TO-RIGHT MARK
527 0x200F: 0xFE, # RIGHT-TO-LEFT MARK
528 0x2017: 0xDF, # DOUBLE LOW LINE
Marc-André Lemburgd9cf5932005-10-24 12:14:59 +0000529}