Sublime Text 3 SublimeLinter плагин не в состоянии найти jshint

по какой-то причине sublimelinter3 или плагин JSHint linter SublimeLinter3, похоже, не в состоянии проанализировать PATH переменная окружения и, таким образом, не может работать jshint:

SublimeLinter: Could not parse shell PATH output:
<empty> 
error: SublimeLinter could not determine your shell PATH. It is unlikely that any linters  will work. 

Please see the troubleshooting guide for info on how to debug PATH problems.
SublimeLinter: WARNING: jshint deactivated, cannot locate 'jshint' 
Can't connect
Unable to fetch update url contents

на jshint двоичной в PATH однако:

$ which jshint
/home/path/to/bin/jshint

проблема возникает только на Ubuntu. Работает безупречно на OS X. Я просмотрел официальные документы безрезультатно.

используя bash если это имеет какое-либо значение.

2 ответов


Я в конечном итоге исправил это, открыв Настройки SublimeLinter и вручную добавив путь к linter:

"paths": {
    "linux": ["/path/to/jshint/bin"],
    "osx": [],
    "windows": []
},

если у вас его еще нет, вы можете установить через npm:

npm install -g jshint

и вы найдете его местоположение:

which jshint

или в Windows:

where jshint

это исправление специфично для windows, вы можете редактировать свои предпочтения, такие как jorum. Или вы можете добавить его в свой "путь" windows, который может быть более полезным в будущем.

Пуск > Панель Управления > Система > Дополнительные Параметры Системы > Переменные Среды...

выберите свой путь и нажмите кнопку Изменить.

добавьте это в конец значения переменной: ;C:\Users\YOURUSERNAMEHERE\node_modules\jshint\bin

для тестирования: Откройте командную строку и введите jshint -v А вы должны получить номер версии, а не ошибка.

то, что вы только что сделали, было добавлено в вашу ОС, где она может найти jshint, ваше местоположение установки может отличаться, в этом случае просто найдите папку jshint в вашей системе, в которой есть папка /bin внутри нее и ссылка там вместо этого. Обратите внимание, что двоеточие(;) в начале разделяет разные пути, поэтому убедитесь, что оно включено.