wsl2でzsh+prezto+powerline環境を作る

目次

前提

環境を作るたびにググっているので、自分用のメモ

ubuntuでのzshに変更の記事は以前作成したので、差分を中心に更新する。

ubuntuのシェルをzshにする

zshのインストール

UbuntuにZSHをインストールする方法は、aptのパッケージマネージャーを使う方法とソースからインストールする方法の2つ。aptを使用してインストールする。

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install zsh

インストールが完了したら、確認しておく。

zsh --version >> zsh 5.8 (x86_64-ubuntu-linux-gnu)

zshを起動させる。

zsh

以下のようなメッセージがでてくる。あとから設定するので、ここではdo nothingのqのコマンドを入力する。

20230121-1-1.png

q

Prezto

zshの設定のフレームワークのPreztoをインストールして設定していく。これまではOh my zshを使っていたのだが、細かく設定する元気がないので簡単なPreztoで一旦設定していくことにする。

git cloneコマンドでpreztoをcloneする。gitをインストールしていない場合は、インストールしておく。

git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"

zshの設定ファイルを作成する。Preztoが提供しているものをコピーするので、このコマンドはコピペでOK。

setopt EXTENDED_GLOB for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}" done

ターミナル再起動して、zshコマンド。

zsh

以下のように見た目が変わって入れば、Preztoが入っている。

20230121-1-2.png

Preztoは簡単に見た目を変えることができる。サンプルは以下のコマンドでみることができる。

prompt -p

20230121-1-3.png

一部powerlineのfontsが必要なので、インストールする。

sudo apt-get install fonts-powerline

wsl1の場合の差分ここから

windows側にもfontを入れる必要があるので、powershellで以下を実行する。

# clone git clone https://github.com/powerline/fonts.git --depth=1 # install cd fonts ./install.ps1 # clean-up a bit cd .. rm -rf fonts

フォントが入ったら設定->外観->フォントフェイスを選択し、先ほど入れたフォント(https://github.com/powerline/fonts)から好きなフォントを選択し保存をおす。

20230121-1-4.png

スタートアップの規定のプロファイルからUbuntuを選択しておくと、windows terminalを起動した際に最初にubuntuが起動するようになる。

20230121-1-5.png

wsl1の場合の差分ここまで

ターミナル再起動して、zsh。powerilneのfontsを入れたことで、山型が文字化けせずに表示される。

20230121-1-6.png

prompt {テーマ名}を試すことができる。せっかくなので、powerlineのテーマを使用する。

20230121-1-7.png

設定するには~/.zpreztorcの設定を更新する必要がある。

vim ~/.zpreztorc

中程に以下の記述があるので、themeのsorinを任意のテーマに変更する。

zstyle ':prezto:module:prompt' theme 'sorin'

powerlineを適用する場合は以下。

zstyle ':prezto:module:prompt' theme 'powerline'

~/.zpreztorcを編集するついでにmoduleも編集しておく。ここではgitやpython、ssh、autosuggestions、syntax-highlightingなどを追加している。

参考:https://github.com/sorin-ionescu/prezto/tree/master/modules

zstyle ':prezto:load' pmodule \ 'environment' \ 'terminal' \ 'editor' \ 'history' \ 'directory' \ 'spectrum' \ 'utility' \ 'git' \ 'python' \ 'ssh' \ 'completion' \ 'autosuggestions' \ 'history-substring-search' \ 'syntax-highlighting' \ 'prompt'

gitやpythonはcompletionよりも前に記述する必要があるので、留意。

'git' \ 'python' \ 'ssh' \ 'completion' \

'autosuggestions'、'history-substring-search'、'syntax-highlighting'を利用する場合はこの順番で記述する必要があることに留意。

'autosuggestions' \ 'history-substring-search' \ 'syntax-highlighting' \

シェルをzshに変更する

毎回zshと打つのは面倒なので、zshに変更する。

chsh -s /usr/bin/zsh