読者です 読者をやめる 読者になる 読者になる

uzullaがブログ

uzullaがブログです。

PerlのIDE環境であるEPICをいれる

Perlの開発環境の話で、Hachioji.pmのmoznion氏周辺にてPadre(http://uzulla.hateblo.jp/entry/2014/01/26/225611)が微妙に話題になったのに、まったく話題にのぼらないEPICについて一応。

Flexの開発環境として(Flex Builder)結構な間つかっていたのだが、正直Eclipseには良い思い出があまりない。

Eclipseをインストール

まずはEclipseをDLする
http://www.eclipse.org/downloads/

Eclipse Standardでよい、64bit版をDLした。

DLしたtar.gzファイルを解凍し、でてきた「eclipse」フォルダごと、Applicationsに入れる。

その中のeclipse.appが本体で、それをDockに登録したりして起動できる。

起動すると、workspaceをどこにするかときかれるが、つまりはプロジェクトを今後作成する親ディレクトリで、後で変更もできるのでどこでもかまわない。正直余り意味はない。

メニューのHelp -> Install New Softwareをひらき、
f:id:uzulla:20140131040451p:plain

「Work With」にEPICのレポジトリのURLをいれる。
f:id:uzulla:20140131040511p:plain

http://www.epic-ide.org/download.php
ここに記載があるが

http://e-p-i-c.sf.net/updates/testing

などと入れる。(上はdev版を含むURLっぽいけど、あたらしいほうが良いでしょう(適当)詳細は前述のURLにある)

その後右側の「Add」を押すとダイアログがひらくので、名前はEPICなどといれてOKする。
f:id:uzulla:20140131040535p:plain

すると、中央に、「EPIC Main Components」などと表示されるので、これをチェックしたら、Nextを押したり同意したりFinishしたりする。これでEPICプラグインのインストールが完了する。

インストールが完了すると、Eclipseが再起動される

エディタ設定

まず、ありえないことに文字コードSJISになっているので、設定を変更する。
Eclipse->環境設定で設定画面をひらき、左上の検索窓に「encoding」といれるとある程度しぼりこまれるので、workspaceを選択し、Text File EncodingをUTF-8に変更する。
f:id:uzulla:20140131040703p:plain

行番号も是非ほしいとおもうでしょうから、同様に検索窓にline numberなどといれると「Show Line numbers」のチェックボックスがあるので、Onにしたりする。

適当にプロジェクトを作る

File-> New -> Projectをひらき、表示されたダイアログからPerlをえらんでFinishすると新しいプロジェクトが作成できる。
f:id:uzulla:20140131040552p:plain

パースペクティブPerlにする

ウインドウ右上にある表っぽいアイコンをクリックすると、パースペクティブを変更できる。
パースペクティブとは、エディタやらファイルナビゲータやらそういったもろもろのレイアウトである。当然ここの中からPerlを選択する。
f:id:uzulla:20140131040820p:plain

これで準備は完了。

Perlを書く

左側に適当につくったプロジェクトがNavigatorに表示されているとおもうが、適当に右クリックして、Newから新しいPerl Fileを作成する。
f:id:uzulla:20140131040620p:plain
PerlFileがなければ、Otherをおすと選択する事ができる。

コードを適当にかいてみる。

ここはまあ、説明不要だとおもう。

走らせてみる

別にシェルから実行したっていいのだが、Eclipseの中から実行するには、メニューバーの再生ボタンを押す。
f:id:uzulla:20140131040933p:plain
すると画面下部にコンソールがひらいて実行結果が表示去れる。
f:id:uzulla:20140131040915p:plain

デバッグしてみる

虫アイコンをクリックするとステップ実行できて、スコープがみれるデバッガが起動する。
デフォルトだとブレークポイントを一個もいれなくても、最初の処理でとまる。

デバッガを起動すると、パースペクティブデバッグモードになる。さきほどのPerl編集用のパースペクティブに戻すには、右上でもう一度Perlをおせばよい。
f:id:uzulla:20140131040727p:plain

ちなみに、Javaパースペクティブが残っていて、いらないなとおもったら右クリックしてCloseをすることで消せる。

補完する

補完したい箇所で、Ctrl+Spaceである(ただし、デフォルトのMacだとSpotlightと衝突するかも(自分は変更している))。なにもでてこなかったら、補完候補がないのだろう。
f:id:uzulla:20140131041015p:plain

use Encode;したら、Encodeモジュールの補完はそれっぽいのがでてきた。しかし適当にsubで関数宣言してもなんか補完できない。しかし後述のコードジャンプはできるので、実装が中途半端感ある。

コードジャンプ

関数などの上でF3すると、その宣言箇所にとべる、便利。私がIDEをつかう4割の理由がここに。

Perldoc

右クリックなどからPerldocが引ける、これはまあ便利っぽい。
しかしどうせならカーソル下のものを引ければいいのに(範囲選択すれば、それで引けるが…)、毎回自分で入力させる謎の設計である。
f:id:uzulla:20140131041105p:plain

Perlcritic

とかもあるらしい、べんりそう。追加設定が必要。

既存のディレクトリを開く方法

新規プロジェクト作成時に、Location(ディレクトリ)を既存フォルダ選択する。
ImportをつかえばGitからもひけるっぽいぞ!(やってみてない)

ちなみに、既存ディレクトリをひらくとアイコンに赤バッテンがついて、エラーをガンガンいわれるが、これはINCPathがとおっていないので、依存が解決できていない。
f:id:uzulla:20140131041143p:plain

Navigatorからライブラリのディレクトリを右クリして、INCを追加したりする。プロジェクトのプロパティから追加もできる。
f:id:uzulla:20140131040642p:plain

感想

さすがにそれっぽくつかえる。
自分が触っていた昔より大分よくなってるっぽい、ちゃんとコードかいてみないと何とも言えないけど。
しかし、相変わらずリファクタについてはほとんどつかいものにならん感じある(関数名前リネームとかできない)


あと、これは俺の設定の問題だとおもうのだけれど、多くのモジュールでCompilation エラーを消す事ができず、非常に気持ちが悪い。
INCをありったけいれているつもりなのだが、どうもどっかたりてないんだな…。XS系のモジュールが失敗しているようにも見えるのだが…。