有一段时间以来,我一直在使用带有vim的perl。在此之前我使用IntelliJ和perl的插件。我唯一缺少的是vim标签栏中的不同视图。我已将其配置为使用通用ctags运行,它显示了包,子例程和常量的类别。但是有一个示例脚本文件有三个包,其中每个包都有一个create()方法,这些方法都显示在“子例程”类别下。包名称都显示在“包”下面。而已。这是一个非常平坦的观点。
我想要的是(另外或作为替代)树视图,其中我拥有属于附加包的所有方法。但到目前为止我无法让它工作:-(我很感激有关如何配置tagbar以在Perl中获得更像树状视图的任何想法。
答案 0 :(得分:1)
我相信你的标签不是完全合格的,这会导致看到一切都是扁平的。您应该使用--extra = q标志生成perl标记;例如:
ctags -f tags --recurse --totals \
--exclude=blib --exclude=.svn \
--exclude=.git --exclude='*~' \
--extra=q \
--languages=Perl \
--langmap=Perl:+.t
此外,请确保在.vimrc中的关键字字符列表中添加冒号,以便您可以在Module :: Names上完成:
set iskeyword+=:
注意:我还没有使用通用ctags,所以我无法确认这是你的问题,但我确实检查了他们的文档(http://docs.ctags.io/en/latest/news.html?highlight=extra%3Dq),这个标志仍在使用,默认情况下不会。