機能一覧

RubyMine は、コードの記述とデバッグからテスト、そして完成したアプリケーションのデプロイに至るまで、Ruby/Rails プロジェクト開発のあらゆる側面において、生産性の向上に役立つ統合開発環境です。 このセクションでは、RubyMine の最も基本的な機能の一部を簡単に説明します。

スマートエディタ

エラーのないコードを、スマートで型対応のコード補完機能、インテリジェントなコードインスペクション、ライブ テンプレート、およびインテンションアクションでより素早く記述できます。

コード補完

コード補完

自動補完機能でコーディング作業を高速化。 入力の最中に、一致する変数、メソッド、およびキーワードのリストを提案します。

補完機能は Ruby と Rails、JavaScript と CoffeeScript、ERB、HAML、CSS、および Sass で機能します。

詳細情報

リファクタリング

リファクタリング

素早く安全な名前の変更と削除リファクタリングで、コードをリファクタリングできます。 正確な変数、パラメータ、メソッドまたはスーパークラス、定数の導入など、あらゆるリファクタリングを実行できます。

すべてのリファクタリングは Ruby on Rails 対応であるため、コントローラの名前変更によって、関連するヘルパー、ビュー、およびテストの名前変更も行われます。

詳細情報

コードスタイルとフォーマット機能

コードスタイルとフォーマット機能

あらゆる言語で一貫したコードスタイルを構成し、使用することができます。 インデント、スペース、整列ルールなどの書式設定を設定し、チームメンバーと共有することができます。

RubyMine は、コーディングの最中に構成済みのコードスタイルを自動的に適用します。またはすべてのファイルを一度に再フォーマットすることも可能です。

詳細情報

コードの文書化

コードの文書化

ポップアップでドキュメントを表示し、インテンションアクションを使って欠落している YARD タグを作成し、その有効性を確認できます。

RubyMine はより優れたコードインサイトを得るために YARD 注釈を使用しているため、メソッドのコード補完とパラメーターヒントに関連性の高い結果を提案することができます。

詳細情報

Live templates(ライブテンプレート)

Live templates(ライブテンプレート)

ライブテンプレート(またはコードスニペット)を使用すると、コードに最も一般的なパターン構造を使用している場合の入力作業量を縮減することができます。 既存のテンプレートをカスタマイズし、独自のテンプレートを作成できます。

詳細情報

コードインスペクションとクイックフィックス

コードインスペクションとクイックフィックス

到達不能コード、呼び出し引数の誤った数、未使用の変数など、エラーやコードの臭いがあることを常に確認できます。

IDE が提案するクイックフィクスを適用すれは、こういった問題は自動的に解消されます。

詳細情報

ナビゲーションと検索

強力なナビゲーションと検索機能を使用して、プロジェクト内のあらゆるものがどのように機能しているのかを素早く特定することができます。

Go to declaration(宣言に移動)

Go to declaration(宣言に移動)

クリック 1 回で、宣言、スーパーメソッド、テスト、使用箇所、実装などに移動することができます。 プロジェクトエンティティにジャンプできるだけでなく、外部 gem 内の定義にも移動できます。

詳細情報

使用箇所の検索

使用箇所の検索

クラス、メソッド、変数、またはシンボルを使用するすべての箇所を素早く確認できます。

詳細情報

Search Everywhere(どこでも検索)

Search Everywhere(どこでも検索)

RubyMine は、ソースコード内の項目、ユーザーアクション、または UI 要素など、ユーザーが探しているものを検索するのに役立ちます。 Shift を 2 回押し、検索対象の名前を入力してください。

詳細情報

構造ビュー

構造ビュー

コード構造内を簡単に移動できます。クラスメソッド(継承メソッドを含む)の切り替えや HTML タグ間の移動などが可能です。

詳細情報

Ruby on Rails

RubyMineは主要なウェブ開発手法をすべてネイティブにサポートし、Railsでの生産性を高めます。

Rails 対応のコード保守

Rails 対応のコード保守

RubyMine は Rails の概念を認識し、コードインサイト機能を強化します。 例:

  • 自動補完機能は、DB フィールド、関連付け、および名前付きのリソースルートによって定義されたメソッドで機能します。
  • Rails 対応の名前変更リファクタリングでは、コントローラ、ビュー、テスト、およびヘルパーの名前が考慮されます。
ERB/HAML/Slim/Liquid エディター

ERB/HAML/Slim/Liquid エディター

RubyMine は、波括弧、折りたたみ、シンタックスハイライト、コード補完などにより、ERB ビューの編集サポートを提供しています。 HAML や Slim ビューを使用している場合、HTML コードのコーディング支援と共に、挿入された Ruby コードのシンタックスハイライトが行われていることがわかるでしょう。

MVCベースのナビゲーション

MVCベースのナビゲーション

Navigate | Related Symbol コマンドを使用して、Rails コントローラ、アクション、ビュー、モデル、データベーススキーマ、およびテスト間を素早く移動することができます。

詳細情報

Railsジェネレーター

