最近Macを新調し、Powerline-Shellを導入しようとしたのですが、色んなサイトに断片的な情報が散らばっていて導入完了までにちょっと手こずったので導入手順をここにまとめておきます。
powerline-goというGoで開発されたPowerline-Shellもあるっぽいのですが、うまく動作しなかったので普通のPowrline-Shellを導入することにします。(こっちはPythonで開発されてるぽい)
また、この記事ではHomebrewが事前にインストールされている前提で手順を記載します。
あとすみません、Powerline-Shellと書くのが面倒なのでこの記事ではこれ以降Powerlineという表記に統一します。(厳密には違うものです。参考)
pyenvをインストールする
Powerlineのインストール用スクリプトを実行するためにpyenvをインストールします (Python3系が既にインストール済みであればこのセクションはスキップしても良いかもしれません)
$ brew install pyenv
~/.zshrc
に下記を追記
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
追記が完了したら続けて以下のコマンドを実行します。
$ source ~/.zshrc
Pythonをインストールする
pyenvのインストールが完了したら、続けてPythonもインストールします。
このQiitaの記事を見てみると、バージョン3.9.12のPythonをインストールすれば良さそうです。
$ pyenv install 3.9.12
$ pyenv global 3.9.12
$ python --version # 3.9.12になってたらOK
Powerlineをインストールする
$ cd ~/downloads
$ git clone https://github.com/b-ryan/powerline-shell
$ cd powerline-shell
$ python setup.py install
$ powerline-shell # このコマンドを実行して謎の文字列が表示されればインストール完了
インストールが完了したらcloneしてきたフォルダーは削除しちゃって大丈夫です。
続けて、以下の内容を先程のpyenvの時と同じように~/.zshrc
に追記します。
function powerline_precmd() {
PS1="$(powerline-shell --shell zsh $?)"
}
function install_powerline_precmd() {
for s in "${precmd_functions[@]}"; do
if [ "$s" = "powerline_precmd" ]; then
return
fi
done
precmd_functions+=(powerline_precmd)
}
if [ "$TERM" != "linux" ]; then
install_powerline_precmd
fi
追記ができたら、また先程と同じようにsourceコマンドを実行します。
$ source ~/.zshrc
Nerdフォントをインストールする
最近GitHubがプログラミング用のMonaspaceというフォントをリリースしたのですが、そこにさらにIBM Plex Sans JPなどの日本語フォントをかけ合わせたMoralerspaceというフォントがリリースされ、それがなかなか良さげだった上に、Nerdフォント包括版もリリースされていたので使ってみることにしましょう。
GitHubのReleasesに飛び、MoralerspaceNF_vx.x.xx.zip
というファイルをダウンロードします。NF
というサフィックスがフォント名に付いているものが、Nerdフォントを含むセットです。
zipファイルの中にはttfファイルが入っているので、Font Bookでインストールします。
あとはターミナルの設定から、フォントを今インストールしたものに変更します。
Neon
・Argon
・Xenon
・Radon
・Krypton
と5種類あると思うのですが、個人的にはArgon
が一番見やすく感じました。
設定ファイルを生成する
デフォルトのPowerlineの表示項目が多いように感じるので、設定を変更してもう少しすっきりさせます。(お好みでどうぞ)
mkdir -p ~/.config/powerline-shell && \
powerline-shell --generate-config > ~/.config/powerline-shell/config.json
これで設定を変更するためのjsonファイルが生成されます。
自分のセッティングを載せておきます。
{
"segments": [
"virtual_env",
"username",
"ssh",
"cwd",
"git",
"hg",
"jobs"
]
}
これでターミナルがいい感じに表示されるようになりました!
コメント