Вопрос

я использовал Аквамакс пока, и мне нужно установить и запустить Кложур с использованием СЛИЗЬ.Я искал в Google способ использовать Clojure на SLIME of Aquamacs, но безуспешно.

Вопросы

  1. Можно ли установить Clojure на Aquamacs?Или можете ли вы догадаться, почему Clojure на Aquamacs не работает?
  2. Это нормально, что Emacs и Aquamacs не могут использовать одно и то же? ЭЛПА?
  3. Можно ли использовать ELPA для установки Conjure на Emacs/Aquamacs?
  4. Мне сказали, что можно использовать «lein swank» для работы в качестве сервера. Вы знаете, как это сделать?

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

Я попробовал с Mac OS X Эмакс, и, следуя инструкциям, я смог заставить его работать.Я имею в виду, что я мог бы запустить Clojure со SLIME.

Emacs для Mac OS X

Шаг 1) Установите ЭСК.

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

Шаг 2) Установите с помощью ELPA.

  • M-x package-list-packages для выбора пакетов
  • Установить
    • режим Clojure, режим тестирования 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)

Аквамакс

Теперь я мог использовать 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)

Шаг 2) * Следуйте тому же шагу, что и раньше, чтобы установить все (те же) пакеты, но «MX Slime» дает мне следующее сообщение об ошибке.«Определение функции символа недействительно:определить-слайм-внести"

ЭЛПА

Я пробовал объединить пакеты Emacs и Aquamacs, но они не объединяются.Я подумал, что смогу использовать ЭЛПА сам, а не из ЕСК, чтобы сделать его общим.

Результат оказался не очень хорошим, поскольку ELPA не смогла загрузить пакет swank-conjure.

Успех — запуск Aquamacs/Clojure с помощью «lein swank».

Пожалуйста, обратитесь к этот.

Это было полезно?

Решение

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

http://github.com/relevance/labrepl

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

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

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

[leiningen/lein-swank "1.1.0"]

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

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

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

Другие советы

Я нашел это Самая легкая установка для последней версии всего.Вот быстрое резюме, где я предполагаю, что у вас установлен Лейнинген.

Установите плагин Swank-Clojure

$ lein plugin install swank-clojure 1.3.2
.

Создайте свой проект Clojure

$ lein new test-project
$ cd test-project
$ lein deps
.

Затем откройте один из файлов Clojure из вашего проекта в Emacs и запустить Clojure-jack-in

M-x clojure-jack-in
.

Теперь вы находитесь в слизистом буфере с Clojure и зависимостями для вашего проекта.

Paul Barry Лекция, как использовать Aquamacs и Cljure.

Это просто, как вы можете добавить этот код в файл .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.

И как просят и отвечает в

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top