[slack-link]: https://fisherman-wharf.herokuapp.com/ [slack-badge]: https://fisherman-wharf.herokuapp.com/badge.svg [travis-link]: https://travis-ci.org/fisherman/fisherman [travis-badge]: https://img.shields.io/travis/fisherman/fisherman.svg [organization]: https://github.com/fisherman [fish]: https://github.com/fish-shell/fish-shell [fisherman]: http://fisherman.sh [ウェブサイト]: http://fisherman.sh/#search [![Build Status][travis-badge]][travis-link] [![Slack][slack-badge]][slack-link] # [fisherman] fisherman とは [fish]のための並列処理パッケージマネージャーです。 ## 理由 * 設定なし * 依存性なし * フィッシュシェルのスタート時間に関係ない * cli から利用可能であり、vundle のようにも使える * 基本のコマンドは install、update、remove、list と help だけ ## インストール curl: ```sh curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs git.io/fisherman ``` ## 使い方 プラグインをインストール: ``` fisher real ``` 様々な所からもインストール: ``` fisher z fzf edc/bass omf/thefuck ``` URL からインストール: ``` fisher https://github.com/edc/bass ``` Gist をインストール: ``` fisher https://gist.github.com/username/1f40e1c6e0551b2666b2 ``` ディレクトリをインストール: ```sh fisher ~/plugin ``` vundleのように 「fishfile」というファイルにプラグインたちを追加して `fisher` でインストール: > [fishfileとは?](#6-fishfileとは) ```sh $EDITOR fishfile # プラグイン追加 fisher ``` インストールされるプラグイン表示: ```ApacheConf fisher ls @ plugin # ローカルディレクトリ * real # 現在のテーマ bass fzf grc thefuck z ``` すべてのプラグインをアップデート: ``` fisher up ``` いくつかのプラグインをアップデート: ``` fisher up bass z fzf thefuck ``` プラグインを削除: ``` fisher rm thefuck ``` すべてのプラグインを削除: ``` fisher ls | fisher rm ``` ドキュメントを表示: ``` fisher help z ``` ## FAQ ### fishの必要なバージョンとは? fish >= 2.3.0 が必要です。まだ 2.2.0 を使っているのならば [snippets](#8-プラグインとは) の対応のため次のコードを `~/.config/fish/config.fish` に追記してください。 ```fish for file in ~/.config/fish/conf.d/*.fish source $file end ``` ### フィッシュシェルをデフォルトのシェルにするには? システムの */etc/shells* ファイルに、fish を追加: ```sh echo "/usr/local/bin/fish" | sudo tee -a /etc/shells chsh -s /usr/local/bin/fish ``` ### fishermanを削除する方法とは? ```fish fisher self-uninstall ``` もしくは ```fish npm un -g fisherman ``` ### oh-my-fishのプラグインとテーマに対応ですか? 対応してます ### fishermanのファイル等は、どこに保存されますか? fisherman 自体は *~/.config/fish/functions/fisher.fish* に作成されます。そしてキャシュは*~/.cache/fisherman*に、コンフィグディレクトリは *~/.config/fisherman* に。fishfileは*~/.config/fish/fishfile*に保存されます ### fishfileとは? fishfile(*~/.config/fish/fishfile*)に現在インストールされているプラグインが書かれています。 fisherman で自動的にこのファイルを更新するか、手動でプラグインを追加して `fisher`を入力してインストールすることも可能です。 ``` fisherman/real fisherman/z omf/thefuck omf/grc ``` この仕組はプラグインと、そのプラグインが依存しているものをインストールすることができます。プラグインを削除するために、`fisher rm`を使ってください。 ### フィッシュシェルのプラグインはどこにありますか? fisherman の [organization] や [ウェブサイト] 等で、プラグインを検索できます。 ### プラグインとは? プラグインとは 1. 普通のディレクトリや、gitレポジトリのrootに、*.fish*ファイルの関数、それか、*functions*ディレクトリに。 2. テーマ。つまり、*fish_prompt.fish*か*fish_right_prompt.fish*か両方。 3. スニペット。つまり、1以上の*.fish*ファイルを*conf.d*といディレクトリに。こちらのファイルがフィッシュシェルがスタートする際に実行されます。 ### 自分のプラグインを、他のプラグインのデペンデンシーにしたい場合は? プラグイン root ディレクトリの *fishfile* 編集してそのプラグインを追加してください。 ```fish owner/repo https://github.com/owner/repo https://gist.github.com/owner/c256586044fea832e62f02bc6f6daf32 ```