From ea5084073849ccad41b16e3a227f4eb625e1d048 Mon Sep 17 00:00:00 2001 From: Leonid Volnitsky Date: Wed, 25 Jun 2008 12:22:54 +0300 Subject: rfct: cleaner vcs_info composition --- prompt | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) (limited to 'prompt') diff --git a/prompt b/prompt index c9c64a5..78f9889 100755 --- a/prompt +++ b/prompt @@ -258,6 +258,7 @@ parse_git_dir() { vcs=git + ########################################################## GIT STATUS eval ` git status 2>/dev/null | sed -n " @@ -288,6 +289,10 @@ parse_git_dir() { " ` + if ! grep -q "^ref:" $git_dir/HEAD 2>/dev/null; then + detached=detached + fi + ### OP unset op @@ -323,31 +328,28 @@ parse_git_dir() { # branch="$(cut -c1-7 "$git_dir/HEAD")..." fi + ##################################################################### + + rawhex=`git-rev-parse HEAD 2>/dev/null` + rawhex=${rawhex/HEAD/} + rawhex=${rawhex:0:6} ### branch branch=${branch/master/M} - # if rawhex in .git/HEAD, then detached head - if ! grep -q "^ref:" $git_dir/HEAD 2>/dev/null; then - detached=detached - branch="/dev/null`>" - fi - # - # another method of above: - # branch=$(git-symbolic-ref -q HEAD || { echo -n "detached:" ; git-name-rev --name-only HEAD 2>/dev/null; } ) - # branch=${branch#refs/heads/} - # + # another method of above: + # branch=$(git-symbolic-ref -q HEAD || { echo -n "detached:" ; git-name-rev --name-only HEAD 2>/dev/null; } ) + # branch=${branch#refs/heads/} - rawhex=`git-rev-parse HEAD 2>/dev/null` - rawhex=${rawhex/HEAD/} - rawhex=${rawhex:0:6} + ### compose vcs_info - ### compose vcs_info + if [[ "$detached" ]] ; then + vcs_info="/dev/null`$white=$rawhex>" - if [[ "$op" == "merge" ]] ; then - vcs_info="$op: $branch <~ $(git-name-rev --name-only $(<$git_dir/MERGE_HEAD))$white/$rawhex" + elif [[ "$op" == "merge" ]] ; then + vcs_info="$op: $branch <~ $(git-name-rev --name-only $(<$git_dir/MERGE_HEAD))$white=$rawhex" elif [[ "$op" ]]; then vcs_info="<$op:$branch>" @@ -356,7 +358,7 @@ parse_git_dir() { vcs_info=init else - vcs_info="${branch}$white/$rawhex" + vcs_info="${branch}$white=$rawhex" fi } -- cgit v1.2.3