MacのデフォルトターミナルをFishに
エンジニアは毎日パソコンを扱います。作業スピードが速いエンジニアとそうでないエンジニアの生産性の違いは大きいです。
インターンやハッカソン、勉強会などでつよつよエンジニアのターミナルを見ると、おおよその方は自分でカスタマイズしたターミナルを使っています。
まだデフォルトのターミナルを使用しているのであれば、この記事を読んでオリジナルのシェルを作りましょう!
さて、まずは完成までのロードマップを紹介します。
ロードマップ
GUIとCLI
↓
Fish(Shell)をインストールする
↓
デフォルトShellをFishにする
↓
Iceberg, Rictyをインストール
↓
Fishの詳細設定
↓
おわりに
GUIとCLI
GUIとは
GUI(Graphical User Interface)は画面上のアイコンやメニューバーなどをマウスなどのデバイスで操作できるUIです。直感的に操作することができるのでパソコンを扱うのに慣れていない人からしたら楽ですよね。
現在のパソコンのインターフェースは、ほぼすべてGUIを採用しています。
CLIとは
CLI(Command Line Interface)とは「端末エミュレータ(Macであればterminal)」と呼ばれる文字入出力ソフトウェアを介して、キーボードからコマンドやデータを入力をし、コンピュータを操作するUIです。すべての操作をキーボードで行います。
ドラマや映画などでハッカーが黒い画面に緑色の文字の羅列を打っているシーンがありますよね。あれはCLIでコンピュータを操作しています。
GUIとCLI、どちらを使う?
結論から言います。人生でコンピュータを合計数十時間程度しか扱わないのであれば、CLIよりGUIを使用した方がいいでしょう。上の学習曲線の通り、GUIの方が扱えるようになるまでの時間が短いためです。
しかし、エンジニアを目指す方、エンジニアの方々はCLIを使用すべきです。
CLIは
・キーボードからいちいちコマンドを入力しなければいけない
・ 数多くのコマンドとそれらの使い方を覚えなければいけない
・画面の出力も地味 (多くの場合単色で、文字だけ) でわかりづらい
というデメリットがあります。
ある程度学習し、それらを克服することでGUIより圧倒的に作業効率が上がります。CLIの学習に費やした労力と時間は、後になって作業効率という大きなリターンが返ってきます。
ぜひ、CLIをマスターしましょう。
Fish(Shell)をインストールする
なぜFish?
Fishである理由は以下の理由です。
・シンタックスハイライトがすごい
入力中のコマンドにもシンタックスハイライトが効く。
コマンドやオプションが合っているか一目でわかる。
・優秀なタブ補完
入力中にインタラクティブに補完が見える。
一度Fishを使い始めたら他のShellで作業することが難しくなります。
Fishのインストール
以下のコマンドでFishをインストールします。
brew install fish
以下のコマンドでshellのパスを一覧してください。
cat /etc/shells
M1Macの方は/opt/homebrew/bin/fish
が含まれていたら大丈夫です。
デフォルトShellをFishにする
chsh -s /opt/homebrew/bin/fish
を打つとFishをデフォルトのShellにすることができます。
chshはログイン時のshellを変更するコマンドです。
-s(--shell)はshellオプションと言ってシェルを指定するときに使います。今回はFish(/opt/homebrew/bin/fish)を指定しています。
さあ、terminalを再起動してみましょう!
Fishに変わっているはずです!
Iceberg, Rictyをインストール
ここからはFishをカスタマイズしていきます。
デフォルトのままでいいのであれば、ここは飛ばして、Fishの詳細設定に行ってください。
Icebergは背景、文字の色を変えて、terminalをカッコ良くしてくれます。
フォントはRictyがおすすめ!RictyはLinux 環境での研究・開発を想定したプログラミング用フォントです。テキストエディタやターミナルエミュレータ、プログラミング言語やマークアップ言語に対する使用に適しています。
Iceberg, Rictyのインストールと適用は以下の記事が丁寧に説明しています。参考にして適用してみましょう。
Fishの詳細設定
PATHについて
FishにPATHを通すときは~/.config/fish/config.fishに
set PATH /usr/local/bin /usr/bin
のようにset PATHの後に通したいPATHを書き込むとFishにPATHが通るようになります。
fish_configについて
Fishで
fish_config
と打つと、以下のような画面に遷移します。
ここではFishのシンタックスハイライトの色、プロンプトなどを変更できます。
自分ならではのFishを作成してみましょう!
おわりに
さてみなさん、自分の好みのFishは作成できましたか?ちなみに私のオリジナルFishはこれです!
自分でカスタマイズしたFishでパソコンを操作することで作業効率、モチベーションを上げて、開発に取り組むことができます。
この記事がみなさんのエンジニアライフに役立つことを願っています😄