无法安装emacs el-get包,emacs无法连接到互联网

时间:2013-06-20 17:06:18

标签: windows plugins emacs

我已将其复制到我的init.el:

(add-to-list 'load-path ".emacs.d/el-get/el-get")
(unless (require 'el-get nil t)
  (url-retrieve
   "https://raw.github.com/dimitri/el-get/master/el-get-install.el"
   (lambda (s)
     (end-of-buffer)
     (eval-print-last-sexp))))

我在d:.emacs.d目录中使用此代码启动emacs,该目录不在默认位置

set HOME=%~dp0\..
cd ..
D:\emacs-24.3\bin\runemacs.exe --debug-init --xrm "emacs.Background: light green"

这应该从github下载包,但我得到了这个:

Debugger entered--Lisp error: (error "Could not create connection to raw.github.com:443")
signal(error ("Could not create connection to raw.github.com:443"))
error("Could not create connection to %s:%d" "raw.github.com" 443)
url-http([cl-struct-url "https" nil nil "raw.github.com" nil "/dimitri/el-get/master/el-get-install.el" nil nil t nil t] (lambda (s) (end-of-buffer) (eval-print-last-sexp)) (nil))
url-https([cl-struct-url "https" nil nil "raw.github.com" nil "/dimitri/el-get/master/el-get-install.el" nil nil t nil t] (lambda (s) (end-of-buffer) (eval-print-last-sexp)) (nil))
url-retrieve-internal("https://raw.github.com/dimitri/el-get/master/el-get-install.el" (lambda (s) (end-of-buffer) (eval-print-last-sexp)) (nil) nil nil)
url-retrieve("https://raw.github.com/dimitri/el-get/master/el-get-install.el" (lambda (s) (end-of-buffer) (eval-print-last-sexp)))
(if (require (quote el-get) nil t) nil (url-retrieve "https://raw.github.com/dimitri/el-get/master/el-get-install.el" (function (lambda (s) (end-of-buffer) (eval-print-last-sexp)))))
eval-buffer(#<buffer  *load*> nil "d:/.emacs.d/init.el" nil t)  ; Reading at buffer position 1831
load-with-code-conversion("d:/.emacs.d/init.el" "d:/.emacs.d/init.el" t t)
load("d:/.emacs.d/init" t t)
#[0 "\205\262

如果emacs实际上是在尝试连接,则防火墙没有通知。

2 个答案:

答案 0 :(得分:5)

我最近写的Installation on Windows页面似乎就是这个问题的答案:

  

Emacs在Windows上不支持开箱即用的https。如上所述   here,可以从中检索所需的dll   http://sourceforge.net/projects/ezwinports/files/

     
      
  • dll中的bingnutls-3.0.9-w32-bin.zip提取到Emacs'bin/   
  •   
  • 您需要重新启动Emacs才能注意到新的dll。
  •   

答案 1 :(得分:1)

我知道这个帖子已经超过一年了,但它似乎仍然与新的el-get用户非常相关......

我从该代码下载el-get并没有取得多大成功(如网站所说),但我确实使用了来自https://github.com/dimitri/el-get的代码并通过git clone首先安装了代码,然后,一旦我这样做,我的〜/ .emacs.d / init.el中的代码(与上面的类似)正在努力保持el-get同步。

如果你有这个愿望,我建议调查它 - 我发现el-get比原生的Package.el好得多,主要是因为它支持直接安装git repos,而不必先克隆它们。 (一旦它通过公司代理工作,它变得更有价值!)