[Python-de] Tkinter Text-Widget unter Windows Problem beim Speichern

CCF.Herzog at gmx.net CCF.Herzog at gmx.net
Sat Apr 21 00:33:56 EDT 2001


On 20 Apr 2001, at 21:52, Martin v. Loewis wrote:

> Das scheint mir ein Tk-Fehler unter Windows zu sein. Wenn ich unter
> Linux (mit Tk 8.3.1)
> 
> >>> import Tkinter
> >>> t=Tkinter.Text()
> >>> t.pack()
> >>> t.insert("1.0",u'\xe2\xee\xfb')
> 
> ausführe, dann ein ä eingebe, und dann
> 
> >>> t.get("1.0","end")
> 
> ausführe, bekommen ich
> 
> u'\xe2\xee\xfb\xe4\n'
> 
> Was passiert bei Dir?
bei mir bekomme ich:
>>> import Tkinter
>>> t=Tkinter.Text()
>>> t.pack()
>>> t.insert("1.0",u'\xe2\xee\xfb')
dann das ä und:
>>> t.get("1.0","end")
'\xc3\xa2\xc3\xae\xc3\xbb\xe4\n'

Es ist also nichts zu machen. Vermutlich wirklich Windows-
spezifisch.

> Welche Tk-Version verwendet eigentlich Deine Python-Installation?

Die bei Python2.1 in der Windows-Installation mitkommt, soweit 
ich sehe ist das 8.3; ich habe mir extra sofort die neue Python-
Version besorgt, um zu sehen, ob das Problem dort vielleicht 
behoben ist. Leider habe ich keine Linux-Installation auf meinem 
Rechner. Ich werde mal sehen, ob die neueste Tcl/Tk Version was 
ändert. Es sieht tatsächlich so aus als ob das Text-Widget 
Tastatureingaben (unter Windows 2000 jedenfalls) grundsätzlich in 
latin-1 (oder möglicherweise cp1252) einliest, dabei einen evtl. 
intern vorhandenen unicode-type string in UTF-8 mit type string 
umwandelt, über die Tastatur eingegebene Zeichen aber NICHT, 
wodurch der besagte Mischmasch entsteht.
Vielen Dank für die Hilfe, mir ist nun mittlerweile immerhin klar, 
woran's ungefähr liegt.
Gruss
Christoph




More information about the Python-de mailing list