RubyMine 2024.2 の新機能

ダウンロード

無料 30 日間体験版をご利用可能です

Rails

Kamal 構成ファイルの補完

RubyMine が Kamal 構成ファイルに対応したコード補完を提供するようになりました。deploy.yaml および .env ファイルを編集する際、Kamal 固有のプロパティの補完候補が表示されます。

レート制限のコードインサイト

Rails 8 では rate_limit 関数が導入され、コントローラーで使用できるようになっています。この新機能を活用できるようにするため、この関数に対応したコードインサイトをコードハイライトと補完と共に実装しました。

ブラウザーガードのコードインサイト

RubyMine 2024.2 では、ブラウザーガードメソッドに対応したコードインサイトも追加しました。これには、allow_browser 関数のハイライト、ブラウザー名および only 引数の補完が含まれます。

Rails の Structure(構造)ビューでのモデルの検証とコールバック

Structure(構造)ビューではモデルの検証とコールバックを表示し、必要に応じて非表示にできます。また、コールバックは after_create キーワードやメソッドの使用などの特定の構文に対して表示されます。

Stimulus

RubyMine 2024.2 では、静的 HTML および DOM 要素と連携する JavaScript フレームワークの Stimulus が組み込みでサポートされています。このサポートの内容には、コード補完、移動操作、および Rename(名前の変更)リファクタリングなどがあります。Stimulus プラグインは RubyMine にバンドルされており、.erb ファイルで機能します。stimulus-rails gem はバージョン 7 以降の Rails ではデフォルトで同梱されています。

Ruby

プロジェクトを開く際の Ruby SDK の切り替えの提案

プロジェクトを開く際、RubyMine は構成済みの Ruby SDK が構成ファイルに一致しているかどうかをチェックします(RVM SDK の場合は .rvmrc、rbenv SDK の場合は .ruby-version.ruby-gemset、または .rbenv-version、asdf SDK の場合は .tool-versions、RVM SDK の場合は .versions.conf がチェック対象の構成ファイルです)。

モジュール構成ファイルに一致する SDK がすでにインストールされている場合、RubyMine は関連性のある SDK を選択するように提案します。

SDK の Ruby インストール環境が見つからない場合の通知

rbenv、rvm、または asdf を使用して Ruby のバージョンを管理している場合、RubyMine はプロジェクトの構成ファイル(.rvmrc.ruby-version.rbenv-version など)に基づいて Ruby SDK の適切なバージョンをインストールするように提案します。RubyMine はプロジェクトを開く際に選択されている Ruby SDK と構成ファイルをチェックします。

AI Assistant

AI による行末でのインライン補完

AI Assistant の補完機能がコンテンツのある行の末尾で有効化され、.::、および二項式の後に動作するようになりました。

複数行コード補完の改善

複数行コード補完のプロンプトがより関連性の高い候補を提供できるようにするため、具体的な技術情報をリクエストするようになりました。これらの情報には、使用中の Ruby バージョン、作業対象が Rails プロジェクトと Gem プロジェクトのどちらであるか、使用中のテストフレームワーク、現在のファイルの名前、プロジェクト内の最もよく使用されている 5 つの gem などがあります。

Rails コンテキストの改善

AI Assistant が Rails アプリケーションのコンテキストでより効果的に機能するようになりました。たとえば、コントローラーのコードの説明をリクエストする際には AI Assistant が対応するモデルとルートを考慮するようになっています。

機能と改善点

新しいターミナルでの Ruby 関連コマンドの補完

新しいターミナルには、コマンド、オプション、サブコマンド、引数などの自動補完が備わっています。RubyMine 2024.2 では、rubyrailsrakebundlerbenvirbpryrbs、および rspec のコマンドの補完を追加しました。

リーダーモードとクイックドキュメントにおける Markdown のレンダリング

Rails 8 は RDoc ではなく Markdown ドキュメントを使用するため、リーダーモードとクイックドキュメントポップアップで Markdown のレンダリングを可能にしました。この機能はファイルの冒頭に # :markup: markdown ディレクティブがある場合、またはプロジェクトのルートに markup: markdown の行を含む .rdoc_options ファイルがある場合に動作します。

RuboCop のカスタム構成

Settings(設定)| Tools(ツール)| RuboCop で RuboCop のカスタム構成ファイルを選択できるようになりました。RubyMine は --config オプションを使って構成ファイルのパスを RuboCop コマンド引数として渡すことにより、リモート SDK でも動作するようにしています。

ファイルを指定しない場合、RubyMine は .rubocop.yaml を使用しますが、.rubocop.yaml がプロジェクトに見つからない場合はデフォルトの設定を使用します。

配列リテラル内のスペースを調整するオプション

RubyMine の新しいフォーマッター設定により、配列リテラル内のスペースを制御できるようになりました。この新しい設定は RubyMine と RuboCop の動作を一致させるためのものであり、Settings(設定)| Editor(エディター)| Code Style(コードスタイル)| Ruby | Spaces(スペース)| Within array literals(配列リテラル内) でアクセスできます。

Bun を Rails プロジェクト用 JavaScript フレームワークに指定可能

新しい Rails アプリケーションを作成する際、Bun を JavaScript フレームワークに指定できるようになりました。この機能は Rails のバージョンが 7.1.0.beta1 以降の場合にのみ使用できます。

untyped パラメーターを使用する RBS 関数型のサポート

RBS 3.5 の導入に伴い、RubyMine が型なしのパラメーターによるメソッドの宣言をサポートするようになりました。そのようなメソッドに対して冗長な構文エラーを返さず、対応するインレイヒントを正しく提供します。

RBS の省略可能なレコードキー

RubyMine が各種のキーを含む省略可能なフィールドを解析して認識するようになりました。また、サブタイプのチェックも改善しました。

新しい UI のデフォルト化

バージョン 2024.2 では、すべての RubyMine ユーザーを対象に新しい UI を有効化しました。新しい UI は視認性が向上して基本機能にアクセスしやすくなっていますが、必要に応じてより高度な機能を段階的に表示する仕様になっています。この UI はクリーンかつモダンで、より大きく使いやすくなったコントロール、整合性のあるカラーパレット、明るく視認性の高いアイコン、向上したコントラスト、および改良されたアクセントが特徴です。

ローカライゼーション

中国語、韓国語、日本語に初期状態で対応

中国語、韓国語、および日本語の言語パッケージが RubyMine 2024.2 にバンドルされ、これらの言語で IDE を使用する場合に言語サポートプラグインをインストールする必要がなくなりました。

IDE の言語を更新するには、Settings(設定)| Appearance & Behavior(外観 & 振る舞い)| System Settings(システム設定)| Language and Region(言語と地域) に移動して Language(言語)リストから希望する言語を選択します。

ダウンロード

無料 30 日間体験版をご利用可能です