VIM for PHP:在Taglist中列出if()和include()
我在VIM中使用了Taglist,但是我继承的一个特定的PHP应用程序是用if()和elseif()和include()广泛编码的。 在每个文件(和几十或几百个文件)的近5000行代码中没有单一的方法或函数。 有什么方法可以使用Taglist或其他插件来获得代码流的概述? 我正在考虑按照简明的方式在边栏中显示if()的条件,包括它们的层次结构。 任何远近的东西都会很棒。
谢谢!
这涉及到一点点工作,您需要编译一个修改版本的带有修改过的php规则的exuberant ctags。
你可能想看看这里:http://ctags.sourceforge.net/EXTENDING.html
使用foldlist插件和foldmethod-syntax
(或者调整自己的foldmethod-expr
)可以很好地工作。
事实上,即使没有插件,我相信一个适当的折叠设置会产生奇迹。 一些建议:
set foldmethod=syntax
或( set foldmethod=expr
并set foldexpr=...
为你的情况) set foldclose=all
隐藏所有那些讨厌的ifs set foldcolumn=2
或更大以查看嵌套级别 set foldtext=MyFoldText()
并创建一个函数来显示相关信息, 喜欢:
function! MyFoldText()
let line = getline(v:foldstart)
let line = substitute(line, 'if((.*)).*', 'if: 1', 'g')
" ... etc
return line
endfunction
链接地址: http://www.djcxy.com/p/55757.html