我尝试让 neovim 使用 jedi 进行代码完成,但是当我在返回的对象上开始代码完成时,我遇到了奇怪的行为。看起来绝地武士无法确定返回的对象类型,但在某些情况下可以。
如果我在我的配置中混淆了一些东西,我用 Atom 尝试了它,它做了完全相同的事情。
在第一张图片上,我开始代码完成,jedi 识别对象类型。第二个它没有,但对我来说看起来完全相同。
也许任何人都可以提供帮助或以前遇到过同样的问题。
成功完成代码
代码完成失败
Python 中的类型推断很难。绝地尽力而为,但有时无法推断类型。这通常是由于诸如setattr
,元类,缓存和其他一些Jedi无法理解的东西。
您上面的示例看起来像上面的示例之一。我看到它一直和每次我看到它,它不是一个错误,它只是......井。。。太难理解了。