LoginSignup
6

More than 5 years have passed since last update.

fish shell用のパッケージマネージャーを作りました

Posted at

fish shellのカスタマイズ

最近zshからfish shellに移りました。デフォルトのセットアップがかなり優秀で、何もしなくてもわりと使えるのですが、結局ある程度カスタマイズがないと作業効率が下がるので、プラグインを管理するためのツールを探してみました。

oh-my-zshのfish版のoh-my-fishというのが存在していて、これを使うとパッケージを入れられるらしいですが、zshと違ってfishのセットアップは最初からほぼ完璧なので、パッケージ入れるためにわざわざフレームワークを入れるのはいかがものかと思って、結局自作をすることにしました。

Fundleの紹介

vimユーザがよく知っているVundleを参考にして、Fundleというパッケージマネージャーを作りました。

使い方としては、設定ファイルに

fundle plugin 'USER/REPOSITORY'

fundle init

を書くだけです。fundle installを走らせると、Githubからプラグインを取ってきてインストールしてくれます。
Githubにないものに関しては普通にgitのURLを入れれば使えます。

fishの場合は関数を追加したい時は$fish_function_pathに入れると自動でロードされ、コンプリーションを$fish_complete_pathに入れると自動でロードされるので、fundleで入ったプラグインにfunctionscompletionsというディレクトリがある場合はそのパスに追加するような仕様になっています。

READMEに英語でもう少し詳しく書いてあります。

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
6