emacs - 通过 macports 设置 SLIME

标签 emacs lisp common-lisp macports

我尽我所能按照说明在 Mac OS X 上安装终端 SLIME,但是当我按 M-x 时它没有提示我。

我使用以下两个 sudo 命令安装了 emacs 和 Lisp:

sudo port install emacs +carbon
sudo port install sbcl slime

我得到了以下说明:

(add-to-list 'load-path "/opt/local/share/emacs/site-lisp/slime")
(require 'slime-autoloads)
(setq slime-lisp-implementations
     `((sbcl ("/opt/local/bin/sbcl"))
       (abcl ("/opt/local/bin/abcl"))
       (clisp ("/opt/local/bin/clisp"))))
(add-hook 'lisp-mode-hook
           (lambda ()
             (cond ((not (featurep 'slime))
                    (require 'slime) 
                    (normal-mode)))))

(eval-after-load "slime"
   '(slime-setup '(slime-fancy slime-banner)))

Populate the initialization list in SLIME-LISP-IMPLEMENTATIONS with the correct paths to the Common Lisp exectuables you wish to use.

我不确定最后一点是什么意思...

无论如何,我以前从未使用过 Lisp 或 emacs,最直接的 n00b 定向指令是最好的。只是用 emacs 编写和执行通用 lisp 的最低限度。 谢谢!

最佳答案

看来您已经在正确的轨道上了。由于您只安装了 sbcl,而没有安装其他 lisp,只需将您的初始化代码缩减为:

(add-to-list 'load-path "/opt/local/share/emacs/site-lisp/slime")
(require 'slime-autoloads)
(setq slime-lisp-implementations `((sbcl ("/opt/local/bin/sbcl")))
(add-hook 'lisp-mode-hook
  (lambda () (cond ((not (featurep 'slime)) (require 'slime) (normal-mode)))))
(eval-after-load "slime" '(slime-setup '(slime-fancy slime-banner)))

之后,使用M-x slime,你就可以开始了。

关于emacs - 通过 macports 设置 SLIME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5230399/

相关文章:

scheme - `cond` 也是 `let` 吗?

types - 字段计算为值 (0.0),不是 SHORT-FLOAT 类型

emacs - 如何着手学习 Common Lisp 和 Emacs Lisp?

emacs - 如何向 emacs -nw linum-mode 添加填充?

emacs - Org-Mode:从 noweb 插入调用 noweb 插入

recursion - 无法将递归构建的列表返回到 Lisp 中的调用函数

lisp - AutoLISP/LISP 写入 Web 服务器上的文件

common-lisp - 在 common-lisp 中,如何就地将元素插入到列表中?

lisp - 如何将两个相似的函数合并为一个函数

emacs - ido-completing-read - 历史列表应该如何表现?