【问题标题】:Setting up SLIME via macports通过 macports 设置 SLIME
【发布时间】:2011-03-08 09:10:25
【问题描述】:

我尽可能按照说明在 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)))

用 SLIME-LISP-IMPLEMENTATIONS 填充初始化列表 您希望使用的 Common Lisp 可执行文件的正确路径。

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

无论如何,我以前从未使用过 Lisp 或 emacs,大多数文字 n00b 定向指令会是最好的。只是用 emacs 编写和执行 common lisp 的最低要求。 谢谢!

【问题讨论】:

    标签: emacs lisp common-lisp macports


    【解决方案1】:

    看来您已经走在正确的轨道上了。由于您只安装了sbcl,而不是其他 lisps,因此只需将您的初始化代码缩减为:

    (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,你应该很高兴。

    【讨论】:

    • 就像一个魅力!我怎么没想到!?希望我不必为 Meta 使用 esc ......
    • 你不应该对 meta 使用 escape,我的 .emacs 中有这个来使用命令键:(setq mac-command-modifier 'meta) 不过还有其他选项,请参阅:emacswiki.org/emacs/EmacsForMacOS跨度>
    • 你把初始化代码放在哪里了?我正在努力跟随自己,虽然我知道 vim 的基础知识,但我是一个完全的 emacs 新手。谢谢!
    猜你喜欢
    • 2012-09-18
    • 1970-01-01
    • 2011-02-10
    • 2011-05-24
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    • 2011-11-22
    • 2010-12-08
    相关资源
    最近更新 更多