Changeset 2140
- Timestamp:
- 03/15/07 13:39:26 (2 years ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
pyreadline/branches/refactor/pyreadline/console/console.py
r1877 r2140 20 20 21 21 try: 22 # I developed this with ctypes 0.623 22 from ctypes import * 24 23 from _ctypes import call_function … … 116 115 _fields_ = [("dwSize", c_int), 117 116 ("bVisible", c_byte)] 117 118 consolecodepage=sys.stdout.encoding 119 def ensure_text(text): 120 """helper to ensure that text passed to WriteConsoleA is ascii""" 121 if isinstance(text, unicode): 122 return text.encode(consolecodepage,"replace") 123 return text 118 124 119 125 # I didn't want to have to individually import these so I made a list, they are … … 348 354 attr = self.attr 349 355 self.SetConsoleTextAttribute(self.hout, attr) 350 self.WriteConsoleA(self.hout, chunk, len(chunk), byref(junk), None)356 self.WriteConsoleA(self.hout, ensure_text(chunk), len(chunk), byref(junk), None) 351 357 return n 352 358 … … 358 364 log(str(chunk)) 359 365 self.SetConsoleTextAttribute(self.hout, attr.winattr) 360 self.WriteConsoleA(self.hout, chunk, len(chunk), byref(junk), None)366 self.WriteConsoleA(self.hout, ensure_text(chunk), len(chunk), byref(junk), None) 361 367 return n 362 368 … … 369 375 n = c_int(0) 370 376 self.SetConsoleTextAttribute(self.hout, attr) 371 self.WriteConsoleA(self.hout, text, len(text), byref(n), None)377 self.WriteConsoleA(self.hout, ensure_text(chunk), len(chunk), byref(junk), None) 372 378 return len(text) 373 379 pyreadline/branches/refactor/pyreadline/modes/basemode.py
r2132 r2140 59 59 mark_directories=property(*_gs("mark_directories")) 60 60 completer=property(*_gs("completer")) 61 begidx=property(*_gs("begidx")) 62 endidx=property(*_gs("endidx")) 61 63 62 64 console=property(_g("console")) pyreadline/branches/refactor/pyreadline/release.py
r1219 r2140 23 23 branch = 'refactor' 24 24 25 version = ' refactor'25 version = '1.4.svn' 26 26 27 27 revision = '$Revision$'
