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



我正在使用带有tagexplorer、pythoncomplete和ctags的vim进行一个大型python项目。不幸的是,基于标记的代码浏览和代码完成功能无法正常工作,因为ctag无法将实例与类型联系起来。

假设情景:

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

这个问题似乎源于python是一种动态类型的语言。否则,这两种情况都不会带来挑战除了基于标记的代码浏览和代码完成之外,还有一个有效的替代方案吗?IDE或vim插件可以很好地实现它吗

注意:请投票"重新打开"。这个问题的解决方案对社区很有价值。这个问题最初表述得很含糊,现在已经不是这样了。

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

最新更新