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

Dav*_*Ren 1 emacs jedi virtualenv

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

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

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

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

对这里发生了什么有什么想法吗?

Ale*_*Ott 6

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

(setenv "PATH" (concat (getenv "PATH") ":" "path-to-virtual-env"))
(add-to-list 'exec-path "path-to-virtual-env")
Run Code Online (Sandbox Code Playgroud)

我个人使用以下代码来保持PATHEmacs PATH在shell中同步:

(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))
Run Code Online (Sandbox Code Playgroud)

  • 如果它有效,最好将答案标记为"已接受":-) (2认同)