数あるなかでJetBrains、IntelliJ IDEAおよびReSharperのデベロッパは、RubyMine 1.0(リンク)で、初めてのRuby空間への進出を発表した-RubyおよびRuby on Rails開発向けのIDEである。
RubyMineは、11月にPublic Previewとしてリリースされ、Rubyコミュニティからすばらしいフィードバックを受けた。コミュニティの支援について、RubyMineのリードデベロッパであるDmitry Jemerov氏は、以下のように述べた。
たいていのRuby/Railsデベロッパは、単純なテキストエディタにコードを記述することに満足しているという信念にも関わらず、Public Previewの発表以来約25,000回RubyMineがダウンロードされてきた。早い段階でRubyMineを導入した人は、大量のフィードバックや貴重な改善の提案を提供した。非常にインテリジェントな開発ツールと同様に、RubyデベロッパはRubyMineを使用することで極めて生産的になり得るということを確信している。事実、バージョン1.0は単に始まりに過ぎない。新たなリリースに向けたさまざまな考えや計画がある。
RubyMine 1.0は、このIDEがデベロッパのために出来ることを理解するために、デベロッパが検討すべき機能性の主なグループ化がある。
Ruby IDE
Rubyエディタ
Rubyコードエディタは、自動構文およびタイプする際にRubyコードのエラーのハイライトを提供する。Rubyステートメント、キーワード、コメントのために注意深く選択された色および他の言語要素の他に、いくつかのカラースキームがRubyMineにバンドルされている。RubyMineは、自動のRubyコードスタイリングを実行する。ブレースマッチやフォールド、カスタムフォーマット、インデントおよびTODOマークがある。
コードコンプリート
- スマートなRubyステートメントおよびキーワードコンプリート
- ビルトインメソッドの自動コンプリート
- 必須およびロードコールでのコンプリートおよびロードコール
- 自動コンプリートでの静的およびインスタンスメンバーの正しいフィルタリング
- ローカル変数タイプの推測
- Method戻り値のタイプの推測
- ブロックコールでのブロック変数のタイプの推測
リファクタリング
- 名前変更のリファクタリング
- メソッドの抽出
- 変数の導入
- メソッドのオーバーライド
コード分析
コードがタイプされたときに、RubyMineはコード分析を実行し、エラーをハイライトする。
Ruby on Rails開発
RubyMineはRuby on Railsの開発を、既存のエディタへのアドオンとしてではなく、first-class citizenにする。これは、IDEのRails固有の機能に対する始まりである。
- Ruby on Railsプロジェクト
- 拡張Railsプロジェクトのナビゲーション
- モデルの依存性のダイアグラム
- Railsコントローラ、ヘルパーおよびビュー向けのオートコンプリート
- Railsを意識したリファクタリング
- Railsコードコンプリート
- RHTML編集
- YAMLサポート
インテリジェントコードアシスタント
デベロッパのライフを非常に、容易にするちょっとしたことを追加するIDEの機能は、Intelligent Coding Assistanceで追加されている。JetBrainsの他製品に精通しているデベロッパは、この種のアシスタントに精通している。
- 中括弧、角括弧および引用符の自動挿入および囲み
- 合致した中括弧/角括弧のハイライト
- コードのコメントの表示
- 拡張/縮小の選択
- ライブテンプレート
- パラメータ情報ポップアップ
- 文書の迅速な検索
ユニットテストのサポート
RubyMineは、RubyおよびRailsコード向けのユニットおよび振る舞い主導のテストをサポートする。これには、RSpec、Test::Unit、Test/Specフレームワーク、ライブテンプレートおよびRSpec向けのスマートコードコンプリートが含まれる。
また、以下の機能もある。
- IDEと完全に統合され、Rakeタスクを通じてテストを実行することができる内蔵型テスト実行機
- 特定のメソッド、クラス、BDD例向けのテストを迅速に起動するアクション
- Railsアプリケーションでのコードとテストのナビゲーション
- 現在実行中テストのオンザフライの統計
- 選択されたテスト出力を表示するための詳細パネル付きテスト用の専用ビュー
- テストが失敗したコード行への迅速なナビゲーション
- Test::UnitおよびTest/Specテストを作成するためのファイルテンプレート
- コンソールまたはエディタからテストを迅速に作成するためのアクション
Ruby on Railsコード向けグラフィカルデバッガ
グラフィカルデバッガは、新たなIDEの統合された一部分であり、 スモールブレークポイント、ウォッチ向けの専用ビュー、スタックおよび公式の評価が含まれる。
バージョン管理システムの統合
サポートされる機能には、同期、チェックアウト、マージやアップデートがある。
- Subversion
- Git
- CVS
- Perforce
Supported features include synchronization, checkout, merging and updates as well as:
- すべての統合済みバージョン管理向けのChangelistsサポート
- ガターバーでのNext、Previous、Rollback、Show Differenceアクション
- プロジェクト/フォルダ/ファイルの変更履歴の表示
- ファイルをレビューするために、コマンドに注釈を付ける
- 一度のショートカットで、最新の変更を表示する
- リファクタリングの際、影響を受けたすべてのファイルを自動で点検する
- History、Status、Update Infoの専用ツールウィンドウ
- 競合通知付きの、プロジェクト全体をコミットする機能
- チームメートによって変更されたファイルについての通知
また、RubyMineは、変更、削除されたが、それでもバージョン管理下にあるすべてのファイルをリストする詳細なChangelist管理を特色としている。その結果、ユーザは以下のことができる。
- Changelistの作成、除去またはコミット
- 修正のロールバック
- ファイルおよびフォルダをバージョン管理に追加
- Changelist間で選択されたファイルを移動
- 選択されたファイル間で違いを確認
- 基礎となるソースコードへのジャンプ
今後のリリースの予定は、5月にRails 2.3サポートでRubyMine 1.1を実現し、 Ruby 1.9、HAML構文解析、Cucumberサポートと同様にRailsプラグインをインストールするためのUIに対するサポートを装備したv1.5を秋にリリースする計画である。詳細情報に関しては、JetBrainsのWebサイト(リンク)またはdownload RubyMine(リンク)で参照できる。