2020年11月11日、Windows Terminalの最新版となるバージョン1.4がリリースされた。Windows Terminalの開発プロジェクトでは、月1回程度のマイナーバージョンアップを繰り返すというリリースサイクルが採用されている。バージョン1.3がリリースされたのが9月22日なので、1.4のリリースは予定よりも少し遅れたことになるが、GitHubで公開されているリポジトリを見る限り現在もさまざまな新機能の開発が順調に進められているようだ。今回は、バージョン1.4で追加された新機能について紹介する。

新バージョンへのアップデート

Windows TerminalをMicrosoft Storeからインストールしている場合には、新バージョンへのアップデートは自動的に行われる。インストールされているバージョンは、タブバーの横のプルダウンメニューから「バージョン情報」を選択すれば確認できる。

最新版はバージョン1.4.3141.0

もしまだアップデートが適用されていない場合は、Microsoft StoreアプリのWindows Terminalのページを開いてみよう。少し待つと次のようにアップデートが開始されるはずだ。

Microsoft StoreアプリでのWindows Terminalのアップデート

Microsoft Store以外では、GitHubのリリースページから直接ダウンロードしてインストールすることもできる。

スタートメニューから特定プロファイルが起動できる

スタートメニューからWindows Terminalを起動する場合、これまではデフォルトのプロファイルでしか起動することができなかった。バージョン1.4では、スタートメニューの時点で起動したいプロファイルを選択できるようになった。デフォルトプロファイルが何であるかに関わらず、選択したプロファイルのタブが最初に表示される。単に「開く」を選択した場合には、これまで通りデフォルトプロファイルのタブが開く。

プロファイルが直接選択できるようになっている

ハイパーリンクの埋め込み

バージョン1.4ではテキスト表示の表現力が向上している。またターミナルに表示するテキストにハイパーリンクを埋め込むことができるようになった。ハイパーリンクを埋め込んだテキストはアンダーバー付きで表示され、「Ctrl」キーを押したままマウスでクリックすることで、Webブラウザでリンク先のサイトを開くことができる。

次の例は、「This is a link」というテキストに、「http://news.mynavi.jp/」へのハイパーリンクを埋め込んだ例である。

「This is a link」の部分がハイパーリンクになっている

少しわかりにくいが、アンダーラインが付いている。リンクのテキスト部分にマウスカーソルを合わせると、これがハイパーリンクである旨のポップアップが表示される。

「Ctrl」キーを押しながらクリックするとリンク先を開ける

記述方式が少し複雑なので簡単に解説しておこう。ハイパーリンクは、ANCIのエスケープコードを利用して記述する。この例の最初に「${ESC}=[char]27」は、環境変数ESCにASCIIコードのエスケープ文字をセットしている。「Write-Host」は指定されたテキストを表示するPowerShellのコマンドで、Linuxのechoコマンドと同等のものになる。

Windows Terminalの場合、「ESC ] 8」のエスケープコードに囲まれた部分はハイパーリンクとして扱われる。「ESC ] 8」の間をバックスラッシュ(\)で区切って、その前半がリンク先のURL、後半が表示されるテキストになる。バックスラッシュ自身もエスケープが必要なため、「ESC \」になっている。

次のバージョンのWindows Terminal 1.5では、このハイパーリンク機能はさらに改良されて、URL形式のテキストを自動でハイパーリンクとみなして表示するようになる予定である。現時点ではプレビュー版で試すことができる。

URLが自動でハイパーリンク化される

点滅文字の表示

ハイパーリンクのほかには、点滅文字も表示できるようになっている。点滅文字も、ハイパーリンクと同様にANCIのエスケープコードを利用して記述する。次の図の例のようにコマンドを実行すると、「BLINK!」の文字が点滅で表示される。

「BLINK!」の文字が点滅する

エスケープ文字を環境変数ESCにセットするのはハイパーリンクの例と同様だ。ANCIでは、点滅文字を表すコードはSGR(Select Graphic Rendition)と呼ばれる属性を使用することで表現できる。点滅文字は「SGR 5」で、これをターミナルスタイルのエスケープ文字列で表すと「ESC [ 5 m」のようになる。この文字列の間に挟まれた文字が点滅状態で表示される。

点滅文字は、普通にターミナルを使っているだけではあまり使用する機会はないが、例えばスクリプトの実行中に入力を求める箇所でカーソルを表示させたり、出力結果の一部を強調したりしたいときなどに役に立つ。

その他の変更点

上記以外の細かな変更点としては、次のようなものが挙げられている。

  • タブスイッチャーが、デフォルトで最近使用された順番でタブを切り替えるようになった
  • タブスイッチャーを使用しているときに、切り替え先のタブを確認できるようになった
  • タスクバーのプレビューウィンドウをマウスの中ボタンでダブルクリックすると、確認なしでWindows Terminalを終了できるようになった
  • 右クリックメニューの「Open in Windows Terminal」に、Windows Terminalのアイコンが付くようになった

「Open in Windows Terminal」にアイコンが付いてる


以上がWindows Terminal 1.4で追加された新機能/変更点になる。全体的に小粒な変更だが、冒頭でも触れたようにバージョン1.5以降で追加される各種機能の開発も精力的に行われているため、今後も継続的な改善が期待できるだろう。

参考資料