当python类定义跨越多行时,大量的ctag生成错误的标记,只有最后一行指向搜索模式:
考虑文件test.py
:
class FirstSubclass(
LongLineBaseClass, AnotherLongClassName,
MoreBaseClassWithVeryLongName
):
pass
class SecondSubclass(
LongLineBaseClass, AnotherLongClassName,
MoreBaseClassWithVeryLongName
):
pass
class OneLineClass(LongLineBaseClass):
pass
以及为ctags test.py
生成的tags
文件(添加了注释):
FirstSubclass test.py /^):$/;" c !PROBLEM
OneLineClass test.py /^class OneLineClass(LongLineBaseClass):$/;" c !OK
SecondSubclass test.py /^):$/;" c !PROBLEM
FirstSubclass
和SecondSubclass
都接收到相同的搜索模式(ex命令):/^):$
,即每个类定义的最后一行只有两个字符。这使得在vim中导航的标签不可用
丰富的ctags版本和信息:
Exuberant Ctags 5.9~svn20110310, Copyright (C) 1996-2009 Darren Hiebert
Compiled: Oct 7 2014, 13:52:37
Addresses: <dhiebert@users.sourceforge.net>, http://ctags.sourceforge.net
Optional compiled features: +wildcards, +regex
我尝试过的:我使用了ctag,有参数和没有参数
有什么想法吗? 提前谢谢
通用ctag(https://ctags.io)是一个非正式的exuebrant ctag分支,可以预期地提取模式:
此外,它还可以填充继承字段:
相关问题 更多 >
编程相关推荐