通过macport设置SLIME

hed*_*der 6 lisp emacs common-lisp macports

我尽可能地按照说明在Mac OS X上安装终端SLIME,但是当我按Mx时它没有提示我.

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

sudo port install emacs +carbon
sudo port install sbcl slime
Run Code Online (Sandbox Code Playgroud)

我收到了以下说明:

(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)))
Run Code Online (Sandbox Code Playgroud)

使用您希望使用的Common Lisp exectuable的正确路径填充SLIME-LISP-IMPLEMENTATIONS中的初始化列表.

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

无论如何,我以前从未使用过Lisp或emacs,大多数字面上的n00b定向指令都是最好的.只需用emacs编写和执行常见的lisp即可.谢谢!

san*_*inc 5

看起来你已经走上正轨了.由于您只安装了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)))
Run Code Online (Sandbox Code Playgroud)

在那之后,使用M-x slime,你应该好好去.