function fish_prompt printf '%s' $PWD (fish_hg_prompt) ' $ ' end
Mercurial (hg) must be installed.
By default, only the current branch is shown because hg status can be slow on a large repository. You can enable a more informative prompt by setting the variable $fish_prompt_hg_show_informative_status, for example:
set --universal fish_prompt_hg_show_informative_status
If you enabled the informative status, there are numerous customization options, which can be controlled with fish variables.
Some colors for status symbols:
The status symbols themselves:
Finally, $fish_prompt_hg_status_order, which can be used to change the order the status symbols appear in. It defaults to added modified copied deleted untracked unmerged.
See also fish_vcs_prompt, which will call all supported version control prompt functions, including git, Mercurial and Subversion.
function fish_prompt ... set -g fish_prompt_hg_show_informative_status printf '%s %s$' $PWD (fish_hg_prompt) end