無償のLL向け汎用IDE
前回はPHP用のEclipseプラグインを紹介したが、今回はさまざまなスクリプト言語(以下、LL)に対応したスタンドアロンの軽量IDEである「KomodoEdit」を取り上げたい。
KomodoEditは、Active PerlやActive PythonなどWindows向けのLLディストリビューションで有名なActiveStateから提供されている商用IDE「KomodoIDE」から一部の機能を取り除き、無償で利用可能としたものだ。有償版のKomodoIDEは無償のKomodoEditの機能に加えて以下のような機能を利用することができる。
- グラフィカルデバッガ
- インタラクティブシェル
- HTTPインスペクタ
- DOMビューア
- 正規表現作成支援
- コードブラウザ
- CVS連携
- ActiveStateのPDK(Perl Dev Kit)の統合
KomodoEditはPerl、PHP、Ruby、Python、Tcl、XML、HTML、CSS、JavaScriptなどさまざまな言語をサポート対応しており、さらにRHTML(Ruby)やTemplate Toolkit(Perl)といった各言語におけるメジャーなテンプレート言語にも対応している。一般的なWeb開発に必要な言語はほぼカバーされていると考えていいだろう。また、KomodoEditはWindows、Linux、 MacOS Xといった主要なプラットフォーム上で動作し、FirefoxやThunderbirdなどと同じくXPIによる拡張が可能となっている。
本稿では執筆時点の最新版である「KomodoEdit 4.1.0」について、その特徴と主要な機能を解説する。
KomodoEditの主な機能
プロジェクト管理機能
KomodoEditは簡単なプロジェクト管理機能を備えている。プロジェクトは「File」メニューから「New」で作成することができる。テンプレートからプロジェクトを作成することもでき、Ruby on Rails用のテンプレートなどが用意されている。
図1 プロジェクトの作成 |
プロジェクトは「Projects」タブに表示される。「Projects」タブは初期状態では表示されていないため、「View」メニューから「Tabs」→「Projects」で表示する。
図2 Projectsタブ(Rails用のテンプレートを使用してプロジェクトを作成したところ) |
なお、KomodoEditはプロジェクトを作成しなくても、単独のファイルをエディタとして編集することが可能だ。その場合でも後述する編集支援機能などを利用することができる。使い捨てのスクリプトを書く場合や既存のスクリプトのちょっとした修正程度であれば、わざわざプロジェクトを作る必要はないだろう。
スクリプトの編集支援機能
エディタではソースコードの強調表示、関数部分などはフォールディング(折りたたみ)などが可能なほか、一般的な統合開発環境と同様入力補完機能が利用可能だ。スクリプトを編集していると、以下のような補完候補ウィンドウがポップアップ表示される。そのまま入力を続けると絞り込み検索が行われ、候補を選択して[ENTER]で確定することができる。
図3 入力補完 |
また、[CTRL]+[SPACE]でファイル内の単語を補完することができる。こちらの場合はポップアップウィンドウは表示されず、[CTRL]+ [SPACE]を押下するたびに候補が次々と表示される。Emacsでいうところの「動的略語展開(dabbrev)」と同様の機能だ。
スクリプトを編集するとリアルタイムで構文のチェックが行われる。エラーはエディタ上で以下のように下線で表示され、マウスカーソルをあわせるとエラー内容がホバー表示される。
図4 構文エラーの表示 |
その他の機能
- Toolbox
「View」メニューから「Tabs」→「Toolbox」でToolboxタブを表示することができる。Toolboxタブにはよく使うコードの断片(スニペット)やコマンド、URLなどを登録しておくことができる。
図5 Toolboxタブ |
- キーボードマクロ
KomodoEditではキーボードマクロも利用可能だ。「Tools」メニューの「Macros」から記録/再生を行うことができる。
図6 キーボードマクロ |
- KomodoEditの設定
「Edit」メニューから「Preferences」でキーバインドやフォント、インタプリタの指定などKomodoEdit全体の設定を行うことができる。キーバインドはEmacsやvi風に変更することも可能だ。
図7 Preferencesダイアログ |
日本語の扱いにやや難あり
本稿で解説したとおり、KomodoEditはデバッガなどの本格的な開発支援機能は利用できないものの、さまざまなLLやプラットフォームに対応しており、「LL向けの機能を備えたテキストエディタ」と割り切って使えば充分に強力な開発環境といえる。EclipseなどのIDEと比べて軽快に動作する点も魅力だ。また、KomodoIDEの導入前にKomodoEditで基本的な機能の使い勝手を試しておくのもいいだろう。
ただし、KomodoEditで日本語を扱う場合、スクリプトのエンコーディングをUTF-8に指定する必要があるという点には注意が必要だ。