Railsジェネレーター

Rail ジェネレータに迅速かつコンテキストに応じてアクセスできる UI を使って、モデル、コントローラ、および移行などの新しい Rails エンティティをプロジェクトに追加できます。

  • 補完による Run Anything 機能
  • Rails エンティティを生成するための特殊 UI

詳細情報

Rails の国際化(i18n)サポート

Rails の国際化(i18n)サポート

エディター内でインテンションアクション使ってローカルプロパティを作成または編集したり、インスペクションを実行して欠落しているキーを検索したり、ローカライズされた値をプレビューしたりすることができます。

詳細情報

型依存関係ダイアグラム

型依存関係ダイアグラム

プロジェクトのモデルとその属性を俯瞰して、プロジェクト構造を解析するとともに、必要なコードへナビゲートできます。

詳細情報

Ruby ツール

RubyMine は、Rubocop、Bundler、Rake などの人気の高い Ruby ツールと密に統合する機能が備わっています。

Bundler の統合

Bundler の統合

Bundler 統合を使用して、アプリケーションの gem 依存関係を IDE 内から処理することができます。 Run Anything ポップアップから直接 Bundler コマンドを実行できます。

詳細情報

バージョンマネージャと gemset のサポート

バージョンマネージャと gemset のサポート

RVMrbenvasdf、および chruby など、さまざまな Ruby バージョンをバージョンマネージャを使って素早く切り替えることができます。 または、IDE で RVM および rbenv gemset を使用することができます。

詳細情報

Rake サポート

Rake サポート

Run Anything ポップアップを使用して(Ctrl をダブルクリック)、プロジェクトのあらゆる Rake タスクを実行できます。 また、ガターアイコンを使うと、エディターから直接タスクを実行することもできます。

詳細情報

Rubocop 統合

Rubocop 統合

IDE 内で直接 Rubocop offense(違反)を修正できます。またはプロジェクト全体をチェックし、1 つのレポートにすべての RuboCop 警告を表示することもできます。

詳細情報

IRB および Rails のビルトインコンソール

IRB および Rails のビルトインコンソール

IRB と Rails コンソールを使用して、IDE を閉じずにアプリケーションを操作できます。

詳細情報

Ruby プロファイラーの統合

Ruby プロファイラーの統合

RubyMine の rbspy サンプリングプロファイラーとの統合によって、Ruby と Rails アプリケーションのプロファイルを簡単に行えます。

詳細情報

テスト

テストの生成、実行、および管理を簡単に行えます。 RubyMine は人気の高いすべてのフレームワークをサポートしています。

GUIベースのテストランナー

GUIベースのテストランナー

IDE から直接 RSpecMinitestShoulda、および Cucumber テストを実行し、デバッグすることができます。 ランナーには、特定のテストのステータスや実行時間に関する情報など、実行中のすべてのテストに関する進捗がツリービューで表示されます。

詳細情報

テンプレートからテストを生成

テンプレートからテストを生成

定義済みのカスタマイズ可能なテンプレートからテストを生成できます。 クラスからテストに移動し、テスト対象へのパスに基づくディレクトリ構造を複製する方法でも、テストを作成できます。

詳細情報

テストとテスト対象間のナビゲーション

テストとテスト対象間のナビゲーション

RubyMine では、テストとテスト対象間を素早く移動することができます。 FactoryBot を使用している場合は、モデルからファクトリーまたはその反対にもナビゲートすることができます。

詳細情報

コードカバレッジの表示

コードカバレッジの表示

SimpleCov との統合を使用して、どれくらいのコードがテストでカバーされてるのかを測定することができます。 別のツールウィンドウとエディターでファイルと行のカバー率を分析したり、HTML レポートを生成したりすることができます。

詳細情報

デバッグ

RubyMine には、Ruby、JS、および CoffeeScript 用のグラフィカル UI を備えた高度なデバッガが備わっています。

グラフィカル UI を使ったデバッガ

グラフィカル UI を使ったデバッガ

RubyMine には Ruby 用の視覚的なデバッガが提供されています。 利用できるすべての情報に素早くアクセスでき、ステップごとにコードを実行することができます。

詳細情報

構成可能なブレークポイント

構成可能なブレークポイント

コードの行にブレークポイントをを配置し、ヒット条件を定義します。コードの実行を停止するかどうかを決定するために一連のブール式が評価されます。

詳細情報

スマートステップ実行

スマートステップ実行

任意のメソッド呼び出しまで進むか、現在の行でブロックすることができます。 複数のメソッド呼び出しまたはブロックが存在する場合、希望するターゲットを選択することができます。

詳細情報

対話型デバッグコンソール

対話型デバッグコンソール

対話型の IRB のようなコンソールを使用して、中断されているプログラムの状態を確認できます。 このコンソールでは、変数の値を確認し、複雑なオブジェクトの調査、メソッドの呼び出しなどを行えます。

詳細情報

JavaScriptとNode.jsのデバッグ

JavaScriptとNode.jsのデバッグ

