在开发 Tryton 模块时,我想在 Emacs 中自动完成
我正在使用的 Tryton 安装在带有 pip 的 Python 3.6 virtualenv 中
我正在尝试 Jedi,但它只为我自己的源文件中定义的标识符提供自动完成功能。
它没有提供任何关于我为定义 tryton 字段而调用的方法的参数
例如,如果我写
someIdentifier = fields.Function(
它没有提供关于我可以传递给“函数”的参数的窥视声
Function 的签名呢?
也许我用错了绝地?
我不确定我是否理解 jedi-server 的用途以及它是否应该与我的 tryton 模块位于同一个 virtualenv 中
无论如何,我的 Tryton 模块的 virtualenv 是基于 Python3.6 的,它是这样的:
my-module/env
环境包含
bin include lib lib64 pip-selfcheck.json share
当我需要工作时,我会做
source env/bin/activate
所以我尝试了
(setq jedi:environment-root "~/path/to/my/module/")
但它从头开始创建了一个新的 virtualenv,基于 python 2.7,散射 bin,lib 和我的模块文件夹中的其余部分,俯瞰我的 env virtualenv
如何正确设置绝地?
在我的绝地设置信息中,我看到了这个
;; Emacs Lisp version:
(:emacs-version "25.3.1" :jedi-version "0.2.7" :python-environment-version "0.0.2alpha0")
;; Python version:
((:version "2.7.14 (default, Jan 17 2018, 14:28:32) \n[GCC 7.2.1 20170915 (Red Hat 7.2.1-2)]" :name "sys" :file nil)
(:version "0.11.1" :name "jedi" :file "/home/catonano/.emacs.d/.python-environments/default/lib/python2.7/site-packages/jedi/__init__.pyc")
(:version "0.0.5" :name "epc" :file "/home/catonano/.emacs.d/.python-environments/default/lib/python2.7/site-packages/epc/__init__.pyc")
(:version "0.0.3" :name "sexpdata" :file "/home/catonano/.emacs.d/.python-environments/default/lib/python2.7/site-packages/sexpdata.pyc"))
;; Command line:
...