15年ぶりに強化されたWindows 10のコマンドプロンプト:Windows 10 The Latest
Windows 2000からWindows 7/8.xまで、ほとんど変わることのなかったコマンドプロンプト。Windows 10では何がどう強化されるのか? Windows 10 TPの「実験的」な機能も含めて解説する。
「Windows 10 The Latest」は、2015年夏に正式リリースが予定されているWindows 10の最新情報をお伝えするコーナーです。
今回は「Windows 10 TPビルド9926(以下Windows 10 TP)」の「コマンドプロンプト」について見ていく。
いまさらながら、進化したコマンドプロンプト
Windows 10 TPでは今になってなぜか、「コマンドプロンプト」(cmd.exe)の機能がいくらか強化されている。GUIでは面倒な操作も、CUIのコマンドプロンプトなら簡単にできることは今でも少なくない。バッチファイルを用意すれば、繰り返しや定型的な処理も簡単に実行できる。コマンドプロンプトの基本的な使い方については関連記事を参照していただきたい。
コマンドプロンプトの機能が大きく強化されるのは、「Windows 2000」(2000年2月発売)で「拡張機能」が導入された時以来のはずなので、実に15年ぶりということになる。今になって機能を強化するのは、いまだにコマンドプロンプトに対する需要や不満があるということなのだろうが、可能ならもっと早く実装しておいてほしかった。
- Console Improvements in the Windows 10 Technical Preview[英語](Building Apps for Windowsブログ)
コマンドプロンプトのデフォルトレイアウトサイズの変更
従来のコマンドプロンプトを使っていて一番不便なのが、表示された内容のスクロールバックやコピー操作だろう。まずバッファーサイズがデフォルトでは300行と少なく、dirコマンドを実行すると、バッファーから溢れることがよくあった(300行を超えた部分はスクロールバックしても表示されない)。
Windows 10 TPではデフォルトのバッファーサイズを9000行にし、さらに画面幅も120桁と、最初からいくらか広くしている。
コマンドプロンプトのレイアウトサイズの変更
Windows 10 TPでは、画面バッファーのサイズや、物理的な表示サイズ(幅と高さ)を拡大している。
(1)コマンドプロンプトのプロパティ画面を表示させ([Alt]+[Space]キーを押して[プロパティ]を選択する)、このタブを選択する。
(2)画面バッファーのサイズ。コマンドの出力結果はデフォルトでは最大で9001行まで保存される(以前は300行となっていた)。つまり9001行までスクロールバックして表示できる。設定可能な最大値は9999行までで、これは以前と同じである。バッファーの幅もデフォルトが80桁から120桁に拡大されている。
(3)コンソールウィンドウのサイズ。これも以前のデフォルト値80桁×25行から120桁×30行に拡大されている。
コマンドプロンプトの新機能を有効にする
コマンドプロンプトの新機能は、現状のWindows 10 TPではまだ「実験用(Experimental)」という扱いであり、デフォルトでは無効になっている。これをオンにするには、コマンドプロンプトを開いてプロパティ画面を表示させ、[実験用]タブで利用したい機能のチェックボックスをオンにする必要がある。
コマンドプロンプトの新機能を有効にする
Windows 10 TPではコマンドプロンプトの機能も強化された(各機能の詳細は後で説明する)。ただしデフォルトではオフになっているので、使いたい場合は手動でオンにする。
(1)このタブはWindows 10 TPで新しく用意されたタブ。最終製品ではどうなるかは未定。
(2)これをオンにすると、新しい拡張機能が有効になる。
(3)行モードでの選択が有効になる。
(4)クリップボード中に含まれる制御文字を除外して貼り付ける。
(5)ウィンドウ幅のリサイズに合わせてテキストを折り返し表示する。
(6)[Ctrl]キーを使った新しいキーボードショートカットを有効にする。
(7)新しいテキスト選択機能を有効にする。
(8)選択時に先頭の「0」(ゼロ)を除外する。
(9)コマンドプロンプトウィンドウの透明度を変更する。
(10)Windows 10 TPのコマンドプロンプト開発者フォーラムを開く。
Windows 10 TPで実装されているこれらの機能はまだ開発途中であり、今後変更される可能性がある。プロパティ画面の一番下にある[実験用コンソール機能]というリンク(上の画面の(10))をクリックすると、Windows 10のコマンドプロンプト機能開発者へのフィードバック用フォーラムが表示されるので、要望などがあれば投稿しておこう。すでに何百も要望が投稿されバックログとして処理されているので、重複するかもしれないが、ひょっとしたら将来のWindows 10で採用されるかもしれない。
- Command Prompt[英語](WPDev Feedbackフォーラム)
それでは各機能についてみていこう。
■「テキスト行の選択を有効にする」設定
これをオンにしておくと、画面上の文字列の選択方法が「ブロックモード」から「行モード」になる。一般的なテキストエディターの選択機能のように使えるので、便利な機能だ。
従来のコマンドプロンプトでは、画面上の文字列をマウスでドラッグして選択すると、選択した領域は必ず矩形になっていた。その結果、コピーしたテキストは選択範囲の右側で改行され、複数の行に分かれたテキストになってしまっていた。たとえ画面の右端いっぱいまでドラッグしても、必ず行ごとに分割されたテキストになってしまい、後で行を連結させるなどの手間がかかる。
ブロックモードでのテキスト選択
これは従来のコマンドプロンプトと同じ状態。選択領域は必ず四角い領域になる。
(1)ブロックモードの選択領域。必ず四角い領域になる。
(2)ブロックモードで選択・コピーしたテキストをメモ帳に貼り付けたところ。このモードでは右端に必ず改行が入り、行が1行ごとに分割されている。たとえ画面右端まで選択しても、分かれた行になる。
これに対して行モードを有効にしておくと、一般的なテキストエディターなどのように、複数の行が1つにつながったテキストとしてコピーされる。通常はこちらの方が便利だろう。
行モードでのテキスト選択
行モードが有効な場合は、普通のテキストエディターのように、論理的な行に基づいてテキストが選択される。
(1)行モードの選択領域。普通のテキストエディターのような行選択になる。
(2)行モードで選択・コピーしたテキストをメモ帳に貼り付けたところ。1行につながっている。
ブロックモードと行モードは、[Alt]キーを押しながらマウスをドラッグすると逆の動作になる。
■「貼り付け時にクリップボードの内容をフィルター」設定
これをオンにしておくと、クリップボードの内容をコマンドプロンプトに([編集]−[貼り付け]やマウスの右クリックで)貼り付けるときに、Tab文字が自動的に削除されたり、(開きと閉じの)引用符記号のペアが、単純な引用符記号に変換される。
例えばクリップボードの先頭にTab文字が入っていた場合、そのままコマンドプロンプトに貼り付けるとTabキーによる自動的なファイル名の補完機能が働いてしまう。だがこのチェックボックスがオンだとTab文字は削除され、意図しない自動補完機能は働かなくなる。
■「サイズ変更時にテキストを折り返す」設定
これをオンにすると、コマンドプロンプトの物理的なウィンドウサイズを変更した場合、自動的にテキストがラップ(折り返し表示)されるようになる。一般的なテキストエディターでは、ウィンドウサイズ(幅)を変更すると、自動的にテキストがラップしてウィンドウの横幅いっぱいまで描画されるが、コマンドプロンプトはそうはなっていなかった。最初に例えば横80桁にすると、ウィンドウサイズを広げてもテキストは80桁のままだった(右側は空白のまま)。
このチェックボックスをオンにすると、コンソールウィンドウの物理的な幅(桁数)も論理的な幅(「レイアウト」タブにある「画面バッファーのサイズ」−「幅」の値)も常に一致するようになり、普通のエディターのようにウィンドウをリサイズできるようになる。一般的にはこの方が使いやすいだろう。
テキストの折り返し設定
この設定がオンだと、ウィンドウの幅をリサイズした場合に、自動的にテキストが折り返すように再描画される。
(1)サイズ変更前のウィンドウ。
(2)サイズ変更後のウィンドウ。ウィンドウ幅に合わせてテキストが折り返すように表示されている。従来は幅を変えても、すでに描画されているテキストはそのままだった。
■「新しい Ctrl キー ショートカットを有効にする」設定
これをオンにすると、[Ctrl]キーを使ったいくつかのキーボードショートカット機能が有効になる(主要なもののみ掲載。全ショートカットについては、記事冒頭のブログ記事参照)。
- [Ctrl]+[↑][↓][Page Up][Page Down]――コンソール画面のスクロール
- [Ctrl]+[M]――選択モードの開始([↑][↓][←][→]などでカーソルを移動させ、[Shift]を押しながら選択する)
- [Ctrl]+[A]――コンソールウィンドウ内の全テキスト選択
- [Ctrl]+[C]――選択範囲をコピー
- [Ctrl]+[V]――貼り付け
- [Ctrl]+[F]――検索
■「拡張編集キー」設定
これをオンにすると、[Shift]キーを使ったキーボードショートカットによるテキスト選択機能が有効になる(主要なもののみ掲載。全ショートカットについては、記事冒頭のブログ記事参照)。
- [Shift]+[↑][↓][←][→]――1文字ずつテキスト選択
- [Shift]+[Home][End]――行頭、行末までのテキスト選択
- [Shift]+[Page Up][Page Down]――1ページ前、1ページ後までのテキスト選択
■「選択時に先行ゼロを除外する」設定
これをオンにすると、テキストをマウスでダブルクリックして選択した場合に、先頭のゼロを選択しないようになる。例えば「001234」というテキストをダブルクリックした場合に「1234」のみが選択されるようになる。
■「不透明度」設定
これは、コマンドプロンプトウィンドウの透明度を設定する機能である。いまひとつ使い道がはっきりしない機能だが、他のアプリケーションの上にコマンドプロンプトをオーバーレイ表示させるといった用途に使えるだろう。例えば他のアプリケーションを実行させながら、tailコマンドでログの状態をリアルタイムに監視する、pingでネットワークの状態を監視する、といった使い方が考えられる。
透明表示させたコマンドプロンプト
コマンドプロンプトを透明にすると、下にあるウィンドウの内容を確認しながらコマンドを実行できる。リアルタイムにログやネットワークなどを監視するといった用途で使えるだろう。
(1)透明度を50%程度に設定した例。
今回はコマンドプロンプトの機能拡張について見てきた。確かに従来のコマンドプロンプトは使いづらいところが多かったので、機能を拡張してくれるのはありがたい。いまさらコマンドプロンプトを強化する理由は不明だが、取りあえずありがたく使わせていただこうと思う。
Copyright© Digital Advantage Corp. All Rights Reserved.