Arantium Maestum

プログラミング、囲碁、読書の話題

Atom.ioでClojureを勉強するvimっぽい環境を整えてみる

とりあえずjdkやらleiningenやらは普通にインストールできたし、lein newごにょごにょしてプロジェクト作成してproject.cljやらcore.cljやらをいじって云々というフローには慣れてきたので、次にやっていきたいのがストレスフリーな開発環境の設定である。

Pythonを書く場合は基本的にvimにごくわずかなpluginとkey-mapで済ませていた。

Clojureでも初めはvimで賄っていてとりあえずなんとかなってはいるのだが・・・

コンパイルする必要があることもあり、ちょっと書いてすぐにlein runで走らせる、というPythonでよくやっていたフローが少しめんどくさい。

テキストエディタを使っていてもreplとの連携などがあると非常に便利そう。s-expressionとreplの相性もすごく良さそうだし・・・

vimでもrepl連携などできそうではあるが、新しいことを試すいい機会ということで最近気になっていたAtom.ioでclojure開発用の環境を整えてみる。

  • Atomのウェブサイトからダウンロードしてインストール。
  • pluginはvim-mode-plus、ex-mode、nrepl。
  • key-mappingは以下の通り:
'atom-text-editor.vim-mode-plus.insert-mode':
  'j j': 'vim-mode-plus:reset-normal-mode'

'atom-text-editor.vim-mode-plus:not(.insert-mode)':
  ':': 'ex-mode:open'

'atom-text-editor.vim-mode-plus.visual-mode':
  'q': 'nrepl:eval'

これでlein replが走っている場合、Atom内で書いたs-expressionをvisual-modeでハイライトしてqを叩けば評価された値が見れる。

パッと書いて軽く結果を見る分には非常に便利。これでまずはclojure.coreの基本的な機能を勉強してみる。