連載
» 2021年04月01日 05時00分 公開

ついにWindows Terminalの設定がGUIで可能に プレビュー版v1.7が公開【Windows Terminal完全マスター】Windows 10 The Latest(1/2 ページ)

Windows Terminal v1.6正式版が公開されると同時に、GUIによる設定が可能になったv1.7がプレビュー版として提供された。今回は、v1.6までに追加された新機能と、プレビュー版v1.7でサポートされたGUIによる設定ページの概要をそれぞれ紹介する。

[塩田紳二,著]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Windows 10 The Latest」のインデックス

連載目次

Windows Terminal v1.7(プレビュー版)でサポートされた設定ページ Windows Terminal v1.7(プレビュー版)でサポートされた設定ページ
Windows Terminal プレビュー版v1.7では、GUI(グラフィカルユーザーインタフェース)の設定ページが搭載された。ただし、一部の設定に関しては、まだ「settings.json」ファイルを編集する必要がある。

 「Windows Terminal」は、Microsoftがオープンソースとして開発中のターミナルエミュレーター(コンソールホスト)である。2021年3月に入り、Windows Terminal v1.6(以下、正式版v1.6と表記)が公開され、同時にプレビュー版v1.7(以後プレビュー版v1.7と表記)の配布が開始された。本稿では、「ついに完成「『Windows Terminal』の機能と使い方まとめ」で紹介したv1.0以降から正式版v1.6までの新機能と、GUIによる設定ページなど新機能が搭載されたプレビュー版v1.7の新機能について解説していく。

Windows Terminalのインストール方法

 Windows Terminalは、2020年5月に正式版「v1.0.1401.0」がMicrosoft Storeで公開され、一般向けの提供が開始された。Windows Terminalの概要などについては、Windows 10 The Latest「ついに完成『Windows Terminal』の機能と使い方まとめ」を参照してほしい。

 その後v1.1〜v1.5とアップデートを行い、2021年3月2日に正式版v1.6が公開されている。同時にプレビュー版v1.7の配布も開始された。プレビュー版は、Microsoft Store経由で入手可能だ。また、Windows Terminalのソースコードを公開しているGitHubでもmsixパッケージ形式として入手できる。

Microsoft StoreからWindows Terminalをインストールする Microsoft StoreからWindows Terminalをインストールする
Microsoft Storeアプリを起動し、検索ボックスに「windows terminal」と入力して、検索を行う。「Windows Terminal」と「Windows Terminal Preview」が表示されるので、目的に合わせてインストールすればよい。

 プレビュー版をMicrosoft Storeで入手すると、自動的にアップデートされるため、手間が掛からないというメリットがある。反面、評価している最中であっても自動アップデートされてしまうというデメリットもある。

 プレビュー版と正式版は1つのマシンに共存可能であるため、日常的な利用には、正式版を使い、新機能などを評価するためにプレビュー版を入れておくことも可能だ。Microsoft Storeからプレビュー版をインストールしていても、GitHubから過去バージョンのmsix版をダウンロードしてインストールすることも可能なので、必要に応じて利用するといいだろう。

Windows Terminalの正式版とプレビュー版をインストールする Windows Terminalの正式版とプレビュー版をインストールする
Windows Terminalの正式版とプレビュー版をインストールすると、[スタート]メニューには画面のように正式版の「Windows Terminal」とプレビュー版の「Windows Terminal Preview」の2つが登録される。

 GitHubからインストールする場合、以下のWindows Terminalのバイナリ公開ページから行う。

 このページのトップにあるのが最新のプレビュー版である(タイトルにも「Preview」と記されている)。新機能(Features)や変更点(Changes)、不具合修正(Bug Fixes)などの説明に続いて、「Assets」という項目があるので、これをクリックすると、msixパッケージ(msixbundleファイル)とソースコードのzipアーカイブなどのリンクが表示される。先頭のmsixパッケージのリンクをクリックすると、ダウンロードが始まる。

GitHubでWindows Terminalのインストーラーをダウンロードする(1) GitHubでWindows Terminalのインストーラーをダウンロードする(1)
GitHubの「microsoft/terminal」リポジトリのReleaseページを開く。一番上にあるのが最新のプレビュー版だ。
GitHubでWindows Terminalのインストーラーをダウンロードする(2) GitHubでWindows Terminalのインストーラーをダウンロードする(2)
画面をスクロールして、「Assets」をクリックする。msixパッケージ(msixbundleファイル)とソースコードのzipアーカイブなどのリンクが表示されるので、先頭のmsixパッケージのリンクをクリックする。これでmsixパッケージがダウンロードできる。

 ダウンロードしたmsixパッケージを実行すると、プレビュー版をインストールできる。

