Commit 13b8bc54 authored by Martin v. Löwis's avatar Martin v. Löwis

Patch #429957: Add support for cp1140, which is identical to cp037,

with the addition of the euro character.
Also added a few EDBDIC aliases.
parent e2ccb895
......@@ -32,6 +32,11 @@ aliases = {
# ASCII
'us_ascii': 'ascii',
# EBCDIC
'ebcdic_cp_us': 'cp037',
'ibm039': 'cp037',
'ibm1140': 'cp1140',
# ISO
'8859': 'latin_1',
'iso8859': 'latin_1',
......
""" Python Character Mapping Codec for cp1140
Written by Brian Quinlan(brian@sweetapp.com). NO WARRANTY.
"""
import codecs
import copy
import cp037
### Codec APIs
class Codec(codecs.Codec):
def encode(self,input,errors='strict'):
return codecs.charmap_encode(input,errors,encoding_map)
def decode(self,input,errors='strict'):
return codecs.charmap_decode(input,errors,decoding_map)
class StreamWriter(Codec,codecs.StreamWriter):
pass
class StreamReader(Codec,codecs.StreamReader):
pass
### encodings module API
def getregentry():
return (Codec().encode,Codec().decode,StreamReader,StreamWriter)
### Decoding Map
decoding_map = copy.copy(cp037.decoding_map)
decoding_map.update({
0x009f: 0x20ac # EURO SIGN
})
### Encoding Map
encoding_map = codecs.make_encoding_map(decoding_map)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment