🇯🇵 日本語 | 🇺🇸 English | 🇪🇸 Español | 🇵🇹 Português | 🇹🇭 ไทย | 🇨🇳 中文

Fishシェルを最強に!FisherとOh My Fishで始めるカスタマイズ入門ガイド 🐟

こんにちは!Webクリエーターの皆さん、日々の開発作業でターミナル(あの黒い画面です!)を使っていますか?
実は、このターミナルを自分好みにカスタマイズすると、開発効率が劇的に向上し、何より作業がもっと楽しくなります。

今回は、モダンで使いやすいと評判のシェル「Fish」のカスタマイズ方法を徹底解説します。特に、プラグインマネージャーである「Fisher」と「Oh My Fish」を使えば、まるでスマホにアプリを入れるような感覚で、テーマや便利な機能を追加できます。

この記事の目的は、初心者の方でもコピペするだけで「動く」を体験してもらうことです。難しい理屈は後回し!まずは見た目を変えたり、便利な機能を追加したりして、カスタマイズの楽しさを実感してみてください。


🚀 まずは準備:プラグインマネージャーとは?

Fishのカスタマイズを始める前に、「プラグインマネージャー」とは何かを簡単に説明します。

これは、Fishの見た目(テーマ)や機能(プラグイン)を簡単に追加・管理・削除できるツールのことです。これがないと、手動でファイルをダウンロードして特定の場所に配置し、設定ファイルを書き換える…といった面倒な作業が必要になります。

プラグインマネージャーを使えば、コマンドを一行実行するだけで、そうした面倒な作業をすべて自動でやってくれます。今回は、特に人気の高い以下の2つを紹介します。

どちらも素晴らしいツールですが、特徴が異なります。この記事では両方の使い方を解説するので、自分に合った方を選んでみてくださいね。

※この記事では、Fishシェルがすでにインストールされていることを前提としています。もしまだの方は、Homebrew(macOS)や各Linuxディストリビューションのパッケージマネージャーで簡単にインストールできます。

# macOS (Homebrew) の場合
brew install fish

🎣 Fisherを使ってみよう!シンプル・イズ・ベストなカスタマイズ

まずは、シンプルさが魅力のFisherから使ってみましょう。設定はすべて `~/.config/fish/config.fish` ファイルに集約されるため、管理がしやすいのが特徴です。

1. Fisherのインストール

インストールは、以下のコマンドをターミナルに貼り付けて実行するだけです。

curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher

2. テーマを導入して見た目を変える

Fisherの準備ができたので、さっそくターミナルの見た目を変えてみましょう。ここでは、シンプルで人気の高い「nospace」というテーマを導入します。

fisher install jorgebucaran/nospace.fish

コマンドを実行した瞬間に、プロンプト(コマンドを入力する前の `>` や `$` の部分)の表示が変わったはずです。このように、`fisher install` の後にGitHubの `ユーザー名/リポジトリ名` を指定するだけで、テーマやプラグインを簡単に追加できます。

ほかにもたくさんのテーマがあります。例えば、多くの情報を表示してくれる人気のテーマ「bobthefish」も試してみましょう。

fisher install oh-my-fish/theme-bobthefish

注意: bobthefishのような高機能なテーマは、別途「Nerd Fonts」のような特殊なフォントのインストールが必要な場合があります。表示が崩れる場合は、お使いのターミナルソフトのフォント設定を見直してみてください。


3. プラグインで機能を追加する

見た目を変えたら、次は便利な機能を追加していきましょう。ここでは、一度訪れたディレクトリに簡単にもう一度ジャンプできるようになる「z」というプラグインを導入します。

fisher install jethrokuan/z

インストール後、いくつかのディレクトリを `cd` コマンドで移動してみてください。その後、`z` の後にディレクトリ名の一部を入力してTabキーを押すと、履歴から候補を補完してくれます。例えば、以前に `/var/www/html/my-project` に移動したことがあれば、`z my-p` と打ってTabキーを押すだけで移動できるようになり、非常に効率的です。


4. インストール済みのパッケージを確認・削除する

今、何がインストールされているかを確認するには、`list` コマンドを使います。

fisher list

不要になったテーマやプラグインを削除するのも簡単です。`remove` の後にパッケージ名を指定します。先ほど入れた `bobthefish` を削除してみましょう。

fisher remove oh-my-fish/theme-bobthefish

🐠 Oh My Fishを使ってみよう!豊富な選択肢で楽しくカスタマイズ

