Home

Awesome

Mercurial plugin

extracted from oh-my-zsh, this is the original README

Usage

Update .zshrc:

  1. Add name to the list of plugins, e.g. plugins = (..., mercurial, ...) (that is pretty obvious).

  2. Change PROMPT variable of current theme to contain current folder mercurial repo info:

    robbyrussel theme is used by default, so you need to modify PROMPT var from this file by adding $(hg_prompt_info) after $(git_prompt_info), so currently it looks next:

    - PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
    + PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)$(hg_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
    

    and put modified var at the end of .zshrc.

  3. Initialize additional vars used in plugin. So in short put next in .zshrc:

    ZSH_THEME_HG_PROMPT_PREFIX="%{$fg_bold[magenta]%}hg:(%{$fg[red]%}"
    ZSH_THEME_HG_PROMPT_SUFFIX="%{$reset_color%}"
    ZSH_THEME_HG_PROMPT_DIRTY="%{$fg[magenta]%}) %{$fg[yellow]%}✗%{$reset_color%}"
    ZSH_THEME_HG_PROMPT_CLEAN="%{$fg[magenta]%})"
    

What's inside?

Adds handy aliases:

general
pull and update
this is the 'git commit --amend' equivalent
list unresolved files (since hg does not list unmerged files in the status command)

Displays repo branch and directory status in prompt

This is the same as git plugin does.

Note: additional changes to .zshrc are required in order for this to work.

Mantainers

ptrv - original creator

oshybystyi - created this README and know how most of code works