Windows Terminalにgitのブランチ名を表示する

WSL2のUbuntu 20.04をWindows Terminalで開いた時に、コマンドラインにgitのブランチ名が表示されるようにする。

fontのインストール

コンソールで '▯' と文字化けしないようにfontをインストールする。
以下のリンクからCascadiaCode-2009.22.zipのような名前の最新のファイルをダウンロードする。

https://github.com/microsoft/cascadia-code/releases (opens new window)

ダウンロードしたらzipファイルを解凍し、ttfフォルダを開き、Cascadia Code PLまたはCascadia Mono PLを右クリックし、 すべてのユーザーに対してインストールする。

settings.jsonの変更

Windows Terminalを開き、ctrl + ,のショートカット、あるいはのタブから設定を選択し、settings.jsonを開く。
profiles > defaults > fontFaceにインストールしたフォントを指定する。

settings.json一部抜粋

{
    "profiles":
    {
        "defaults":
        {
            // Put settings here that you want to apply to all profiles.
            "fontFace":  "Cascadia Code PL"
        },
    }
}

powerline-goの設定

powerline-goをインストールしbashに設定することでgitのブランチ名を表示できるようにしていく。

goのインストール

goが入っていない場合は、sudo apt install golang-goあるいはgvmなどでgoをインストールする。

powerline-goをインストール

powerline-goをインストールする。

$ go get -u github.com/justjanne/powerline-go

bashrcの設定

~/.bashrcに以下の記述を追加する。

なお、bash以外での設定方法も記載されている。
https://github.com/justjanne/powerline-go (opens new window)

自分はgvmで入れてGOPATHは設定されていたので、GOPATH=$HOME/goは記述していない。

GOPATH=$HOME/go
function _update_ps1() {
    PS1="$($GOPATH/bin/powerline-go -error $?)"
}
if [ "$TERM" != "linux" ] && [ -f "$GOPATH/bin/powerline-go" ]; then
    PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND"
fi

. ~/.bashrcで設定を読み込み直す。

コマンドラインにgitのブランチ名が表示される

ここまでの設定で、以下のようにコマンドラインにgitのブランチ名が表示される。

Windows Terminal

参考
https://github.com/moovweb/gvm (opens new window)
https://docs.microsoft.com/en-us/windows/terminal/tutorials/powerline-setup (opens new window)
https://github.com/justjanne/powerline-go (opens new window)