Windows Terminal正式版の新機能

 正式版v1.1からv1.6に追加された主な機能には、以下のようなものがある(v1.0までの機能に関しては「ついに完成「『Windows Terminal』の機能と使い方まとめ」を参考にしてほしい)。

  • コマンドパレット
  • タブの右クリックメニューなどタブ操作機能の改良
  • クリック可能なURL
  • エクスプローラーの右クリックメニューに「Open in Windows Terminal」が追加される
  • JumpList(ジャンプリスト)
  • 新規追加Action(アクション)
  • 設定項目の追加
  • HLSLシェーダー
  • StartupActionなど新規設定機能
  • プログレスバー表示などVTエスケープシーケンス拡張
  • その他(コマンドラインオプションの追加など)

 以下では、主要な新機能について解説する。

さまざまなActionがコマンドパレットから実行可能に

 「コマンドパレット」は、Windows Terminalが持つさまざまな「Action(アクション)」を直接実行する機能だ。標準では、[Ctrl]+[Shift]+[P]キーでコマンドパレットが開く。

Windows Terminal v1.6の「コマンドパレット」 Windows Terminal v1.6の「コマンドパレット」
コマンドパレットは、リストからActionを選択して実行できる。また、文字入力で検索が行われ、関連するアクションを表示する。

 Windows Terminalは、キーボードショートカットなどに割り当て可能なさまざまな機能をActionとして持っている。これまでは、このActionは、キーボードに割り当てて利用していたが、v1.5からコマンドパレットでも起動できるようになった。

 一部のActionには、右側に「>」が表示され、パラメーターもリストで指定可能になっている。例えば、[ウィンドウを分割します]を選ぶと、プロファイルのリストが表示される。

パラメーターの選択が可能なActionの例(1) パラメーターの選択が可能なActionの例(1)
一部のActionには、右側に「>」が表示され、パラメーターもリストで指定可能だ。例えば、[ウィンドウを分割します]を選んでみる。
パラメーターの選択が可能なActionの例(2) パラメーターの選択が可能なActionの例(2)
分割したウィンドウで起動可能なプロファイルのリストが表示される。ここで[コマンドプロンプト]を選択すると、ウィンドウを水平/垂直のどちらで分割してコマンドプロンプトを起動するのかの選択が行える。

 Windows Terminalで利用するさまざまな「シェル」や「コマンドインタープリタ」では、さまざまなキー割り当てを既に持っているものが少なくない。例えば、Windows 10標準のcmd.exe(コマンドプロンプト)では、[F7]キーでヒストリ機能が利用できるといったように、既にキー割り当てが行われている。

 Windows Terminalのキー割り当ては、こうしたシェルやコマンドインタープリタのキー割り当てと衝突しないように行う必要がある。しかし、Windows Terminalは、cmd.exe、PowerShell.exe(Ver.5およびVer.7)、bash(WSL)、Azure Cloud Shellなど多数のプロファイルに対応しており、これらが利用する全てのプロファイルで空いているキーを探すのは難しい。その点、コマンドパレットを使えば、キー割り当てを行うことなく、Actionが実行できる。

 Windows Terminalを日本語環境で利用すると、コマンドパレットに入力するActionは、日本語の機能名として入れる必要がある。コマンドパレットでは、入力した文字から関連するActionをインクリメント検索して表示する機能がある。「タブ」と入れると、関連するAction(の日本語翻訳)一覧が表示される。ただし、この日本語化については、Windows Terminalが手本としたVisual Studio Code(VS Code)のように翻訳は行わず、オリジナルの英単語のままにしてほしいという利用者の声もある。今後仕様が変更される可能性もありそうだ。

 例えば、正式版v1.5で利用可能になった新規のActionとして、タブの色を設定するコントロールを表示する「openTabColorPicker」というものがある。キー割り当てなどでは、この名称をそのまま使わなければならない。一方、日本語環境でコマンドパレットから呼び出す場合には、settings.jsonファイルの「openTabColorPicker」で設定可能なタブの色の設定は、日本語翻訳である[タブの色を設定する]を選択する(「タブ色」と入力すれば、コマンドパレットは「タブの色を設定する」を候補として表示してくれる)。

日本語版ではActionを日本語で指定する必要がある 日本語版ではActionを日本語で指定する必要がある
日本語版のWindows Terminalでは、Actionが日本語になっており、settings.jsonファイルの「openTabColorPicker」で設定可能なタブの色の設定は、日本語翻訳である[タブの色を設定する]を選択する。コマンドパレットに「タブ色」と入力すれば、「タブの色を設定する」が候補として表示される。

 その他、コマンドパレットには、「Command Line Mode」と呼ばれる機能があり、Windows Terminalの起動オプションを使って、新規タブやペインへの分割なども実行することが可能だ。Command Line Modeを使うには、[Ctrl]+[Shift]+[P]キーでコマンドパレットを開いた後、入力欄の先頭にある「>」をバックスペースで削除してから、起動オプションを入力する。

 ここに新規のタブを開く起動オプション「new-tab」と入力すると、Windows Terminalに新しいタブが開く。

