WebStorm 2024.3 の新機能

このリリースでは進行中のいくつかの課題が解決され、過去に導入された機能が改良されています。 主な改善には、フレームワークコンポーネントの移動操作と名前変更の改善、データベースツールと SQL の組み込みサポート、および AI によるコード補完の改善が含まれます。

主なハイライト

フレームワークコンポーネントの移動操作と名前変更の改善

Vue、Svelte、および Astro コンポーネントのエディター内ヒントを強化しました。 Show component usages(コンポーネントの使用箇所を表示)アクションがインポートとマークアップテンプレートの両方で使用箇所を検索するようになりました。 また、通常のファイル参照を検索する際にコンポーネントの使用箇所を除外するための Show Component Usages(コンポーネントの使用箇所を表示)フィルターを追加しました。 Rename(名前の変更)リファクタリングも更新され、コンポーネントファイルの名前を変更する際に使用箇所を含めるオプションが追加されました。

データベースツールと SQL の組み込みサポート

以前は有料プラグインで提供されていたデータベースツールと SQL のフルサポートが無料で WebStorm にバンドルされるようになりました。 IDE でデータベースを直接クエリ、作成、および管理できます。 これにより、バックエンド開発とフルスタック開発向けの WebStorm の機能が拡張されています。 また、ほとんどの JetBrains IDE にこの機能が含まれているため、JetBrains IDE 間での切り替えも行いやすくなっています。

AI Assistant によるコード補完の改善 有料

AI Assistant の品質に関する主な問題の解決に取り組みました。 このリリースでは JavaScript と TypeScript のコード補完が改善され、HTML と CSS のサポートが追加されています。 ローカルで動作する行全体補完候補と JetBrains の社内 LLM から提供されるクラウドベースの補完候補を組み合わせることで、関連性のない候補を減らすと同時に速度と精度を向上させました。

詳しくは、こちらのブログ記事をご覧ください。

フレームワークとテクノロジー

Tailwind CSS クラスの色のプレビュー

Tailwind CSS クラスの色のプレビューがエディターでインライン表示されるようになったため、色を区別しやすくなりました。 言語サーバープロトコル(LSP)の textDocument/documentColor メソッドのサポートを追加したことで、すべての LSP ベースのプラグインでこの機能が初期状態で提供されるようになりました。

Angular 関連の改善

Angular 19 を使用するプロジェクトにおいて、WebStorm がコンポーネント、ディレクティブ、およびパイプに対してスタンドアロンモードをデフォルトで使用するようになりました。 スタンドアロンコンポーネントと非スタンドアロンコンポーネントを相互に変換できるクイックフィックスが追加されました。 コードを整形する際や新しいインスペクションを使用する際に、未使用のスタンドアロンインポートを自動的に削除できます@let 構文のサポートも改善されました。

サブフォルダーにある .prettierignore の適切な処理

WebStorm が package.json を含むサブフォルダー内の .prettierignore ファイルを適切に処理することで、無視対象のファイルが整形されなくなりましたSettings(設定)| Languages & Frameworks(言語とフレームワーク)| JavaScript | Prettier の新しいオプションでもカスタムの無視ファイルを指定できます。

Vue 言語サーバーのバンドル化

信頼性の向上WSL での読み込みに関する問題を防ぐため、WebStorm に Vue 言語サーバーがバンドルされるようになりました。 今後、Svelte、Astro、およびその他のテクノロジーにおいても同様の更新を行う予定です。

Svelte 関連の改善

<script module> 属性のサポートを追加することで、これらのブロックのシンボルが正しく解決されるようにしました。 また、SvelteKit a11y 警告を無効化する新しいチェックボックスを追加することで、アクセシビリティに関する警告をより細かく制御できるようにしました。

package.json でエクスポートされる CSS のサポート

CSS、Sass、SCSS、および Less の package.jsonexports フィールドのサポートを追加しました。 スタイルが package.json でエクスポートされている場合、WebStorm が未解決の変数に関する警告を表示しないようになりました。

Windows での Bun のデバッグのサポート

