| Guido van Rossum | 0229bf6 | 2000-03-10 23:17:24 +0000 | [diff] [blame] | 1 | """ Python Character Mapping Codec generated from '8859-5.TXT'. | 
 | 2 |  | 
 | 3 |  | 
 | 4 | Written by Marc-Andre Lemburg (mal@lemburg.com). | 
 | 5 |  | 
 | 6 | (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. | 
 | 7 |  | 
 | 8 | """#" | 
 | 9 |  | 
 | 10 | import codecs | 
 | 11 |  | 
 | 12 | ### Codec APIs | 
 | 13 |  | 
 | 14 | class Codec(codecs.Codec): | 
 | 15 |  | 
 | 16 |     def encode(self,input,errors='strict'): | 
 | 17 |  | 
 | 18 |         return codecs.charmap_encode(input,errors,encoding_map) | 
 | 19 |          | 
 | 20 |     def decode(self,input,errors='strict'): | 
 | 21 |  | 
 | 22 |         return codecs.charmap_decode(input,errors,decoding_map) | 
 | 23 |  | 
 | 24 | class StreamWriter(Codec,codecs.StreamWriter): | 
 | 25 |     pass | 
 | 26 |          | 
 | 27 | class StreamReader(Codec,codecs.StreamReader): | 
 | 28 |     pass | 
 | 29 |  | 
 | 30 | ### encodings module API | 
 | 31 |  | 
 | 32 | def getregentry(): | 
 | 33 |  | 
 | 34 |     return (Codec().encode,Codec().decode,StreamReader,StreamWriter) | 
 | 35 |  | 
 | 36 | ### Decoding Map | 
 | 37 |  | 
 | 38 | decoding_map = { | 
 | 39 |  | 
 | 40 | 	0x00a1: 0x0401,	# 	CYRILLIC CAPITAL LETTER IO | 
 | 41 | 	0x00a2: 0x0402,	# 	CYRILLIC CAPITAL LETTER DJE | 
 | 42 | 	0x00a3: 0x0403,	# 	CYRILLIC CAPITAL LETTER GJE | 
 | 43 | 	0x00a4: 0x0404,	# 	CYRILLIC CAPITAL LETTER UKRAINIAN IE | 
 | 44 | 	0x00a5: 0x0405,	# 	CYRILLIC CAPITAL LETTER DZE | 
 | 45 | 	0x00a6: 0x0406,	# 	CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I | 
 | 46 | 	0x00a7: 0x0407,	# 	CYRILLIC CAPITAL LETTER YI | 
 | 47 | 	0x00a8: 0x0408,	# 	CYRILLIC CAPITAL LETTER JE | 
 | 48 | 	0x00a9: 0x0409,	# 	CYRILLIC CAPITAL LETTER LJE | 
 | 49 | 	0x00aa: 0x040a,	# 	CYRILLIC CAPITAL LETTER NJE | 
 | 50 | 	0x00ab: 0x040b,	# 	CYRILLIC CAPITAL LETTER TSHE | 
 | 51 | 	0x00ac: 0x040c,	# 	CYRILLIC CAPITAL LETTER KJE | 
 | 52 | 	0x00ae: 0x040e,	# 	CYRILLIC CAPITAL LETTER SHORT U | 
 | 53 | 	0x00af: 0x040f,	# 	CYRILLIC CAPITAL LETTER DZHE | 
 | 54 | 	0x00b0: 0x0410,	# 	CYRILLIC CAPITAL LETTER A | 
 | 55 | 	0x00b1: 0x0411,	# 	CYRILLIC CAPITAL LETTER BE | 
 | 56 | 	0x00b2: 0x0412,	# 	CYRILLIC CAPITAL LETTER VE | 
 | 57 | 	0x00b3: 0x0413,	# 	CYRILLIC CAPITAL LETTER GHE | 
 | 58 | 	0x00b4: 0x0414,	# 	CYRILLIC CAPITAL LETTER DE | 
 | 59 | 	0x00b5: 0x0415,	# 	CYRILLIC CAPITAL LETTER IE | 
 | 60 | 	0x00b6: 0x0416,	# 	CYRILLIC CAPITAL LETTER ZHE | 
 | 61 | 	0x00b7: 0x0417,	# 	CYRILLIC CAPITAL LETTER ZE | 
 | 62 | 	0x00b8: 0x0418,	# 	CYRILLIC CAPITAL LETTER I | 
 | 63 | 	0x00b9: 0x0419,	# 	CYRILLIC CAPITAL LETTER SHORT I | 
 | 64 | 	0x00ba: 0x041a,	# 	CYRILLIC CAPITAL LETTER KA | 
 | 65 | 	0x00bb: 0x041b,	# 	CYRILLIC CAPITAL LETTER EL | 
 | 66 | 	0x00bc: 0x041c,	# 	CYRILLIC CAPITAL LETTER EM | 
 | 67 | 	0x00bd: 0x041d,	# 	CYRILLIC CAPITAL LETTER EN | 
 | 68 | 	0x00be: 0x041e,	# 	CYRILLIC CAPITAL LETTER O | 
 | 69 | 	0x00bf: 0x041f,	# 	CYRILLIC CAPITAL LETTER PE | 
 | 70 | 	0x00c0: 0x0420,	# 	CYRILLIC CAPITAL LETTER ER | 
 | 71 | 	0x00c1: 0x0421,	# 	CYRILLIC CAPITAL LETTER ES | 
 | 72 | 	0x00c2: 0x0422,	# 	CYRILLIC CAPITAL LETTER TE | 
 | 73 | 	0x00c3: 0x0423,	# 	CYRILLIC CAPITAL LETTER U | 
 | 74 | 	0x00c4: 0x0424,	# 	CYRILLIC CAPITAL LETTER EF | 
 | 75 | 	0x00c5: 0x0425,	# 	CYRILLIC CAPITAL LETTER HA | 
 | 76 | 	0x00c6: 0x0426,	# 	CYRILLIC CAPITAL LETTER TSE | 
 | 77 | 	0x00c7: 0x0427,	# 	CYRILLIC CAPITAL LETTER CHE | 
 | 78 | 	0x00c8: 0x0428,	# 	CYRILLIC CAPITAL LETTER SHA | 
 | 79 | 	0x00c9: 0x0429,	# 	CYRILLIC CAPITAL LETTER SHCHA | 
 | 80 | 	0x00ca: 0x042a,	# 	CYRILLIC CAPITAL LETTER HARD SIGN | 
 | 81 | 	0x00cb: 0x042b,	# 	CYRILLIC CAPITAL LETTER YERU | 
 | 82 | 	0x00cc: 0x042c,	# 	CYRILLIC CAPITAL LETTER SOFT SIGN | 
 | 83 | 	0x00cd: 0x042d,	# 	CYRILLIC CAPITAL LETTER E | 
 | 84 | 	0x00ce: 0x042e,	# 	CYRILLIC CAPITAL LETTER YU | 
 | 85 | 	0x00cf: 0x042f,	# 	CYRILLIC CAPITAL LETTER YA | 
 | 86 | 	0x00d0: 0x0430,	# 	CYRILLIC SMALL LETTER A | 
 | 87 | 	0x00d1: 0x0431,	# 	CYRILLIC SMALL LETTER BE | 
 | 88 | 	0x00d2: 0x0432,	# 	CYRILLIC SMALL LETTER VE | 
 | 89 | 	0x00d3: 0x0433,	# 	CYRILLIC SMALL LETTER GHE | 
 | 90 | 	0x00d4: 0x0434,	# 	CYRILLIC SMALL LETTER DE | 
 | 91 | 	0x00d5: 0x0435,	# 	CYRILLIC SMALL LETTER IE | 
 | 92 | 	0x00d6: 0x0436,	# 	CYRILLIC SMALL LETTER ZHE | 
 | 93 | 	0x00d7: 0x0437,	# 	CYRILLIC SMALL LETTER ZE | 
 | 94 | 	0x00d8: 0x0438,	# 	CYRILLIC SMALL LETTER I | 
 | 95 | 	0x00d9: 0x0439,	# 	CYRILLIC SMALL LETTER SHORT I | 
 | 96 | 	0x00da: 0x043a,	# 	CYRILLIC SMALL LETTER KA | 
 | 97 | 	0x00db: 0x043b,	# 	CYRILLIC SMALL LETTER EL | 
 | 98 | 	0x00dc: 0x043c,	# 	CYRILLIC SMALL LETTER EM | 
 | 99 | 	0x00dd: 0x043d,	# 	CYRILLIC SMALL LETTER EN | 
 | 100 | 	0x00de: 0x043e,	# 	CYRILLIC SMALL LETTER O | 
 | 101 | 	0x00df: 0x043f,	# 	CYRILLIC SMALL LETTER PE | 
 | 102 | 	0x00e0: 0x0440,	# 	CYRILLIC SMALL LETTER ER | 
 | 103 | 	0x00e1: 0x0441,	# 	CYRILLIC SMALL LETTER ES | 
 | 104 | 	0x00e2: 0x0442,	# 	CYRILLIC SMALL LETTER TE | 
 | 105 | 	0x00e3: 0x0443,	# 	CYRILLIC SMALL LETTER U | 
 | 106 | 	0x00e4: 0x0444,	# 	CYRILLIC SMALL LETTER EF | 
 | 107 | 	0x00e5: 0x0445,	# 	CYRILLIC SMALL LETTER HA | 
 | 108 | 	0x00e6: 0x0446,	# 	CYRILLIC SMALL LETTER TSE | 
 | 109 | 	0x00e7: 0x0447,	# 	CYRILLIC SMALL LETTER CHE | 
 | 110 | 	0x00e8: 0x0448,	# 	CYRILLIC SMALL LETTER SHA | 
 | 111 | 	0x00e9: 0x0449,	# 	CYRILLIC SMALL LETTER SHCHA | 
 | 112 | 	0x00ea: 0x044a,	# 	CYRILLIC SMALL LETTER HARD SIGN | 
 | 113 | 	0x00eb: 0x044b,	# 	CYRILLIC SMALL LETTER YERU | 
 | 114 | 	0x00ec: 0x044c,	# 	CYRILLIC SMALL LETTER SOFT SIGN | 
 | 115 | 	0x00ed: 0x044d,	# 	CYRILLIC SMALL LETTER E | 
 | 116 | 	0x00ee: 0x044e,	# 	CYRILLIC SMALL LETTER YU | 
 | 117 | 	0x00ef: 0x044f,	# 	CYRILLIC SMALL LETTER YA | 
 | 118 | 	0x00f0: 0x2116,	# 	NUMERO SIGN | 
 | 119 | 	0x00f1: 0x0451,	# 	CYRILLIC SMALL LETTER IO | 
 | 120 | 	0x00f2: 0x0452,	# 	CYRILLIC SMALL LETTER DJE | 
 | 121 | 	0x00f3: 0x0453,	# 	CYRILLIC SMALL LETTER GJE | 
 | 122 | 	0x00f4: 0x0454,	# 	CYRILLIC SMALL LETTER UKRAINIAN IE | 
 | 123 | 	0x00f5: 0x0455,	# 	CYRILLIC SMALL LETTER DZE | 
 | 124 | 	0x00f6: 0x0456,	# 	CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I | 
 | 125 | 	0x00f7: 0x0457,	# 	CYRILLIC SMALL LETTER YI | 
 | 126 | 	0x00f8: 0x0458,	# 	CYRILLIC SMALL LETTER JE | 
 | 127 | 	0x00f9: 0x0459,	# 	CYRILLIC SMALL LETTER LJE | 
 | 128 | 	0x00fa: 0x045a,	# 	CYRILLIC SMALL LETTER NJE | 
 | 129 | 	0x00fb: 0x045b,	# 	CYRILLIC SMALL LETTER TSHE | 
 | 130 | 	0x00fc: 0x045c,	# 	CYRILLIC SMALL LETTER KJE | 
 | 131 | 	0x00fd: 0x00a7,	# 	SECTION SIGN | 
 | 132 | 	0x00fe: 0x045e,	# 	CYRILLIC SMALL LETTER SHORT U | 
 | 133 | 	0x00ff: 0x045f,	# 	CYRILLIC SMALL LETTER DZHE | 
 | 134 | } | 
 | 135 |  | 
 | 136 | ### Encoding Map | 
 | 137 |  | 
 | 138 | encoding_map = {} | 
 | 139 | for k,v in decoding_map.items(): | 
 | 140 |     encoding_map[v] = k |