80
49

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Life is Tech! Tokai MentorsAdvent Calendar 2018

Day 16

【ターミナル】Macのターミナルにfishを導入する

Last updated at Posted at 2018-12-15

はじめに

この記事はLife is Tech! Tokai Mentors Advent Calendar 2018の16日目の記事です。

普段ターミナルを触らないで生きてきた方にちょくちょく遭遇するんですが、ターミナルってなんだか取っつきにくい印象があったりするらしいんです。

「表示が白黒で見づらい」
「英語ばっかだし何が書いてあるかわからない」
「ターミナルとか触ったことないからどういうことができるか分からない」

と感じている未経験者も、

「たまにしか使わないしそのままでもいいと思ってるんだけど...」

という初心者も。

まずはおしゃれでイケてるターミナル環境を構築して
「ワタシ Terminal チョットデキル」
と言えるようなエンジニアに近づいてみませんか?

なにをするのか

今回の記事では、

  • シェルの変更(fishの導入)
  • ターミナルのカスタマイズ

という作業でターミナルをちょっとだけ使いやすくします。

シェルとfish

まずはシェルをbashからfishに変更します...と書いて意味がわかる方はGoogleで「fish shell」と検索してこの章を読み飛ばしてください

シェル(shell)とは

シェルとは何かについてしっかりと言及するとこの記事では収まらないので簡単に説明すると、

"普段マウスを使ったりしてやっているようなPCの操作を、プログラミングのようにキーボードで命令を入力して実行するためのソフト"

みたいな感じになります。厳密にいうと説明不足や語弊がありますが、今回の記事ではこういう認識でいきます。もうちょっとだけ詳しく(本当にちょっとでしかも易しく)知りたい方はこの記事がいいと思います。

fishとは

fish.png

先ほど説明したシェルにもいくつか種類があります。

多くのターミナル(Windowsのコマンドプロンプトは除く)で使われているのは「bash」というシェルです。正直このままでも必要充分なレベルの機能はついています。

そして、シェルの変更をしようとすると必ずと言っていいほど名前を聞くのが「zsh」。bashよりもカスタマイズ性に優れていて、使い込むほど自分に馴染んでくるようなシェルですが初心者にはやや取っつきにくいかもしれません。

今回我々がインストールするのは上記のどちらでもない「fish」というシェルです。

fishは、

  • 入力の補完をしてくれる(しかも高性能)
  • マニュアルが分かりやすい
  • カラフル(エラーが起きた時に色を自動で変えてくれたり etc...)

などの機能がほぼ無設定で使えるというユーザーに優しいシェルです。

初心者に優しいだけでなく長く使い込むこともできるのがfishの良い点です。

fishを導入しよう

以下の手順はMacにfishをインストールすることを想定しています。
もちろんWindowsやLinuxにも対応しているのでMac以外のOSを使用している方はこちらを参考にしてください。

まずは、ターミナルを立ち上げて、

.bash
$ brew install fish

と入力しましょう。これでインストール作業は完了です。
(Homebrewをインストールしていない方はこちらの記事を参考にインストールしてから行なってください)

次に使用するシェルをfishに変更するため、

.bash
$ echo /usr/local/bin/fish | sudo tee -a /etc/shells
$ chsh -s /usr/local/bin/fish

の2行を入力します。

これでfishの導入は終了です。

ね?簡単でしょ?

fishをカスタマイズしよう

fishはそのままでも充分使えるんですが、せっかくなのでちょっとだけカスタマイズしてみましょう。

Fisherのインストール

fishをカスタマイズするため、まずはプラグインマネージャである「Fisher」をインストールします。

プラグインマネージャって何かって?
要するにfishのカスタマイズが簡単にできるようになるってことです。

以下のコマンドでFisherをインストールできます。

.bash
$ curl https://git.io/fisher --create-dirs -sLo ~/.config/fish/functions/fisher.fish

パッケージの追加

Fisherを使ってパッケージを追加するには以下のようにaddを使います。

.bash
$ fisher add 公式プラグイン名
$ fisher add omf/oh-my-fishのプラグイン名
$ fisher add GitHubユーザー名/リポジトリ名
$ fisher add GistのURL
$ fisher add ローカルのディレクトリ

試しにカラーテーマをインストールしてみましょう。
(カラーテーマはこちらで一覧が見れます。)

今回は「bobthefish」というテーマをインストールしてみます。

.bash
$ fisher add oh-my-fish/theme-bobthefish

とターミナルに入力してください。

しばらく待機するとカラーテーマのインストールが完了します。
(ターミナルを再起動しないとカラーテーマが反映されないかもしれません)

bobthefishというテーマは特殊なフォントを使用する必要があるので、フォントのインストールも合わせて行います。

デスクトップなど好きな場所にパワーラインフォントのリポジトリをクローンしましょう。

.bash
$ git clone https://github.com/powerline/fonts.git

クローンが終了するとfontsという名前のフォルダが出現します。

その後、fontsフォルダの中まで移動してフォントのインストールを行います。

.bash
$ cd fonts
$ ./install.sh

インストールが終了したらターミナル->環境設定からフォント設定を忘れずに変更します。

フォントは「Meslo」あたりにしておけば問題なく表示されます。

terminal.png

その他のコマンド

fisher helpと入力することで以下のようなヘルプが表示されます。

usage: 
       fisher add <PACKAGES>    add packages
       fisher rm  <PACKAGES>    remove packages
       fisher                   update installed packages
       fisher ls                show installed packages
       fisher help              show this help
       fisher version           show version
       fisher self-update       update fisher
       fisher self-uninstall    uninstall fisher

examples:
       fisher add jethrokuan/z rafaelrinaldi/pure
       fisher add gitlab.com/owner/foobar@v2
       fisher add ~/path/to/myfish/pkg
       fisher rm rafaelrinaldi/pure
       fisher ls | fisher rm
       fisher add < bundle

コマンドを忘れてしまってもhelpさえ覚えておけば問題ありません。英語も簡単なので親切ですね。

まとめ

今回はお手軽に使いやすくてイケてるターミナル環境を構築してみました。

設定ファイルをいじることなくここまでターミナルの使用感を上げることができるfishは最高ですね。

気が向いたらzshとかと使い比べてみるのもいいかと思います。

スクリーンショット 2018-12-15 19.20.24.png

追記

Sierra以前あたりからHomebrewのアップデートをしていないとbrew updatebrew upgradeを行う際にエラーが出ることがあります。

その症状が出た場合はHomebrewを再インストールすると治るようなので試してみることをお勧めします。
(参考記事はこちら)

80
49
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
80
49

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?