3.5 KiB
fisherman
A plugin manager for fish.
Translations: 日本語, 简体中文, 한국어, Русский, Português, Español, Català, Deutsch, فارسی.
Install
Manually
curl -Lo ~/.config/fish/functions/fisher.fish --create-dirs git.io/fisherman
With brew
brew tap fisherman/tap
brew install fisherman
Usage
Install a plugin.
fisher mono
Install some plugins.
fisher z fzf edc/bass omf/thefuck
Install a gist.
fisher https://gist.github.com/username/1f40e1c6e0551b2666b2
Install a local directory.
fisher ~/my/plugin
Edit your fishfile and run fisher
to commit changes.
$EDITOR ~/.config/fish/fishfile
fisher
Show everything you've installed.
fisher ls
@ plugin # a local plugin
* mono # current theme
bass
fzf
thefuck
z
Show everything that's available.
fisher ls-remote
Update everything.
fisher up
Update some plugins.
fisher up bass z fzf
Remove plugins.
fisher rm thefuck
Remove all the plugins.
fisher ls | fisher rm
Get help.
fisher help z
FAQ
What is the required fish version?
>=2.2.0.
For snippet support, upgrade to >=2.3.0 or append the following code to your ~/.config/fish/config.fish.
for file in ~/.config/fish/conf.d/*.fish
source $file
end
Is fisherman compatible with oh-my-fish themes and plugins?
Yes.
What is a fishfile and how do I use it?
The fishfile ~/.config/fish/fishfile lists what plugins you've installed.
This file is updated automatically as you install / remove plugins. You can also edit this file and run fisher
to commit changes.
This mechanism only installs plugins and missing dependencies. To remove plugins, use fisher rm
.
What is a plugin?
A plugin is:
-
a directory or git repo with one or more .fish functions either at the root level of the project or inside a functions directory
-
a theme or prompt, i.e, a fish_prompt.fish, fish_right_prompt.fish or both files
-
a snippet, i.e, one or more .fish files inside a directory named conf.d, evaluated by fish at the start of the session
How can I list plugins as dependencies to my plugin?
Create a new fishfile file at the root level of your project and write the plugin URL such as github.com/owner/repo.