コマンドパレットの「Command Line Mode」(1)  
コマンドパレットを「Command Line Mode」で使うには、入力欄の先頭にある「>」をバックスペースで削除する。ここで、起動オプション(例えば「new-tab」)を入力する。
コマンドパレットの「Command Line Mode」(2) コマンドパレットの「Command Line Mode」(2)
「Command Line Mode」で指定した起動オプションが実行される。「new-tab」を実行した場合、新しいタブが既定のプロファイルで開かれる。

 また、ここに「コマンドプロンプト」プロファイルを指定して起動する「-p "コマンド プロンプト"」を「Command Line Mode」で入力すると、新規タブを「コマンド プロンプト」プロファイルで開く(プロファイルや起動オプションに関しては、Windows 10 The Latest「ついに完成『Windows Terminal』の機能と使い方まとめ」を参照のこと)。

タブの右クリックメニューなどタブ操作機能の改良

 Windows Terminalは、タブで複数のセッションを開き、1つのウィンドウに表示できるというのが特徴だ。従来のコンソール(コマンドプロンプトやPowerShellなど)では、セッションごとに個別のウィンドウを開く必要があった。開発や管理作業などで多数のウィンドウを開くと、ウィンドウが行方不明になったり、間違ったウィンドウで作業してしまったりすることもあった。

 Windows Terminalでは、全ての端末セッションをタブでまとめることで行方不明などを防ぐことができる。さらに、タブの背景色やタイトルテキスト、表示位置などを自由に操作できるようになり、タブの区別が容易になっている。

 タブ上で右クリックすると、コンテキストメニューが表示され、ここから「タブ背景色の指定」「タブタイトルの変更」「タブを閉じる」操作が可能になる。なお、これらは、全てActionに対応しており、キー割り当てによる実行や前述のコマンドパレットからの実行も可能だ。

タブの色を変える(1) タブの色を変える(1)
タブ上で右クリックするとメニューが表示され、タブ背景色の指定やタブ名の編集、タブを閉じるなどの操作を行うことが可能になった。
タブの色を変える(2) タブの色を変える(2)
[色]を選択すると、カラーパレットが表示される。ここで選択した色がタブの背景に使われる。
タブの色を変える(3) タブの色を変える(3)
カラーパレットで「赤色」を選択すると、このようにタブの色が赤色になる。作業内容ごとに色を変えるなどすると、タブの選択間違えを減らすことができるだろう。

 また、[Ctrl]+[Tab]/[Ctrl]+[Shift]+[Tab]キーでタブを順次切り替えるときに「Tab Switcher」が表示され、全てのタブをリストとして表示できるようになった。

Tab Switcherによるタブのリストが表示される Tab Switcherによるタブのリストが表示される
[Ctrl]+[Tab]/[Ctrl]+[Shift]+[Tab]キーによるタブ切り替え操作時にタブのリストが表示され、タブを簡単に選ぶことができるようになった。

 このTab Switcherは、[Ctrl]キーまたは[Shift]キーを押している間は表示し続ける([Tab]キーだけ離すことが可能)。このとき、上下カーソルキー、[Tab]キーの再打鍵、マウスでタブ名を選択することも可能だ。「settings.json」ファイルでの設定により、このときのタブの選択順を、タブの並び順だけでなく、利用した順にすることも可能だ。複数のタブを渡り歩いて作業する際、直前に開いていたタブへすぐに戻ることもできる。

 ソフトウェア開発やシステム管理作業では、多数のタブを開く可能性があり、タブを区別することは重要な問題となる。このとき、タブの色やタイトルを変更することで区別が容易になる。なお、タブの位置はマウスのドラッグ&ドロップで移動が可能だ(v1.0からの機能)。

 多数のタブを表示させることを想定し、アクティブなタブ以外のタブの表示幅を「compact(アイコンのみの最小幅)」にする機能も追加された。正式版v1.0では、「equal(全て同じ幅)」か「titleLength(タイトル文字数に応じた幅)」に設定できたが、「compact」はサポートしていなかった。「compact」をサポートしたことで、多数のタブを開く場合に分かりやすいタブ表示が行えるようになった。

クリック可能なURLをサポート

 正式版v1.5で、[Ctrl]キーを押しながらURLをクリックすると、該当のURLをデフォルトのWebブラウザで開く機能が搭載された。クリック可能なURLの上にマウスカーソルを重ねると、[Ctrl]キー+クリックでURLを開けることがツールチップで表示される。

 この機能は、アプリケーションがエスケープシーケンスを使ってクリック可能なURLを表示するものと、Windows TerminalがURLと判定できるものを自動的にクリック可能なURLとして表示するものの2種類に対応している。

