Ошибка с SublimeLinter в SublimeText 2
Я пытаюсь использовать SublimeLinter в SublimeText2. Пакеты установлены, node.exe тоже, путь к node.exe правильный:
{
"sublimelinter_executable_map": {
"javascript":"C:\\Program Files\\nodejs\\node.exe",
"css":"C:\\Program Files\\nodejs\\node.exe"
}
}
написать простой код:
function foo(){
x != hg
а = р
в hghhgg
}
сохранить и без сообщений linter! В то же время в консоли я вижу ошибку:
Traceback (most recent call last):
File ".\sublime_plugin.py", line 190, in on_post_save
File ".\sublime_plugin.py", line 154, in run_timed_function
File ".\sublime_plugin.py", line 189, in <lambda>
File ".\SublimeLinter.py", line 744, in on_post_save
File ".\SublimeLinter.py", line 611, in reload_view_module
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc4 in position 9: ordinal not in range(128)
ОС: Win7 32bit
2 ответа
В соответствии с настройками по умолчанию для SublimeLinter (prefs>pkg settings>sublimelinter>settings-default) значение "sublimelinter_executable_map" используется только для указания пути perl/php/ruby. Поэтому использование его для путей js и css не поможет, и может даже сломать его.
Вот как я настроил линтинг для JavaSript:
- Установите jslint с помощью Package Control (см. Wbond.com)
Следуйте всем предварительным требованиям и инструкциям по установке, найденным здесь.
- В User - Настройки для SublimeLinter: { "sublimelinter": true, "javascript_linter": "jslint" }
Верхний регистр B в строке 4 примера кода является символом Unicode, а не символом ASCII. SublimeLinter выглядит так, как будто он ожидает ASCII-данные, поэтому считыватель завершается с ошибкой при попадании в байт Unicode.
Если вы поместите персонажа и нормальный B рядом, вы можете легко увидеть разницу:
в B