# fish_hg_prompt - output Mercurial information for use in a prompt

## Synopsis

    fish_hg_prompt

    function fish_prompt
         printf '%s' $PWD (fish_hg_prompt) ' $ '
    end

## Description

The fish_hg_prompt function displays information about the current Mercurial repository, if any.

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.

- `$fish_color_hg_clean`, `$fish_color_hg_modified` and `$fish_color_hg_dirty` are colors used when the repository has the respective status.

Some colors for status symbols:

- `$fish_color_hg_added`

- `$fish_color_hg_renamed`

- `$fish_color_hg_copied`

- `$fish_color_hg_deleted`

- `$fish_color_hg_untracked`

- `$fish_color_hg_unmerged`

The status symbols themselves:

- `$fish_prompt_hg_status_added`, default ‘✚’

- `$fish_prompt_hg_status_modified`, default ‘*’

- `$fish_prompt_hg_status_copied`, default ‘⇒’

- `$fish_prompt_hg_status_deleted`, default ‘✖’

- `$fish_prompt_hg_status_untracked`, default ‘?’

- `$fish_prompt_hg_status_unmerged`, default ‘!’

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.

## Example

A simple prompt that displays hg info:

    function fish_prompt
        ...
        set -g fish_prompt_hg_show_informative_status
        printf '%s %s$' $PWD (fish_hg_prompt)
    end