Vim:未定义的变量没有标记

pes*_*taa 13 php vim plugins

最近我在Vim中进行重构时犯了一些错误,结果是未定义和未使用的变量.任何体面的IDE(如NetBeans)都会将它们标记为这样,但我还没有遇到过这样做的Vim插件.

谁能帮我吗?我主要是用PHP编程.

Bri*_*ian 1

您可以从 VIM 中运行 Zend 的 PHP 代码分析器。我目前正在这样做。问题是安装 Zend Studio 时,Zend Code Analyzer 不再打包为单独的二进制文件。我不确定您正在运行哪个操作系统。我在 OS X 上运行。如果您还没有二进制文件,请使用此站点上的步骤 1 和 2 获取它 - http://michalf.me/blog:zend-code-analyzer-in-textmate。您可能需要针对您的操作系统进行调整。

获取二进制文件后,将以下内容添加到 .vimrc 中,并将 /usr/local/... 替换为 ZendCodeAnalyzer 的路径。

if !exists("autocommands_loaded")

  let autocommands_loaded = 1
  "PHP Make 
  autocmd BufRead *.inc,*.php set makeprg=/usr/local/bin/ZendCodeAnalyzer\ %
  autocmd BufRead *.inc,*.php set errorformat=%f(line\ %l):\ %m

endif

map <F7> :silent lmake<cr>:lwindow <cr>:redraw!<cr>
Run Code Online (Sandbox Code Playgroud)

现在,当您输入 F7 时,它将运行 make,它被设置为运行 ZendCodeAnalyzer。它将把结果放入位置列表中 - :help location。您可以滚动浏览位置列表并在一行上按 Enter 键,它将带您到文件中的该行。如果没有找到任何东西,那么它就不会打开任何东西。