使用'el-get'为mac上的emacs安装'jedi'

时间:2013-07-20 06:57:38

标签: emacs virtualenv jedi

当我使用'el.get'安装'jedi'时,我收到消息:

'/ bin / sh:virtualenv:找不到命令 make: * [env / bin / activate]错误127'

但我已经安装了'virtualenv',当我在终端输入'virtualenv'时,我实际上得到了'virtualenv'用法的描述。

另一方面,当我在emacs的shell模式下尝试'virtualenv'命令时,它告诉我无法找到这样的命令。我认为这就是bug的所在。

对这里发生的事情有任何想法吗?

2 个答案:

答案 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的另一种方法。