fish shellは、macOSのターミナルで使われているシェルを変えるものです(概要)。 たしかmacOS Sierra以前はbashで、macOS High Sierra以降はzshというものがデフォルトだった気がします。 ということで早速導入していきます。
1. fishの導入
ここではmacOS定番のパッケージマネージャーHomebrewを使ってインストールをします。
brewは必須ではなく、fish shellのホームページからインストーラーも落とせるっぽいので、ない人はそっちでも良さそう(未検証)。
~% brew install fish
~% fish
これで、コンソールが↓みたいになっていればfishの導入完了です。
yuzukichi@YuMac ~>
2. fishをデフォルトシェルに変更する
1のままだと、fishを使用するのにわざわざ毎回fishを起動させる必要があります。
なので、ここでは起動時に勝手にfishに切り替わるように設定します。
~> echo /usr/local/bin/fish | sudo tee -a /etc/shells
~> chsh -s /usr/local/bin/fish
どちらのコマンドもパスワードを求められます。
1つ目のコマンドでfishをシェルに登録し、2つ目のコマンドでデフォルトシェルをfishに切り替えています。
そしたら一度ターミナルを終了(⌘Qで確実に)し、再度ターミナルを開いてみます。
もう一度開いた時にfishの状態で起動していれば成功、色も味気もないzshのままだったら失敗しています。
その場合はエラーを読んでみましょう。たぶん人によっては1つ目のコマンドで失敗する可能性があります。
(あとは単純にOSバージョンによってパスが微妙に変わってたりするかも)
3. 自分好みのfishにカスタマイズ
ここまできたらもうfishの虜になるまですぐです。
GitHubにあるoh-my-fishから好きなテーマを選んで変更してみましょう。
~> curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs https://git.io/fisher
私が好きなのは無難なbobthefishです。皆さんも好みのを見つけて、次の文を各自書き換えて実行してみてください。
~> fisher install oh-my-fish/theme-bobthefish
昔はコマンドがfisher addだったので、もしコマンドで怒られた場合はfisher --helpとかでコマンドの確認をしてみてください。
成功するとまたもやシェルの見た目が変わります。そして文字化けしています。
この文字化けの対処として、対応したフォント『powerline font』をインストールします。
git clone https://github.com/powerline/fonts.git
cd ./fonts/
./install.sh
cd ..
rm -rf ./fonts
gitが入ってなかった人はbrew install gitとかで入れてみてください。それかgitのホームページからインストールしてみてください。
成功したら環境設定(⌘,)を開いて、フォントの変更をしましょう。

対応しているフォントは複数あります。目印は名前が『〜〜 for Powerline xx』となっていることです。 選択すればその場でシェルのフォントは変わりますので、お気に入りのフォントを見つけましょう。 一緒に文字化けも解消されているはずです。 ちなみに私は『Roboto Mono for Powerline』がお気に入りです。 これは『o0O』『iI1l』とかの紛らわしい文字の見分けが付けやすい&等幅なことから、読みやすさ抜群なためです。 そんな感じで、参考までに私のプロファイルです。


結論
今回はmacOS Catalinaのシェルをfishに変更しました。 Big Surでも同様に動作することは確認しましたので、しばらくはこれで行けるはずです。 え?なんでBig SurでやっていてCatalinaで導入し直してるのかって? 流石にiMac Late 2015モデルにBig Surは辛かったからダウングレードしたってだけですヨ。