加载Exec-Path时,Emacs无法找到Python.exe(Windows 8.1)

时间:2015-07-27 04:05:22

标签: python windows emacs

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

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

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

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

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

1 个答案:

答案 0 :(得分:0)

这有点奇怪,但似乎以这种方式明确设置exec-path是造成问题的原因。稍微摆弄一下设置exec路径的替代方法(以避免listp问题)我发现使用:

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

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

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