当我使用'el.get'安装'jedi'时,我收到消息:
'/ bin / sh:virtualenv:找不到命令 make: * [env / bin / activate]错误127'
但我已经安装了'virtualenv',当我在终端输入'virtualenv'时,我实际上得到了'virtualenv'用法的描述。
另一方面,当我在emacs的shell模式下尝试'virtualenv'命令时,它告诉我无法找到这样的命令。我认为这就是bug的所在。
对这里发生的事情有任何想法吗?
答案 0 :(得分:6)
您需要找到virtualenv
的安装位置(例如,使用终端中的which virtualenv
),并将此目录添加到emacs内的PATH
。您可以使用emacs init文件中的以下代码执行此操作:
(setenv "PATH" (concat (getenv "PATH") ":" "path-to-virtual-env"))
(add-to-list 'exec-path "path-to-virtual-env")
我个人使用以下代码来保持Emacs中的PATH
与shell中的PATH
同步:
(defun set-exec-path-from-shell-PATH ()
(let ((path-from-shell (shell-command-to-string "$SHELL -c 'echo $PATH'")))
(setenv "PATH" path-from-shell)
(setq exec-path (split-string path-from-shell path-separator))))
(when window-system (set-exec-path-from-shell-PATH))
答案 1 :(得分:1)
exec-path-from-shell是将环境变量推送到Emacs的另一种方法。