tackeのブログ

I'm a software engineer.

zshからfishに移行した

同僚がfish便利だよー、と言ってるのを目にしてzshからfishに移行してみた。

ググっていくつかの記事を参考にして作業をすすめました。 参考にしたのは以下のあたり。

qiita.com

qiita.com

fish ユーザなら入れておきたいプラグイン 13 選 · Futurismo

github.com

qiita.com

やったこと

詳細な手順は前述の記事を参考にしたので割愛。 やったことのサマリだけメモしておく。

  • zshrcをfish.configに変換(手動)
  • fishを起動してエラーをひとつずつ直していく
    • エラーメッセージがかなり親切なので修正は簡単
  • fishermanを入れる
  • peco pluginを入れてhistoryをpecoで扱えるようにfish.configを修正
  • zshhistoryをfishhistoryに変換

以上!

所感

Good

  • デフォルトで補完がかなり便利
  • zshと比べてかなり起動が速くなった
    • これは単にzshの設定を盛りすぎてただけかも

Bad

  • スクリプトの記法がfish独自なのでWebで検索したコマンドやワンライナーを使う際に注意が必要
  • 業務で手順書を残す場合にもbash記法に直すのが面倒なのでそこはイマイチ
  • デフォルトシェルをfishに変えたのにtmuxで立ち上げるシェルがなぜかzshのまま
    • そのうち気が向いたら設定を直すかな
  • brew install {formula} でcompletionがインストールされるのがbashzshだけ
    • もしかしたらfishやhomebrewの設定かもしれない

シェル自体の操作は快適ですが、細かいところで困ることが多そうな印象。 ひとまず使い始めなのでしばらくこれでやっていってみます。

いじょ