次に、Oh My Fish (OMF) を使ってみましょう。OMFは、たくさんのテーマやプラグインが公式にカタログ化されているため、何を入れたら良いか分からない初心者の方でも探しやすいのが大きなメリットです。

【重要】FisherとOh My Fishは、両方を同時に使うことは推奨されていません。 もしFisherを試した後にOMFを使う場合は、一度Fisherのプラグインを削除してからOMFをインストールするか、別の環境で試すことをお勧めします。

1. Oh My Fishのインストール

インストールはこちらもコマンド一行で完了です。

curl -L https://get.oh-my.fish | fish

インストールが完了すると、デフォルトのOMFテーマが適用されているはずです。


2. テーマを探して適用する

OMFの素晴らしい点は、テーマを簡単に探して試せるところです。まずは利用可能なテーマの一覧を見てみましょう。

omf theme

たくさんのテーマ名が表示されます。気になったテーマを適用するには、`omf theme` の後にテーマ名を指定します。例えば、`agnoster` という人気のテーマを試してみましょう。

omf theme agnoster

これだけでテーマがインストールされ、即座に適用されます。いろいろなテーマを試して、お気に入りを見つけてみてください。


3. プラグインをインストールする

プラグインのインストールも簡単です。`omf install` の後にプラグイン名を指定します。ここでは、コマンドの実行履歴を `Ctrl+R` で対話的に検索できるようになる、非常に便利なプラグイン「fzf」をインストールしてみましょう。(※事前に `fzf` 本体のインストールが必要です)

omf install fzf

インストール後、ターミナルで `Ctrl+R` を押してみてください。過去に実行したコマンドの履歴が一覧表示され、絞り込み検索ができるようになっているはずです。これは一度使うと手放せなくなるほど便利な機能です。

利用可能なパッケージは `omf search -t` (テーマ) や `omf search -p` (プラグイン) で検索できます。


4. インストール済みのパッケージを確認・削除する

OMFでインストールしたパッケージ(テーマやプラグイン)の一覧は `list` コマンドで確認できます。

omf list

不要になったプラグインは `remove` で削除します。

omf remove fzf

🤔 Fisher vs Oh My Fish: 結局どっちがいいの?

ここまで両方のツールを紹介してきましたが、「で、結局どっちを使えばいいの?」と迷う方もいるでしょう。以下に簡単な選び方のガイドをまとめました。

まずはどちらかを使ってみて、もし合わないと感じたらもう一方を試してみるのが良いでしょう。


✍️ 応用編: `config.fish` を直接編集して、さらに自分好みに!

プラグインマネージャーを使わなくても、Fishの設定ファイル `config.fish` を直接編集することでも、様々なカスタマイズが可能です。プラグインの機能と組み合わせることで、さらに強力な環境を構築できます。

設定ファイルは通常、`~/.config/fish/config.fish` にあります。このファイルにコマンドを書いておくと、Fishの起動時に自動で読み込まれます。

エイリアスを設定してコマンドを短縮する

よく使う長いコマンドは、短いキーワード(エイリアス)に置き換えておくと非常に便利です。例えば、`ls -laF` というコマンドを `ll` で実行できるようにしてみましょう。

`config.fish` ファイルに以下の一行を追加します。

alias ll="ls -laF"

ファイルを保存した後、新しいターミナルを開くか、`source ~/.config/fish/config.fish` を実行すると設定が反映されます。これで、`ll` と入力するだけで `ls -laF` が実行されるようになります。

Gitコマンドのエイリアスも定番ですね。

alias gco="git checkout"
alias gst="git status"
alias gaa="git add ."

環境変数を設定する

エディタの設定など、システム全体で利用したい変数は「環境変数」として設定します。Fishでは `set -x` を使います。例えば、デフォルトのエディタを `vim` に設定する場合は、`config.fish` に以下のように記述します。

set -x EDITOR "vim"

⚠️ 気をつけるべき点

カスタマイズは楽しいですが、いくつか注意点があります。


🎉 まとめ

今回は、Fishシェルのカスタマイズの第一歩として、プラグインマネージャーの「Fisher」と「Oh My Fish」の使い方、そして設定ファイル `config.fish` による基本的なカスタマイズ方法を紹介しました。

最初はコピペで試すだけでも十分です。プロンプトの見た目が変わったり、新しいコマンドが使えるようになったりするだけで、日々の開発作業がぐっと楽しくなるはずです。
ここからさらに色々なテーマやプラグインを探して、ぜひあなただけの「最強のターミナル環境」を構築してみてください!