2013-03-01 14 views
8

निर्माण जब उदात्त पाठ 2 से मेरे python3 स्क्रिप्ट चलाने, तो निम्न त्रुटि occures:उदात्त python3 साथ पाठ 2 एन्कोडिंग त्रुटि

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128) 

इसके अलावा, जब टर्मिनल से ही स्क्रिप्ट चल रहा है, समस्या प्रकट नहीं होता है ।

{ 
"cmd": ["python3", "-u", "$file"], 
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
"selector": "source.python", 
"encoding": "utf8", 
"path": "/Library/Frameworks/Python.framework/Versions/3.3/bin/" 
} 

अग्रिम धन्यवाद:

उदात्त के लिए निर्माण सिस्टम सेटिंग निम्नलिखित है!

उत्तर

28

कुछ जांच और अनुसंधान के बाद, मैं पता लगा कि समस्या क्या है:

उपप्रक्रिया में लापता LANG env चर, उदात्त पाठ 2. से भाग गया मैं इसे वैसे ही जैसे अपने निर्माण सेटिंग्स में LANG चर जोड़कर तय इसलिए:

{ 
"cmd": ["python3", "-u", "$file"], 
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
"selector": "source.python", 
"env": {"LANG": "en_US.UTF-8"} 
} 
+0

बढ़िया! मेरी समस्या हल – jostyposty

+1

बहुत बढ़िया! सब्लिमे टेक्स्ट 3 – chris838

+1

के लिए भी काम करता है, इसलिए, मैं सिर्फ जवाब देने के लिए इसे फिर से प्रश्न के रूप में पोस्ट करने वाला था, लेकिन मुझे लगता है कि मैं यहां टिप्पणी करूंगा। मैंने कोशिश की, और यह काम नहीं किया। शायद, क्योंकि मैं एक मैक पर काम कर रहा हूँ। मेरे लिए चाल क्या है LANG env चर सेट नहीं कर रहा है, लेकिन LC_CTYPE को "UTF-8" में सेट किया गया है। मैंने सचमुच 3 घंटे की खोज की, मेरे टेबल टॉप में बाएं दांत के निशान और इस प्रकार यह शायद क्यों मदद करता है। – Ekkstein

1

मार्टिन के समाधान बहुत अच्छे काम करते थे! विंडोज़/पायथन 3.5 पर्यावरण में बस "LANG" के बजाय निम्नलिखित सेट करें:

"env": {"PYTHONIOENCODING": "utf8"} 
संबंधित मुद्दे