Voici les étapes que j'ai pris pour les mettre en place sans l'aide de ELPA. Espérons que cette aide.
Obtenez de BAVE à l'aide de MacPorts
sudo port -v install slime
Obtenir paredit
curl -O http://mumble.net/~campbell/emacs/paredit.el
Obtenir clojure & clojure-contrib
- Soit à l'aide de MacPorts
sudo port -v installer clojure clojure-contrib
- Ou en téléchargeant directement
curl-O http://build.clojure.org/snapshots/org/clojure/clojure/1.1.0-master-SNAPSHOT/clojure-1.1.0-master-20091202.150145-1.jar
curl-O http://build.clojure.org/snapshots/org/clojure/clojure-contrib/1.1.0-master-SNAPSHOT/clojure-contrib-1.1.0-master-20091212.205045-1.jar
Obtenir clojure de la mode et chic-clojure (Emacs côté)
git clone http://github.com/technomancy/clojure-mode.git
git clone http://github.com/technomancy/swank-clojure.git
Obtenir swank-clojure (Clojure côté)
- Le téléchargement pré-construit fichier jar
curl-O http://repo.technomancy.us/swank-clojure-1.1.0.jar
- Ou de construction à partir de la source (en supposant lein est installé)
cd chemin/vers/dir/swank-clojure
lein jar
Mettre clojure, clojure-contrib et swank-clojure .les fichiers jar dans ~/.swank-clojure ou ~/.clojure (la valeur par défaut des endroits où swank-clojure.el recherche).
Ajoutez ~/.emacs ou ~/Bibliothèque/Préférences/Aquamacs Emacs/personnalisation.el (changer les chemins d'accès pour répondre à vos propres paramètres)
(add-to-list 'load-path "/opt/local/share/emacs/site-lisp/boue/")
(add-to-list 'load-path "/opt/local/share/emacs/site-lisp/boue/contrib/")
;; Modifier ces chemins pour correspondre à vos paramètres
(add-to-list 'load-path "chemin/vers/dir/clojure-mode/")
(add-to-list 'load-path "chemin/vers/dir/swank-clojure/")
(add-to-list 'load-path "chemin/vers/dir/paredit/")
;; Personnaliser swank-clojure start-up pour tenir compte des éventuelles classpath changements
;; M-x ielm `slime-lisp-implémentations RET ou voir " swank-clojure.el' pour plus d'info
(defadvice slime-lecture interactive-args (avant de l'ajouter clojure)
(require 'assoc)
(mis 'slime-lisp-implémentations 'clojure
(liste (swank-clojure-cmd) :init 'swank-clojure-init)))
(require 'slime)
(require 'paredit)
(require 'clojure-mode)
(require 'swank-clojure)
(eval-après-charge "slime"
'(progn
;; "Extra" caractéristiques (contrib)
(slime-installation
'(slime-repl slime-bannière de bave-mettre en évidence des modifications de boue floue))
(setq
;; Utiliser l'UTF-8 codage
slime-net-coding-system " utf-8-unix
;; Utilisation floue achèvement (M-Tab)
slime-complet-symbole de fonction " slime-floue-complet-symbole)
;; Utiliser des parenthèses modification du mode de paredit
(defun paredit-mode-enable () (paredit-mode 1))
(add-hook 'slime-mode-hook" paredit-mode-activer)
(add-hook 'slime-repl-mode-hook" paredit-mode-activer)))
;; Par défaut, les entrées et les résultats de la même couleur
;; Personnaliser la couleur pour les différencier
;; Rechercher les defface' dans `slime-repl.el' si vous souhaitez personnaliser
(personnalisé-set-visages
'(slime-repl-résultat-face ((t (:premier plan "Vert")))))
(eval-après-charge "swank-clojure"
'(progn
;; Faire REPL plus respectueux de Clojure (ELPA ne comprennent pas cela?)
;; La fonction est définie dans swank-clojure.el mais pas utilisé?!?
(add-hook 'slime-repl-mode-hook
'swank-clojure-slime-repl-modifier-syntaxe t)
;; Ajouter le chemin de Incanter (juste un exemple)
;; La meilleure façon de définir le classpath est d'utiliser swank-clojure-projet
(add-to-list 'swank-clojure-classpath
"chemin/vers/incanter/modules/incanter-app/cible/*")))