iTerm2とstarshipでterminalとshellをお洒落にしました!の記事を見て、自分もやってみたいなと思ったのでやってみたんだよん。
ただし、環境はWindows Terminal & PowerShellだよん。
説明文もだよんだよんしてたらくどかったからやめたんだよん
作業の流れ
- Windows Terminal + starship環境のために必要なものを事前に準備
- Windows Terminalとstarshipをインストール
- それぞれの環境設定ファイルをカスタマイズ
事前準備
starshipのインストールガイドから、以下の準備が必要なことが分かる。
- Powerlineフォント
- scoop
Powerlineフォント
やみかわスタイルに揃えるため、フォントはFiraCode Nerd Fontを選択。[DL]
もちろん、他のPowerlineフォントでもOK。
ダウンロードしたフォントからRegularを選んでダブルクリックすると下の画像のようなWindowが表示されるので、インストールをクリック。
scoop
scoopはwindowsのパッケージ管理システム的なもの(aptみたいな)(説明が雑)
Windows環境でstarship導入するには、おそらくこれが一番楽でしょう。
scoop公式にインストール方法が載っているので、さくっと導入。
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
インストール
Windows Terminal
Windows Storeからインストールするか、scoopのextras bucketから導入することができます。
starship用にscoopを入れたし、せっかくなので(?)scoopからインストール。
scoop bucket add extras
scoop install windows-terminal
extras bucketとはなんぞや、という点についてはこちらの記事をどうぞ。
starship
インストールガイドのscoopの場合に従って、コマンドを入力
scoop install starship
次に初期化スクリプトの記述ですが、環境によって記述先が変わる模様。
古いPowerShell(手元だと5.1.18362.628)だと~/Documents/WindowsPowerShell/Microsoft.PowerShell_profile.ps1
、
最新(7.0.0)なら~/Documents/PowerShell/Microsoft.PowerShell_profile.ps1
がデフォルトのようです。
手元のPowershellで$PROFILE
を表示させた先に書き込むのが確実です。
設定ファイルの変更
インストールすればとりあえずデフォルトの設定で動くんですが、きれいに表示されないはず(主にフォントのため)
ということで、設定を変更していきます。
Windows Terminal設定
設定ファイルは、Windows Terminalがアクティブな状態でCtrl+,
を入力すると開きます。
ひとまずPowerShell環境のフォントを変えるので、こんな感じに。
{
...
"profiles": [
{
// Make changes here to the powershell.exe profile
"guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
"name": "Windows PowerShell",
"commandline": "powershell.exe",
"hidden": false,
"fontFace": "FiraCode Nerd Font"
},
...
]
}
Windows Terminalはまだβ版(現時点で0.9.433.0
)なので、設定方法も今後変わる可能性があります。環境構築時点での最新情報は要チェック!
starship設定
~/.config/starship.toml
にファイルを作成して、設定を書いていけばOK。
まあ今の私の設定は参考にした記事のスタイルまんまですが…
環境構築結果
というわけで、Windows Terminal + starshipでやみかわPowerShellだよん。
あとはiTerm2
で設定しているカラー設定をWindows Terminal
のカラースキーマに落とし込めれば完璧でしたが、sRGB形式のエクスポートファイルの内容をColor Codeに変換できないんだよん……