1

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

'/bin/sh: virtualenv: command not found make: * [env/bin/activate] Error 127'

但是我已经安装了“virtualenv”,当我在终端中输入“virtualenv”时,我实际上得到了一些关于“virtualenv”用法的描述。

另一方面,当我在 emacs 的 shell 模式下尝试“virtualenv”命令时,它告诉我找不到这样的命令。我认为这就是错误所在。

知道这里发生了什么吗?

4

2 回答 2

6

您需要找到virtualenv安装的位置(例如,通过which virtualenv在终端中使用),并将此目录添加到PATHemacs 中。您可以在您的 emacs 初始化文件中使用以下代码来执行此操作:

(setenv "PATH" (concat (getenv "PATH") ":" "path-to-virtual-env"))
(add-to-list 'exec-path "path-to-virtual-env")

我个人使用以下代码来保持Emacs中与 shellPATH中的同步: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))
于 2013-07-20T07:19:40.953 回答
1

exec-path-from-shell是将环境变量推送到 Emacs 的另一种方法。

于 2013-07-22T21:11:46.633 回答