クリック可能なURLをサポート(1)
クリック可能なURLをサポート(2) クリック可能なURLをサポート
正式版には[Ctrl]キーを押しながらURLをクリックすると、Webブラウザで開く機能が搭載された。アプリケーションがエスケープシーケンスを使って表示するもの(上画面)とWindows TerminalがURLを自動的に判別してリンクするもの(下画面)の2つがある。

 前者は、アプリケーションがユーザーに情報を提供するために必要なURLを提示するもので、アプリケーション側がエスケープシーケンスを使って明示的にURLを表示させる必要がある。例えば、Windows TerminalのPowerShellプロファイルで以下のコマンドレットを実行すれば、「This is link」の文字列にURLをリンクさせることができる。このようにURLに対して表示するサイトの名称などを付けることが可能だ。

write-host "`n`n$([char]0x1B)]8;;https://www.atmarkit.co.jp/$([char]0x1B)\\This is link$([char]0x1B)]8;;$([char]0x1B)\\`n`n"


エスケープシーケンスを使って明示的にURLを表示させる

 これに対して、後者は、Windows Terminalがコンソール中に表示されているURLと判断できるものを自動的にクリック可能なURLとするものだ。こちらはアプリケーションの操作は不要だが、URLそのままの表示になる他、URL付近の表現などによっては、Windows TerminalがURLを正しく判別できず、誤ったリンクを付ける可能性もある。こちらは、テキストファイルなどに記載されているURLを簡単に扱うためのものだ。

HLSLシェーダーによる背景描画

 正式版v1.6では、GPUのシェーダープログラムを使って、CPUに負荷をかけることなく、複雑な背景描画を行わせることができるようになった。これを使うと、背景のアニメーションや、表示フォントに対する加工などが可能になる。なお、この機能は、昔のCRT画面のターミナルのような文字を表示する「experimental.retroTerminalEffect」(レトロターミナル効果)のベースになったものだ。このため、正式版v1.6では、このレトロターミナル効果は、デフォルトのシェーダープログラムとして登録されている。

HLSLシェーダーによるグレースケール表示 HLSLシェーダーによるグレースケール表示
HLSLシェーダーは、GPUが実行するHLSL言語で表示を加工するもの。Grayscale.hlslでは、カラースキームを変更することなく表示をグレースケール表示に変換できる。

 このときに使われるシェーダー言語がDirectXのシェーダー言語であるHLSL(High Level Shading Language)だ。シェーダーとは、GPU内部で表示ビットマップを加工する部分を指し、シェーダー言語とは、プログラマブルシェーダーを制御するコンピュータ言語のことだ。

 正式版v1.6では、テキストで書かれたHLSLのソースコードを読み込み、これをコンパイルしてGPUに転送、ウィンドウ内の表示をHLSLで処理して表示させる。処理はGPU側で行われるため、複雑なシェーダープログラムを実行させてもCPU側の負荷はほとんど上がらない。なお、HLSLのコンパイラなどは、DirectXのモジュールとしてWindows OSに付属しているため、シェーダープログラムソース以外に用意するものはない。

 このHLSLシェーダーは、プロファイルごとに定義できるため、背景画像のように、実行しているシェルやコマンドインタープリタ別に違う背景を表示できる。

 HLSLシェーダーのサンプルプログラムは、GitHubのWindows Terminalのリポジトリにある。

 ここにあるシェーダープログラムをローカルファイルに保存する。本来、GitHubは、ローカルにプロジェクト全体をダウンロードするためのものなので、サイト内では、ブラウザの「リンク先を保存」を使うことができない(HTMLページが保存されてしまう)。

 このため、シェーダーサンプルのリンクをクリックして開き、シェーダープログラムをマウスで選択してメモ帳に貼り付けて保存するか、GitHubページ内のファイルリスト右上の「Raw」ボタンを押してプログラムをブラウザに表示させて、ブラウザの右クリックメニューで「名前を付けて保存」(Google ChromeまたはMicrosoft Edgeの場合)を使って保存する。

 入手したHLSLシェーダーサンプルプログラムを使うには、settings.json内の「Profiles」プロパティ内のDefaultsまたはListプロパティに「experimental.pixelShaderPath」を使ってHLSLシェーダープログラムへのパスを指定する。これで指定したHLSLファイルが自動的にコンパイルされてWindows Terminal内に画像が表示される。

 新規に追加されたActionである「toggleShaderEffects」をキーに割り当てることで、シェーダーによる表示処理をオン/オフできる。

 次ページでは、正式版v1.6のその他の新機能と、プレビュー版v1.7で評価中のGUI設定ページなどについて解説する。

       1|2 次のページへ

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。