「Windows 10ミニTips」は各回の作成時点で最新のWindows 10環境を使用しています。
Microsoftがオープンソースベースで開発したフォント「Cascadia Code」。コンソールアプリと開発者向けに可読性を高めたフォントだが、コマンドプロンプトでCascadia Codeが使えるかどうか試してみた。
Windows 10のWindowsコンソール(コマンドプロンプトやWindows PowerShell)は、起動時に4つの設定読み込みが発生する。
1.「conhostv2.dll」のハードコード設定
2.「HKEY_CURRENT_USER\Console」に格納した値
3.「HKEY_CURRENT_USER\Console」のサブキーとして格納した個別の値
4. Windowsショートカットファイル(拡張子「.lnk」)
Windowsコンソールのアプリコマンドには「既定値」「プロパティ」の2項目が並んでいるが(以下の画像)、前者はステップ2、後者はステップ3の情報を参照する。そこで、HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exeキーを削除し、HKEY_CURRENT_USER\Consoleでフォント設定をCascadia Codeを指定してみたが、使えなかった。
Windows Terminalなら簡単
もともとCascadia Codeは、Visual Studio Codeに代表されるテキストエディターでの使用を想定しており、フォント名もWindows Terminalの開発コードネームである。そのため、Windows Terminalとの親和性は高く、フォント変更は容易だ。
文字コードをUTF-8にすれば、コマンドプロンプトでも指定可能に
ふと「日本語」の問題かと思い立ち、Windowsコンソール(コマンドプロンプト)の文字コードをUTF-8(65001)に切り替えてからプロパティダイアログを開くと、Cascadia Codeが選択可能になった。あとは選ぶだけだ。
残念ながら、Windowsコンソールの文字コードは固定されない。また、Cascadia Codeフォントでは標準出力が英語に切り替わり、日本語テキストファイルも正しく表示されなくなる。現時点では、Windowsコンソール系アプリでCascadia Codeを使うのは見送ったほうがよさそうだ。
阿久津良和(Cactus)