2013-06-02 3 views
0

Сегодня я обновил узел с помощью доморощенного, и это означало, что все модули нпм сдулись. Это, конечно, означает, что исполняемый файл jshint (например, полученный npm install -g jshint) больше не присутствует, поэтому Syntastic просто молча остановил проверку синтаксиса в моих js-файлах.Как проверить статус синтаксиса?

Мне не нужно было слишком долго замечать, но я хотел бы узнать об этом изменении. Я бы хотел, чтобы синтаксис отображал что-то (желательно красным) в строке состояния команды до мелодии Syntastic - cannot run jshint.

+0

Лучшим методом должно быть тщательное обновление вашего материала, чтобы избежать таких ситуаций. – romainl

ответ

2

Самым простым решением было бы отредактировать файл

syntastic/syntax_checkers/javascript/jshint.vim 

И изменить функцию от

function! SyntaxCheckers_javascript_jshint_IsAvailable() 
    return executable('jshint') 
endfunction 

в

function! SyntaxCheckers_javascript_jshint_IsAvailable() 
    if executable('jshint') != 1 
     echohl Error 
     echo "Syntastic - cannot run jshint" 
     echohl None 
    endif 
    return executable('jshint') 
endfunction 

echohl устанавливает цвет выделения эхо в Hightlight (что, скорее всего, красное, но может и не быть). Затем он печатает сообщение, которое вы хотите распечатать, когда вы его сохраняете. Однако это не в строке состояния.

+0

Это довольно эпично, но это не слишком портативно. Я просто хотел, чтобы синтаксис имел журнал, он писал бы исключительные события (например, не найдя jshint в качестве одного примера) до –

+0

@StevenLu. Вы должны попросить разработчика или исполнителя Syntastic добавить эту функцию. – FDinoff

Смежные вопросы