アプリケーションのクライアント側 JavaScript コードをデバッグし、Node.js アプリケーションをデバッグします。

詳細情報

リモートデバッグ

リモートデバッグ

Docker、Vagrant、SSH、または WSL などのリモートインタプリタを使用してプログラムをデバッグできます。 また、リモートプロセスを添付してデバッグすることも可能です。

詳細情報

VCS

IDE を終了せずに、人気の高いバージョン管理システムを使用できます。変更履歴の参照、ブランチの管理、競合のマージなど、さまざまな操作を行えます。 VCS を使用しない場合でも、ローカル履歴を使用して、コミット間で行われた変更を検索して復元することができます。

すべてのメジャーなバージョン管理システムのサポート

すべてのメジャーなバージョン管理システムのサポート

IDE と Git および GitHub、Mercurial、Subversion、Perforce などを連携することができます。

詳細情報

コミット前コードのチェック

コミット前コードのチェック

コミットツールウィンドウでは、コード解析の実行、コードに残されている TODO の確認、およびコードの再フォーマットが可能です。

詳細情報

Diff と Merge のビルトインツール

Diff と Merge のビルトインツール

視覚的なマージツールがビルトインされているため、競合を迅速かつ直感的に解決することができます。

詳細情報

全機能搭載 VCS 履歴サポート

全機能搭載 VCS 履歴サポート

ソースコードへの変更を追跡します。ブランチ間の迅速な切り替え、ユーザー別フィルタ、対象の日付の選択などを行えます。

詳細情報

VCS に依存しないローカル履歴

VCS に依存しないローカル履歴

バージョン管理システムが有効化されていない場合でも、削除したファイルを復元したり、個別の変更内容を呼び戻したり、ファイルの任意の状態にロールバックしたりすることができます。

詳細情報

GitHub プルリクエストのサポート

GitHub プルリクエストのサポート

RubyMine で受信するプルリクエストを管理できます。 プルリクエストの閲覧からコメントの送信と変更の受け入れまで、IDE を終了せずに、プルリクエストのワークフロー全体を完了することができます。

詳細情報

カスタマイズ可能な環境

ショートカット、インターフェースのテーマ、およびプラグインをカスタマイズし、自分好みにセットアップすることができます。 JetBrains Mono は開発者用に作成されたオープンソースの無料書体で、すべての JetBrains IDE のデフォルトフォントです。

テーマ

テーマ

RubyMine には、複数のエディターカラースキームがバンドルされており、独自のカスタムスキームの作成や既存スキームの変更なども行えます。

詳細情報

キーボードレイアウト

キーボードレイアウト

生産性を高めるために、すべてのタスクをキーボードで行うことができます。 定義済みのキーボードレイアウトを選択するか、独自のレイアウトを作成することができます。

詳細情報

ビューモードの切り替え

ビューモードの切り替え

RubyMine には、特定の使用パターンに応じたビューモードがあります。 たとえば、コード以外のすべての UI 要素を非表示にし、作業の障害となるものすべてをオフにすることができます。

詳細情報

プラグインによる IDE の高度な調整

プラグインによる IDE の高度な調整

プラグインを使って RubyMine を拡張することで、VCS の追加サポート、様々なツールとフレームワークとの統合、およびエディターの機能強化を行えます。 Marketplace タブを使って、プラグイン Marketplace のプラグインを参照してインストールできます。

詳細情報

ビルトイン開発者向けツール

データベースプラグイン、ターミナルエミュレーター、Capistrano サポートなどを使って、使い始めからワークフローを合理化できます。

組み込みターミナルエミュレーター

組み込みターミナルエミュレーター

IDE 内でコマンドラインシェルを使って作業するには、組み込みのターミナルエミュレーターを使用してください。 専用のターミナルアプリケーションに切り替えることなく、Ruby 環境と連携し、Git コマンドの実行やほかのコマンドラインタスクの実行を行えます。

詳細情報

IDE 内でのデータベースとの連携

IDE 内でのデータベースとの連携

バンドルされた Database Tools and SQL プラグインを使用して、データベースを確認し、編集することができます。 このプラグインは、MySQL、PostgreSQL、SQLite などのデータベース管理システムをサポートしています。

詳細情報

コードエディターの HTTP クライアント

コードエディターの HTTP クライアント

HTTP クライアントが統合されているため、IDE 内で API をテストできます。 エディター内で直接 HTTP リクエストを作成して実行することが可能です。

詳細情報

リモート開発

リモート開発

Docker、WSL、Vagrant、または SSH を使ったリモート環境で、コードの実行、デバッグ、およびテストを行えます。 リモートインタプリタを構成するだけで、利用可能です。

詳細情報

デプロイツール

デプロイツール

RubyMine では、デプロイメントツールとの連携も可能です。 IDE から Capistrano タスクを実行したり、YAML 形式の Kubernetes 構成ファイルと連携したりなどを行えます。

構成管理

構成管理

RubyMine では、ChefPuppet とインフラストラクチャ自動化ツールや構成管理ツールを使用できます。