1
0
Fork 0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2024-11-12 08:50:08 +00:00

agnoster: fix bzr prompt with breezy installed (#8646)

* Change indentation to 2 spaces in prompt_bzr function
* Check if in a bzr repository and optimize bzr calls in prompt_bzr
This commit is contained in:
Marc Cornellà 2020-02-19 00:16:54 +01:00 committed by GitHub
parent eeb49bf5b0
commit c1b798aff3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

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