クラウドベースのコード補完の強化、AI プロンプトのインライン入力、Kamal 2 のサポート、RBS Collection との組み込み統合、Ruby 3.4 に関する更新、Grazie によるスペルおよび文法チェック
RubyMine 2024.3 では、JetBrains AI Assistant プラグインを通じて速度とコンテキストの認識精度が向上したクラウドベースのコード補完が導入されています。品質と速度が改善され、複数行の補完のサポートが追加されています。
Mellum 大規模言語モデル(LLM)の採用によって補完の遅延が従来バージョンの約 10 分の 1 に減少したため、ほぼ瞬時に候補が提示されます。 補完候補の採用率は従来バージョンの約 2 倍になり、キャンセル率は半分から 3 分の 1 程度まで低下しました。
AI Assistant でのクラウドベースのコード補完は、AI Pro サブスクリプションまたは有効な無料体験版でのみの提供となりますのでご注意ください。
RubyMine が AI Assistant によるユニットテストの生成を改善するため、Rails アプリケーションに関するより多くのコンテキストを提供するようになりました。
RubyMine 2024.3 では AI プロンプトのインライン入力が導入され、エディター内で直接シームレスに AI Assistant と対話できるようになりました。 自然言語でリクエストを入力すると、AI Assistant がそれを即座に解釈し、コードの変更に変換します。この変更はガター内で紫色で示されるため、簡単に追跡できます。 AI プロンプトのインライン入力はコンテキストを認識し、関連するファイルやシンボルを自動的に含めるため、より正確なコード生成が可能です。
この機能は現在、*.rb
ファイルで使用可能です。
Rails 8 では Kamal 2 でのアプリケーションのデプロイがサポートされているため、RubyMine 2024.3 では Kamal 2 の構成に対応したコード補完を実装しました。
schema.rb
の nil 許容アノテーション RubyMine がマイグレーション属性の not-null
型修飾子を認識し、誤った nil
の割り当てをハイライトして警告するようになりました。
RubyMine 2024.3 では、queue_schema.rb
と cache_schema.rb
ファイルに特定のアイコンと構文ハイライトが使用されるようになりました。
RubyMine に RBS Collection(コミュニティが管理するシグネチャーのない gem の RBS ファイルコレクション)との統合が組み込まれました。
プロジェクトで RBS を使用していない場合でも、余計な手間をかけることなく RBS Collection に含まれる型シグネチャーを活用できます。 RubyMine はプロジェクト依存関係の型シグネチャーを自動的にダウンロードして管理します。
it
をブロック内の番号指定パラメーターのエイリアスとして使用できる機能 RubyMine がパラメーターのないブロック内で it
を _1
のエイリアスとして認識し、そのように使用されている箇所で型サポートと変換インテンションを提供するようになりました。
通常の番号指定パラメーターのあるブロック内での it
の使用を防ぐ新しいエラーアノテーションも追加されています。
RubyMine が文字列リテラルに関する Ruby 3.4 の新しい過渡的な状態である「チルド」文字列を認識するようになりました。 frozen_string_literal
pragma のないプロジェクトでは、文字列は「チルド」状態となり、エラーになることなく警告付きで変更を行えます。
RubyMine がネストしたあいまいなコンテキストで匿名ブロック、rest、およびキーワード rest 引数を使用しようとした際にエラーを表示するようになりました。
Find in Files(ファイル内検索)機能が強化され、Project Files Excluding Git-Ignored(gitignore ファイルを除くプロジェクトファイル)という新しい検索範囲が追加されました。 このオプションを使用すると .gitignore
ファイルで無視対象に指定されているすべてのファイルが検索結果から除外され、プロジェクト全体を検索する際に関連性のあるコードに専念しやすくなります。
Settings(設定)| Version Control(バージョン管理)| Commit(コミット)にある新しい Run advanced checks after a commit is done(コミット完了後に高度なチェックを実行する)オプションを使用することで、コミット処理中のバックグラウンドチェックを管理できるようになりました。 この設定により、コミット後にテストとインスペクションを実行するかどうかを決定できます。 コミットが行われる前にこれらのチェックを完了する場合は、このオプションを無効にしてください。
Grazie プラグインが、RubyMine で標準搭載されるようになりました。 単純なスペル間違いや入力ミスのチェック以上の高度なチェックを提供します。 文法ルールを認識し、不適切なスタイルについて警告することができます。
Grazie チェックは、文字列、heredoc、コメント、ブロックコメント、および RDoc ファイルで使用できます。
Grazie チェックは、Settings(設定)| Editor(エディター)| Natural Languages(自然言語)| Grammar and Style(文法とスタイル)| Scope(スコープ)で管理できます。
デバッグ中にコンソールまたは Evaluate Expression(式の評価)フィールドを使用する際に最初の補完候補をあらかじめ選択状態にするかどうかを制御できる新しいオプションを追加しました。
デバッグ中に Evaluate Expression(式の評価)フィールドが self
型を正確に反映し、ローカル変数と推論された型を持つパラメーターを認識し、現在のスタックフレームセッション内に導入された新しい変数の補完をサポートするようになりました。
コンソールセッションでは以前に実行されたコマンドが記憶され、ローカル変数の型推論と補完が提供されます。
エディター内におけるデフォルトのタブの上限数を 30 に引き上げました。 これにより、開いたままにできるタブの数を増やせるようになりました(ただし、最終使用時間が最も古いタブは IDE によって閉じられます)。 この設定は、Settings(設定)| Editor(エディター)| General(一般)| Editor Tabs(エディタータブ)で制御できます。
エディター内と Project(プロジェクト)ツールウィンドウで要素に対して Rename(名前の変更)アクションを呼び出した際のコンテキストメニューで、アクションを表示する場所を最適化しました。 アクションが最上位階層に表示されるようになったため、マウス操作をよく使用するユーザーがファイル、変数、およびその他の要素の名前を素早く変更しやすくなりました。
新しいターミナルの UI をパディングを減らした比較的コンパクトなデザインに更新することで、画面領域を最大限に活用できるようにしました。 パディングを減らしてスペースを節約することで、可読性を犠牲にすることなくコマンド操作時の視認性を向上させています。
RubyMine がデフォルトでファイル内で選択したテキストのすべての出現箇所を自動的にハイライトするようになりました。 これにより、コード全体で選択したテキストの出現箇所を追跡しやすくなります。