新しいPC買って、新規にWindows TerminalとOh My Poshその他諸々を設定しているときに、Oh My Poshのメジャーアップデートにぶち当たって昔のPCから持ってきた設定ファイルが動かなかったので、メモ。
今までの設定
こちらの設定を使ってPowerlineを使えるようにして、よしなな見た目にしていた。
Windows Terminal, PowerShell Core, Git for Windowsをダウンロード後
Install-Module oh-my-posh -Scope CurrentUser -AllowPrerelease
Install-Module posh-git -Scope CurrentUser -AllowPrerelease -Force
code $Profile #以下ファイルを修正
. $Profile #設定を反映
Set-Alias k kubectl.exe
Set-Alias code code-insiders.cmd
Set-Alias which gcm
Set-Alias tig 'C:\Program Files\Git\usr\bin\tig.exe'
Set-Alias grep select-string
Import-Module posh-git
Import-Module oh-my-posh
Set-Theme Agnoster
$global:DefaultUser = [System.Environment]::UserName #Promptを簡易化するために記述
Oh My Poshのアップデート
V3になってめちゃくちゃ変わってる。。。
すべて変更おいきれてないですが。
https://ohmyposh.dev/docs/
Profileを読み込むと、Set-Themeがないと怒られる
起動時に $Profile
を読み込むと、そんなメソッドはないとおこられる。
コマンドすべて変更されている模様。
Set-PoshPrompt -Theme Agnoster
のように変更になったらしい。
プロンプトのアイコンが出ない
今までCascadia Code PLを使えばGitのブランチのアイコンが表示されていたが、アップデートによってNerd fontを使うようになったらしい。
ここにあるように、MesloLGM NFをおすすめされてるが、個人的にしっくりこなかったので、Cascadia CodeのNF対応版Caskaydia Codeをダウンロードしてインストール後、Windows Terminalのフォントの設定とVS Codeの Terminal > Integrated: Font Family
を変更
プロンプトのカスタマイズができない
ユーザ名とホスト名はリモートで作業してない限り、いらないので消してたんですが、これが今まで通りだとうまく行かない。Agnosterとか1行でコマンド入力とプロンプトの両方を表示したいので、なんとかする方法を調べてみたらStackoverflowにあった。
Exportコマンドをうつと、絵文字類が文字化けするので、Githubからテーマのファイルをダウンロードして、.oh-my-posh.jsonとかで保存。Agnosterの場合こちら
- Set-Theme Agnoster
+ Set-PoshPrompt -Theme ~/Documents/PowerShell/.oh-my-posh.omp.json
- $global:DefaultUser = [System.Environment]::UserName
+ $env:POSH_SESSION_DEFAULT_USER = [System.Environment]::UserName
...
{
"type": "session",
"style": "powerline",
"powerline_symbol": "\uE0B0",
"foreground": "#100e23",
"background": "#ffffff",
+ "properties": {
+ "display_default": false
}
},
Posh Gitがデフォルトで有効にならない
Git Repositoryを開いて気づいた。
+ {
+ "type": "poshgit",
+ "style": "powerline",
+ "powerline_symbol": "\uE0B0",
+ "foreground": "#ffffff",
+ "background": "#0077c2"
+ }
+ $env:POSH_GIT_ENABLED = $true
色々修正してプロファイル読み込みし直し
. $Profile
上記4つで一旦マトモに使えるようになりました。
というメモでした。