【问题标题】:Emacs Unable to Find Python.exe When Exec-Path Loaded (Windows 8.1)加载 Exec-Path 时 Emacs 无法找到 Python.exe (Windows 8.1)
【发布时间】:2015-07-27 04:05:21
【问题描述】:

我在使用带有 R 和 Org 模式的 Emacs 方面取得了相当大的成功,并且还想将其扩展到 Python 中。我最初设置了我的环境路径(通过 Windows)和 exec-path(通过 .emacs 文件)指向包含我的 Python 二进制文件的文件夹。不幸的是,当我尝试在 Python 模式下评估命令/启动解释器时,出现以下错误:

python-shell-calculate-exec-path: Wrong type argument: listp, "~/folder/foo"

“~/folder/foo”是我的执行路径列表中的最后一项。当我从 .emacs 文件中删除 exec-path 时,劣质 Python 进程加载正常。显然,如果我想在路径上使用其他任何东西,这不是一个真正的解决方案。我尝试搜索有关此问题的文档,但不太成功。

我在 Windows 8.1 笔记本电脑(联想,如果这很重要)上使用 GNU Emacs 24.5.1 (x86_64-w64-mingw32)。失败的模式是基本的“Python”而不是“Python-Mode”,它似乎不想加载。在我的环境变量设置中正确配置了 python 可执行文件(它在 Windows 命令提示符下工作),而劣质的 python 进程只有在我没有加载我的 exec-path 时才能工作。相关代码为:

(setq exec-path (append exec-path ' "~/folder/foo"
                                  ' "~/folder/foo"))

【问题讨论】:

    标签: python windows emacs


    【解决方案1】:

    这有点奇怪,但似乎以这种方式明确设置 exec-path 是导致问题的原因。在尝试了一些设置 exec-path 的替代方法(以避免 listp 问题)之后,我发现使用:

    (add-to-list 'load-path "~/folder/foo")
    (add-to-list 'load-path "~/folder/foo")
    

    而不是 setq exec-path 在让我使用我的二进制文件和让我也可以使用 Python 方面工作得很好。发布解决方案以防其他人遇到类似问题(尤其是像我这样的学生和自学成才的用户)。

    注意:我没有以任何方式将 Python 可执行文件的位置添加到我的 .emacs 文件中,只是将 Windows 中的环境变量 Path 添加到了我的 .emacs 文件中。这足以让 Emacs 找到可执行文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-13
      • 1970-01-01
      • 1970-01-01
      • 2021-04-03
      • 1970-01-01
      • 2014-07-14
      相关资源
      最近更新 更多