"") bold="\[$(tput md)\]" unbold="\[$(tput me)\]" ;;
*) bold="\[$(tput bold)\]" unbold="\[$(tput sgr0)\]" ;;
esac
+ gitcolour="\[$(tput setaf 6)\]"
+ rccolour="\[$(tput setaf 1)\]"
+ uncolour="\[$(tput op)\]"
nl="\[\r\]"
;;
*)
- bold='' unbold='' nl='' ;;
+ bold='' unbold='' nl='' gitcolour='' rccolour='' uncolour='';;
esac
## Choose the right delimiters. Highlight root prompts specially;
fi
## If this session is insecure then highlight that.
- if [ -z "$SSH_CLIENT" ] &&
- [ "$__mdw_sechost" != "`hostname`" ]
- then
+ if [ -z "$SSH_CLIENT" ] && [ -z "$SCHROOT_CHROOT_NAME" ] &&
+ [ "$__mdw_sechost" != "`hostname`" ]
+ then
sec_l='(' sec_r=')'
fi
+ ## If this is an schroot environment then point this out.
+ hqual=""
+ hqual="$hqual${SCHROOT_CHROOT_NAME+/$SCHROOT_CHROOT_NAME}"
+
## Build the prompt string.
- PS1="$nl$bold$left$sec_l$u\\h$sec_r \\w$marker$right$unbold"
+ git="" rc=""
+ if [[ ${BASH_VERSINFO[0]} -ge 4 ]]; then
+ if type __git_ps1 >/dev/null 2>&1; then
+ git="$unbold$gitcolour\$(rc=\$?;__git_ps1;exit \$rc)$uncolour$bold"
+ fi
+ rc="$unbold$rccolour\$(rc=\$?;case \$rc in 0);;"
+ rc="$rc*)echo -n \" rc=\$rc\";;esac;exit \$rc)$uncolour$bold"
+ fi
+ PS1="$nl$bold$left$sec_l$u\\h$hqual$sec_r \\w$git$rc$marker$right$unbold"
PS2="$PS1 $bold>$unbold "
unset nl bold unbold left right sec_l sec_r marker
+ unset gitcolour rccolour uncolour git rc hqual
fi
###--------------------------------------------------------------------------
fi
###----- That's all, folks --------------------------------------------------
+
+: