⌨️

ぼくがかんがえたさいきょうのターミナル環境を作る

5 min read

こんなのをめざすよ

前提とか

  • この手順は主に自分用のメモなので大事なところの説明が抜けてるかもしれないよ
  • Windows Terminalから wsl2(Ubuntu-20.04-LTS) をつかうよ

Powerline対応フォントインストール

zpreztoPowerLevel10kテーマを使うので、それに対応したやつを入れる

romkatv/powerlevel10k から以下をお好みで。

Windows Terminalの設定いじる

Ctrl+,してsettings.jsonを編集。
各パラメータ値はお好みでいじってください

直下のとこ

settings.json
"defaultProfile": "Ubuntu-20.04",

"initialRows": 50,
"initialCols": 200,

profiles/defaultsの中

settings.json
"startingDirectory": ".",

"fontFace": "MesloLGS NF",
"fontSize": 9,
"antialiasingMode": "cleartype",

"useAcrylic": true,
"acrylicOpacity": 0.95

profiles/list/Ubuntuの中

開始位置をWSL側のホームディレクトリにする

settings.json
"startingDirectory": "//wsl$/Ubuntu-20.04/home/{user-name}",

{user-name}はWSLのユーザー名で。

いざWSLへ

sudoをパスワードなしでできるように

WSLだと面倒なだけだし、ね

sudo visudo

して

- %sudo   ALL=(ALL:ALL) ALL
+ %sudo   ALL=(ALL:ALL) NOPASSWD:ALL

とりあえず更新

sudo apt update
sudo apt upgrade

Homebrewインストール

公式通りに入れて

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

インストール後の指示に従う。

sudo apt install build-essential
echo 'eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)' >> ~/.profile
eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
brew install gcc

doctorしておく

brew doctor

適宜対応。

zshインストール

brew install zsh

デフォルトシェルを切り替える

which zsh | sudo tee -a /etc/shells
chsh -s `which zsh`

したあと、Windows Terminal立ち上げ直す

zshの初期設定

preztoを入れるので、ここでは即Quit

preztoインストール

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

おわったら

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

zshにもHomebrewのパスとおす

echo 'eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)' >> ~/.zprofile
eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)

ここで一旦シェル再ログイン(Windows Terminalを再起動)

Powerline導入

preztoのテーマをPowerLevel10kに変更

prompt -s powerlevel10k

Powerlevel10kのウィザードが出るのでお好みで。

再設定したいときは p10k configure を叩くとまたウィザードが出てくる

終わったら、~/.zshrcに以下追記

~/.zshrc
autoload -Uz promptinit
promptinit
prompt powerlevel10k

素敵コマンド類をいれる

exa

llをいい感じにしてくれるやーつ。

brew install exa

インストールしたら

exa -l -aa -h -@ -m --icons --git --time-style=long-iso --color=automatic --group-directories-first

とかするとちょっと感動する。

bat

シンタックスハイライトができるcat

brew install bat

コマンドもそこまで変わらないので、こっちは特にaliasとかはいいかな。

zsh-syntax-highlighting

zshのコマンドをいい感じにハイライトするやーつ。

brew install zsh-syntax-highlighting

インストールしたら ~/.zshrc

~/.zshrc
source /home/linuxbrew/.linuxbrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

を追記して source ~/.zshrc

gitの設定

GitをaptではなくHomebrewで入れる

aptだとバージョン上がらないみたいなので……

brew install git

sudo apt purge git はしちゃダメ。
brew upgrade gitの中で git config --replace-all homebrew.private true をしようとするときにコケる

git-completionを有効化

~/.zshrc に追記

~/.zshrc
fpath=($(brew --prefix)/share/zsh/site-functions $fpath)

autoload -U compinit
compinit -u

したら source ~/.zshrc

diff-highlightをパス通す

sudo chmod +x /home/linuxbrew/.linuxbrew/share/git-core/contrib/diff-highlight/diff-highlight
sudo ln -s /home/linuxbrew/.linuxbrew/share/git-core/contrib/diff-highlight/diff-highlight /usr/local/bin/diff-highlight

その他zsh設定

使い慣れてたaliases

とりあえず~/.zshrcへ。

~/.zshrc
alias g=git
alias ll="exa -l -h -@ -mU --icons --git --time-style=long-iso --color=automatic --group-directories-first"
alias l="ll -aa"

ぶちこんだら、

source ~/.zshrc

sudoeditがnanoなのは嫌なの

コマンドで設定変える

sudo update-alternatives --config editor

~/.zprofileに環境変数ぶちこむ

~/.zprofile
export EDITOR=vi
export SUDO_EDITOR=vi

タブ補完くっそ重いので、Windows側のパスを排除する

/etc/wsl.conf
[interop]
appendWindowsPath = false

# 要WSL再起動


以上です。お疲れさまでした!

Discussion

ログインするとコメントできます