有没有一种方法可以将当前缓冲区中定义的所有函数放入快速修复列表中?想象一下,在快速解决窗口中打开了taglist
插件中的Tlist
。
另一种选择是使用Unite来代替Vim。它也需要ctags,但提供缓冲区列表/跳转和类似FuzzyFinder的文件打开功能。使用大纲插件,您可以获得漂亮的函数列表。我经常使用它不仅用于跳转到函数定义,还可以快速查找参数。
ctags
、Unite.vim和Unite Outline插件之后,您可以打开任何支持的文件类型(请参见[http://d.hatena.ne.jp/h1mesuke/20101107/p1],我不会日语,但截图足够说明问题),输入`:Unite outline,然后您将获得一个弹出式缓冲区,其中包含像屏幕截图中那样漂亮的大纲。此时,您可以使用
<c-n>、
<c-p>`或只需键入几个字符即可过滤列表。按Enter键将跳转到所选的函数/标题。一个缺点是这在一个文件中是有限制的。 - tungd-vertical
或-horizontal
。在此处查看所有变量。例如,我现在使用nnoremap <space>o :Unite -start-insert -vertical -winwidth=50 -direction=belowright outline
来整洁地打开标签分割窗口,而不修改其他分割窗口的大小。 - New AlexandriaCreate an expression that returns the list that you want. Eg:
let cmd='exctags -x '.bufname('%')." | awk '{print $4\"|\"$3\"|\",$1}'"
Feed it to cexpr
or cgetexpr
cexpr system(cmd)