David-Sarah Hopwood <david-sa...@jacaranda.org> added the comment:

It is certainly possible to write Unicode to the console successfully using 
WriteConsoleW. This works regardless of the console code page, including 65001. 
The code <a 
href="http://tahoe-lafs.org/trac/tahoe-lafs/browser/src/allmydata/windows/fixups.py";>here</a>
 does so (it's for Python 2.x, but you'd be calling WriteConsoleW from C 
anyway).

WriteConsoleW has one bug that I know of, which is that it <a 
href="http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1232";>fails when writing 
more than 26608 characters at once</a>. That's easy to work around by limiting 
the amount of data passed in a single call.

Fonts are not Python's problem, but encoding is. It doesn't make sense to fail 
to output the right characters just because some users might not have selected 
fonts that can display those characters. This bug should be reopened.

(For completeness, it is possible to display Unicode on the console using fonts 
other than Lucida Console and Consolas, but it <a 
href="http://stackoverflow.com/questions/878972/windows-cmd-encoding-change-causes-python-crash/3259271#3259271";>requires
 a registry hack</a>.)

----------
nosy: +davidsarah

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue1602>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to