2011-03-08 57 views
6

我按照說明儘可能在Mac OS X上安裝終端SLIME,但是當我按下M-x時,它不會提示我。通過macports設置SLIME

我使用以下兩種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))) 

填充與 在煤泥LISP的實現初始化列表您希望使用Common Lisp exectuables的正確路徑。

我不知道那是什麼最後一位意味着...

不管怎麼說,我以前從未使用過Lisp或Emacs的,字面的n00b執導的操作將是最好的。用emacs編寫和執行common lisp的最低限度。 謝謝!

回答

5

看起來你已經走上了正軌。既然你只安裝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,你應該是好去。

+0

工程就像一個魅力!爲什麼我沒有想到這個!?希望我不必爲esc使用esc,但是... – hedgehogrider 2011-03-09 01:07:45

+1

你不應該爲meta使用escape,我在我的.emacs中使用命令代替:'(setq mac-command-modifier' meta)'還有其他的選擇,看看這個:http://www.emacswiki.org/emacs/EmacsForMacOS – spacemanaki 2011-03-09 15:16:42

+0

你把那個初始化代碼放在哪裏?我試圖跟隨我自己,儘管我知道vim的基礎知識,但我是一名emacs新手。謝謝! – jpswain 2011-06-27 05:17:27