You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
fisher/man/man7/fisher-faq.7

190 lines
6.0 KiB
Groff

.\" generated with Ronn/v0.7.3
.\" http://github.com/rtomayko/ronn/tree/0.7.3
.
.TH "FISHER\-FAQ" "7" "January 2016" "" "fisherman"
.
.SH "NAME"
\fBfisher\-faq\fR \- Frequently Asked Questions
.
.SH "SYNOPSIS"
This document attempts to answer some of Fisherman most frequently asked questions\. Feel free to create a new issue in the Fisherman issue tracker if your question is not answered here\.
.
.SS "What is Fisherman?"
Fisherman is a plugin manager for fish that lets you share and reuse code, prompts and configurations easily\.
.
.SS "What do I need to know to use Fisherman?"
Nothing\. You can continue using your shell as usual\. When you are ready to learn more just type \fBman fisher\fR or \fBman 7 fisher\fR\.
.
.SS "How do I access other Fisherman documentation?"
Fisherman documentation is based in UNIX \fBman(1)\fR pages\. See \fBman fisher\fR and \fBman 7 fisher\fR to get started\. You can also access any documentation using the \fBfisher help\fR command\.
.
.SS "What are Fisherman plugins?"
Plugins are written in fish and extend the shell core functionality, run initialization code, add completions or documentations to other commands, etc\. See \fBfisher help plugins\fR\.
.
.P
Plugins may list any number of dependencies to other plugins using a \fIfishfile\fR\.
.
.SS "What is a Fishfile?"
A plain text file that lists what plugins you have installed or a plugin\'s dependencies to other plugins\.
.
.P
Fishfiles let you share plugin configurations across multiple installations, allow plugins to declare dependencies, and prevent information loss in case of system failure\. See also \fBfisher help fishfile\fR\.
.
.SS "What kind of Fisherman plugins are there?"
There is no technical distinction between plugins, themes, commands, etc\., but there is a \fIconceptual\fR difference\.
.
.IP "\(bu" 4
\fBStandalone Utilities\fR: Plugins that define one or more functions, meant to be used at the command line\.
.
.IP "\(bu" 4
\fBPrompts / Themes\fR: Plugins that modify the appearance of the fish prompt by defining a \fBfish_prompt\fR and / or \fBfish_right_prompt\fR functions\.
.
.IP "\(bu" 4
\fBExtension Commands\fR: Plugins that extend Fisherman default commands\. An extension plugin must define one or more functions like \fBfisher_<my_command>\fR\. For specific information about commands, see \fBfisher help commands\fR and then return to this guide\.
.
.IP "\(bu" 4
\fBConfiguration Plugins\fR: Plugins that include one or more \fBmy_plugin\.config\.fish\fR files\. Files that follow this convention are evaluated at the start of the session\.
.
.IP "" 0
.
.P
See \fBfisher help plugins\fR and \fBfisher help commands\fR\.
.
.SS "Does Fisherman support oh\-my\-fish plugins and themes?"
Yes\. To install either a plugin or theme use their URL:
.
.IP "" 4
.
.nf
fisher install omf/plugin\-{rbenv,tab} omf/theme\-scorphish
.
.fi
.
.IP "" 0
.
.P
You can use the same mechanism to install any valid plugin from any given URL\. See also \fBCompatibility\fR in \fBfisher help tour\fR\.
.
.SS "What does Fisherman do exactly every time I create a new shell session?"
Essentially, add Fisherman functions and completions to the \fB$fish_{function,complete}_path\fR and evaluate files that follow the convention \fB*\.config\.fish\fR\.
.
.IP "" 4
.
.nf
set fish_function_path {$fisher_config,$fisher_home}/functions $fish_function_path
set fish_complete_path {$fisher_config,$fisher_home}/completions $fish_complete_path
for file in $fisher_config/conf\.d/*\.config\.fish
source $file
end
.
.fi
.
.IP "" 0
.
.P
See \fB$fisher_home/config\.fish\fR for the full code\.
.
.SS "How is Fisherman faster than oh\-my\-fish/Wahoo, etc?"
Fisherman ameliorates the slow shell start problem using a flat dependency tree instead of loading a directory hierarchy per plugin\. This also means that Fisherman performance does not decline depending on the number of plugins installed\. See also \fBFlat Tree\fR in \fBfisher help tour\fR\.
.
.SS "Why don\'t you contribute your improvements back to oh\-my\-fish instead of creating a new project?"
I have contributed back to oh\-my\-fish extensively\. See also oh\-my\-fish history for August 27, 2015 when another project, Wahoo, was entirely merged with oh\-my\-fish\.
.
.P
In addition, Fisherman was built from the ground up using a completely different design, implementation and set of principles\.
.
.P
Some features include: UNIX familiarity, minimalistic design, flat tree structure, unified plugin architecture, external self\-managed database, cache system, dependency manifest file and compatibility with oh\-my\-fish, etc\. See \fBfisher help tour\fR\.
.
.SS "How can I upgrade from an existing oh\-my\-fish or Wahoo installation?"
Install Fisherman\.
.
.IP "" 4
.
.nf
git clone https://github\.com/fisherman/fisherman
cd fisherman
make
.
.fi
.
.IP "" 0
.
.P
You can now safely remove oh\-my\-fish \fB$OMF_PATH\fR and \fB$OMF_CONFIG\fR\.
.
.P
Backup dotfiles and other sensitive data first\.
.
.IP "" 4
.
.nf
rm \-rf {$OMF_PATH,$OMF_CONFIG}
.
.fi
.
.IP "" 0
.
.SS "I changed my prompt with <code>fish_config</code> and now I can\'t use any Fisherman theme, what do I do?"
\fBfish_config\fR persists the prompt to \fBXDG_CONFIG_HOME/fish/functions/fish_prompt\.fish\fR\. That file takes precedence over Fisherman prompts that installs to \fB$fisher_config/functions\fR\. To use Fisherman prompts remove the \fBfish_promt\.fish\fR inside \fBXDG_CONFIG_HOME/fish/functions\fR\.
.
.P
Assuming \fBXDG_CONFIG_HOME\fR is \fB~/\.config\fR in your system:
.
.IP "" 4
.
.nf
rm ~/\.config/fish/functions/fish_prompt\.fish
.
.fi
.
.IP "" 0
.
.SS "How do I use fish as my default shell?"
Add Fish to \fB/etc/shells\fR:
.
.IP "" 4
.
.nf
echo "/usr/local/bin/fish" | sudo tee \-a /etc/shells
.
.fi
.
.IP "" 0
.
.P
Make Fish your default shell:
.
.IP "" 4
.
.nf
chsh \-s /usr/local/bin/fish
.
.fi
.
.IP "" 0
.
.P
To switch back to another shell\.
.
.IP "" 4
.
.nf
chsh \-s /bin/another/shell
.
.fi
.
.IP "" 0
.
.SS "Why is this FAQ similar to the oh\-my\-fish FAQ?"
Because it was written by the same author of Fisherman and Wahoo and some of the questions and answers simply overlap\.