Подтвердить что ты не робот

Установка SLIME в emacs

Я пытался установить SLIME. Я загрузил пакет zipped и в соответствии с файлом README мне пришлось поместить этот фрагмент кода в файл .emacs:

 (add-to-list 'load-path "~/hacking/lisp/slime/")  ; your SLIME directory
(setq inferior-lisp-program "/opt/sbcl/bin/sbcl") ; your Lisp system
(require 'slime)
(slime-setup)

Каталог slime прост. Что относительно системы Lisp. Как его найти?

4b9b3361

Ответ 1

Некоторые Linux поставляются с предустановленной CMUCL, но поскольку вы, похоже, хотите использовать SBCL, вам нужно будет установить его.

В терминале или в Emacs M-x shell. Если вы используете дистрибутив типа Debian, вы можете использовать apt-get или aptitude со следующим:

$ sudo apt-get install sbcl

или

$ sudo aptitude install sbcl

в RHEL-подобном дистрибутиве:

$ sudo yum install sbcl

После установки SBCL вы можете установить inferior-lisp-program в "sbcl".

Кроме того, я бы посоветовал установить SLIME через quicklisp-slime-helper

Вам нужно будет установить несколько Lisp, которые вам нравятся (пусть это будет SBCL для этой цели, как описано выше), тогда в той же оболочке сделайте следующее:

(Предположим, вы находитесь на Linux, подобном Debian)

$ sudo apt-get install wget
$ cd ~/Downloads
$ wget http://beta.quicklisp.org/quicklisp.lisp
$ sbcl --load ./quicklisp.lisp

подождите, пока вы не увидите приглашение оболочки Lisp,

* (quicklisp-quickstart:install)
* (ql:add-to-init-file)
* (ql:quickload "quicklisp-slime-helper")
* (quit)

теперь вы вернулись в обычную оболочку. Запустите Emacs, если он еще не открыт. C-f x ~/.emacs. Добавьте строки ниже к нему (вместо того, что вы указали выше):

(load (expand-file-name "~/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl")

Или замените "sbcl" на реализацию Lisp, которую вы установили.

Обратитесь к документации Quicklisp для получения дополнительной информации. Вы обнаружите, что в любом случае вы будете использовать Quicklisp позже, поэтому полезно, чтобы все это было в одном месте с самого начала.