问题标签 [python-jedi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5673 浏览

vim - Vim supertab 和 jedi-vim

作为如何检查 SuperTab 和 jedi-vim 是否已激活?并且按照 Ingo Karkat 的提议做了。现在我想知道是什么坏了以及如何修复它。

这是输出:

在我看来没问题,而且...

看起来还不错。但是(不知道你是否应该能够做到这一点,但是)

感觉不太OK。这是我的.vimrc:

和我的 ~/.vimrc.python

...这是“vim --version”的输出:

0 投票
2 回答
3437 浏览

python - emacs-jedi 找不到 numpy 补全

我安装了 emacs-jedi 以在 emacs 中为 python 完成一些代码。总的来说,我必须说我印象深刻!它开箱即用,可以快速找到内置库的补全。但是,我将 python 用于科学目的,并依赖 numpy 和 scipy 来完成我的工作。出于某种原因,我没有完成这些模块。

例子:

现在输入 testVector。等待,什么都没有出现

0 投票
3 回答
1765 浏览

python - Emacs Jedi python工具无法加载“错误搜索程序:权限被拒绝,python”?

当我尝试在 emacs 中打开 python 文件时出现以下错误:

无法猜测 python 缩进偏移,使用默认值:4

延迟错误:(搜索程序时出错:权限被拒绝,python)

我的假设是需要将 python 环境变量复制到Emacs PATH 变量中,因为我必须使用 bradleywright 的path.el脚本为 Mac OS X 做同样的事情,但现在我需要为Windows 7做同样的事情。我怎样才能做到这一点?

初始化文件

0 投票
0 回答
351 浏览

python - tkinter(python3)中参数的vim自动完成功能不起作用

我将 vim 与 jedi-vim 一起用于开发(py​​thon3)。通常,当编辑如下图所示函数的参数时,自动完成功能会触发:

图1

您开始键入参数的第一个字符并弹出建议,或者您可以使用相应的绑定(默认 crtl-space)触发自动完成。

与前一种情况相比,如果您想编辑 tkinter 函数,自动完成将失败(如下图所示):

图 2

这种类型的自动完成是否需要额外的 tkinter/python 库,或者我做错了什么?

0 投票
5 回答
21485 浏览

vim - 无法让 jedi-vim 插件工作

我正在尝试使用jedi-vim插件进行 Python 自动完成,但我无法让它工作。

我有 Vim 7.3,这就是我所做的:

1-克隆代码

2-复制jedi-vim/plugin/jedi.vim~/.vim/plugin/

3-复制jedi-vim/doc/jedi-vim.txt~/.vim/doc/

现在当我打开 vim 时,进入插入模式并输入

没有任何反应,尽管文档指定了Autocompletion is also triggered by typing a period in insert mode,如果我尝试<Ctrl-Space>我会收到以下错误

我检查了一下:map,似乎<Ctrl-Space>没有使用:

由于我使用 时出错<Ctrl-Space>,我想它必须做点什么,对吧?为什么我看不到它:map

我错过了什么?

编辑

:脚本名称

编辑 2

我将 Vim 更新到 7.4 并按照文档vim-jedi中的说明进行安装:pathogen

1- 安装绝地 2- 安装病原体 3- 添加execute pathogen#infect()到我的~/.vimrc 4- 克隆 git 存储库中~/.vim/bundle/

我创建了一个新文件,但仍然没有自动完成功能。例如:

插入模式下的 control+space 返回:

有没有omni completion冲突的插件?我还没有安装这样的插件...

我的~/.vimrc档案中还应该有其他内容吗?

0 投票
1 回答
1037 浏览

python - 可以让 virtualenvs 回退到用户包而不是系统包吗?

我在 Emacs 中使用Jedi进行 Python 自动完成,但它不是我的代码的依赖项,所以我不想把它放在我的requirements.txt. (其他开发者可能不会使用 Jedi 编辑器插件,当我部署到 Heroku 时肯定不需要它。)

但是 Jedi 必须从我的 virtualenv 中可用才能运行,即如果我不能

它不起作用。

有没有一种在全球范围内安装 Jedi 用户的好方法,以便它在我所有的 virtualenvs 中都可用?

我想要的是

  1. 将 Jedi 安装到~/.local/lib/python2.7/site-packages/withpip--userflag中,然后到
  2. 使用flag--system-site-packages等效项创建我的 virtualenv ,但用于用户包而不是系统包。

我目前的解决方法是pip install jedi在我的每个 virtualenvs 中。然后,当我添加新的依赖项时,我pip install foo, ,然后在提交之前从文件中pip freeze > requirements.txt手动删除和其他一些东西。jedi显然,这是耗时且容易出错的。

有人有更好的解决方案吗?

0 投票
1 回答
1490 浏览

python - 使用 emacs-jedi 自动导入模块

使用ropemacs,您可以执行以下操作:

这会分析代码(我假设)并导入缺少的模块,例如,如果我写:

它应该通过添加以下行来为我导入:

(它总是使用from ... import ...表格)

emacs-jedi中是否有类似的功能?

0 投票
1 回答
887 浏览

python - 是否可以为绑定到 python 的 C++ 库获得绝地自动完成功能?

我正在使用 vim 和 jedi-vim 来编辑一些 python 代码。但是,我们使用的一些库是 C++ 共享库,我们使用 pybindgen 为其生成了 python 绑定。使用 jedi-vim 时,我没有得到任何类和方法的签名,只是它们的列表。

例如,在这个库中,如果我安装库并导入它 , https://github.com/jorisv/SpaceVecAlg :

然后,sva.将正确显示所有一阶函数和类。但是,如果我选择第一个,sva.ABInertia(绝地不会建议我使用任何类构造函数。

我想我必须以某种方式将类定义导出到一种 python 文档中,我想我可以为此使用 doxygen 注释,但我不知道如何将额外的文档提供给 jedi(或任何其他完成引擎,例如作为内置在 IPython 中的一个)。

非常感谢 !

0 投票
3 回答
4362 浏览

python-jedi - 在 Jedi-Vim 中关闭所有自动代码完成

我正在尝试在 vim 中使用 python-jedi,但目前它完全无法使用,因为它会尝试在奇怪的时间完成编码。

我添加了以下行:

到我的 vimrc 文件,这确实停止了“。”的自动完成。但是当我尝试在以下代码的逗号后添加空格时:

自动完成功能不断弹出,似乎每当我在方括号内时,它与数组无关。

我也安装了 pymode,但我确实关闭了绳索功能......我承认我不知道如何完全关闭 pymode。

VimRC:

0 投票
1 回答
329 浏览

python-3.x - 防止绝地完成太空后的一切

我正在尝试使用绝地来完成 PyQt 应用程序中的 python 代码,使用QCompleterQStringListModel存储可能的完成。

这是一个简单的工作演示:

如果您运行应用程序并编写没有完成任何内容的代码(例如foo =),则完成实际上会显示所有可能出现在该位置的标记。

所以,如果我运行并在字段中写一个空格,就会弹出很多东西,从abs__version__.

我想防止这种情况发生:是否可以查询jedi.Script以了解令牌是否正在完成或是否正在启动一个全新的令牌?

编辑:另一个小问题:假设我正在运行一个与绝地当前状态分离的解释器。我怎样才能提供局部和全局变量,jedi.Script以便它考虑这些,而不是它自己的完成?