Русское сообщество Sublime Text
Основной раздел => Вопросы и ответы => Тема начата: uamaks от Февраля 11, 2016, 04:12:22
-
Подскажите, может кто сталкивался, как решить такую проблему:
В окне редактора с кодировкой все работает нормально - utf-8 и кирилица отбражается нормально.
А вот когда запускаешь код на выполнение(Python) - в окне отладки кодировка не работает. Где можно посмотреть настройки именно для отладки?
-
Что именно не работает? Юникод не отображается корректно или ошибка кодирования "UnicodeEncodeError: 'ascii' codec can't encode characters"?
Попробуй добавить в начало файла
# -*- coding:utf-8 -*-
И это
import sys
reload(sys)
sys.setdefaultencoding('utf8')
-
После замены кодировки на utf-8(в файле пользовательских настроек) в основном окне все нормально. А при выводе результата выдавал именно такую ошибку.(только вместо ascii - utf-8)
Кстати, сегодня обновил до последнего релиза, теперь ошибка не выводится, но и результат вообще не выводится. Видимо выполнение просто останавливается, как только попадается кирилица.
А с сменой кодировки в коде - пока не получается. Ругается на reload.
Но идею я понял - посмотрю. Спасибо!
-
print (sys.getdefaultencoding()) возвращает utf-8, да и в других редакторах отладка работает нормально.
Так что дело не все-таки в Sublime а не в Python...
-
Можно взглянуть на код? Какая все-таки была ошибка? Какая у тебя ОС?
У меня в окне отладки некорректно отображается юникод только кода он в списках. Простой пример print 'Привет' выведет все нормально.
-
Переустановил последнюю сборку(3103). Ошибку перестал выводить, но и текст тоже:
print('Hello!')
print('Привет')
выводит:
Hello!