Не удается заставить Slime и Swank работать с Clojure в Emacs в OS X
Просто пытаюсь получить очень простую установку слизи и clojure, но swank продолжает терпеть неудачу, когда я запускаю clojure-jack-in
Сначала я получил lein, а затем вставил следующее в мой.emacs (для версии 24.1):
(add-to-list 'load-path "~/.emacs.d/packages/")
(require 'package)
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)
Затем я установил clojure-mode и paredit.
Мой ~/.lein/profiles.clj
{:user {:plugins [[lein-swank "1.4.4"]]
:injections [(use '[clojure.repl :only [doc]])]}}
Когда я открываю файл clj и запускаю clojure-jack-in, swank дает мне
slime-repl-79b38c83.el:122:1:Error: (slime-connection-output-buffer) is not a valid place expression
2 ответа
У вас есть слизь, установленная через мармелад или каким-либо другим способом? Если да, то это, вероятно, проблема. swank несовместим с CVS-версией slime и устанавливает собственный пакет slime. (обратите внимание, что вам нужен реплик слизи из мармелада). Проверьте свои ~/.emacs.d/elpa
dir, а также соответствующий каталог пакетов системного уровня, чтобы быть уверенным, что у вас нет ошибочной версии.
Если вы уверены, что у вас есть только одна версия slime и что это правильная версия, вы можете попробовать запустить swank из оболочки в каталоге верхнего уровня проекта с помощью
$ lein swank
а затем подключиться к этому экземпляру Суонк из Emacs с M-x slime-connect
, если это не работает, вы должны по крайней мере получить дополнительные ошибки, которые проливают свет на вашу проблему
Какую версию lein вы используете? Я считаю, что lein-swank 1.4.4 предназначен для работы с lein2. Если вы используете lein1, вам понадобится lein-swank 1.4.2