RubyMine 2022.3 の新機能

新しい UI、RBS サポートの強化、RSpec での共有コンテキストとサンプルの操作に関する改善、NavigationStructure ビュー機能の更新、リモート開発の改善。

Rails

ERB 構造ビューの改善

ERB 構造ビューの改善

Structure(構造)ツールウィンドウでのタグの表示方法がより分かりやすくなりました。 可読性を改善し、余計なエントリを消しました。

ActiveRecord Structure(構造)ビュー

ActiveRecord Structure(構造)ビュー

RubyMine が Structure(構造)ビューツリーの最上部にデータベースの属性を表示するようになりました。また、これらの属性はデフォルトで有効になっています。 この機能は、Structure(構造)ツールウィンドウ(Alt+7)と Structure(構造)ポップアップ(Ctrl+F12)の両方で使用できます。

schema.rb 構造ビュー内のテーブルへの迅速な移動

RubyMine 2022.3 では、schema.rb ファイルを参照中に特定のデータベーステーブルを表示し、そこへ移動できる機能が導入されています。 Structure(構造)ツールウィンドウAlt+7)を使って、データベーステーブルまたはテーブルの列を調べたり、素早く検索したりできます。

New Rails Project(新規 Rails プロジェクト)ウィザードの改善

New Rails Project(新規 Rails プロジェクト)ウィザードの改善

新しい Rails プロジェクトを作成する際に、Location(場所)フィールドの真下にプロジェクトのパスが表示されます。 Rails バージョンフィールドを更新することで、プラスアイコンを使って Rails gem の必要なバージョンをインストールしやすくしました。 JavaScript framework(JavaScript フレームワーク)フィールドでは、「デフォルト」値をデフォルトで使用されるフレームワークの明示的な名前に置き換えました。

コントローラーアクションの新しいインレイヒント

各コントローラーアクションの上に、そのアクションにリンクする URL を含むインレイヒントを追加しました。 URL パスのインレイヒントを有効または無効にするには、Settings(設定)/Preferences(環境設定)| Editor(エディター)| Inlay hints(インレイヒント)をクリックし、URL path(URL パス)チェックボックスを切り替えます。

新しい UI

新しい UI を設定で利用可能

設定画面から新しい UI が利用可能に

新しい RubyMine UI をお試しください。 基本機能にはすぐにアクセスでき、複雑な機能は必要に応じて徐々に表示されるようになっているため、すっきりとしたモダンなスタイルの外観と強力な機能性を備えた UI となっています。 新しい UI には、Settings(設定)| Appearance & Behavior(外観と動作)| New UI (Beta)(新しい UI - ベータ)で切り替え可能です。

RBS

メソッド参照の RBS 型情報のサポート

メソッド参照の RBS 型情報のサポート

メソッド参照を呼び出す際に RBS の型情報がサポートされるようになりました。 メソッドのパラメーター名を表示するポップアップを呼び出すには(ポップアップが閉じているか、自動表示が IDE で設定されていない場合)、メソッドを選択して Ctrl+Shift+P を押します(または View | Type Info(型情報)をクリックします)。

メソッドシグネチャーを編集して Ruby メソッド定義に追加する方法を改善

型シグネチャーを使ってメソッドを書くプロセスを単純化しました。 複数の Ruby と RBS ファイルをユーザー自身が管理する必要がなくなり、 アクション 1 つでメソッド定義を書き込めるようになっています。 この新しい型シグネチャーを簡単に編集して追加する方法を詳しくご覧ください。

Documentation(ドキュメント)ツールウィンドウに RBS の情報を表示

Quick Documentation(クイックドキュメント)ポップアップ(Ctrl+Q)を使って、RBS の型情報を表示できるようになりました。 メソッドに RBS シグネチャーがある場合、RubyMine がパラメーターに関する情報を表示し、ドキュメント内に値を返します。

RBS の self 型バインディングに対応した新しいインレイヒント

RBS の self 型バインディングに対応した新しいインレイヒント

RBS の self 型バインディングを使ったブロックに対応した新しいインレイヒントが導入されました。 また、RubyMine が表示するインレイヒントの数が過剰にならないよう、ブロック内で番号付きパラメーターを使用する際にのみ番号付きパラメーターの型ヒントも表示するようにしました。

