4

我现在正在学习普通的 lisp。我想在 emacs 中使用 slime,但是当我按下 Mx slime 时,它​​显示 [No match]

最初我下载 CVS 快照并将其放入我的 .emacs 文件中

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

然后我按照这个步骤再次设置在emacs中设置SLIME

但问题并没有消失。

此外,Mx run-lisp 不起作用。当我尝试这样做时,缓冲区显示“正在搜索程序:没有这样的文件或目录,lisp”

4

4 回答 4

4

为了安全起见,尝试使用 Emacs 24 的包管理器安装 SLIME。

  1. 在你的 init.el 中配置包管理:

    (require 'package)
    
    (add-to-list 'package-archives '("melpa"     . "http://melpa.milkbox.net/packages/"))
    (add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
    
    (package-initialize)
    
    (unless package-archive-contents 
      (package-refresh-contents))
    
  2. 运行M-x package-install slime。那应该为您正确设置加载路径。

  3. 您拥有的那些配置选项现在应该可以工作了:

    (setq inferior-lisp-program (executable-find "sbcl"))
    

我刚刚重新安装了 SLIME 和 SBCL,这就是我所需要的。

于 2013-04-12T05:34:23.480 回答
1

这似乎与 $PATH 相关。我刚刚

(setq inferior-lisp-prompt "sbcl")

在我的 .emacs 中并收到此错误。我把它改成

(setq inferior-lisp-program (executable-find "sbcl"))

我的 ELPA 安装的 SLIME 现在可以在 Debian 下的 Emacs 24.3.1 上运行

于 2014-06-13T17:20:32.887 回答
0

在 add-to-list 行中,在 slime 之后添加一个正斜杠(即“~/.slime/”)以使其成为目录规范。

编辑 - 对不起,不正确。相反,请尝试删除句点(即“~/slime”)

问候,

于 2013-04-12T02:57:51.650 回答
0

使用 .将其配置到您的 init.el 中c-x c-f ~/.init.el

(require 'package)

(add-to-list 'package-archives '("melpa"     . "http://melpa.milkbox.net/packages/"))
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))

(package-initialize)

(unless package-archive-contents 
  (package-refresh-contents))
  • 重新安装 sbcl 和 slime。
  • 我在整个设置中使用了 roswell。这个网站应该有帮助。

要在 emacs 中使用 slime,请将其添加到 using c-x c-f ~/.emacs.

(load (expand-file-name "~/.roswell/helper.el"))

这应该都有效。

于 2022-02-11T16:31:12.010 回答