❤️

きゃわzshテーマ(powerlevel10k)

2024/02/29に公開

おはようございます、こんにちは、こんばんは。
スペースマーケットでWebエンジニアをしています、s0arです。

YouTubeくんが猫ミームを無限にオススメしてくるようになりました。
猫ミーム以外も見たいンゴ

この記事 is 何

zshをきゃわにするテーマ、Powerlevel10kを導入する記事です。

https://github.com/romkatv/powerlevel10k

自宅のWindows PCを新調した際、WSLに導入したので、その備忘録です。
あくまで本題は以下の導入で、WSLについてはめちゃくちゃ蛇足です。

  • zsh
  • zplug
  • prezto
  • powerlevel10k
    • これ以外のテーマもたぶん手順は同じ

zshを使っている(使おうと思っている)方にはオススメできる記事になっているはずです。
たぶん。きっと。

環境

ホストOS: Windows 11 Home
WSL: Ubuntu 22.04.4 LTS

導入していく

WSL

難しいことは何もありません。

PowerShellを起動して、以下入力してッターン!

wsl --install

インストールが完了したら、Windowsターミナルで開けるようになるので開きます。
初回起動時にユーザー名とパスワードの設定を求められるので設定します。

以上でWSLの最低限の構築は完了です。簡単すぎて草

brew

brew入れる前にaptの更新をしておきます。

sudo apt update
sudo apt upgrade

そしたらbrew入れます

https://brew.sh

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

パス追加しろって言われるのでします

(echo; echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"') >> /home/s0ar/.bashrc
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

これもやっとけって言われるのでします

sudo apt install build-essential
brew install gcc

brewおわり!

もろもろのインストールがうまくいかない(パッケージが取得できない)場合

DNSの設定がおかしい場合があります。
その場合は以下の手順で解決します。

  1. /etc/resolv.confを削除
sudo rm -f /etc/resolv.conf
  1. /etc/wsl.confを編集

以下追記

/etc/wsl.conf
# 起動時に/etc/resolv.confを生成しない
[network]
generateResolvConf = false
  1. WSLを再起動

PowerShellで以下を実行します

wsl --shutdown

WindowsターミナルでWSLにログインします。

  1. /etc/resolv.confを新規作成

以下追記

/etc/resolv.conf
# Google Public DNSを使う
nameserver 8.8.8.8

zsh

brew install zsh
which zsh | sudo tee -a /etc/shells
chsh -s /home/linuxbrew/.linuxbrew/bin/zsh

.zshrcに以下追記

.zshrc
# brew
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

これでコンソール再起動なりなんなりすればzshで起動します。
やったね!

zplug & prezto

https://github.com/zplug/zplug

zshのプラグインマネージャーです。

brew install zplug

.zshrcに以下追記

.zshrc
# zplug
export ZPLUG_HOME=/home/linuxbrew/.linuxbrew/opt/zplug
source $ZPLUG_HOME/init.zsh

# Also prezto
zplug "modules/prompt", from:prezto

# Install plugins if there are plugins that have not been installed
if ! zplug check; then
    printf "Install? [y/N]: "
    if read -q; then
        echo; zplug install
    fi
fi

# Then, source plugins and add commands to $PATH
zplug load

これでzplugとpreztoがインストールされます。
preztoはインストールされただけでセットアップは終わっていないので次項でセットアップします。

preztoのセットアップ

https://github.com/sorin-ionescu/prezto

preztoはzshの設定をするためのフレームワークです。
zshをもっと便利にしてくれるいいカンジのやつです。
自動補完が強くなったり普通に便利なので入れておいて損はないです。

# preztoセットアップ時に.zshrcがpreztoのzshrcへのシンボリックリンクに置き換わるので予め移動しておく
mv .zshrc .zshrc_bk
# preztoのセットアップ
ln -s $ZPLUG_HOME/repos/sorin-ionescu/prezto $HOME/.zprezto
setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do
  ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
done

このあと、バックアップしておいた.zshrc_bkの内容を.zshrcにコピります。

Powerlevel10k

真打ち登場です。

.zpreztorcに以下追記

.zpreztorc
# powerlevel10k
zstyle :prezto:module:prompt theme powerlevel10k

ターミナル開き直すと、powerlevel10kのセットアップウィザードが開始します。
好みに合わせて問いに答えれば、あなた好みのきゃわテーマができます。
また、再設定は、以下のコマンドで可能です。

p10k configure

色変更もできます。
ホームディレクトリの.p10k.zshをいじりましょう。

たとえば、カレントディレクトリ表示部の背景色は以下の行で変更できます。

.p10k.zsh
  ##################################[ dir: current directory ]##################################
  # Current directory background color.
  typeset -g POWERLEVEL9K_DIR_BACKGROUND=198

zshで使用できるカラーコード一覧を確認するスクリプトを置いておきます。

colors.zsh
for i in $(seq 0 255); do
  printf "\e[48;5;${i}m%03d\e[0m " $i
  if (( (i+1) % 16 == 0 )); then
    echo
  fi
done

きゃわ❤

まとめ

自分好みのきゃわなテーマでテンション上げていきましょう〜
シェルのカスタマイズは沼なので用法用量を守って正しく楽しみましょう。
CLI苦手な方も沼に飛び込めば好きになるかもしれませんね(ニッコリ)

GitHubで編集を提案
スペースマーケット Engineer Blog

Discussion