.travis.yml | ||
fisher.fish | ||
LICENSE | ||
README.md |
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 what 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.
Where does fisherman put stuff?
The cache and configuration go in ~/.cache/fisherman and ~/.config/fisherman respectively.
The fishfile is saved to ~/.config/fish/fishfile.
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 use fisherman to install and 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.