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
插件标志着这一行:
对于语法突出显示(有时会提供关于错误的线索),一个尚未保存的文件(通常是vim上的黑白文件)只是源语法文件:
:source $VIMRUNTIME/syntax/[the syntaxfile].vim
例子
:source $VIMRUNTIME/syntax/sh.vim :source $VIMRUNTIME/syntax/php.vim :source $VIMRUNTIME/syntax/javascript.vim