mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-02-20 03:02:29 +01:00
Faster prompt on mercurial
This commit is contained in:
parent
eafd5f3252
commit
5e09986d2d
1 changed files with 11 additions and 31 deletions
|
|
@ -105,38 +105,18 @@ prompt_git() {
|
|||
}
|
||||
|
||||
prompt_hg() {
|
||||
local rev status
|
||||
if $(hg id >/dev/null 2>&1); then
|
||||
if $(hg prompt >/dev/null 2>&1); then
|
||||
if [[ $(hg prompt "{status|unknown}") = "?" ]]; then
|
||||
# if files are not added
|
||||
prompt_segment red white
|
||||
st='±'
|
||||
elif [[ -n $(hg prompt "{status|modified}") ]]; then
|
||||
# if any modification
|
||||
prompt_segment yellow black
|
||||
st='±'
|
||||
else
|
||||
# if working copy is clean
|
||||
prompt_segment green black
|
||||
fi
|
||||
echo -n $(hg prompt "☿ {rev}@{branch}") $st
|
||||
else
|
||||
st=""
|
||||
rev=$(hg id -n 2>/dev/null | sed 's/[^-0-9]//g')
|
||||
branch=$(hg id -b 2>/dev/null)
|
||||
if `hg st | grep -Eq "^\?"`; then
|
||||
prompt_segment red black
|
||||
st='±'
|
||||
elif `hg st | grep -Eq "^(M|A)"`; then
|
||||
prompt_segment yellow black
|
||||
st='±'
|
||||
else
|
||||
prompt_segment green black
|
||||
fi
|
||||
echo -n "☿ $rev@$branch" $st
|
||||
local hg_status
|
||||
hg_status="`hg prompt "{status} {tip} {branch}" 2>/dev/null`"
|
||||
if (( $? == 0 )); then
|
||||
if [[ $hg_status == !* ]]; then
|
||||
prompt_segment yellow black
|
||||
elif [[ $hg_status == \?* ]]; then
|
||||
prompt_segment red white
|
||||
else
|
||||
prompt_segment green black
|
||||
fi
|
||||
echo -n "☿${hg_status}"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Dir: current working directory
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue