PhpStorm 2022.2 の新機能

PhpStorm 2022.2 は、Mockery と Rector のサポート、ジェネリクスと列挙型のサポート強化、デバッガーと HTTP クライアントの改善などを導入するメジャーアップデートです。

Mockery のサポート

PhpStorm 2022.2 introduces support for Mockery, the popular mock object framework. ほとんどの Mockery の機能に対応した自動補完、ワークフローの改善に役立つインスペクション、インターフェースのモック作成などを使用できます。

Rector のサポート

A second major addition in this release is support for Rector, the automation tool for managing PHP upgrades and bulk refactorings.

PhpStorm からの Rector の実行、便利な Diffペインでのファイル変更のレビュー、構成の詳細な管理を行えるようになっています。

PHP のジェネリクス

JetBrains はジェネリクスのサポートを改善し続けています。 このリリースでは、クロージャからの型推論の改善に加えて、整数の最小値と最大値を新たにサポートし、コレクションのサポートを改善しています。 これらの変更についての詳細は、こちらのブログ記事でお読みいただけます。

失敗したテストアサーションのハイライト表示

テストアサーションに失敗した際に PhpStorm が失敗した正確な行をハイライト表示するようになりました。また、新しいコンテキストメニューの候補を使用して失敗した行からテストを再実行できるようになっています。 失敗した行で Alt+Enter を押すだけで、その行のテストを再実行できます。

列挙型の作成

Create Class(クラスの作成)ダイアログから列挙型を作成できるようになりました。 プロジェクトの PHP バージョンが 8.1 以降であることを確認してください。これ以外のバージョンである場合、列挙型のオプションは表示されません。

デバッガーの改善

適切なデータにすぐにアクセスできるようにするため、デバッガーウィンドウに使い心地を改善する機能をいくつか導入しています。

オブジェクトをデバッグする際には、擬似変数が必ずその Variables(変数)ペインの上部に表示されます。

また、変数ペインでは配列を手動で開かなくても中身を表示できます。

また、オブジェクトが __toString() メソッドを実装している場合には、そのオブジェクトのテキスト表現が Variables(変数)ペインに表示されるようになりました。

クリック可能な URL

PhpStorm 2022.2 では、複数のファイル形式でクリック可能な URL のサポートが追加されています。 PHP、JSON、YAML、または properties ファイルに URL が含まれている場合、PhpStorm はそれをハイライト表示します。ユーザーがそれをクリックするとブラウザーが開き、そのファイルが表示されます。

現在のファイルの実行

Run/Debug ウィジェットからアクセスできる Run Current File(現在のファイルの実行)機能の改善バージョンを導入しました。 このウィジェットのセカンダリメニューには適用可能なランナーと Run with Parameters(パラメーターで実行)アクションが表示されるため、ファイルを実行する前に実行構成パラメーターを調整できます。

HTTP クライアントの改善

HTTP クライアントが更新され、WebSocketsGraphQL がサポートされました。

さらに、HTTP クライアントの UX も改善されています。 ガターのアイコンを使用して実行環境を選択できるようになりました。

また、Response(レスポンス)ビューにはステータスバーが導入されています。

エディターのフォントサイズ変更

キーボードショートカットでエディターのすべてのタブのフォントサイズを変更できるようになりました。 便利な Reset(リセット)ボタンも追加されており、フォントサイズを元のサイズに戻すこともできます。

Angular スタンドアロンコンポーネントのサポート

JetBrains は PhpStorm での Angular 14 のサポートに積極的に取り組んできました。 このリリースで追加された最も重要な機能は、Angular スタンドアロンコンポーネントのサポートです。 PhpStorm で、standalone: true にマークされたコンポーネント、ディレクティブ、およびパイプが正しく認識されるようになりました。

Vue 3 関連の更新

WebStorm での Vue 3 のサポートは、最新の Vue に関連する一部の更新に遅れを取っており、 改善機能を提供することでこの問題に対処してきました。ただし、Vite のサポートなどの一部機能については、すでにバージョン 2022.1 のマイナーアップデートで対応しています。 PhpStorm 2022.2 にはいくつかの修正も含まれています。 たとえば、v-if/else ディレクティブでの型の絞り込みを理解できるようになっています。

TypeScript 4.7 のサポート

PhpStorm 2022.2 には、TypeScript 4.7 がバンドルされており、Node.js で moduleSuffixes や ESM といった新しい言語機能がサポートされています。 tsconfig.json ファイルで module が node16 または nodenext に設定されている場合、import ステートメントに自動的に .js 拡張子が挿入されます。 また、PhpStorm は package.json ファイルの typesVersions フィールドをサポートしています。

JetBrains Runtime

このリリースでは、JetBrains Runtime 11(JBR11)から JetBrains Runtime 17(JBR17)に移行しています。 これにより、以下のような影響があります。

  • 大幅なパフォーマンス改善。IDE の動作がより迅速かつスムーズになります。
  • セキュリティの強化。JBR17 は最新の OpenJDK LTS をベースにしています。
  • Better rendering performance on macOS, as JetBrains Runtime 17 leverages the Metal API.
  • Increased accessibility on macOS, as JBR17 features integration with the VoiceOver screen reader.
  • Further performance improvements thanks to the usage of the Vector API.

Markdown の目次

Markdown サポートの改善に取り組んでいます。 このリリースでは、新たに Generate Table of Contents(目次の生成)アクションを追加し、Markdown ファイルの目次をより分かりやすく作成できるようにしました。 Alt+Insert を使用すると、Insert…(挿入...)ポップアップが表示されます。 そこで Table Of Contents(目次)を選択すると、目次が自動的に生成されます。