fisher
Manage and install fish shell packages
TLDR
Install one or more plugins
Install a plugin from a GitHub gist
Edit 'fishfile' manually with your favorite editor and install multiple plugins
List installed plugins
Update plugins
Remove one or more plugins
SYNOPSIS
fisher command [options] [arguments]
fisher install [plugins...]
fisher update [plugins...]
fisher remove [plugins...]
fisher list
fisher version
fisher help [command]
PARAMETERS
install
Installs one or more Fisher plugins, functions, or themes. Plugins can be specified by their Git repository URL or a short name (e.g., 'jorgebucaran/nvm.fish').
update
Updates all installed plugins to their latest versions. If specific plugins are provided, only those will be updated.
remove
Removes one or more installed Fisher plugins from your Fish shell environment.
list
Displays a list of all currently installed Fisher plugins and their sources.
version
Shows the current version of the Fisher plugin manager.
help
Provides detailed help information about Fisher or a specific Fisher subcommand.
--help
Displays general help for the fisher command or a specific subcommand's usage.
--version
Displays the Fisher version (similar to fisher version).
DESCRIPTION
fisher is a powerful and lightweight plugin manager specifically designed for the Fish shell. It simplifies the process of installing, updating, and managing plugins, functions, and themes within your Fish shell environment. Unlike traditional system package managers, Fisher focuses solely on the Fish shell ecosystem, providing a streamlined experience for extending its functionality. It allows users to effortlessly discover and integrate community-contributed components, enhancing productivity and customization. Fisher works by sourcing configuration files and managing plugin directories, ensuring that your shell remains organized and performant. Its intuitive command-line interface makes it accessible for both new and experienced Fish shell users, enabling them to quickly set up and maintain a personalized shell experience.
CAVEATS
fisher is not a standard system utility found in most Linux distributions by default. It is specifically a plugin manager for the Fish shell and requires the Fish shell to be installed and used as your primary shell. Its functionality is entirely confined to managing components within the Fish shell environment and does not interact with system-wide packages or other shell environments like Bash or Zsh. Installation typically involves an internet connection to fetch plugins from Git repositories.
INSTALLATION
To install fisher, you typically use curl:curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source
This command downloads the fisher.fish script and sources it directly into your current Fish shell session, making fisher immediately available. For persistent installation, it usually sets itself up in your Fish configuration directory automatically.
PLUGIN ECOSYSTEM
Fisher integrates with a vast ecosystem of community-contributed plugins, functions, and themes. These can be found on GitHub and are easily installable using the fisher install command, often just by providing the repository owner/name (e.g., fisher install jorgebucaran/fisher-themes
). This decentralized approach allows for rapid development and sharing of Fish shell enhancements among users.
HISTORY
Fisher was created by Jorge Bucaran (jorgebucaran) to provide a lightweight and fast alternative to other Fish shell framework managers like Oh My Fish (OMF). It was designed with a focus on simplicity, speed, and minimalism, aiming to avoid the overhead often associated with larger frameworks. Its development began around 2015-2016, gaining popularity within the Fish shell community for its efficient plugin management capabilities. It continues to be actively maintained, adapting to new Fish shell features and community needs, solidifying its position as a go-to tool for customizing the Fish shell experience.