今更ながらOh My Zshからfish shell(Oh My Fish)にした

Happy Coding Dojoの福井さんの作業を見ていて、fish shellいいじゃん!と思い早速シェルを変更してみた。Tab押す前にコマンドをサジェスチョンしてくれるのが一番の理由。

導入までのざっくりした流れは次の通り。

  1. fish shellインストール
  2. Oh My Fishインストール
  3. fish shellの設定変更

fish shell インストール

公式ドキュメントに載っている通りに実施。筆者はMacユーザーなのでbrewでインストール

brew install fish

デフォルトのシェルの変更

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

Oh My Fishインストール

公式ドキュメント通りにインストール。

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

fish shellの設定変更

fish shellの設定ファイル類は~/.config/fish/config.fishで管理することになっているらしいので早速設定変更した。 設定前に、Pecoの補完用プラグインのインストールが必要なので以下のコマンドを実行。

omf install peco

インストール後、~/.config/fish/config.fishに次の設定を行えば、Ctrl + rを実行すればpecoの補完画面が表示される。

set fish_plugins theme peco

function fish_user_key_bindings
  bind \cr peco_select_history # Bind for prco history to Ctrl+r
end

fish_configを実行すると、次のような設定画面からColor Theme、Promptの設定を変更できる。これは便利。 f:id:nikuyoshi:20190403013526p:plain f:id:nikuyoshi:20190403013558p:plain

最終的には次のようなPromptになりました f:id:nikuyoshi:20190403013640p:plain

参考

yoshiori.github.io