(2014/10/24追記あり)
最近、エディタをEmacsからSublime Text 2(以下ST2)に乗り換えたので、ST2でもSlime風のREPL環境を使えるようにしてみる。環境は、Mac上のSublime Text 2で、キーバインドもMacの場合である。Windowsの人はごめんなさい。
まず、Sublime TextのPackage Controlをインストールする。これはググればやり方が沢山出てくるのでここでは説明しない。次に、Command+Shift+P
を打ってからInstall Package
を選び、SublimeREPL
を選んでインストールする。
もしLeiningenがシステムグローバルにインストールされていればこの時点でREPLが使えるはずだが、Leiningen経由でClojureをインストールしている場合は違うかもしれない(こっちの方が普通だと思う)。そのような場合は、SublimeText2 -> Preferences -> Package Settings -> SublimeREPL -> Settings - User
を開いて、
{
"default_extend_env": {"PATH": "{PATH}:/Users/keisuke/local/bin"}
}
のように記述する。lein
コマンドがインストールされているディレクトリにパスを通す。
以上でSublimeREPL上でClojureが使えるはずだ。
Tools - Sublime REPL - Clojure - Clojure
を選べば、新しいバッファでlein repl
が立ち上がる。View
メニューからウィンドウを上下に分割して下部にREPLを出すようにすれば完璧。
で、ショートカットキーはというと、Ctrl+,+[s/b/l/f]
(Control + コンマ + s/b/l/f)となっている。s : Selection=選択範囲をREPLに送信, b : ブロックをREPLに送信、l : 行をREPLに送信、f : ファイルをREPLに送信だ。もっと使い方はありそうだけど、とりあえず満足。
(2014/10/24追記)
基本的にreplのプロセスはエディタのサブプロセスとして動作するため、上記のようにただ単にREPLを起動すると、カレントディレクトリがSublimeエディタのディレクトリになってしまう。コレを防ぐには、leinプロジェクト内のproject.cljがアクティブに開かれている状態でREPLを起動すれば良い。これで、コマンドラインから普通に lein repl
したのと同じように使える。