Windowsは長年、Windowsコンソールホストと呼ばれるコマンドラインUI環境を提供してきた。
Windows 10時代もUnicode化や内部構造の見直しなど、多くの改良を加えてきたが、WSL(Windows Subsystem for Linux)の登場をきっかけにMicrosoftは、エスケープシーケンス(仮想ターミナルシーケンス)のサポートを経て、Windowsターミナルへの移行を推進している。
Microsoftは公式ドキュメントでも、WindowsコンソールAPIの段階的廃止を表明し、Windowsターミナルへの移行をうながしている。Windowsターミナルの将来像はこちらで確認できるが、同社が12月中旬に公開した公式ブログでは今後、Windows 11の既定ターミナルアプリをWindowsターミナルに置き換えることを明らかにした。
では、既定のターミナルアプリとは? と読者諸氏は思われるのでないだろうか。その答えは、端的に述べれば「コマンドラインアプリの実行環境を選択できる」ものである。従来はOSがフックしていたターミナルアプリだが、Microsoftはこの部分を解放し、推奨アプリとしてWindowsターミナルを提唱しているのだ。
既定のターミナルアプリとして、Windowsコンソールホストを使い続ける利点は少ないため、コマンドラインアプリの使用頻度が多い方は、以下の手順で設定を変更しよう。
下図はエクスプローラーからバッチファイルを実行したものだが、コマンドラインアプリを実行するターミナルアプリが切り替わっていることにお気付きだろうか。
ただし、バッチファイルを管理者権限で実行する際は、Windowsコンソールホストが起動した(Windows 11 バージョン21H2)。この辺りは今後改善していくのだろう。