[Python-checkins] CVS: python/dist/src/Doc/tools/sgmlconv esistools.py,1.6,1.7
Fred L. Drake
fdrake@users.sourceforge.net
Fri, 20 Apr 2001 23:01:55 -0700
Update of /cvsroot/python/python/dist/src/Doc/tools/sgmlconv
In directory usw-pr-cvs1:/tmp/cvs-serv29783
Modified Files:
esistools.py
Log Message:
encode(): Handle Latin-1 input characters better.
Index: esistools.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/tools/sgmlconv/esistools.py,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** esistools.py 2001/03/23 17:09:02 1.6
--- esistools.py 2001/04/21 06:01:53 1.7
***************
*** 36,41 ****
_charmap = {}
! for c in map(chr, range(256)):
! _charmap[c] = c
_charmap["\n"] = r"\n"
_charmap["\\"] = r"\\"
--- 36,42 ----
_charmap = {}
! for c in range(128):
! _charmap[chr(c)] = chr(c)
! _charmap[unichr(c + 128)] = chr(c + 128)
_charmap["\n"] = r"\n"
_charmap["\\"] = r"\\"
***************
*** 44,48 ****
_null_join = ''.join
def encode(s):
! return _null_join(map(_charmap.get, s))
--- 45,52 ----
_null_join = ''.join
def encode(s):
! try:
! return _null_join(map(_charmap.get, s))
! except TypeError:
! raise Exception("could not encode %r: %r" % (s, map(_charmap.get, s)))