Skip to content

Instantly share code, notes, and snippets.

;; Step 1: Follow steps from http://tromey.com/elpa/install.html and install `swank-clojure'.
;; Step 2: mkdir ~/.emacs.d.clj
;; Step 3: mv ~/.emacs ~/.emacs.d/init.el
;; Step 4: Copy swank-clojure, slime, slime-repl & clojure-mode directories from `~/.emacs.d/elpa/' to `~/.emacs.d.clj/'
;; Step 5: Create an `init.el' file in `~/.emacs.d.clj' directory
;; Step 6: mkdir -p ~/clojure-project/{lib,classes,src}
;; Step 7: cd ~/clojure-project/lib
;; Step 8: wget -cv http://build.clojure.org/snapshots/org/clojure/clojure/1.1.0-master-SNAPSHOT/clojure-1.1.0-master-20091231.150150-10.jar
;; Step 9: wget -cv http://build.clojure.org/snapshots/org/clojure/clojure-contrib/1.1.0-master-SNAPSHOT/clojure-contrib-1.1.0-master-20100114.180141-21.jar
;; Step 10: wget -cv http://repo.technomancy.us/swank-clojure-1.1.0.jar
(defn map-keys
"Applies f to all keys of m recursively."
[f m]
(cond
(map? m) (into {} (map (fn [[key value]]
[(f key) (map-keys f value)])
m))
(coll? m) (map (partial map-keys f) m)
:default m))