Emacs无法创建与raw.github.com的连接(找不到gzip)

时间:2017-02-20 03:15:16

标签: python emacs gzip x86-64 gnu

我一直在尝试使用Emacs编写python代码,但是在修改我的.emacs后,程序(我使用el-get)的程序不会通过建议" could not create connection to raw.github.com来启动",当我运行C:\emacs\bin>runemacs.exe --debug-init时,它会显示" uncompression program gzip not found"

我正在使用的版本: Emacs 26.0(与mingw64一起安装)+ Windows 10 64bit + Python 3.5 。 我的.emacs文件与此处完全相同:https://github.com/jhamrick/emacs

我做过的一些试验但到目前为止还没有起作用:

  1. 下载gzip(但它是x84版本)将其复制到/ emacs / bin
  2. gzip最初安装在C:/ Program Files(x86)/ Gnuwin32中,所以我也将它添加到系统PATH中
  3. 由于Spyder无法使用Python 3.0+,我决定切换到Emacs,因为这是我以前唯一使用的其他IDE。对于使用Emacs / lisp的Python,我真的很新。希望有人能提出一些建议!谢谢!

1 个答案:

答案 0 :(得分:1)

  

exec-path是'C源代码'中定义的变量。它的值是(“'$ SHELL'不被识别为内部或外部命令,\ noperable程序或批处理文件。\ n”)原始值为(“'C:/emacs/libexec/emacs/26.0.50/x86_64 -w64-mingw32 / cmdprox y.exe'无法识别为内部或外部命令,\ noperable程序或批处理文件。\ n“”c:/emacs/libexec/emacs/26.0.50/x86_64-w64-mingw32 “)

好的,这完全被彻底打破了,并解释了你的问题。

exec-path 假设是Emacs查找可执行文件的目录列表。

我查看了您的配置,并在~/.emacs.d/settings/general-settings.el中执行此操作:

; set PATH, because we don't load .bashrc
; function from https://gist.github.com/jakemcc/3887459
(defun set-exec-path-from-shell-PATH ()
  (setenv "PATH" (concat "/usr/local/bin:" (getenv "PATH")))
  (let ((path-from-shell (shell-command-to-string "$SHELL -i -c 'echo -n $PATH'")))
    (setenv "PATH" path-from-shell)
    (setq exec-path (split-string path-from-shell path-separator))))

(if window-system (set-exec-path-from-shell-PATH))

显然,这根本不起作用。

至少你应该注释掉这些行,但这也可能表明这不是一个好用的配置。

如果您遇到更多问题,可能需要寻找与您的系统更兼容的内容。

关于安装说明,他们让您从源代码编译,但不选择分支,这意味着您将获得最新版本。

我建议您在克隆的存储库中运行:

git fetch origin
git checkout emacs-25

Emacs 25.2处于候选发布阶段,所以这个分支比你目前使用的分支更安全。

之后你需要重新编译。您可以使用以下命令将存储库重置为原始状态:

git clean -f -d -x -q

然后再次按照“configure; make; make install”说明操作。