数分でかっこいいターミナルにする 〜 iTerm2 & Fish のススメ〜

:::note info
[LITALICO Advent Calendar 2022](https://qiita.com/advent-calendar/2022/litalico) 3日目の記事です
:::

# 対象読者
- Mac使用者
- デフォルト以外のターミナルアプリを知らない
- デフォルト以外のシェル(MacOS Catalinaからは「zsh」)を知らない
- ゴリゴリ設定ファイルを書きたくはないけれどいい感じのターミナルを使いたい

特に何も設定していない人はこんな感じの見た目だと思います。
![](https://raw.githubusercontent.com/ryo-s2000/image-dayo/main/1.png)

それが、10分ほどかけて、今回の記事の内容を通しでやればこんな感じにする事ができます。
![](https://raw.githubusercontent.com/ryo-s2000/image-dayo/main/2-1.png)

今記事の大まかな流れは以下の通りです。
- ターミナルアプリの変更
- shellの変更

# ターミナルアプリの変更
今回は[iTerm2](https://iterm2.com/)を使います。
他にもターミナルアプリはたくさんあるので、お好みで選ぶことができます。

[Macの端末をいろいろ検討した結果iTerm2になった](https://zenn.dev/kawarimidoll/articles/007449407cc78d)

## iTerm2のインストール
https://iterm2.com/
公式ページから簡単にダウンロードできます。

### iTerm2の設定
何も設定していない見た目はデフォルトのターミナルとほとんど同じです。
これから少しだけ設定していってかっこいい感じにしていきましょう。

設定画面は ⌘, で開けます。

1.　透明度を変更する
これをするだけで、だいぶ透明感というか抜け感がでます。
`iTerm2 > Preferences > Profiles > Window > Transparency`

2.　ブラーをかける
これをかけると、透明度が高くても文字が見えにくくなりにくいです。
自分なりの透明度とブラーのベストマッチな加減を探すのも楽しいです。
`iTerm2 > Preferences > Profiles > Window > Blur`

3.　カラーを変更する
文字の色を変更することができます。
`iTerm2 > Preferences > Profiles > Colors > Color Presets`

外部からテンプレートをインストールする事も可能です。
このページからダウンロードしてきてそれをimportする事が可能です。
https://iterm2colorschemes.com/
もちろん自分で設定する事もできますし、完成度が高いものができたら他人に配布する事もできます。

4.　新しいウィンドウの設定をフルスクリーンにする
この設定は完全に好みだと思います。
`Style`を`Full Screen`にすると。
開く画面をデフォルトでフル画面にする事ができます。
`iTerm2 > Preferences > Profiles > Window > Style`

ここまでやっただけでかなりいい感じになっていると思います。

# shellの変更
今回は[fish](https://fishshell.com/)を使います。
こちらも、ターミナルアプリと同様にたくさんあるので、お好みで選ぶことができます。
簡単に切り替えられるので複数インストールしてみて試してみるのも面白いかもしれません。
[https://ja.wikipedia.org/wiki/シェル#コマンドラインシェルの一覧](https://ja.wikipedia.org/wiki/%E3%82%B7%E3%82%A7%E3%83%AB#%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%B7%E3%82%A7%E3%83%AB%E3%81%AE%E4%B8%80%E8%A6%A7)

## fishのインストール
```
brew install fish
sudo vi /etc/shells # 末尾に/usr/local/bin/fishを追加
chsh -s /usr/local/bin/fish # デフォルトシェルをfishに変更
```

## fisherのインストール
```
curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher
```
https://github.com/jorgebucaran/fisher
fishのプラグインのインストールを簡単にするために入れます。

ここまで設定をした後にもう一度iTerm2を開くとfishが起動されていると思います。
とりあえず何も設定をしていなくてもいろいろ補完が効くようになり便利です。

## fishの設定
`theme-bobthefish`というテーマがメジャーらしいので入れてみます。
```
fisher install oh-my-fish/theme-bobthefish
```
`theme-bobthefish`を入れるとプロンプトの文字が化けるので、
`iTerm2 > Preferences > Profiles > Text > Use built-in Powerline glyphs`
を有効にする必要があります。

## fish_config
```
fish_config
```
fishには、設定ファイルをWebビューで変更する機能がついています。

## 環境変数の設定
fishの場合は.config/fish/config.fishに記載します。

# 最後に
ここまでやり通せばだいぶ綺麗になっている思います。
あとは自分で思うままにアレンジしてください！

:::note info
明日は[LITALICO Advent Calendar 2022](https://qiita.com/advent-calendar/2022/litalico) 4日目の記事です。@yuichirofujitaが担当します。どうぞお楽しみに！
:::

# おまけ
弊社では[絶賛採用活動中](https://jobs.qiita.com/postings?employer=101&utm_source=qiita&utm_medium=organization)です！！

# 参考資料
Friendly interactive shell
https://ja.wikipedia.org/wiki/Friendly_interactive_shell

Fish shellの使い方。プラグインなしでもここまで可愛くできる！
https://original-game.com/how-to-use-fishshell

fish shellベースのターミナル環境を整える
https://www.cyokodog.net/blog/fish-based-terminal-environment

お前らのターミナルはダサい
https://qiita.com/kinchiki/items/57e9391128d07819c321

iTerm2のおすすめ設定〜ターミナル作業を効率化する〜
https://qiita.com/ruwatana/items/8d9c174250061721ad11

fish shell のインストールと初期設定
https://qiita.com/1ain2/items/a63ea17320640cc37070