やりたいこと
VS CodeでPHP保存時にuse文に対して以下を行いたい
- アルファベット順にソート
- 不要なuse文の削除
探した拡張機能
候補1
この開発元であるDEVSENSEというところの以下の紹介記事がそのものズバリ。
候補2
拡張機能のREADMEの設定項目を読むとできそうな感じがある。
やってみる
候補2のphp-imports
を入れてみる。
候補1のPHP
を使わなかったのは、use文の整理以外にも様々なことを行うオールインワン拡張機能のようなので、既存の拡張機能との共存に問題ないか不安だったため。
- vs codeの拡張機能で
php-imports
を検索しインストール - コマンドパレットを開き
php imports: init
を選択 - 設定を開く(cmd + ,)、以下を行う
- 設定画面の検索バーで「format on save」を検索
-
Editor: Format On Save
にチェックを入れる -
PHP-imports: Format On Save
にチェックを入れる
-
php imports: init
を実行したときに作成された.phpimportsrc
ファイルを開く - 編集
... "order": [ - "singleUses.class", - "emptyLine", - "singleUses.function", - "singleUses.const", - "emptyLine", - "groupedUses.class", - "emptyLine", - "groupedUses.function", - "groupedUses.const" + "all.class", + "emptyLine", + "singleUses.function", + "singleUses.const" ], ... "psr12": { - "enable": true, + "enable": false, ... } ... "unused": { - "enable": false + "enable": true }
※psr12をtrueにしていると以下のようにuse文をまとめます。
use App\Models\{
Job,
User
}