このページの本文へ

前へ 1 2 次へ

Windows Info 第334回

地道な改良が進む、Windows Terminal Preview v1.13/1.14の改良点を見る

2022年07月03日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

プレビュー版v1.14では
新しいテキストレンダリングエンジンが搭載

 プレビュー版では、v1.13から新しいテキストレンダリングエンジン「Atlas」が搭載されている(安定版には含まれていない)。プレビュー版では、GUI設定のプロファイルの「詳細設定」(Advanced)に「試験的なテキストレンダリングエンジンを有効にする」(Enable experimental text redering engine)があり、ここで設定できる。

 新規のレンダリングエンジンが搭載されたのは、これまで利用していたDirect2Dの制限によるものだ。簡単にいうとDirect2Dのカラールックアップテーブルは20色までしかなく、21色以上を使おうとすると、画面更新の速度が極端に遅くなっていた。ターミナルでは、vtエスケープシーケンスの仕様から、背景、文字色にそれぞれ16色が指定可能なため、異なる32色を利用する可能性がある。そしてDirect2Dのカラールックアップテーブルの最大値は固定であり、今のところMicrosoftには増やす計画もない。

 というわけで、GPUを利用した新しいテキストレンダリングエンジン(Atlas)を開発することになった。これにより、従来はDirect2Dの制限から困難だった機能の実装にも可能性が出てきた。

 もう1つの大きな変更は、Alternate Screen Bufferがきちんと動作するようになった点だ。Alternate Screen Bufferとは、VTエスケープシーケンスの「save screen」「restore screen」などで使われる、もう1つの画面バッファである。vimなどのエディタやLinuxのman、lessコマンドなどを使うと、ターミナルの全画面を専有して起動するが、終了すると起動前の状態に戻る。こうしたときにAlternate Screen Bufferが使われる。

 v1.14でも動作はしていたが、たとえば、vimの起動中にマウスホィールなどでWindows Terminalのスクロールバーを操作してしまうと以前のテキストが見えてしまっていた。Alternate Screen Bufferが正しく動作していると、このような場合にも以前のテキストが見えてしまうことがない。v1.14ではvimなどの起動中にスクロールバーで範囲外を表示しないようになった。

 また、新しいアクションとしてバッファ全体を選択状態とする「selectAll」が追加され、標準で「Ctrl+Shift+A」に割り当てられた。これにより、バッファ全体をコピーするといったことが簡単にできるようになった。以下の表にv1.14でのキー割り当てを示す。

 そのほかの機能としては、IME側に要求するテキスト形式が「AlphanumericHalfWidth」となって、IMEの状態に関係なく、Windows Terminalでは、半角英数で入力されるようになった。もちろん、IMEオン/オフも可能である。タブ内でIEMをオンにしていなければ、他のアプリでIMEをオンにしたあと、Windows Terminalをアクティブにすれば、自動的に半角英数に切り替わる。そもそも、Windowsのコンソールなどにもこのような問題があり、筆者はコマンドラインを使うときには、入力を英語に切り替えていたくらいだ。

 細かな点としては、Windows Terminal内で実行しているシェルからGUIプログラムを起動したとき、ウィンドウがWindows Terminalの上に表示されるようになった。これまでは、実行するGUIプログラムにより、適当な位置にウィンドウが表示されていた。特にマルチディスプレイのとき、開いたウィンドウを見失うというか、見つけられないことがあった。たとえばPowerShellには、「Out-GridView」というGUIウィンドウでデータを表示する機能があるが、このウィンドウが必ずしもターミナルのウィンドウと同じモニターになるとは限らなかった。

 「experimental.useBackgroundImageForWindow」を使うことで、1つのタブを複数のペインに分割したときでも、背景画像を共有可能になる。

 従来はペインごとに独立して背景画像を表示していた。現行のプレビューv1.14.145でこのプロパティをtureにすると、自動的に背景が完全に透明になってしまう。背景全体を覆う背景画像では問題ないが、背景画像の透明部分は背景が抜けてしまう。

 最新のロードマップによれば、今後はしばらくv1.1x系の開発が続く。以前は長期的な目標としてv2.0があったが、現時点では、v2.0という目標は置かず、バージョンアップを続ける方向になったようである。1つにはAtlasのような開発に長期間かかる要素が入ってきたことがある。今回の1.14では、日本語IMEの挙動やAlternate Screen Buffer、管理者権限でのプロファイル起動など、便利な機能や使い勝手を上げる機能が追加された。当面こういう感じでの改良が続くと思われる。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン