Update .zshrc:
plugins=(... mercurial ...)
(that is pretty obvious).hg_prompt_info
.Or, customize the $PROMPT
variable of your current theme to contain current folder mercurial repo info. This can be done by putting a custom version of the theme in $ZSH_CUSTOM
or by changing $PROMPT
in .zshrc
after loading the theme.
The robbyrussell
theme is used by default, so you need to modify $PROMPT
var by adding $(hg_prompt_info)
after $(git_prompt_info)
, so it looks like this:
PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)$(hg_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
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]%})"
hgc
- hg commit
hgb
- hg branch
hgba
- hg branches
hgbk
- hg bookmarks
hgco
- hg checkout
hgd
- hg diff
hged
- hg diffmerge
hgi
- hg incoming
hgl
- hg pull -u
hglr
- hg pull --rebase
hgo
- hg outgoing
hgp
- hg push
hgs
- hg status
hgsl
- hg log --limit 20 --template "{node|short} | {date|isodatesec} | {author|user}: {desc|strip|firstline}\n"
hgca
- hg qimport -r tip ; hg qrefresh -e ; hg qfinish tip
hgun
- hg resolve --list
This is the same as git plugin does.
Note: Additional changes to .zshrc, or using a theme designed to use hg_prompt_info
, are required in order for this to work.
ptrv - original creator
oshybystyi - created this README and know how most of code works