[英]Making Emacs/Slime/Quicklisp/SBCL work in Windows
我在 Windows 7.0 中使用上述組合已有幾個月了。 不幸的是,一位同事建議我將 slime-helper.el 安裝到 emacs 中,結果:Emacs Slime 不再識別 QL。
我在 Windows 上使用 SBCL 1.2.11,並且從命令行這個 sbcl 知道 ql 安裝。 這是我的 .sbclrc
;;; The following lines added by ql:add-to-init-file:
#-quicklisp
(let ((quicklisp-init (merge-pathnames
"Documents/LISP/.asdf-install-dir/systems/setup.lisp"
(user-homedir-pathname))))
(when (probe-file quicklisp-init)
(load quicklisp-init)))
然后我打字
(ql:quickload "quicklisp-slime-helper")
它編譯了很多。 最后它說
要使用,請將其添加到您的 ~/.emacs 中:
(load (expand-file-name "~/Documents/LISP/.asdf-install-dir/systems/slime-helper.el"))
;; Replace "sbcl" with the path to your implementation
(setq inferior-lisp-program "sbcl")
現在這是我的 .emacs 文件中的相應部分
(load "c:/Users/xyz/Documents/LISP/.asdf-install-dir/systems/slime-helper.el")
(setq inferior-lisp-program "c:\\Progra~1\\Steelb~1\\12BDCB~1.11\\sbcl.exe")
我啟動了 emacs,它正常運行。
M-x slime
還是不錯的:
; SLIME 2015-06-01
CL-USER>
但是之后:
(ql:quickload :my-project)
回來
Package QL does not exist.
但最糟糕的是,如果我從 .emacs-file 中刪除 slime-helper,它會再次識別 quicklisp 包,但每次調用 ql 都會鎖定 emacs。 我可以等待幾分鍾而沒有得到任何回應。
任何幫助表示贊賞。
對於遇到此問題的其他人,我在嘗試使用 Windows + Emacs + Slime + SBCL + QL 時遇到了類似的問題。 最后,它歸結為 Windows 認為我的主文件夾與 Emacs(因此,Slime)認為它是什么之間的沖突。
Windows:c:/用戶/用戶名
Emacs:c:/users/username/appdata/roaming
當我安裝 quicklisp 時,我從 cmd 提示符調用了 SBCL,因此該進程在 c:/users/username 中安裝了 quicklisp 文件夾以及新的 .sbclrc。
Emacs Slime 在 c:/users/username/appdata/roaming 中查找這些。
我通過將 c:/users/username 中的 quicklisp 文件夾和 .sbclrc 移動到 c:/users/username/appdata/roaming 來解決這個問題,因為我不打算與 SBCL 進行交互,除非通過 Slime。
問題是 Emacs Slime (REPL) 既不知道是否安裝了 quicklisp,也不知道它安裝在哪里。 解決問題所需要做的就是在 Emacs 的 slime repl上重新安裝 quicklisp 。 (“quicklisp.lisp”文件應該在 SLIME REPL 的當前工作文件夾中。)
M-x slime
CL-USER> (load "quicklisp.lisp")
CL-USER> (quicklisp-quickstart:install)
CL-USER> (ql:add-to-init-file)
然后,quicklisp 將重新安裝在 Emacs 的 HOME 目錄(“~/”)中。 現在,您已經在 (a) Windows 10 的 HOME 和 (a) Emacs 的 HOME 中安裝了相同的 quicklisp。 如果你只在 Emacs 的 Slime REPL 上使用 quicklisp,那么 Windows 10' HOME 中的副本是沒有用的,你可以刪除它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.