首页 文章

无法获得“Syntastic”vim插件工作

提问于
浏览
17

我在vim中安装了Syntastic插件 . 我可以't get it to work. I'试过 :SyntasticEnable 但没有运气 . SyntasticEnable python in my vimrc不会't work either (in fact, it doesn'甚至解析命令,当我尝试将其添加到 .vimrc 时显示错误: Not an editor command: SyntasticEnable python ) .

当我从vim调用它时,如何知道's going on? Syntastic isn' t显示错误 . 第一个错误(我的 .vimrc 中的 not and editor command )是否表示我不知道的内容?

我在.vimrc中:

set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
let g:syntastic_enable_signs=1
let g:syntastic_auto_loc_list=1

我在 ~/.vim/syntax_checkers 也有一个 python.vim . 我已经可以使用Pyflakes用于python文件,它可以工作 GREAT 但我希望在开发应用程序时需要其他文件/扩展中的Syntastic功能 .

2 回答

  • 5

    您是否尝试确保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

  • 1

    您的环境路径上是 pyflakes 吗?如果不是,则必须将其添加到路径中,或修改syntax \ checkers \ python.vim并添加二进制文件的完整路径 . 您必须修改两行:

    if !(executable("pyflakes"))
    

    并且

    let makeprg = 'pyflakes %'
    

    就我而言 . 我希望Syntastic能够在我的Windows机器上使用PHP . 所以我必须在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\""
    

相关问题