VS Code で使用されているフォーマッタをどのように判断しますか? 質問する

VS Code で使用されているフォーマッタをどのように判断しますか? 質問する

複数の拡張機能がインストールされている場合、ドキュメントでどのフォーマッタが実行されているかをどのように判断しますか?

たとえば、HTML をフォーマットする HTML 拡張機能がいくつかありますが、実際にフォーマットしているのはどれか、または複数がフォーマットしているのかはわかりません。正直なところ、どの拡張機能がフォーマットに寄与しているのかさえわかりません。最近、HTML と CSS の自動フォーマットにより、フォーマット方法が私の気に入らない方法で変更されたため、どの拡張機能がこれを行っているのかを知りたいです。そうすれば、設定を変更したり、拡張機能を無効にしたりできるようになります。現在、80~90 個の拡張機能があるため、1 つずつ確認するのは途方もなく時間のかかるプロセスであり、プログラムでこれを判断する方法があれば避けたいです。拡張機能は、自動フォーマットを行うためにフォーマット サービスに登録する必要があるようですが、それらをデバッグ、フック、または表示する方法があるかどうかはわかりません。

ベストアンサー1

1.33リリース(2019年3月)から複数のフォーマッタが登録されているファイルをフォーマットしようとすると、次のようなポップアップが表示されます。

「保存時にフォーマット」または「貼り付け時にフォーマット」によって暗黙的にフォーマットが行われた場合、通知は「サイレント」になることに注意してください。つまり、通知を表示するには右下のベルをクリックする必要があります。

メニューConfigure...には、現在の言語で使用できるすべてのフォーマッタが一覧表示されます。そのうちの 1 つを、およびのデフォルトのフォーマッタとして選択できFormat DocumentますFormat Selection

ここでたとえば「Prettier」を選択すると、これがグローバルに追加されますsettings.json

"[html]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
}

Format Document With...特定のフォーマッタを使用してファイルをフォーマットするための 2 つの新しいコマンドともありますFormat Selection With...。これは、デフォルトのフォーマッタとして設定されていないフォーマッタを使用して特定のファイルをフォーマットする場合に便利です。前者はコンテキスト メニューからも使用できます。

おすすめ記事