|
|
|
|
@ -140,24 +140,30 @@ prompt_git() { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
prompt_bzr() { |
|
|
|
|
(( $+commands[bzr] )) || return |
|
|
|
|
if (bzr status >/dev/null 2>&1); then |
|
|
|
|
status_mod=`bzr status | head -n1 | grep "modified" | wc -m` |
|
|
|
|
status_all=`bzr status | head -n1 | wc -m` |
|
|
|
|
revision=`bzr log | head -n2 | tail -n1 | sed 's/^revno: //'` |
|
|
|
|
if [[ $status_mod -gt 0 ]] ; then |
|
|
|
|
prompt_segment yellow black |
|
|
|
|
echo -n "bzr@"$revision "✚ " |
|
|
|
|
else |
|
|
|
|
if [[ $status_all -gt 0 ]] ; then |
|
|
|
|
prompt_segment yellow black |
|
|
|
|
echo -n "bzr@"$revision |
|
|
|
|
else |
|
|
|
|
prompt_segment green black |
|
|
|
|
echo -n "bzr@"$revision |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
(( $+commands[bzr] )) || return |
|
|
|
|
|
|
|
|
|
# Test if bzr repository in directory hierarchy |
|
|
|
|
local dir="$PWD" |
|
|
|
|
while [[ ! -d "$dir/.bzr" ]]; do |
|
|
|
|
[[ "$dir" = "/" ]] && return |
|
|
|
|
dir="${dir:h}" |
|
|
|
|
done |
|
|
|
|
|
|
|
|
|
local bzr_status status_mod status_all revision |
|
|
|
|
if bzr_status=$(bzr status 2>&1); then |
|
|
|
|
status_mod=$(echo -n "$bzr_status" | head -n1 | grep "modified" | wc -m) |
|
|
|
|
status_all=$(echo -n "$bzr_status" | head -n1 | wc -m) |
|
|
|
|
revision=$(bzr log -r-1 --log-format line | cut -d: -f1) |
|
|
|
|
if [[ $status_mod -gt 0 ]] ; then |
|
|
|
|
prompt_segment yellow black "bzr@$revision ✚" |
|
|
|
|
else |
|
|
|
|
if [[ $status_all -gt 0 ]] ; then |
|
|
|
|
prompt_segment yellow black "bzr@$revision" |
|
|
|
|
else |
|
|
|
|
prompt_segment green black "bzr@$revision" |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
fi |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
prompt_hg() { |
|
|
|
|
|