2024-04-29 01:21:42 发布
网友
我使用的是Anaconda python框架。水蟒有自己的虚拟环境系统,我不清楚virtualenv是否可以安全地与Python一起使用。在
Emacs绝地武士似乎需要虚拟人。它是在“运行时”使用还是只在安装期间使用?在没有安装virtualenv的情况下使用Jedi有可能吗?一旦Jedi安装完成,virtualenv能否卸载?在
有没有办法直接向绝地开发人员提出这个问题?(找不到办法)
下面是我设置jedi:server-command变量的方法:
jedi:server-command
(setq jedi:server-command `("python" ,(concat (file-name-directory (buffer-file-name (car (find-definition-noselect 'jedi:setup nil)))) "jediepcserver.py")))
Is there some way to ask this question directly of the Jedi developers?
您可以使用他们的github问题跟踪器,它位于here。在
emacs-jedi website声明{}是可选的,所以我想绝地武士没有它也能工作。如果您可以发布如何安装jedi或您希望如何安装它(手动,使用elget或其他方式),那么这里的人将能够更好地帮助您。在
jedi
更新
这里有一种方法可以不使用virtualenv手动安装jedi
virtualenv
1)从melpa安装jedi。执行M-x list-packages,按I标记包jedi,然后按X安装包(这将安装elisp所涉及的所有依赖项)
M-x list-packages
I
X
2)然后安装python依赖项,可以下载要求.txt从here开始,然后执行pip install -r requirements.txt,这将安装python依赖项。在
pip install -r requirements.txt
3)在打开python文件时,添加一个python模式钩子来启动jedi,基本上在init文件中添加以下内容
(autoload 'jedi:setup "jedi" nil t) (add-hook 'python-mode-hook 'jedi:setup)
以上应该设置绝地武士,如果你在以上任何一个步骤中遇到问题,请不吝赐教
更新2
下面是让emacs jedi使用“conda environment framework”的步骤(我使用了miniconda,但即使在完全安装conda的情况下也可以使用)
{cond11>例如,创建环境
2)为jedi、epc和sexpdata构建包(emacs jedi需要)
a)克隆conda-recipes存储库
b)通过执行conda build /path/to/conda-recipies/<pkgname>生成所需的包
conda build /path/to/conda-recipies/<pkgname>
3)通过执行source activate emacs-jedi切换到上面创建的环境,然后通过
source activate emacs-jedi
conda install use-local jedi sexpdata epc
use-local用于指示conda从本地生成的包进行安装
use-local
4)最后,指示emacs与jedi一起使用这个环境,只需将以下内容添加到init文件中
(eval-after-load "jedi" '(setq jedi:server-command (list "/path/to/emacs-jedi/bin/python" jedi:server-script)))
在绝地武士德夫在这里。截至绝地武士v0.2.0中,virtualenv成为默认值,并强烈推荐使用。仍然支持手动安装,但不推荐手动安装,因为您需要手动同步的版本绝地武士和Python模块。参见:
我不知道什么是水蟒,但我想在这里它有自己的环境。如果它只是virtualenv的包装,那么按照手册中的说明使用 virtual-env。如果没有,可以使用 sys-path来判断绝地武士关于其他站点路径。参见:
virtual-env
sys-path
首先,你需要找到水蟒特定的站点路径。跑
python -c 'import sys; print(sys.path)'
在水蟒中找到一些水蟒的特定路径(我不知道会是什么。但我想这条路中包括了“Python”。然后使用 sys-path添加这些路径。请参阅jedi:server-args文档以获取代码。在
jedi:server-args
下面是我设置
jedi:server-command
变量的方法:您可以使用他们的github问题跟踪器,它位于here。在
emacs-jedi website声明{}是可选的,所以我想绝地武士没有它也能工作。如果您可以发布如何安装
jedi
或您希望如何安装它(手动,使用elget或其他方式),那么这里的人将能够更好地帮助您。在更新
这里有一种方法可以不使用
virtualenv
手动安装jedi
1)从melpa安装
jedi
。执行M-x list-packages
,按I
标记包jedi
,然后按X
安装包(这将安装elisp所涉及的所有依赖项)2)然后安装python依赖项,可以下载要求.txt从here开始,然后执行
pip install -r requirements.txt
,这将安装python依赖项。在3)在打开python文件时,添加一个python模式钩子来启动jedi,基本上在init文件中添加以下内容
以上应该设置绝地武士,如果你在以上任何一个步骤中遇到问题,请不吝赐教
更新2
下面是让emacs jedi使用“conda environment framework”的步骤(我使用了miniconda,但即使在完全安装conda的情况下也可以使用)
{cond11>例如,创建环境
^{pr2}$2)为jedi、epc和sexpdata构建包(emacs jedi需要)
a)克隆conda-recipes存储库
b)通过执行
conda build /path/to/conda-recipies/<pkgname>
生成所需的包3)通过执行
source activate emacs-jedi
切换到上面创建的环境,然后通过use-local
用于指示conda从本地生成的包进行安装4)最后,指示emacs与jedi一起使用这个环境,只需将以下内容添加到init文件中
在绝地武士德夫在这里。截至绝地武士v0.2.0中,virtualenv成为默认值,并强烈推荐使用。仍然支持手动安装,但不推荐手动安装,因为您需要手动同步的版本绝地武士和Python模块。参见:
我不知道什么是水蟒,但我想在这里它有自己的环境。如果它只是virtualenv的包装,那么按照手册中的说明使用
virtual-env
。如果没有,可以使用sys-path
来判断绝地武士关于其他站点路径。参见:首先,你需要找到水蟒特定的站点路径。跑
在水蟒中找到一些水蟒的特定路径(我不知道会是什么。但我想这条路中包括了“Python”。然后使用
sys-path
添加这些路径。请参阅jedi:server-args
文档以获取代码。在相关问题 更多 >
编程相关推荐