Tkinter Wiki   UnicodeSupport UserPreferences
 
HelpContents FindPage Diffs Info Edit Subscribe XML Print View

For most systems, Tkinter should accept unicode strings and render them more or less properly: http://mail.python.org/pipermail/tkinter-discuss/2004-March/000047.html

"more or less properly" means that Tk treats each element of the unicode string as a separate character, and renders it left to right (it gets right-to-left layout and combining characters wrong).

Apparently the situations on Macs, including OS X is not quite so sunny: http://mail.python.org/pipermail/tkinter-discuss/2004-March/000048.html

RedHat9 and Fedora Core 1 shipped with mismatched versions of Python and Tcl unicode support, leading to the following error:

>>> t.insert(Tkinter.END, u"\xc1")
SystemError: Py_UNICODE and Tcl_UniChar differ in size
If you ?BuildYourOwnPython you won't have this problem. If that's not an option, you can also get around this by encoding your Unicode strings as UTF-8:

>>> t.insert(Tkinter.END, u"\xc1".encode("utf-8"))


PythonPowered