PageRenderTime 433ms CodeModel.GetById 121ms app.highlight 19ms RepoModel.GetById 121ms app.codeStats 1ms

/Lib/encodings/iso8859_6.py

http://unladen-swallow.googlecode.com/
Python | 307 lines | 305 code | 1 blank | 1 comment | 0 complexity | c06e7ece64411838092a2cdcddfb361d MD5 | raw file
  1""" Python Character Mapping Codec iso8859_6 generated from 'MAPPINGS/ISO8859/8859-6.TXT' with gencodec.py.
  2
  3"""#"
  4
  5import codecs
  6
  7### Codec APIs
  8
  9class Codec(codecs.Codec):
 10
 11    def encode(self,input,errors='strict'):
 12        return codecs.charmap_encode(input,errors,encoding_table)
 13
 14    def decode(self,input,errors='strict'):
 15        return codecs.charmap_decode(input,errors,decoding_table)
 16
 17class IncrementalEncoder(codecs.IncrementalEncoder):
 18    def encode(self, input, final=False):
 19        return codecs.charmap_encode(input,self.errors,encoding_table)[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
 25class StreamWriter(Codec,codecs.StreamWriter):
 26    pass
 27
 28class StreamReader(Codec,codecs.StreamReader):
 29    pass
 30
 31### encodings module API
 32
 33def getregentry():
 34    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    )
 43
 44
 45### Decoding Table
 46
 47decoding_table = (
 48    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
209    u'\ufffe'
210    u'\ufffe'
211    u'\ufffe'
212    u'\xa4'     #  0xA4 -> CURRENCY SIGN
213    u'\ufffe'
214    u'\ufffe'
215    u'\ufffe'
216    u'\ufffe'
217    u'\ufffe'
218    u'\ufffe'
219    u'\ufffe'
220    u'\u060c'   #  0xAC -> ARABIC COMMA
221    u'\xad'     #  0xAD -> SOFT HYPHEN
222    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'
235    u'\u061b'   #  0xBB -> ARABIC SEMICOLON
236    u'\ufffe'
237    u'\ufffe'
238    u'\ufffe'
239    u'\u061f'   #  0xBF -> ARABIC QUESTION MARK
240    u'\ufffe'
241    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
267    u'\ufffe'
268    u'\ufffe'
269    u'\ufffe'
270    u'\ufffe'
271    u'\ufffe'
272    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
291    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
306### Encoding table
307encoding_table=codecs.charmap_build(decoding_table)