vimでclojure始める

今までlisp書くときはemacs使ってきたんですが、最近はvimが楽しすぎてvim力に磨きをかけているのでlispvimで書くことにしました。

ひとまずclojure書きたいのでclojureの環境を作ります。

slimv.vimを使う

slimv.vimを使ってvimでサクサクClojure開発を参考にslimv.vimを入れてみます。

記事にある通りslimv.vimのインストール自体はNeoBundleで一瞬です。

NeoBundle 'slimv.vim'

swank-clojureのインストール

記事のまんまですが、swank-clojureを入れます。

githubによると最新版は1.4.5のようなので1.4.5を指定します。

指定しないでも最新版を取ってきてくれないのかな?とか思っているけどまだleiningenよくわかってないのでとりあえず指定しておく。

lein plugin install swank-clojure 1.4.5

が、しかし!

The plugin task has been removed.

Please see the upgrade guide for instructions on how to use the user profile to
specify plugins instead: https://github.com/technomancy/leiningen/wiki/Upgrading

もはやこういう使い方はしないようです。

leiningenさんを新しく

leiningenを使えるようにします。 

leiningenが使っていないうちにずいぶん古くなっていたようです。

上のように怒られたので、上の手順に従います。

$ mv ~/bin/lein ~/bin/lein1
$ wget -O ~/bin/lein https://raw.github.com/technomancy/leiningen/stable/bin/lein
$ chmod 755 ~/bin/lein

lein swankできるように

上のleiningenのupgradeのページにあるように、~/.lein/profiles.clj:pluginsを記述します。

$ cat ~/.lein/profiles.clj
{:user {:plugins [[lein-swank "1.4.5"]]
        }}

とりあえず今はこれしか書いていません。

lein swankを試す

lein swankできるか試してみます。

当然ながら何もないところでやってもproject.cljが無いと怒られるので、適当なプロジェクトを作ってやってみます。

$ lein new helloworld
$ cd helloworld
$ lein swank
Listening for transport dt_socket at address: 59152

できました。

使い方とか使ってみての色々も書こうと思いましたがひとまずここまで。

しかし、そもそも・・

https://github.com/technomancy/swank-clojure#deprecated deprecated

swank-clojureはdeprecatedのようでした。 代替はhttps://github.com/kingtim/nrepl.elだということです。

今回swank-clojureで試してみましたが、今後nreplを使って見ようと思います。

https://github.com/clojure/tools.nrepl この辺でいけますかね。

参考サイト

追記

ちなみに最近はvim-fireplaceを使っています