blob: ca5b125432a1b7719ad23bb307de536130fccd66 [file] [log] [blame]
Walter Dörwaldabb02e52006-03-15 11:35:15 +00001""" Python Character Mapping Codec iso8859_6 generated from 'MAPPINGS/ISO8859/8859-6.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
Walter Dörwaldabb02e52006-03-15 11:35:15 +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():
Walter Dörwaldabb02e52006-03-15 11:35:15 +000034 return codecs.CodecInfo(
35 name='iso8859-6',
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'
210 u'\ufffe'
211 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000212 u'\xa4' # 0xA4 -> CURRENCY SIGN
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000213 u'\ufffe'
214 u'\ufffe'
215 u'\ufffe'
216 u'\ufffe'
217 u'\ufffe'
218 u'\ufffe'
219 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000220 u'\u060c' # 0xAC -> ARABIC COMMA
221 u'\xad' # 0xAD -> SOFT HYPHEN
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000222 u'\ufffe'
223 u'\ufffe'
224 u'\ufffe'
225 u'\ufffe'
226 u'\ufffe'
227 u'\ufffe'
228 u'\ufffe'
229 u'\ufffe'
230 u'\ufffe'
231 u'\ufffe'
232 u'\ufffe'
233 u'\ufffe'
234 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000235 u'\u061b' # 0xBB -> ARABIC SEMICOLON
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000236 u'\ufffe'
237 u'\ufffe'
238 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000239 u'\u061f' # 0xBF -> ARABIC QUESTION MARK
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000240 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000241 u'\u0621' # 0xC1 -> ARABIC LETTER HAMZA
242 u'\u0622' # 0xC2 -> ARABIC LETTER ALEF WITH MADDA ABOVE
243 u'\u0623' # 0xC3 -> ARABIC LETTER ALEF WITH HAMZA ABOVE
244 u'\u0624' # 0xC4 -> ARABIC LETTER WAW WITH HAMZA ABOVE
245 u'\u0625' # 0xC5 -> ARABIC LETTER ALEF WITH HAMZA BELOW
246 u'\u0626' # 0xC6 -> ARABIC LETTER YEH WITH HAMZA ABOVE
247 u'\u0627' # 0xC7 -> ARABIC LETTER ALEF
248 u'\u0628' # 0xC8 -> ARABIC LETTER BEH
249 u'\u0629' # 0xC9 -> ARABIC LETTER TEH MARBUTA
250 u'\u062a' # 0xCA -> ARABIC LETTER TEH
251 u'\u062b' # 0xCB -> ARABIC LETTER THEH
252 u'\u062c' # 0xCC -> ARABIC LETTER JEEM
253 u'\u062d' # 0xCD -> ARABIC LETTER HAH
254 u'\u062e' # 0xCE -> ARABIC LETTER KHAH
255 u'\u062f' # 0xCF -> ARABIC LETTER DAL
256 u'\u0630' # 0xD0 -> ARABIC LETTER THAL
257 u'\u0631' # 0xD1 -> ARABIC LETTER REH
258 u'\u0632' # 0xD2 -> ARABIC LETTER ZAIN
259 u'\u0633' # 0xD3 -> ARABIC LETTER SEEN
260 u'\u0634' # 0xD4 -> ARABIC LETTER SHEEN
261 u'\u0635' # 0xD5 -> ARABIC LETTER SAD
262 u'\u0636' # 0xD6 -> ARABIC LETTER DAD
263 u'\u0637' # 0xD7 -> ARABIC LETTER TAH
264 u'\u0638' # 0xD8 -> ARABIC LETTER ZAH
265 u'\u0639' # 0xD9 -> ARABIC LETTER AIN
266 u'\u063a' # 0xDA -> ARABIC LETTER GHAIN
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000267 u'\ufffe'
268 u'\ufffe'
269 u'\ufffe'
270 u'\ufffe'
271 u'\ufffe'
Tim Peters536cf992005-12-25 23:18:31 +0000272 u'\u0640' # 0xE0 -> ARABIC TATWEEL
273 u'\u0641' # 0xE1 -> ARABIC LETTER FEH
274 u'\u0642' # 0xE2 -> ARABIC LETTER QAF
275 u'\u0643' # 0xE3 -> ARABIC LETTER KAF
276 u'\u0644' # 0xE4 -> ARABIC LETTER LAM
277 u'\u0645' # 0xE5 -> ARABIC LETTER MEEM
278 u'\u0646' # 0xE6 -> ARABIC LETTER NOON
279 u'\u0647' # 0xE7 -> ARABIC LETTER HEH
280 u'\u0648' # 0xE8 -> ARABIC LETTER WAW
281 u'\u0649' # 0xE9 -> ARABIC LETTER ALEF MAKSURA
282 u'\u064a' # 0xEA -> ARABIC LETTER YEH
283 u'\u064b' # 0xEB -> ARABIC FATHATAN
284 u'\u064c' # 0xEC -> ARABIC DAMMATAN
285 u'\u064d' # 0xED -> ARABIC KASRATAN
286 u'\u064e' # 0xEE -> ARABIC FATHA
287 u'\u064f' # 0xEF -> ARABIC DAMMA
288 u'\u0650' # 0xF0 -> ARABIC KASRA
289 u'\u0651' # 0xF1 -> ARABIC SHADDA
290 u'\u0652' # 0xF2 -> ARABIC SUKUN
Marc-André Lemburga1129f42005-10-21 13:49:12 +0000291 u'\ufffe'
292 u'\ufffe'
293 u'\ufffe'
294 u'\ufffe'
295 u'\ufffe'
296 u'\ufffe'
297 u'\ufffe'
298 u'\ufffe'
299 u'\ufffe'
300 u'\ufffe'
301 u'\ufffe'
302 u'\ufffe'
303 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 0x00A4: 0xA4, # CURRENCY SIGN
471 0x00AD: 0xAD, # SOFT HYPHEN
472 0x060C: 0xAC, # ARABIC COMMA
473 0x061B: 0xBB, # ARABIC SEMICOLON
474 0x061F: 0xBF, # ARABIC QUESTION MARK
475 0x0621: 0xC1, # ARABIC LETTER HAMZA
476 0x0622: 0xC2, # ARABIC LETTER ALEF WITH MADDA ABOVE
477 0x0623: 0xC3, # ARABIC LETTER ALEF WITH HAMZA ABOVE
478 0x0624: 0xC4, # ARABIC LETTER WAW WITH HAMZA ABOVE
479 0x0625: 0xC5, # ARABIC LETTER ALEF WITH HAMZA BELOW
480 0x0626: 0xC6, # ARABIC LETTER YEH WITH HAMZA ABOVE
481 0x0627: 0xC7, # ARABIC LETTER ALEF
482 0x0628: 0xC8, # ARABIC LETTER BEH
483 0x0629: 0xC9, # ARABIC LETTER TEH MARBUTA
484 0x062A: 0xCA, # ARABIC LETTER TEH
485 0x062B: 0xCB, # ARABIC LETTER THEH
486 0x062C: 0xCC, # ARABIC LETTER JEEM
487 0x062D: 0xCD, # ARABIC LETTER HAH
488 0x062E: 0xCE, # ARABIC LETTER KHAH
489 0x062F: 0xCF, # ARABIC LETTER DAL
490 0x0630: 0xD0, # ARABIC LETTER THAL
491 0x0631: 0xD1, # ARABIC LETTER REH
492 0x0632: 0xD2, # ARABIC LETTER ZAIN
493 0x0633: 0xD3, # ARABIC LETTER SEEN
494 0x0634: 0xD4, # ARABIC LETTER SHEEN
495 0x0635: 0xD5, # ARABIC LETTER SAD
496 0x0636: 0xD6, # ARABIC LETTER DAD
497 0x0637: 0xD7, # ARABIC LETTER TAH
498 0x0638: 0xD8, # ARABIC LETTER ZAH
499 0x0639: 0xD9, # ARABIC LETTER AIN
500 0x063A: 0xDA, # ARABIC LETTER GHAIN
501 0x0640: 0xE0, # ARABIC TATWEEL
502 0x0641: 0xE1, # ARABIC LETTER FEH
503 0x0642: 0xE2, # ARABIC LETTER QAF
504 0x0643: 0xE3, # ARABIC LETTER KAF
505 0x0644: 0xE4, # ARABIC LETTER LAM
506 0x0645: 0xE5, # ARABIC LETTER MEEM
507 0x0646: 0xE6, # ARABIC LETTER NOON
508 0x0647: 0xE7, # ARABIC LETTER HEH
509 0x0648: 0xE8, # ARABIC LETTER WAW
510 0x0649: 0xE9, # ARABIC LETTER ALEF MAKSURA
511 0x064A: 0xEA, # ARABIC LETTER YEH
512 0x064B: 0xEB, # ARABIC FATHATAN
513 0x064C: 0xEC, # ARABIC DAMMATAN
514 0x064D: 0xED, # ARABIC KASRATAN
515 0x064E: 0xEE, # ARABIC FATHA
516 0x064F: 0xEF, # ARABIC DAMMA
517 0x0650: 0xF0, # ARABIC KASRA
518 0x0651: 0xF1, # ARABIC SHADDA
519 0x0652: 0xF2, # ARABIC SUKUN
Marc-André Lemburgd9cf5932005-10-24 12:14:59 +0000520}
Walter Dörwaldabb02e52006-03-15 11:35:15 +0000521