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

Как заставить Emacs, nrepl.el и Leiningen играть вместе?

Я действительно был доволен использованием vim + lein repl, но так как многие люди продолжают говорить, что Emacs - это способ пойти, когда дело доходит до Lisps, я решил попробовать. Проблема в том, что теперь создается среда clojure, которая делает все причудливые вещи, о которых люди продолжают говорить, - пока мне удалось установить clojure -mode и nREPL, и это работает достаточно хорошо, но мне нужно получить работайте с моими проектами Leiningen, если этот эксперимент пойдет куда-нибудь (с заменой в редакторе было бы совершенно бессмысленно, если бы это означало, что я должен снова управлять всеми моими зависимостями (особенно связанными с classpath)). Проблемным моментом здесь является то, что большинство статей, которые я вижу в Интернете,

  • A) о swank- clojure, который устарел
  • B) о Leiningen 1.x, который устарел
  • C) оба
  • D) Только обложка, а не как использовать вещи вы только что установили (или даже то, что они делают)

Теперь я ищу:

  • Получить nrepl.el для моего проекта .clj
  • Узнайте, что нормальный рабочий процесс с leiningen + emacs + clojure -mode + nrepl.el
  • Не имеет никакого отношения к вопросу, но мне было бы интересно, почему emacs иногда покрывает текст (меняет цвет шрифта на цвет фона до тех пор, пока он не будет нажат курсором), не спрашивая его.
4b9b3361

Ответ 1

Предполагая, что у вас установлены как lein2, так и nrepl.el:

Вариант A:

Вы просто открываете в Emacs файл, принадлежащий вашему проекту lein (например, foo.clj), и вы вводите M-x nrepl-jack-in. Это запустит nREPL со всеми загруженными папками, и вы сможете играть с ним более или менее так же, как с swank-clojure. (что я делаю большую часть времени)

Вариант B:

Вы переходите к своему проекту dir в терминале и набираете там:

lein repl

Впоследствии ввод M-x nrepl позволит вам подключиться к выполняемому сеансу nrepl.

nrepl.el поставляется с удобным второстепенным режимом, который позволяет вам оценивать код в исходных файлах Clojure и загружать его непосредственно в repl (так же, как swank- clojure). Список всех доступных команд, доступных в разделе меню nREPL.

P.S.

nrepl.el был переименован в CIDER.