在emacs中设置SLIME

12

我试图安装SLIME。我下载了压缩包,并根据README文件的说明,需要将以下代码块放入我的Emacs配置文件中:

(add-to-list 'load-path "~/hacking/lisp/slime/")  ; your SLIME directory
(setq inferior-lisp-program "/opt/sbcl/bin/sbcl") ; your Lisp system
(require 'slime)
(slime-setup)

设定SLIME目录很简单,但是关于Lisp的“系统”呢?我该如何找到它呢?

2个回答

22

有些 Linux 版本预装了 CMUCL,但由于您似乎想使用 SBCL,因此需要安装它。

在终端或 Emacs 中使用 M-xshell。如果您使用的是类 Debian 的发行版,可以使用以下命令:

$ sudo apt-get install sbcl

或者
$ sudo aptitude install sbcl

在类似于 RHEL 的发行版上:

$ sudo yum install sbcl

安装完SBCL之后,您可以将inferior-lisp-program设置为"sbcl"。

此外,我建议通过quicklisp-slime-helper安装SLIME。

您需要安装一些您喜欢的Lisp(本文以上面描述的SBCL为例),然后在同一 shell 中执行以下操作:

(假设您正在类似 Debian 的 Linux 系统上)

$ sudo apt-get install wget
$ cd ~/Downloads
$ wget http://beta.quicklisp.org/quicklisp.lisp
$ sbcl --load ./quicklisp.lisp

等待看到Lisp shell提示符,

* (quicklisp-quickstart:install)
* (ql:add-to-init-file)
* (ql:quickload "quicklisp-slime-helper")
* (quit)

现在您已经回到了常规shell。如果尚未打开,请启动Emacs。C-f x~/.emacs。请将以下行添加到其中(而不是上面发布的内容):

(load (expand-file-name "~/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl")

或者用您安装的Lisp实现替换"sbcl"。

请查看Quicklisp文档以获取更多信息。您将发现您之后会使用Quicklisp,因此从一开始就把所有内容都整合到一个地方是有用的。


谢谢,这是一个很好的描述。只有一件事,我想SBCL和clisp都是lisp编译器,哪个更好?SBCL明显更快。我应该使用哪一个? - sudeepdino008

6

最佳答案有点过时。

现在Emacs有一个官方的包管理器。您可以通过MELPA存储库安装slime。首先设置MELPA,然后M-x package-install RET slime RET

之后,您可以像顶部答案所述一样设置您的inferior-lisp-program


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接