validationVIM中的PHP语法

我想知道如果可以validation一个PHP文件在VIM中是否有效,而不是每次closuresVIM?

谢谢

你可以在vim中执行shell命令。 这与从shell中调用php -l filename.php相同:

 :!php -l % 

我把它映射到我的~/.vim/after/ftplugin/php.vim文件中,这样我只需要按F5:

 map <F5> :!php -l %<CR> 

使用:make使用下面的PHP特定设置:

 :set makeprg=php\ -l\ % :set errorformat=%m\ in\ %f\ on\ line\ %l,%-GErrors\ parsing\ %f,%-G 

您的语法错误将在Quickfix窗口中。 您可以使用:copen:cope来打开这个缓冲区。 如果你只想打开窗口,只有当他们是错误使用:cwindow

您可以使用:cnext:cprev来移动quickfix列表以跳转到相应的错误。 我build议Tim Pope的优秀的unimpared.vim插件使得像[q]q一样简单地在列表中移动。

为了简化工作stream程,我build议像这样的映射:

 nnoremap <f5> :update<bar>make<bar>cwindow<cr> 

现在你可以点击<f5> ,缓冲区将被更新(如果有必要),linting,并且任何错误都会出现在quickfix窗口中。

为了使这个更健壮一些,将这些命令添加到~/.vim/after/ftplugin/php.vim 。 例子~/.vim/after/ftplugin/php.vim

 setlocal makeprg=php\ -l\ % setlocal errorformat=%m\ in\ %f\ on\ line\ %l,%-GErrors\ parsing\ %f,%-G nnoremap <buffer> <silent> <f5> :update<bar>sil! make<bar>cwindow<cr> 

了解更多信息:

 :h quickfix :h makeprg :h errorformat 

还有另外一个名为vim-phpqa插件标志着这一行:

https://github.com/joonty/vim-phpqa

在这里输入图像说明

对于语法突出显示(有时会提供关于错误的线索),一个尚未保存的文件(通常是vim上的黑白文件)只是源语法文件:

 :source $VIMRUNTIME/syntax/[the syntaxfile].vim 

例子

 :source $VIMRUNTIME/syntax/sh.vim :source $VIMRUNTIME/syntax/php.vim :source $VIMRUNTIME/syntax/javascript.vim 

要检查PHP语法而不必先保存,可以使用:

地图:w!php -l

http://vim.wikia.com/wiki/Runtime_syntax_check_for_php