概要
Microsoftが開発しているWindows 10用のターミナルアプリケーションです。2019年12月現在プレビュー版version 0.7がリリースされています。
開発のマイルストーンは[Milestones - microsoft/terminal] (https://github.com/microsoft/terminal/milestones)で確認できます。
2020/05/20追記
2020/05/19にVersion 1.0がリリースされました。🎉
このリリースにより、GA版とPreview版という2種類のインストールタイプが出来ました。
※この記事のタイトルはもともとWindows Terminal (Preview) メモ
だったのですが、GA版とPreview版ができたことにより、このままだと紛らわしくなるのでWindows Terminal (v0.7 ~ v1.0) メモ
と変更します。
環境
- Windows 10 Professional 1909
- Windows Terminal (Preview) v0.7 → v0.11 (RC2)
- PowerShell Core 6.2
参考
- [Windows Terminal User Documentation] (https://github.com/microsoft/terminal/blob/master/doc/user-docs/index.md)
- [Profiles.json Documentation] (https://github.com/microsoft/terminal/blob/master/doc/cascadia/SettingsSchema.md)
- [Editing Windows Terminal JSON Settings] (https://github.com/microsoft/terminal/blob/master/doc/user-docs/UsingJsonSettings.md)
Version 1.0 リリース (2020/05/20追記)
Microsoftストアからpreview版をインストールしている場合、自動的にアップグレードされていると思います。
[Windows Terminal 1.0] (https://devblogs.microsoft.com/commandline/windows-terminal-1-0/)
また、GA(General Availability)版がリリースされたことにより、インストールできるタイプがGA版とPreview版に分かれました。
Microsoftストアでも別々に用意されていることが分かります。
Preview版は今後リリースされるVersion 2.0の機能が取り込まれていくバージョンになります。
ご注意ください
これ以降の内容はバージョンv0.7 から v0.11(RC2)までをもとにして作成されたものです。
インストール
インストールはMicrosoftストアから行います。検索フィールドに"Windows Terminal"とキーワードを入力して検索し、検索結果に表示された"Windows Terminal (Preview)"をクリック、下図の画面で入手
ボタンをクリックするとインストールが始まります。※上述しましたが2020/05/20以降は正式版とpreview版の2つが存在します。preview版は開発中のものなので気を付けてください。
2019年12月時点でインストールされるバージョンは0.7です。
起動
スタートメニューに登録されているWindows Terminal (Preview)をクリックするとデフォルトのターミナルが起動します(デフォルトはWindows PowerShell)。
タイトルバーの下向き矢印(ドロップダウンメニュー)をクリックするとメニューが表示されます。ここにはそのPCで利用可能なターミナルが反映されていて、任意のターミナルを起動することができます。
私の使っているPCではCMDとWindows PowerShell (v5.1)の他に、PowerShell Core(v6.2)、WSLにUbuntu 18.04を導入しているので、図のようなメニューになっています。
設定
ドロップダウンメニューのSettings
を選択、またはCtrl + ,を押下するとメモ帳でprofiles.json
という設定ファイルが開きます。
Windows Terminalの設定はprofiles.json
を編集することで行います。ファイルを保存するとすぐに反映されるので変更内容を確認しながら設定を行うことが可能です。(画面サイズ等、再起動しないと反映されない項目もあります。)
また、設定内容が正しくなかった場合は図のように画面上に原因箇所を表示してくれます。
初期のprofiles.json
profiles.jsonはGlobal Settings
、Profiles
、Color Schemes
、Key Bindings
のセクションに分かれています。
// To view the default settings, hold "alt" while clicking on the "Settings" button.
// For documentation on these settings, see: https://aka.ms/terminal-documentation
{
"$schema": "https://aka.ms/terminal-profiles-schema",
"defaultProfile": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"profiles":
[
{
// Make changes here to the powershell.exe profile
"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"name": "Windows PowerShell",
"commandline": "powershell.exe",
"hidden": false
},
{
// Make changes here to the cmd.exe profile
"guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
"name": "cmd",
"commandline": "cmd.exe",
"hidden": false
},
{
"guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
"hidden": false,
"name": "PowerShell Core",
"source": "Windows.Terminal.PowershellCore"
},
{
"guid": "{c6eaf9f4-32a7-5fdc-b5cf-066e8a4b1e40}",
"hidden": false,
"name": "Ubuntu-18.04",
"source": "Windows.Terminal.Wsl"
},
{
"guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}",
"hidden": false,
"name": "Azure Cloud Shell",
"source": "Windows.Terminal.Azure"
}
],
// Add custom color schemes to this array
"schemes": [],
// Add any keybinding overrides to this array.
// To unbind a default keybinding, set the command to "unbound"
"keybindings": []
}
defaults.json
設定項目のデフォルト値はdefaults.json
というファイルで管理されています。このファイルの内容を確認するにはドロップダウンメニューのSettingsをAltを押下しながらクリックします。
ドロップダウンメニューのターミナルの並び順
ドロップダウンメニューに表示されるターミナルの並び順はProfilesの記述順になっているので、ここを並び替えればメニューに反映されます。
またメニューの並び順に対応したCtrl + Shift + 1、Ctrl + Shift + 2、Ctrl + Shift + nというショートカットキーがバインドされています。
画面サイズ
Global SettingsのinitialCols
およびinitialRows
で画面サイズを指定します。
"initialCols": 160,
"initialRows": 40,
デフォルトターミナルの選択
Global SettingsのdefaultProfile
に、デフォルトにしたい(Windows Terminalが起動したときに開く)ターミナルのguid
を記述します。
"defaultProfile": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
ターミナルのカスタマイズ
profilesに各ターミナル毎の設定があるので、これを編集してターミナルのカスタマイズを行います。
下記はPowerShell Coreのカスタマイズ例です。
{
"guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
"hidden": false,
"name": "PowerShell Core",
"source": "Windows.Terminal.PowershellCore"
},
{
"guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
"hidden": false,
"name": "PowerShell Core",
"source": "Windows.Terminal.PowershellCore",
"colorScheme": "Solarized Dark",
"cursorShape": "underscore",
"fontSize": 9,
"startingDirectory": "C:\\dev"
},
下記はWSLのUbuntu-18.04のカスタマイズ例です。
{
"guid": "{c6eaf9f4-32a7-5fdc-b5cf-066e8a4b1e40}",
"hidden": false,
"name": "Ubuntu-18.04",
"source": "Windows.Terminal.Wsl"
},
{
"guid": "{c6eaf9f4-32a7-5fdc-b5cf-066e8a4b1e40}",
"hidden": false,
"name": "Ubuntu-18.04",
"commandline": "wsl.exe -d Ubuntu-18.04 -u rubytomato",
"colorScheme": "One Half Dark",
"cursorShape": "underscore",
"fontSize": 9,
"startingDirectory": "//wsl$/Ubuntu-18.04/home/rubytomato"
},
defaults.jsonにいくつかカラースキーマが定義されています。この定義済みカラースキーマを利用するには、profilesの"colorScheme"にカラースキーマ名を記述します。
カラースキーマ名 |
---|
Campbell |
Campbell Powershell |
Vintage |
One Half Dark |
One Half Light |
Solarized Dark |
Solarized Light |
カラースキーマのカスタマイズ
カスタマイズしたカラースキーマをprofiles.jsonの"schemes"に記述して利用することができます。
色の指定は#RRGGBB
または#RGB
で行います。
// Add custom color schemes to this array
"schemes": [
{
"name": "color scheme name",
"foreground": "foreground color",
"background": "background color",
"black": "ANSI black",
"red": "ANSI red",
"green": "ANSI green",
"yellow": "ANSI yellow",
"blue": "ANSI blue",
"purple": "ANSI purple",
"cyan": "ANSI cyan",
"white": "ANSI white",
"brightBlack": "ANSI bright black",
"brightRed": "ANSI bright red",
"brightGreen": "ANSI bright green",
"brightYellow": "ANSI bright yellow",
"brightBlue": "ANSI bright blue",
"brightPurple": "ANSI bright purple",
"brightCyan": "ANSI bright cyan",
"brightWhite": "ANSI bright white"
}
],
キーバインドの確認
defaults.jsonにいくつかキーバインドが設定されています。
コピー/ペースト
- コピー: Ctrl + Shift + c
- ペースト: Ctrl + Shift + v or Ctrl + v
選択しただけでテキストをコピーするにはGlobal SettingsのcopyOnSelect
をtrueにします。(デフォルトはfalse)
なお、Altを押しながらマウスカーソルをドラッグするとブロック選択になります。
"copyOnSelect": true,
タブの追加
- Ctrl + Shift + t
デフォルトのターミナルが追加されます。
タブの複製
- Ctrl + Shift + d
アクティブになっているタブと同じターミナルが追加されます。
ターミナルを選択
- Ctrl + Shift + Space
ドロップダウンメニューが開きます。
タブの移動
- 次のタブ: Ctrl + Tab
- 前のタブ: Ctrl + Shift + Tab
画面分割
version 0.7で導入された機能で([Windows Terminal Preview v0.7 Release] (https://devblogs.microsoft.com/commandline/windows-terminal-preview-v0-7-release/)を参照)、画面を水平分割、垂直分割することができます。
※現時点では分割された画面のターミナルはデフォルトターミナルになります。
- 水平分割: Alt + Shift + -
- 垂直分割: Alt + Shift + +
分割画面の移動はそれぞれAlt + 矢印キーで行います。
- 右へ移動: Alt + Right
- 左へ移動: Alt + Left
- 上へ移動: Alt + Up
- 下へ移動: Alt + Down
分割画面のリサイズはそれぞれAlt + Shift + 矢印キーで行います。
- 分割線を右へ: Alt + Shift + Right
- 分割線を左へ: Alt + Shift + Left
- 分割線を上へ: Alt + Shift + Up
- 分割線を下へ: Alt + Shift + Down
タブ/画面を閉じる
- Ctrl + Shift + w
アクティブな分割画面を閉じます。画面が1つだけの場合はタブを閉じます。
Windows Terminalを閉じる
- Alt + f4
キーバインドのカスタマイズ
profiles.jsonの"keybindings"にキーバインドを設定します。
基本的な書式は下記の通りでコマンドとバインドするキーをマッピングします。使用できるコマンドは[Implemented Keybindings] (https://github.com/microsoft/terminal/blob/master/doc/cascadia/SettingsSchema.md#implemented-keybindings)で確認できます。
{
"command": "コマンド名",
"keys": [ "バインドするキー" ]
}
下記はファンクションキー(F1 - F3)を、タブの切り替えにバインドした例です。
// Add any keybinding overrides to this array.
// To unbind a default keybinding, set the command to "unbound"
"keybindings": [
{ "command": { "action": "switchToTab", "index": 0 }, "keys": ["f1"] },
{ "command": { "action": "switchToTab", "index": 1 }, "keys": ["f2"] },
{ "command": { "action": "switchToTab", "index": 2 }, "keys": ["f3"] }
]
sshクライアント
WindowsのOpenSSHクライアントもプロファイルに登録することができます。
OpenSSH
インストールされていると以下の場所にssh.exeが存在します。
> where ssh
C:\Windows\System32\OpenSSH\ssh.exe
以下はsshの接続先にAWS EC2を指定したときの例です。
profiles.json
profiles.jsonにssh.exe用のプロファイルを登録します。このプロファイルのcommandline
には以下の通りssh.exeと接続先を指定します。
"name": "aws",
"commandline": "C:\\Windows\\System32\\OpenSSH\\ssh.exe aws-ec2",
"icon" : "ms-appx:///ProfileIcons/{9acb9455-ca41-5af7-950f-6bca1bc9722f}.png",
接続先は事前に.ssh/configに登録しておきます。
Host aws-ec2
HostName ec2-xxx-xxx-xxx-xxx.ap-northeast-1.compute.amazonaws.com
User ec2-user
Port 22
IdentityFile "~/.ssh/keypair.pem"
Windows Terminal Preview v0.8 Release
- 参考: [Windows Terminal Preview v0.8 Release] (https://devblogs.microsoft.com/commandline/windows-terminal-preview-v0-8-release/)
Search
ターミナル内を検索する検索機能が追加されました。
デフォルトのキーバインドは Ctrl + Shift + F です。
Retro Terminal Effects (Experimental)
実験的な機能です。
プロファイルに以下の設定を追加すると
"experimental.retroTerminalEffect": true
Enhanced Panes and Tabs Key Bindings
キーバインディングで新しいタブやペインを開くときに、任意のプロファイルを指定できるようになりました。
たとえば以下の設定はCtrl + Aで、新しいタブでcmdプロンプトがD:\devで開きます。
"keybindings": [
{
"command": {
"action": "newTab",
"tabTitle": "dev",
"profile": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
"startingDirectory": "D:\\dev"
},
"keys": ["ctrl+a"]
}
]
Custom Default Settings
デフォルトのプロファイル設定という概念が導入されました。
もともとはこのようなフォーマットですが
"profiles": [
{
// 個々のプロファイルの設定をここに記述
},
{
// 個々のプロファイルの設定をここに記述
},
{
// 個々のプロファイルの設定をここに記述
}
]
デフォルトプロファイルの記述は以下のようになります。defaultsに同じ設定にしたい項目(たとえばフォントサイズやフォントファミリーなど)をまとめて記述できます。
個々のプロファイルに記述した設定はデフォルト設定をオーバーライドします。
"profiles": {
"defaults": {
// デフォルトのプロファイル
// すべてのプロファイルに適用される設定をここに記述
},
"list": [
{
// 個々のプロファイルの設定をここに記述
// 個別設定がオーバーライドされる
},
{
// 個々のプロファイルの設定をここに記述
},
{
// 個々のプロファイルの設定をここに記述
}
]
}
Tab Sizing
グローバルプロパティにtabWidthModeというタブの表示幅をコントロールする新しいプロパティが追加されました。
デフォルトは"equal"で、タブの表示幅は等分になります。
"tabWidthMode": "equal"
従来の挙動に戻したい場合は"titleLength"を設定します。タブがウィンドウ幅に収まらない場合は左右にスクロール用の<
>
が表示されます。
"tabWidthMode": "titleLength"
Windows Terminal Preview v0.9 Release
- 参考: [Windows Terminal Preview v0.9 Release] (https://devblogs.microsoft.com/commandline/windows-terminal-preview-v0-9-release/)
2020年2月13日にv0.9がリリースされました。予定では次のリリースが正式版(v1.0)になるとのことです。
Command Line Arguments
wt.exe
(Windows Terminalの実行プログラム)が引数をサポートしました。引数に開始するディレクトリや使用したいプロファイルを指定することができます。
引数無しで実行するとデフォルトプロファイルが開きます。
> wt
-d
-d
で開始するディレクトリを指定できます。
この例はカレントディレクトリをデフォルトプロファイルで開きます。
> wt -d .
-p
-p
でプロファイルを指定できます。指定する値はprofiles.jsonで記述したプロファイル名です。(GUIDでも指定できます)
この例はカレントディレクトリをcmdプロファイル(つまりcmd.exe)で開きます。
> wt -d . -p "cmd"
なお、下記のように-p
でプロファイルを指定せずにcmd.exeやwsl.exeなどのターミナルプログラムを直接指定すると、デフォルトプロファイル(配色やフォントなどの設定)で、そのプログラムが起動します。
> wt -d . wsl.exe
new-tab
複数のタブを開きたい場合はセミコロンで区切り、new-tab
サブコマンドを使用します。
この例は1つ目のタブでカレントディレクトリをデフォルトプロファイルで、2つ目のタブをc:\devディレクトリをcmdプロファイルで開きます。
> wt -d . ; new-tab -d c:\dev -p "cmd"
focus-tab
複数のタブを開いたとき、デフォルトでは最後に開いたタブがフォーカスされていますが、任意のタブをフォーカスしたい場合はfocus-tab
サブコマンドと-t
オプションでタブのインデックス(最初のタブが0)を指定します。
この例は3つのタブを開き、2番目のタブをフォーカスします。
> wt -d . ; new-tab -d c:\dev ; new-tab -d d:\dev ; focus-tab -t 1
split-pane
ターミナルを複数に分割する場合はセミコロンで区切り、split-pane
サブコマンドを使用します。分割方向は-V
(垂直分割)、-H
(水平分割)です。
> wt -p "Ubuntu-18.04" ; split-pane -V -p "Ubuntu-18.04"
この例は最初に垂直に2分割し、右側をさらに水平に2分割します。
> wt -p "Ubuntu-18.04" ; split-pane -V -p "Ubuntu-18.04" ; split-pane -H -p "Ubuntu-18.04"
new-tabとsplit-pane
ターミナルの分割は現在のタブに対して行われるので、2つのタブを開きそれぞれ分割する場合は、下記のようにサブコマンドの実行順に注意する必要があります。
この例では2つのタブ(1つ目はデフォルトプロファイル、2つ目はUbuntu-18.04)を開き、1つ目のタブを2分割、2つ目のタブを3分割します。
> wt ; split-pane -V ; new-tab -p "Ubuntu-18.04" ; split-pane -V -p "Ubuntu-18.04" ; split-pane -H -p "Ubuntu-18.04"
Auto-Detect PowerShell
端末に複数のPowerShellがインストールされていると、自動検出してプロファイルを構成してくれます。
※この機能は動作確認していません。
Confirm Close All Tabs
複数のタブを開いている状態でWindows Terminalを終了しようとしたときに、すべてのタブを閉じてよいか確認ダイアログが表示されますが、この確認をするかprofiles.jsonで指定できるようになりました。
下記のconfirmCloseAllTabs
をfalseに設定すると確認されなくなります。
"confirmCloseAllTabs": false,
Other Improvements
いくつかの改善が追加されています。
・ CMDやPowerShellではウィンドウにファイルをドラッグ&ドロップすると、カーソルの位置にそのファイルの絶対パスが表示されますが、この機能がWindows Terminalで開いたターミナルでもサポートされました。
・ Ctrl + InsとShift + Insがデフォルトでコピーとペーストにバインドされました。
・ Shiftを押しながらマウスを左クリックすると選択範囲が拡大します。
下のgifのように、マウスである範囲を選択した状態で、さらにShiftを押しながらマウスを左クリックするとその位置まで選択範囲が広がります。
・ VS Code keys used for key bindings are now supported (i.e. "pgdn" and "pagedown" are both valid)!
キーバインディングに使用されるVSコードキーがサポートされるようになりました(つまり、「pgdn」と「pagedown」の両方が有効です)。
※これは動作未確認です。
Windows Terminal Preview v0.10 Release
- 参考: [Windows Terminal Preview v0.10 Release] (https://devblogs.microsoft.com/commandline/windows-terminal-preview-v0-10-release/)
Mouse Input
ターミナルで開いたWSL上でマウス入力をサポートしました。こちらは参考にあげたリリースページをご覧ください。
Duplicate Pane
splitPane
に新しいオプションsplitMode
が追加されました。
これまではペインの複製にデフォルトのプロファイルが利用されていましたが、アクティブなプロファイルでペインを複製できるようになりました。
このキーバインドはアクティブなプロファイルがなんであれ、複製するペインのプロファイルはデフォルトプロファイルですが、
{ "command": { "action": "splitPane", "split": "auto"}, "keys": ["ctrl+a"] }
以下のように"splitMode": "duplicate"
をキーバインドに追記すると、アクティブなプロファイルでペインが複製されます。
{ "command": { "action": "splitPane", "split": "auto", "splitMode": "duplicate"}, "keys": ["ctrl+shift+a"] }
Miscellaneous
Ctrl + Shift + Wheelでアクリルモードの透明度(acrylicOpacity
)を動的に変更できるようになりました。
アクリルはprofiles.jsonで有効にできます(この機能は以前から)。たとえば以下のように設定すると
"profiles": {
"defaults": {
"useAcrylic": true,
"acrylicOpacity": 0.3
},
}
この状態でCtrl + Shiftを押しながらマウスホイールをスクロールすると透明度が徐々に変わっていきます。
Windows Terminal Preview v0.11 Release
- 参考: [Windows Terminal Preview v0.11 Release] (https://devblogs.microsoft.com/commandline/windows-terminal-preview-v0-11-release/)
Localization
上の図のとおりローカライズされました。ただ下記引用のとおりまだ完全ではないようです。
We are still working out the bugs with this, so please bear with us.
------------------------------------------------------------------
まだバグの修正を行っていますので、ご容赦ください。
Settings updates
設定ファイルに変更が加えられました。
バージョン0.11以前からTerminalを利用している場合は設定ファイルを再作成することを勧められています。
設定ファイルの再作成方法は以下の通りです。
- 既存の設定ファイル(settings.json)をバックアップします。
- Terminalを終了した状態で設定ファイル(settings.json)を削除します。
- Terminalを起動すると設定ファイルが自動生成されます。
- 自動生成された設定ファイルにバックアップした設定ファイルの内容を反映します。(ファイルを上書きするという意味ではなく、カスタマイズした内容を新しい設定ファイルに改めて適用します)
Settings.json
いままでは設定ファイルはprofiles.json
という名前でしたが、このバージョンからsettings.json
になりました。
Terminal起動時に自動的にファイル名が更新されます。
Cascadia Code
Terminalで自動生成されるプロファイルのデフォルトフォントにCascadia Codeが設定されます。
任意のフォントを利用したい場合はfontFace
プロパティで指定します。
Tango color schemes
ビルトインのカラースキーマに"Tango Dark"と"Tango Light"が追加されました。
cursorColor
cursorColor
プロパティでカーソルの配色を決めることができます。
Copy and paste
settings.json
を新しく作成しなおした場合、コピーとペーストはそれぞれCtrl + CとCtrl + Vにバインドされます。
新しく作成したsettings.json
には下記のキーバインドが設定されています。
// Copy and paste are bound to Ctrl+Shift+C and Ctrl+Shift+V in your defaults.json.
// These two lines additionally bind them to Ctrl+C and Ctrl+V.
// To learn more about selection, visit https://aka.ms/terminal-selection
{ "command": { "action": "copy", "singleLine": false }, "keys": "ctrl+c" },
{ "command": "paste", "keys": "ctrl+v" },
なお、従来のCtrl + Shift + CとCtrl + SHift + Vも有効です。
Formatted copying
settings.json
を新しく作成しなおした場合、global設定にcopyFormatting
というプロパティが追加されます。
デフォルトはfalseでプレーンテキストのみコピーします。trueに変えると、選択したテキストの色とフォントのフォーマットもクリップボードにコピーされます。
“Globals” namespace
設定ファイルの"globals"プロパティはサポートされなくなりました。"globals"プロパティを設定している場合は、その設定をルートへ移動させる必要があります。
Application theme
global設定のrequestedTheme
プロパティはtheme
にリネームされました。
Copying as a single line
copyTextWithoutNewlines
とtrimWhitespace
コマンドが削除され、コピーするキーバインドにsingleLine
という引数が追加されました。trueにするとTerminalでコピーした複数行のテキストはペーストすると1行になります。
{ "command": { "action": "copy", "singleLine": true }, "keys": "ctrl+alt+c" }
Creating a tab of a specific profile
特定のプロファイルで新しいタブを作成するキーバインドのフォーマットが変わりました。
newTabProfile0
からnewTabProfile8
までのコマンドが削除され、index
プロパティが追加されました。このプロパティに新しいタブのプロファイルのindexを指定します。indexはプロファイルの並び順で0から始まります。
{ "command": { "action": "newTab", "index": NUMBER }, "keys": "ctrl+shift+NUMBER" }
※indexプロパティのNUMBERには0~の数字を割り当て、keysプロパティのNUMBERには任意のキーを割り当てます。上記のままsettings.jsonに書いてもエラーになります。
Navigating to a specific tab
タブ選択のキーバインドのフォーマットが変わりました。
switchToTab0
からswitchToTab8
までのコマンドが削除され、index
プロパティが追加されました。
このプロパティにタブのindexを指定します。indexはタブの並び順で一番左が0です。
{ "command": { "action": "switchToTab", "index": NUMBER }, "keys": "ctrl+alt+NUMBER" }
※indexプロパティのNUMBERには0~の数字を割り当て、keysプロパティのNUMBERには任意のキーを割り当てます。上記のままsettings.jsonに書いてもエラーになります。
Splitting panes
splitHorizontal
とsplitVertical
コマンドが削除され、ペインを分割するキーバインドのフォーマットが変わりました。
{ "command": { "action": "splitPane", "split": "horizontal"}, "keys": "alt+shift+-" },
{ "command": { "action": "splitPane", "split": "vertical"}, "keys": "alt+shift+plus" }
Focusing between panes
moveFocusDown
, moveFocusUp
, moveFocusLeft
, moveFocusRight
コマンドが削除され、ペインのフォーカスを変えるキーバインドのフォーマットが変わりました。
{ "command": { "action": "moveFocus", "direction": "down" }, "keys": "alt+down" },
{ "command": { "action": "moveFocus", "direction": "up" }, "keys": "alt+up" },
{ "command": { "action": "moveFocus", "direction": "left" }, "keys": "alt+left" },
{ "command": { "action": "moveFocus", "direction": "right" }, "keys": "alt+right" }
Resizing panes
resizePaneDown
, resizePaneUp
, resizePaneLeft
, resizePaneRight
コマンドが削除され、アクティブなペインのリサイズをするキーバインドのフォーマットが変わりました。
{ "command": { "action": "resizePane", "direction": "down" }, "keys": "alt+shift+down" },
{ "command": { "action": "resizePane", "direction": "up" }, "keys": "alt+shift+up" },
{ "command": { "action": "resizePane", "direction": "left" }, "keys": "alt+shift+left" },
{ "command": { "action": "resizePane", "direction": "right" }, "keys": "alt+shift+right" }
Changing the font size
decreaseFontSize
, increaseFontSize
コマンドが削除され、フォントサイズを変更するキーバインドのフォーマットが変わりました。
テンキーパッドの-は効きません。またフォントサイズを大きくする場合は、実質Ctrl + Shift + -になります。
{ "command": { "action": "adjustFontSize", "delta": -1 }, "keys": "ctrl+-" },
{ "command": { "action": "adjustFontSize", "delta": 1 }, "keys": "ctrl+=" }
補足
Windows Terminalのアップデート
インストールしたWIndows Terminalのアップデートは自動的に行われているようですが、新しいバージョンのリリース直後など、すぐにアップデートしたい場合は、Microsoft Storeから手動でアップデートします。
Microsoft Storeを起動してマイライブラリにアクセスすると、更新可能であれば下図のように表示されています。
”利用可能な更新プログラム”の右側のダウンロードアイコンをクリックするとアップデートが始まります。
GUIDの発行
- 参考: [Generate a GUID in Windows 10 (Globally Unique Identifier)] (https://winaero.com/blog/generate-new-guid-in-windows-10/)
profile.jsonに新しいプロファイルを登録するとき、プロファイルを一意に識別するためのGUIDを設定する必要がありますが、下記のPowerShellコマンドで発行できます。
> [guid]::NewGuid()
Guid
----
8240bd89-2c9e-4594-9877-18465af49581
プロンプトのカスタマイズ
- 参考: [How to make a pretty prompt in Windows Terminal with Powerline, Nerd Fonts, Cascadia Code, WSL, and oh-my-posh] (https://www.hanselman.com/blog/HowToMakeAPrettyPromptInWindowsTerminalWithPowerlineNerdFontsCascadiaCodeWSLAndOhmyposh.aspx)
参考にあげたページで紹介されているPowerShell Core プロンプトのカスタマイズ例です。
この例の前提としてGit for Windowsがインストールされている必要があります。
※注意)このカスタマイズを行うとPowerShell Core単体で実行した場合のプロンプトの表示が少しおかしくなります。
モジュールのインストール
PowerShell Coreを開き、下記コマンドを実行してposh-git、oh-my-posh、PSReadLineをインストールします。
Install-Module posh-git -Scope CurrentUser
Install-Module oh-my-posh -Scope CurrentUser
Install-Module -Name PSReadLine -AllowPrerelease -Scope CurrentUser -Force -SkipPublisherCheck
プロファイルの編集
コマンドラインに$PROFILE
と入力してEnterを押すと、プロファイルの場所がわかります。
> $PROFILE
プロファイルをテキストエディタで開き、下記の行を追記します。
3行目はテーマで個人の好みに合わせて設定できます。この例ではParadox
を使用しています。
Import-Module posh-git
Import-Module oh-my-posh
Set-Theme Paradox
フォントのインストール
デフォルトのCascadia Codeではプロンプトの文字が一部文字化けするので、Cascadia Code PLというフォントを[microsoft / cascadia-code] (https://github.com/microsoft/cascadia-code/releases)よりダウンロードしてインストールします。
Windows Terminalのprofiles.jsonを開き、使用するフォントをCascadia Code PLへ変更します。
"fontFace": "Cascadia Code PL",