emacs上にClojureの開発環境を整えた。

emacs(もといrepl)は偉大

もともとはゆとり世代なので、emacsもviも使いこなしきれない情弱勢だったんですが。

CLの勉強をしていくなかで、emacs × slimeのコンボでコードをその場でreplで確認していくのに慣れてしまってからというものの、これがなしではいきられない体になってしまいました。

ということで、Clojureemacs上でのClojure開発環境を整える

んですが、emacs弱者なので、自分メモにすぎませんのであしからず。

流れ


  1. leiningenの導入
  2. Clojure-modeの導入
  3. Ciderの導入

1. Leiningenの導入

$ brew install leiningen

$ lein repl で対話環境が立ち上がればOKです。

Clojureの処理系はこれで一発で入ります。

2. Clojure-modeの導入

emacsclojureモードをいれます。

https://github.com/clojure-emacs/clojure-mode

パッケージインストールしてください。はい。

3. Ciderの導入

CLでいうところのSlimeみたいなもんみたいです。

Leiningenで動くClojureのREPL環境にポート接続でつなぎまする

https://github.com/clojure-emacs/cider

https://github.com/clojure/tools.nrepl

パッケージインストールしてください。はい。

Leiningenのprofileにもろもろグローバルに使うツールの指定をしないとプンスカされます。 いろいろ参考にして僕はこうしました。

{:user {:profiles {:dev {:global-vars {*warn-on-reflection* true}}}
        :jvm-opts ["-server" "-XX:+AggressiveOpts" "-XX:+TieredCompilation" "-Xverify:none"]
        :dependencies [[slamhound "RELEASE"]
                       [org.clojure/tools.trace "RELEASE"]
                       [org.clojure/tools.nrepl "0.2.7"]
                       [criterium "0.4.3"]]
        :aliases {"slamhound" ["run" "-m" "slam.hound"]}
        :plugins [[lein-kibit "RELEASE"]
                  [cider/cider-nrepl "0.9.0-SNAPSHOT"]]}}

emacs

M-x cider-jack-in

すると

f:id:bokuo-okubo:20150511040310j:plain

なんかnREPLがらみでwarning出てたような気がするのでまた書きますっておもったけど出てなかったからかかないとおもう

雑でござる