Emacs (Какао Emacs) по сравнению с Aquamacs для выполнения Clojure на Mac OS X

Я использовал Aquamacs до сих пор, и я должен установить и выполнить Clojure с помощью СЛИЗИ. Я погуглил для получения некоторого способа использовать Clojure на СЛИЗИ Aquamacs, но без успеха.

Вопросы

  1. Действительно ли возможно установить Clojure на Aquamacs? Или, можно ли предположить, почему Clojure на Aquamacs не работает?
  2. Действительно ли нормально, что Emacs и Aquamacs не могут совместно использовать тот же ELPA?
  3. Действительно ли возможно использовать ELPA для установки, Колдуют на Emacs/Aquamacs?
  4. Мне сказали, что можно использовать 'lein чванство' для выполнения как сервер, Вы знаете, как сделать это?

Последовательности, которые я попробовал (и наполовину успешно выполнился),

Я попробовал Mac OS X Emacs, и путем выполнения шагов, я мог заставить его работать. Я имею в виду, я мог выполнить Clojure со СЛИЗЬЮ.

Emacs для Mac OS X

Шаг 1), устанавливают ESK.

  • Клон мерзавца и копия все файлы в .emacs.d каталог
  • Добавьте следующий код к .emacs и перезапуск
    (when
        (load
         (expand-file-name "~/.emacs.d/package.el"))
      (package-initialize))

Step2) Установка с помощью ELPA

  • Пакеты списка пакета M-x для выбора пакетов
  • Установка
    • clojure-режим, clojure-тестовый-режим
    • слизь, слизь-repl
    • чванство-clojure
  • Слизь M-x для установки clojure
  • Добавьте следующий код к .emacs и перезапуск
;; clojure mode
(add-to-list 'load-path "/Users/smcho/.emacs.d/elpa/clojure-mode-1.7.1")
(require 'clojure-mode-autoloads)
(add-to-list 'load-path "/Users/smcho/.emacs.d/elpa/clojure-test-mode-1.4")
(require 'clojure-test-mode-autoloads)

;; slime
;(setq inferior-lisp-program "/Users/smcho/bin/clojure")
(add-to-list 'load-path "/Users/smcho/.emacs.d/elpa/slime-20100404")
(require 'slime-autoloads)
(add-to-list 'load-path "/Users/smcho/.emacs.d/elpa/slime-repl-20100404")
(require 'slime-repl-autoloads)

;; swank-clojure
(add-to-list 'load-path "/Users/smcho/.emacs.d/elpa/swank-clojure-1.1.0")
(require 'slime-repl-autoloads)

Aquamacs

Теперь я мог использовать Clojure на Emacs, я попробовал то же (или очень похожий) метод для выполнения Clojure на Aquamacs еще раз.

Шаг 1), устанавливают ESK для Aquamacs

  • Скопируйте файлы в ~/Library/Preference/Aquamacs Emacs
  • Измените "~/Library/Preferences/Aquamacs Emacs/Preferences.el" для добавления следующего
(setq kitfiles-dir (concat (file-name-directory
                    (or (buffer-file-name) load-file-name)) "/aquamacs-emacs-starter-kit"))

; set up our various directories to load
(add-to-list 'load-path kitfiles-dir)  
(require 'init)

Step2), * Выполняют тот же шаг как, прежде чем для установки всех (тех же) пакетов но "слизь M-x" даст мне следующее сообщение об ошибке. "Функциональное определение символа является пустым: define-slime-contrib"

ELPA

Я пытался объединить пакеты от Emacs и Aquamacs, но они не объединяются. Я думал, что мог использовать сам ELPA, не от ESK для создания его совместно использовал.

Результат не был хорош, поскольку ELPA не мог загрузить чванство - заклинают пакет.

Успех - Выполняющий Aquamacs/Clojure с 'lein чванство'.

См. это.

12
задан Community 23 May 2017 в 12:02
поделиться

2 ответа

Aquamacs определенно работает с Clojure, поскольку автор Clojure использует его. Однако я использую Emacs, и после того, как вы выполните шаги, описанные выше в разделе Emacs, я рекомендую проверить labrepl,

http://github.com/relevance/labrepl

. Если у вас нет leiningen, Ссылка для его получения и установки находится в инструкциях к файлу readme labrepl. Я нашел это чрезвычайно полезным, когда впервые узнал, как настроить среду для программирования на Clojure. Вы можете разобрать файл project.clj в labrepl и довольно легко понять, как он работает. Не говоря уже об уроках и обучении во встроенном веб-приложении, которое поставляется с labrepl.

Если вы хотите использовать вместо этого lein swank:

Убедитесь, что у вас установлен leiningen. В зависимостях вашего проекта project.clj dev вы хотите иметь такую ​​запись:

[leiningen/lein-swank "1.1.0"]

http://clojars.org/leiningen/lein-swank

Затем после того, как вы выполнили lein deps , вы должен иметь возможность запускать lein swank , а затем из Emacs запускать Mx slime-connect и просто нажимать Enter для установки значений по умолчанию.

Если вы собираетесь пойти по этому пути, вот ссылка прямо на leiningen, чтобы вы могли пропустить репозиторий labrepl: http://github.com/technomancy/leiningen

5
ответ дан 2 December 2019 в 22:37
поделиться

Пол Барри читает лекцию о том, как использовать Aquamacs и Clojure.

Это просто, поскольку вы можете добавить этот код в файл .emacs ,

(add-to-list 'load-path "~/clojure/clojure-mode")
(setq inferior-lisp-program "/Users/smcho/bin/clj")
(require 'clojure-mode)
(setq auto-mode-alist
  (cons '("\\.clj\\'" . clojure-mode)
     auto-mode-alist))
(add-hook 'clojure-mode-hook
  (lambda ()
     (define-key clojure-mode-map "\C-c\C-e" 'lisp-eval-last-sexp)))

я мог бы запустить 'M-x clojure-mode' и C-c C-z для REPL.

И как спрашивают и отвечают в Запуск Clojure и другого Lisp одновременно на Emacs , я мог бы использовать и Clojure / Lisp на Aquamacs.

2
ответ дан 2 December 2019 в 22:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: