レジストリエディタを起動します。

下記エントリまで移動してください。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont

 

新規 → 文字列値 でキーを作り値の名前を932.0、値を表示したいフォントにします。

※932 はシステムコードページのことでシフトJISを指しています。

※932のうしろに .0 .1 といくつでも追加したいフォントのキーを作れます。

 

作成後はこうなります。

 

コマンドプロンプトを再起動してください。

追加したフォントが選択できるようになります。

 

 

設定が読み込まれる順番

コマンドプロンプト(コンソール)の設定は、以下の順番で読み込まれます。
 
  1. conhostv2.dllでハードコーディングされている設定
  2. レジストリーの「HKCU\Console」以下に設定されているユーザー向けのデフォルト設定
  3. レジストリーの「HKCU\Console\<sub-key>」以下に設定されているコンソールアプリごとの設定
  4. Windowsショートカット(.lnk)の設定

「3.」の「<sub-key>」に関しては、以下のいずれかのキーでコンソールアプリを識別します。
 
  • コンソールアプリのパス(パス内に含まれる「¥」は「_」に置き換えられます。)
  • コンソールタイトル


コンソールアプリ起動時、Windows Console Hostはコンソールの詳細情報を読み込むことで、どの設定を使用するのかを決定します。

この時、上記で示した順番で上から下に向かって読み込み対象になった設定が読み込まれ、同じ設定は後から読み込まれた設定で上書きされます。

例えばショートカットからコマンドプロンプトを起動すれば、そのショートカットに指定されている設定が最優先されるということです。

設定そのものがなされていない場合、その設定は読み飛ばされます。
ただしショートカットファイルに保存される設定は、デフォルト値と同じかどうかに関わらず、各設定が保存されます。