Я установил плагин Syntastic в vim. Я не могу заставить его работать. Я пробовал :SyntasticEnable
но не повезло. SyntasticEnable python
в моем vimrc тоже не работает (на самом деле, он даже не анализирует команду, появляется ошибка при попытке добавить его в мою .vimrc
: Not an editor command: SyntasticEnable python
).
Как я могу узнать, что происходит? Syntastic не показывает ошибок, когда я вызываю это из vim. Первая ошибка ( not and editor command
в моем .vimrc
) указывает на то, о чем я не знаю?
У меня в моем .vimrc:
set statusline+=%#warningmsg# set statusline+=%{SyntasticStatuslineFlag()} set statusline+=%* let g:syntastic_enable_signs=1 let g:syntastic_auto_loc_list=1
У меня есть python.vim
в ~/.vim/syntax_checkers
. Я уже могу использовать Pyflakes для файлов python, он работает GREAT, но я хотел бы иметь функциональность Syntastic в других файлах / расширениях, которые мне нужны при разработке приложений.
Является ли pyflakes
на вашем пути к окружающей среде? Если это не так, то вы должны добавить его на свой путь или изменить синтаксис \ checkers \ python.vim и добавить полный путь к двоичному. Вы должны изменить две строки:
if !(executable("pyflakes"))
а также
let makeprg = 'pyflakes %'
В моем случае. Я хотел, чтобы Syntastic работал с PHP на моей Windows-машине. Поэтому мне пришлось изменить эти две аналогичные строки в php.vim:
let s:php_executable = "C:\\Uniserver\\usr\\local\\php\\php.exe" if !(executable(s:php_executable))
а также
let makeprg = php_executable . " -l %"
Если ваш путь содержит пробелы, вам придется окружать их двойными кавычками в переменной makeprg. Кроме того, с html.vim, одиночные кавычки в makeprg должны быть заменены двойными кавычками (вам придется снова скрывать все внутри).
let s:libfolder = "C:\\Program Files (x86)\\GnuWin32\\bin\\" let s:tidyexe = s:libfolder . "tidy.exe" let s:grepexe = s:libfolder . "grep.exe" if !executable(s:tidyexe) || !executable(s:grepexe)
а также
let makeprg="\"".s:tidyexe."\" -e % 2>&1 \\| \"".s:grepexe."\" -v \"\<table\> lacks \\\"summary\\\" attribute\""
Вы пытались убедиться, что Vim имеет правильное значение для $ PATH?
:echo $PATH
Если нет, попробуйте поместить это в свой .vimrc:
let $PATH=substitute(system("echo \$PATH"), "\r\*\n", "", "g")
Затем выключите и перезапустите vim. Если это сработает, вам не придется вручную обновлять исходные файлы плагина, чтобы вручную включить путь к исполняемым файлам.
(найти это через: https://superuser.com/questions/380535/getting-man-path-through-vim )