如何在vim中解决python代码浏览和代码完成问题?

Mar*_*era 10 ruby python vim code-completion

我正在使用vim与tagexplorer,pythoncomplete和ctags一起开展大型python项目.基于标记的代码浏览和代码完成功能不会以它们不幸的方式工作,因为ctags不会将实例绑定到类型.

假设情景:

  • 自动完成:vim不会自动完成方法on(),myCar.ignition().on()因为ctags不知道ignition()返回TypeIgnition.
  • 代码浏览:TypeCar当我点击时vim不会浏览,myCar而是向我提供多个定义匹配,不正确的匹配或没有匹配,因为ctags不回溯并将实例绑定到类型.

问题似乎源于python是一种动态类型语言.否则这两种情况都不会带来挑战. 有没有一种有效的替代基于标签的代码浏览和代码完成以及实现它的IDE或vim插件?

注意:请投票"重新开放".解决这个问题对社区很有价值.这个问题最初是非常模糊地制定的,现在已不再是这样了.

Jac*_*des 0

像 wing (www.wingware.com) 和 pycharm (www.jetbrains.com/pycharm) 这样的 Python 商业 IDE 可以更好地解决大多数代码完成问题。当然,它们并不是免费的。我自己,在使用 eclipse 和 pydev 插件时未能得到满意的结果。