Clojure開発用Eclipseプラグインメモ その2

以前の日記「Clojure開発用Eclipseプラグインメモ - oknknicの日記」では軽くしか触れてなかったので、もう少し具体的な内容をメモ。
予想してたよりかなり高機能で、Eclipseでの開発を本命にしちゃいそうな気分になってきた。

Counterclockwiseプラグイン

Counterclockwiseの本日(2013/08/17)時点の最新安定版は0.12.0のよう。

導入

Eclipse

上記指定のとおり、Eclipse Juno(4.2)を導入。
Eclipse IDE for Java EE Developers Juno Service Release 2)

Counterclockwiseプラグイン

1.「Help>Eclipse Marketplace」にて「Clojure」で検索
2.「Counterclockwise」のInstallボタン押下

  • > Version 0.12.3.STABLE001 が導入された。(上記では0.12.0が最新とされていたが・・・)

プロジェクトの作成

1. New > Other > Clojure > Clojure Project
2. "Leiningen Template to use" には、プロジェクトのテンプレートを指定。例えば、
    "default" なら通常のClojureプロジェクト
    "compojure" ならCompojureによるWEBアプリプロジェクト

実行(通常のプロジェクトの場合)

ファイルを右クリック>Run As>Clojure Application で、該当ソースを名前空間としたREPLを起動できる。(なお、プロジェクトフォルダを右クリックした場合は、名前空間はuserになる)
エディタ内で右クリック>Clojure>"Load File in REPL" で、編集後のソースを読み込むことも可能。
また、S式を選択してCtrl-Enter(右記でも同じ:右クリック>Clojure>"Evaluate current selection or top-level form in the visible REPL")でS式単位の評価も可能。
(カーソル位置の最も外側のS式。範囲選択している場合は、その範囲内のみを評価)

実行(Compojureプロジェクトの場合)

別途cmdから実行しても良いが、
以下のとおり外部ツールとして「lein ring server」を登録しておいてもよいだろう。
1. Run > External Tools > External Tools Configurations
2. 「Program」を選択し、「New」を押下
3. 「Main」タブにて以下のとおり設定して「Apply」を押下
 Location: lein.batのフルパス(例:C:\lein\lein.bat)
 Working Directory:「Browse Workspace」を押下して上記プロジェクトを指定
 Arguments: ring server
4. Run > External Tools > Organize Favorites
5. 「Add」から、上記で登録した外部ツールを登録する

コードアシスト

上記に記載のとおり、Clojureのシンボルも java もアシストされる。
java は .(ドット)始まりで入力したときにアシストされる。
ただし、java は(型指定がないため)アシスト候補が膨大なため、少々遅い。

<20013/08/22追記>
なお、コードアシストやタグジャンプ、ドキュメント表示機能等は、
REPLを起動していてかつその名前空間から参照(再帰的な参照も含む)しているものに対してのみ可能なよう。(挙動から推察する限りは)
そのため、コーディングする際は、core.cljの右クリックからREPLを起動した状態で行うのが良さそう。

その他機能

Java開発時と同様の機能など、以下のようなものも実装されている!!

  • マウスカーソルを合わせるとドキュメント表示
  • F3で定義へジャンプ
  • デバッグ実行
  • strict/pareditモード(エディタで右クリック>Clojure>SwitchEditMode)
  • 名前検索(Window>ShowView>Other>ClojureView>NamespaceBrowser)

などなど