python 的 Exuberant Ctags 产生的标签太少

Exuberant Ctags for python produces too few tags

请考虑以下 MWE:

myGlob = 1

def countMe():
    for i in range(10):
            print(i)

def countMeAgain():
    for i in range(10):
            print(i)

if __name__ == "__main__":
    countMe()
    countMeAgain()
    myGlob = 2

问题: 当我 运行 ctags abc.py,它创建一个名为 tag 的文件,然后打开 tag,我刚看到:

print   abc.py  /^            print(i)$/

我期待看到 countMe、countMeAgain 和 myGlob 的标签。为什么会这样?

我尝试了什么: 我正在使用 OSX + vim。我使用自制软件安装了 exuberant ctags。 OSX 默认情况下有限制版本的 ctags。因此,如果 /private/etc/paths 给予 /usr/bin/usr/local/bin 更高的优先级(后者包含从自制软件获得的 ctags 版本),那么 运行ning ctags abc.py 将使用ctags 的默认版本,而不是自制软件安装的版本。我已经确认我没有犯这个错误。

我从 Exuberant Ctags on Mac and https://gist.github.com/Overbryd/1669348

了解到这个潜在的错误

干杯

我解决了我的问题:

exuberant-ctags 不再由其原始开发人员维护。正在开发新的存储库。

我卸载了旧的 ctags 安装。然后我使用 brew:

从这个存储库安装

https://github.com/universal-ctags/ctags

另见