Gibt es eine Möglichkeit, Windows 7 so einzustellen, dass UTF-8 global als Standard verwendet wird?
Es ist wirklich ärgerlich, jeden einzelnen Texteditor so einzustellen, dass er ihn verwendet.
Gibt es eine Möglichkeit, Windows 7 so einzustellen, dass UTF-8 global als Standard verwendet wird?
Es ist wirklich ärgerlich, jeden einzelnen Texteditor so einzustellen, dass er ihn verwendet.
Antworten:
Die kurze Antwort ist nein, es ist nicht möglich .
Ich fürchte, Sie werden in Windows 7 keine globale Codierungsoption finden, mit der Sie beide 1) einen globalen Standardwert festlegen können, dem 2) alle von Ihnen aufgelisteten Anwendungen gehorchen würden.
Ich möchte auch fragen, welches Problem Sie hier lösen möchten.
Es liegt an der Anwendung, zu entscheiden, ob sie Unicode intern zur Darstellung von Daten verwenden. Obwohl die Verwendung von Unicode empfohlen wird , können Sie möglicherweise nie sicher sein, dass alle Ihre Anwendungen dies tatsächlich intern unterstützen.
Sie können jedoch die Standardzeichenkodierung für jede der aufgelisteten Anwendungen ändern:
UTF-16LE
.
Dies ist hauptsächlich deshalb nicht möglich, weil Windows UTF-8 nicht als System-ANSI-Codepage zulässt, obwohl es eine ANSI-Codepage für UTF-8 ( Codepage 65001) gibt . Dafür scheint es mehrere Gründe zu geben:
WriteFile()
API gibt zum Beispiel ein falsches Ergebnis unter der Codepage 65001 zurück, das durch den gesamten Bibliothekscode sprudelt, der darauf angewiesen ist, wie zum Beispiel write()
.Der verstorbene Michael Kaplan, der bei Microsoft an der Internationalisierung gearbeitet hat, hatte einen Blog mit dem Titel "Sorting it all Out" mit mehreren Beiträgen zu verwandten Themen. Ich habe ihm damals direkt eine E-Mail mit einigen dieser Bedenken geschickt.