kledgeb Ubuntuの使い方や日本語化、アプリの使い方を紹介しています。

コマンドプロンプトの設定を把握しよう

公式ブログにて、コマンドプロンプト設定に関するノウハウが公開されています。



設定が読み込まれる順番

コマンドプロンプト(コンソール)の設定は、以下の順番で読み込まれます。

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

「3.」の「<sub-key>」に関しては、以下のいずれかのキーでコンソールアプリを識別します。

  • コンソールアプリのパス(パス内に含まれる「¥」は「_」に置き換えられます。)
  • コンソールタイトル

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

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

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

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

既定値とプロパティ

コマンドプロンプトの設定には、「既定値」と「プロパティ」の2種類の設定項目があります。


既定値

「既定値」の画面で行った設定は、上記の「2.」に設定が保存されます。


プロパティ

「プロパティ」の画面で行った設定は、上記の「3.」もしくは「4.」に設定が保存されます。


「3.」と「4.」のどちらに設定が保存されるのかは、コンソールアプリがどのように起動されたかで変わってきます。

コンソールアプリが直接起動された場合

「ファイル名を指定して実行」などコンソールアプリが直接起動された場合、「プロパティ」の画面で行った設定は、「3.」に保存されます。


ショートカットからコンソールアプリが起動された場合

コンソールアプリがWindowsのショートカットファイルから起動された場合、「プロパティ」の画面で行った設定は、「4.」に保存されます。
つまり設定はショートカットファイル内に保存されます。

ショートカットを右クリックし表示されるメニューから「プロパティ」をクリックし、各種設定を行うことも可能です。


レジストリーの設定

コマンドプロンプト(コンソール)に関する各種設定を紹介します。


値の名前 値の種類 概要
FontSize Coordinate
(REG_DWORD)
フォントサイズをピクセルで指定
FontFamily REG_DWORD GDIフォントファミリーを指定
ScreenBufferSize Coordinate
(REG_DWORD)
スクリーンバッファーのサイズを横x縦の文字数で指定
CursorSize REG_DWORD カーソルの高さを文字の高さの%で指定
WindowSize Coordinate
(REG_DWORD)
ウィンドウの初期サイズを横x縦の文字数で指定
WindowPosition Coordinate
(REG_DWORD)
ウィンドウの初期位置を横x縦のピクセル数で指定
設定されていない場合、自動的に初期位置を決定する
WindowAlpha REG_DWORD ウィンドウの透過度を0x4D〜0xFFの間で指定
ScreenColors REG_DWORD デフォルトの文字色と背景色を指定
PopupColors REG_DWORD F2キーを押したときに表示されるようなポップアップの文字色と背景色を指定
QuickEdit REG_DWORD デフォルトでQuickEditを有効にするか無効にするかを指定
FaceName REG_SZ フォント名を指定
__DefaultTTFont__を指定すればコードページに応じて適切なフォントを自動的に選択する
FontWeight REG_DWORD GDIフォントウェイトを指定
InsertMode REG_DWORD デフォルトで挿入モードを有効にするか無効にするかを指定
HistoryBufferSize REG_DWORD 保持するコマンドの履歴バッファーサイズを指定
NumberOfHistoryBuffers REG_DWORD 保持するコマンドの履歴バッファー数を指定
HistoryNoDup REG_DWORD 重複する古い履歴を破棄するかどうかを指定する
ColorTable%% REG_DWORD 16色の画面の色をRGB値で指定
%%には0〜15までの値が入る
ExtendedEditKey REG_DWORD テキスト選択キーを有効にするかどうかを指定
WordDelimiters REG_SZ CTRL+SHIFT+ARROWキーで文字列を選択する際、区切り文字として識別する文字を指定
'.-/\=|,()[]{}'のように指定可能
デフォルトではスペース文字のみ区切り文字として認識される
TrimLeadingZeros REG_DWORD 文字列コピー時、先頭に含まれる0を削除するかどうかを指定
EnableColorSelection REG_DWORD 文字列選択時のカラーリングを行うかどうかを指定
ScrollScale REG_DWORD Shift+ホイールスクロール時にスクロールする行数を指定
CodePage REG_DWORD デフォルトのコードページを指定
ForceV2 REG_DWORD 改善されたWindows Console Hostを使用するかどうかを指定
LineSelection REG_DWORD 行の選択が可能かどうかを指定
この設定は改善されたWindows Console Hostでのみ有効
FilterOnPaste REG_DWORD 文字列の貼り付け時、Wordのスマートクォートを通常のクォートに変換するなど文字列のフィルターを有効にするかどうか指定
この設定は改善されたWindows Console Hostでのみ有効
LineWrap REG_DWORD 長い行を複数行に分割するかどうかを指定
CtrlKeyShortcutsDisabled REG_DWORD 新しいCtrlキーのショートカットを無効にするかどうかを指定
AllowAltF4Close REG_DWORD Alt+F4ホットキーを有効にするかどうかを指定
VirtualTerminalLevel REG_DWORD Windows Console Hostが提供するVTのサポートレベルを指定

OSのアップグレード時に設定がリセットされる

新しいWindowsのバージョンへWindowsをアップグレードすると、システム所有のショートカットやスタートメニューの各項目の設定が、デフォルトの設定にリセットされます。

開発チームは、コンソールの設定をもっと簡単にそして管理し易くするためのツールを開発中です。
ツールの開発が終わった後、そのアナウンスが行われる予定です。


関連コンテンツ
同一カテゴリーの記事
コメント
オプション