繁体   English   中英

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

[英]Can't get “Syntastic” vim plugin to work

我在vim中安装了Syntastic插件。 我无法让它发挥作用。 我试过了:SyntasticEnable但没有运气。 我的vimrc中的SyntasticEnable python也不起作用(事实上,它甚至不解析命令,当我尝试将它添加到我的.vimrc时显示错误: Not an editor command: SyntasticEnable python )。

我怎么知道发生了什么? 当我从vim调用它时,Syntastic没有显示错误。 第一个错误( not and editor command我的.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文件,它的伟大工程,但我想在其他文件/扩展开发应用程序时,我需要Syntastic功能。

你的环境路径上有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\"" 

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM