diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2001-06-07 19:39:25 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2001-06-07 19:39:25 (GMT) |
commit | 13b8bc54788ab4112f94160e2253bcf86da96c95 (patch) | |
tree | bdeef540ccb9570e310b79866b7c51bcf43209d9 /Lib/encodings/cp1140.py | |
parent | e2ccb89513c2a487576fcec627aa7d50a719c444 (diff) | |
download | cpython-13b8bc54788ab4112f94160e2253bcf86da96c95.zip cpython-13b8bc54788ab4112f94160e2253bcf86da96c95.tar.gz cpython-13b8bc54788ab4112f94160e2253bcf86da96c95.tar.bz2 |
Patch #429957: Add support for cp1140, which is identical to cp037,
with the addition of the euro character.
Also added a few EDBDIC aliases.
Diffstat (limited to 'Lib/encodings/cp1140.py')
-rw-r--r-- | Lib/encodings/cp1140.py | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/Lib/encodings/cp1140.py b/Lib/encodings/cp1140.py new file mode 100644 index 0000000..68f64ab --- /dev/null +++ b/Lib/encodings/cp1140.py @@ -0,0 +1,45 @@ +""" 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) + |