コマンドライン使っていますか?
便利な機能やサービスが増えれば増えるほど、
コマンドラインを使う機会が多くなってきましたね。
Windowsでコマンドラインといっても
コマンドプロンプトやPowerShell、WSL(Windows Subsystem for Linux)など
いろんなシェルも使うし、気づいたらウィンドウだらけ。
Windowsって標準でタブ化できないんです…
タブ化するためにConEmuというアプリケーションを使ってきましたが、
バッファがおかしくなってしまって操作できなくなる事も。
そこで、まだプレビュー版ですがMicrosoftが開発している
Windows Terminal v0.8が公開されたので使ってみました。
Windows Terminalとは
Microsoftが開発しているオープンソースのターミナルアプリケーション
2020年1月14日に「Windows Terminal Preview v0.8 」が公開されました。
2020年4月に正式版をリリース予定
特徴
- ・コマンドプロンプトやPowerShell、WSLなどのシェルに対応
- ・タブ機能
- ・ペイン分割
- ・UTF-8及びUTF-16のサポート
- ・IME入力対応
- ・GPUによるDirectXベースの高速なテキスト描画
- ・バッファ内のテキスト検索
- ・テーマの変更
- ・CRTディスプレイのようなレトロ効果
インストール
対応OS: Windows 10 May 2019 Update(バージョン 1903)以降
Microsoft Storeを開き「Windows Terminal」と検索してインストール。
使い方
これだけ覚えておけばだいたいなんとかなる。
キーバインドは、いつも変更せずに使っています。
環境が変わってもデフォルトを覚えておけば済むからって理由。
デフォルトのキー割り当て
対応するプロファイルのシェルを開く | [Ctrl] + [Shift] + [1] ~ [9] |
新規タブ | [Ctrl] + [Shift] + [T] |
垂直ペイン分割 | [Alt] + [Shift] + [+] |
水平ペイン分割 | [Alt] + [Shift] + [-] |
ペインを閉じる | [Ctrl] + [Shift] + [W] |
コピー | [Ctrl] + [Shift] + [C] |
貼り付け | [Ctrl] + [Shift] + [V] |
テキスト検索 | [Ctrl] + [Shift] + [F] |
設定
プルダウンメニューで「Settings」を選択するとprofiles.jsonが
規定のエディタで開くので編集して保存すると反映されます。
デフォルトプロファイル
デフォルトで開かれるシェルのプロファイルを指定します。
設定したいプロファイルの”guid”をセット。
"defaultProfile": "{2c4de342-38b7-51cf-b940-2309a097f518}",
フォント
“fontFace”でフォントを、”fontSize”でサイズを指定します。
Windows Terminalに同梱された「Cascadia Code」を設定してみました。
これもMicrosoftが開発したターミナルやコードエディタ向けの等幅フォント。
{
"guid": "{2c4de342-38b7-51cf-b940-2309a097f518}",
"name": "Ubuntu",
"source": "Windows.Terminal.Wsl",
"fontFace": "Cascadia Code",
"fontSize": 10
}
起動時のディレクトリ
“startingDirectory”に起動時のディレクトリを指定できます。
{
"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"name": "Windows PowerShell",
"commandline": "powershell.exe",
"startingDirectory": "c:\\pyprojects"
},
WSLの場合は “commandline”で指定します。
例ではホームディレクトリ「~」を設定しています。
{
"guid": "{2c4de342-38b7-51cf-b940-2309a097f518}",
"name": "Ubuntu",
"source": "Windows.Terminal.Wsl",
"commandline": "wsl.exe ~ -d Ubuntu"
}
背景画像
かわいい背景画像も設定できちゃいます。
{
"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"name": "Windows PowerShell",
"commandline": "powershell.exe",
"backgroundImage": "C:\\img\\jixiao.jpg",
"backgroundImageOpacity": 0.75,
"backgroundImageStrechMode": "fill"
}
レトロ効果
v0.8から実験的に導入されたレトロ効果です。
“experimental.retroTerminalEffect”: true を設定するとできるらしいのですが、僕の環境では反映されませんでした。
{
"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"name": "Windows PowerShell",
"commandline": "powershell.exe",
"experimental.retroTerminalEffect": true
},
プロファイルの共通設定
“defaults” に共通化したい項目をセット。各プロファイルを”list” に設定すれば、
プロファイルの設定を共通化することができます。
"profiles": {
"defaults": {
"fontFace": "Cascadia Code",
"fontSize": 10
},
"list": [
{
"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"name": "Windows PowerShell",
"commandline": "powershell.exe"
},
{
"guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
"name": "cmd",
"commandline": "cmd.exe"
},
{
"guid": "{2c4de342-38b7-51cf-b940-2309a097f518}",
"name": "Ubuntu",
"source": "Windows.Terminal.Wsl"
}
]
},
その他の設定はドキュメントを参照してみてください。
https://github.com/microsoft/terminal/blob/master/doc/cascadia/SettingsSchema.md
Windows Terminalを使ってみて
Windows Terminalを使えば
コマンドプロンプトやPowerShell、WSLを1つに統合できるので
コマンドライン環境がとてもスッキリしました。
WSLを使っているならWindows Terminalとの相性はよさそう。
どちらもMicrosoftですからね。
まだプレビュー版ということもあって、
ペイン分割がデフォルトのシェルしか開かなかったり、
レトロ効果を試してみたかったのですが…反映しなくて残念。
今のところアプリケーションが落ちてしまったり、
バッファがおかしくなるということはありませんでした。
今後のバージョンアップに期待して、このまま使い続けようと思います。
2020年4月の正式版リリースが楽しみですね。