RSpec

共有コンテキスト名の補完

共有コンテキスト名の補完

任意の定義済み共有コンテキストとサンプルからの補完候補をサポートするようにしました。

サンプルグループのエイリアス(xdescribexcontextfdescribefcontext)のサポート

RubyMine は xdescribexcontextfdescribe、および fcontext サンプルグループのエイリアスを認識し、これらのブロックを Structure(構造)ツールウィンドウに表示します。 エディターのガターアイコンを使ってこれらのテストを実行することも可能です。

コントローラーとリクエスト/ルーティングスペック間の移動操作

RubyMine がリクエストとルーティングのスペックをそれぞれのコントローラーにリンクするようになりました。 必要なリクエストかルーティングのスペックを開いて Ctrl+Shift+T を押すと、テスト対象として使用されるコントローラーに移動できます。 同じショートカットで移動元に戻ることも可能です。

RSpec の共有コンテキストとサンプルの使用箇所に対応した検索と名前の変更

RSpec 共有コンテキストとサンプルの Find UsagesRename

RubyMine で共有コンテキストの使用箇所を検索し、Rename(名前の変更)リファクタリングを使用して、共有コンテキストとサンプルの名前を参照とともに変更できるようになりました。

RSpec の参照元グループのコンテキストでの共有サンプルの実行

RSpec の参照元グループのコンテキストでの共有サンプルの実行

このリリースでは、共有サンプルを実行するためのコンテキストを指定するオプションが追加されました。 共有サンプルを含むスペックを実行する際、RubyMine にスペックを実行するコンテキストを指定するダイアログが表示されるようになりました。

リモート開発

WSL2 での新しいプロジェクトの作業方法

WSL2 での新しいプロジェクトの作業方法

RubyMine 2022.3 では、WSL2 でプロジェクトに取り組む際の IDE パフォーマンスが改善されています。 これは、WSL2 ファイルシステムで実行中のプロジェクトを操作する場合に別の方法でリモート開発機能を使用できるようにすることで実現しています。 Windows で完全な IDE を実行する代わりに、IDE バックエンドを WSL2 内で直接起動できます。 あとは他のリモートマシンを接続するのと同じ方法で接続すれば完了です。

その他の改善

Next.js と Vite 用の新規プロジェクトテンプレート

Next.js と Vite 用の新規プロジェクトテンプレート

RubyMine の ウェルカム画面で使用できる New Project(新規プロジェクト)ウィザードに、Vite と Next.js 用のプロジェクトテンプレートが追加されました。 また、Vue 用のプロジェクトテンプレートも最新の標準に従って更新されました。

Vue  関連の更新

Vue 関連の更新

RubyMine が未解決のインポートを処理し、Vue コンポーネントのインポートに関する提案を示すようになりました。 また、props 分割代入構文を新たにサポートし、Vue ライブラリコンポーネントの props に対応したコード補完と型チェックの動作改善、および Nuxt 3 に関する複数の問題の修正も行われています。

.dockerignore ファイル形式のサポート

.dockerignore ファイル形式のサポート

コードハイライトやコード補完を含め、.dockerignore ファイルを完全にサポートするようになりました。 IDE からイメージをビルドする際に、これらのファイルが考慮されるようになっています。

新しい Settings Sync(設定の同期)ソリューション

新しい Settings Sync(設定の同期)ソリューション

カスタム IDE 設定を同期するためのソリューションを完全に作り直しました。 新しい Settings Sync(設定の同期)プラグインでは、共有可能なすべての IDE 設定、バンドルプラグイン、およびサードパーティプラグインを同期できます。 現時点で採用している同期方法によっては、新しいプラグインを手動で有効にする必要があります。 詳細については、こちらの記事をご覧ください。

Vitest のサポート

Vitest のサポート

RubyMine で、Vite ネイティブのユニットテストフレームワークである Vitest がサポートされました! テストの実行、再実行、およびデバッグを行い、すべてのテストシナリオでウォッチモードをデフォルトで使用できるようになっています。 ウォッチモードではスナップショットテストとカバレッジもサポートされているため、コーディング中にカバレッジに関するフィードバックをほぼ瞬時に受けることができます。