2017-02-07 3 views
1

Ich möchte die bevorzugte Codierung von US-ASCII zu UTF-8 in Sublime Text 3 auf Yosemite ändern. Die bevorzugte Codierung in dem schlag wird auf UTF-8, wenn so Python im Endgerät ausgeführt wird:So ändern Sie die bevorzugte Codierung in Sublime Text 3 für MacOS

import locale 
print(locale.getpreferredencoding()) 

die Ausgabe ist: UTF-8 Wenn derselbe Code in erhabenem Text ausgeführt wird, wird der Ausgang US-ASCII.

Einstellung im Build-System für Python 3:

"encoding": "UTF-8" 

oder

"env": {"PYTHONIOENCODING": "utf-8} 

nicht geholfen hat.

Wie kann die Einstellung dauerhaft geändert werden, so dass ich nicht in einem Skript locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') als Fix aufrufen muss.

+0

von meinem Testen in Linux, ist es ausreichend, die LANG-Umgebungsvariable im Build-System dh "env": {"PYTHONIOENCODING": "utf-8", "LANG": "en_US.UTF- 8 "},' - Wenn das für dich auf MacOS funktioniert, mache ich eine Antwort :) –

+0

Danke, es funktioniert auch für MacOS. –

Antwort

2

Im Build-System von ST3 für Python können Sie festlegen, dass die Umgebungsvariable LANG gesetzt werden soll. Dies wirkt sich auf das von locale.getpreferredencoding() zurückgegebene Ergebnis aus, sodass Sie keine Python-Skripts ändern müssen.

Beispiel:

"env": {"PYTHONIOENCODING": "utf-8", "LANG": "en_US.UTF-8"}, 

Dies bestätigt wurde unter Linux sowie MacOS zu arbeiten.

Verwandte Themen