如何使vim显示我正在编辑的当前类和方法


15

有谁知道是否有可能(或知道现有的vim脚本或插件)可以创建一个“状态栏”,以显示我正在编辑的当前类和方法(或函数)的名称?

我正在想象它会插入当前缓冲区文件类型的语法分析器中,并显示面包屑痕迹,以向您显示当前正在编辑的内容。我对vimscript的了解不够多,无法提出更多建议,但是,如果还没有任何好的解决方案,我可能会开始研究其中一个,因此也欢迎您从哪里开始的建议!

Answers:


7

该脚本将当前函数的名称放在标题栏和/或状态行中。它使用ctags生成当前文件的标记列表,并假定光标位置之前的标记是当前函数的名称。由于它使用ctags,因此可以对其进行自定义以使用不同的语言,甚至是结构化的文本文件。它在实践中效果很好,但有一些局限性。如果没有别的,它可能会为您提供黑客攻击的起点。


6

如果同时安装了航空公司标签栏插件,则此方法将起作用。这两个插件会自动集成,您将在状态栏中显示当前功能。如果要具有完整的对象层次结构(例如,类+方法),则必须在.vimrc中进行配置:

let g:airline#extensions#tagbar#flags = 'f'  " show full tag hierarchy

如果尚未使用ctags,则可能必须为tagbar设置标签文件以标识当前代码位置。如果您还不了解,这里是ctags简短介绍

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.