Настройка SLIME через macports - PullRequest
6 голосов
/ 08 марта 2011

Я следовал инструкциям, насколько мог, для установки терминала SLIME в Mac OS X, но когда я нажимаю M-x, он не выдает подсказки.

Я установил emacs и Lisp, используя следующие две команды sudo:

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. Просто необходимый минимум для написания и выполнения общего lisp с emacs. Спасибо!

1 Ответ

5 голосов
/ 08 марта 2011

Похоже, вы уже на правильном пути.Поскольку вы установили только sbcl, а не другие списки, просто сократите код инициализации до следующего значения:

(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, и все будет хорошо.

...