首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用jedi-vim使用gobject自省在python中自动完成自己的gobject派生库

使用jedi-vim使用gobject自省在python中自动完成自己的gobject派生库
EN

Stack Overflow用户
提问于 2021-05-12 02:14:08
回答 2查看 115关注 0票数 2

我正在尝试创建一个使用gobject库作为基础的共享C库。因此,我的对象在GObject中继承自GObject。GObject允许通过GObject自省绑定到所有不同的脚本语言。然后,可以从python中从gi.repository导入库。

代码语言:javascript
复制
import gi
gi.require_versions({'Edf': '0.0', 'GLib': '2.0'})
from gi.repository import Edf

Vim通过jedi-vim提供自动补全功能。对于其他使用GObject内省的库,比如GLib和GTK,这是开箱即用的。我想使用pytest来运行库的一些单元测试。我非常想编辑我的文件使用vim与自动完成为我自己的库。因此,如果我像上面那样导入一个库,我会得到GLib的自动完成,但不会得到我的Edf模块的自动完成。

我试图通过将GI_TYPELIB_PATH环境变量设置为包含我的Edf.typelib文件的目录来使自动补全起作用。我还创建了一个debian包,并将库安装到/usr/lib/x86_64-linux-gnu/,将类型库安装到/usr/lib/x86_64-linux-gnu/girepository-1.0/,这两种方法都足以在bpython3、ipython3甚至python REPL中实现自动补全,但是我无法在vim中使用jedi-vim来完成。

我会非常高兴看到它的工作。有没有人有让它工作的小贴士?

致以最良好的问候,并感谢您的关注。

EN

回答 2

Stack Overflow用户

发布于 2021-05-23 10:10:58

我遇到了类似的错误,因为我打算使用的python版本与被调用的版本不匹配。

确保绝地使用的是预期的python版本。例如,将let g:jedi#force_py_version =3添加到您的.vimrc

票数 0
EN

Stack Overflow用户

发布于 2021-05-23 10:15:58

我认为问题是你的vim版本太低了,我建议你更新到Vim 7.4并确保它已经打开了python功能,如果你想要自动补全功能,我建议你可以尝试You complete Me,它更强大,它需要vim 7.3.584+,现在vim 7.4出来了,它很容易安装,你可以这样安装,

如果这不是问题所在,那么尝试安装带有病原体的jedi-vim,希望它能起作用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67492262

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档