Google Closure Linter не работает в Sublime Text 2 для Windows

Кто-нибудь получил Google Closure Linter (gjslint) для работы с Sublime Text 2 для Windows?

Когда я запускаю его, я получаю следующее (через меню Сервис или CTRL+SHIFT+J):

Неверный синтаксис имени файла, имени каталога или метки тома.

линтер закрытия: проигнорировано 0 ошибок.

Мои шаги были такими:

Из коробки ни одна функция не работала. Однако, если я жестко запрограммирую путь в настройках по умолчанию, я смогу заставить работать подключаемый модуль fixjsstyle:

{
    // Path to the gjslint.
    "gjslint_path": "/python27/scripts/gjslint",

    // Path to the fixjsstyle.
    "fixjsstyle_path": "/python27/scripts/fixjsstyle"
}

Могу подтвердить, что они оба существуют:

C:\>dir c:\python27\scripts
 Volume in drive C is OSDisk
 Volume Serial Number is 36E3-7433

 Directory of c:\python27\scripts

...
06/29/2012  09:48 AM               304 fixjsstyle-script.py
06/29/2012  09:48 AM             7,168 fixjsstyle.exe
06/29/2012  09:48 AM               525 fixjsstyle.exe.manifest
06/29/2012  09:48 AM               298 gjslint-script.py
06/29/2012  09:48 AM             7,168 gjslint.exe
06/29/2012  09:48 AM               522 gjslint.exe.manifest
              17 File(s)         34,580 bytes
               2 Dir(s)  186,377,805,824 bytes free

Это, безусловно, похоже на проблему со ссылками, я даже пытался скопировать исполняемые файлы в каталог плагинов, но это тоже не сработало.

Редактировать: я должен добавить, что я включил флаг debug: true, и ничего не вышло.


person Terry    schedule 29.06.2012    source источник


Ответы (1)


У меня была такая же проблема в Windows 7. Единственный способ исправить это — удалить двойные кавычки вокруг вызова gjslint.

строка 34 из gjslint.py внутри пакета sublime

оригинал (не работает):

cmd = '"' + s.get('gjslint_path', 'jslint') + '" ' + s.get('gjslint_flags', '') + ' "' + file_path + '"'

работающий :

cmd = '' + s.get('gjslint_path', 'jslint') + ' ' + s.get('gjslint_flags', '') + ' "' + file_path + '"'

Пожалуйста, убедитесь, что в вашем пути gjslint нет пробелов, чтобы это работало, как в вашем случае.

Если у кого-то есть другое решение, поделитесь.

person Pouya    schedule 02.07.2012
comment
Работал на меня. Виндовс 7 тоже. - person Glenn; 10.05.2013
comment
Спасибо! Напечатал это и бинго. Не эксперт по питону, так что супер спасибо! - person Ben_Coding; 25.06.2013