従来は macOS と Linux のみで提供されていた基本的な Bun のデバッグが Windows でサポートされるようになりました。 WebStorm 内で ブレークポイントの設定、コードのステップ実行、変数の検査、および式の評価を行えます。

ユーザーエクスペリエンス

Rename(名前の変更)アクションの場所の最適化

エディター内と Project(プロジェクト)ツールウィンドウで要素に対して Rename(名前の変更)アクションを呼び出した際のコンテキストメニューで、アクションを表示する場所を最適化しました。 アクションが最上位階層に表示されるようになり、ファイル、変数、およびその他の要素の名前を素早く変更しやすくなりました。

ディレクトリの検索結果を明確化

プロジェクトディレクトリで Find in Files(ファイル内検索)を使用する際、WebStorm がデフォルトで node_modules の結果を除外するようになりました。 Settings(設定)| Advanced Settings(高度な設定)Search in library files when “Directory” is selected in Find in Files(ファイル内検索で "ディレクトリ" が選択されている場合はライブラリファイル内を検索する)オプションを有効にすると、以前の動作に戻ります。

選択したテキストの出現箇所をハイライト

WebStorm がデフォルトでファイル内に選択したテキストのすべての出現箇所を自動的にハイライトするようになりました。 これにより、コード全体で選択したテキストの出現箇所を追跡しやすくなります。 この機能は、Settings(設定)| Editor(エディター)| General(一般)| Appearance(外観)でカスタマイズできます。

.idea ディレクトリをデフォルトで表示

従来、WebStorm が内部構成の設定を格納している .idea フォルダーはデフォルトで非表示になっていました。 これは、一部のユーザーがプロジェクト全体の構成をコミットするのに苦労する原因となっていました。 この問題を解消するため、Project(プロジェクト)ツールウィンドウにフォルダーを表示するようにしました。

生成ファイルの認識の改善

CPU 使用率を最適化し、インデックス作成の時間を短縮するため、WebStorm が dist フォルダー内の不要なファイルをインデックス作成の対象から自動的に除外するようにしました。

WSL 内プロジェクトのサポートの改善

WSL 上でホストされ、Windows の IDE から開かれるプロジェクトの信頼性を継続的に改善しています。 具体的にはシンボリックリンクのサポートが追加され、WSL との対話が Hyper-V ソケットに切り替えられたことで、IDE と WSL の対話のパフォーマンスが改善されました。

インデックス作成中に使用できる新機能

プロジェクトを開いたり更新したりすると、WebStorm がそのプロジェクトのインデックスを作成するため、一部の機能が一時的に使用できなくなります。 この動作を改善するため、インデックス作成中により多くの機能を使用できるようにしています。 このアップデートでは Search Everywhere(どこでも検索)(Shift+Shift)に加えて、スペルおよび文法のチェックもプロジェクトのインデックス作成済みの部分に対して機能するようになりました。

統合開発者ツール

バックグラウンドのコミット前チェックを無効化するオプション

Settings(設定)| Version Control(バージョン管理)| Commit(コミット)| Advanced Commit Checks(高度なコミットチェック)| Run advanced checks after a commit is done(コミット完了後に高度なチェックを実行する)の新しいオプションを使用することで、コミット処理中のバックグランドチェックを管理できるようになりました。 この設定により、コミット後にテストとインスペクションを実行するかどうかを決定できます。 このチェックが完了するのを待つ場合は、このオプションを無効化してください。

新しい Docker Compose の build 属性

Docker Compose 内でのビルド、リソース管理、サービスオーケストレーション、およびネットワーキングに対する制御を改善し、開発の効率と柔軟性を高める新しい Docker Compose 属性のサポートを追加しました。

Dev Container テンプレートの互換性改善

当初はリモート環境での動作が想定されていなかった Dev Container テンプレートの互換性を改善しました。 従来の Dev Container テンプレートはローカルでの実行を前提とした構成が含まれていることが多く、リモート Docker インスタンスでコンテナーを実行する際に問題が発生していました。 今回の WebStorm では、リモート使用向けに最適化されていないテンプレートでも正しく機能するようにしています。