我在 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 文件中删除 slime-helper,它会再次识别 quicklisp 包,但每次调用 ql 都会锁定 emacs。我可以等待几分钟而没有任何回应。
任何帮助表示赞赏。