27 lines
667 B
Bash
27 lines
667 B
Bash
# Set the title bar to user@host: pwd
|
|
_TITLE_BAR="\u@\h: \w"
|
|
_SET_TITLE_BAR="\[\e]0;$_TITLE_BAR\a\]"
|
|
# Shorten $HOME to ~ in PWD
|
|
_pwd_home () {
|
|
if [[ "$PWD" =~ ^"$HOME"(/|$) ]]; then
|
|
echo "~${PWD#$HOME}"
|
|
else
|
|
echo $PWD
|
|
fi
|
|
}
|
|
# Shorten path dir names
|
|
_pwd () {
|
|
DIR=$(_pwd_home)
|
|
[ "$DIR" != "/" ] && [ "$DIR" != "~" ] && printf '%s/' $(dirname $DIR | tr / '\n' | cut -c-1)
|
|
printf $(basename $DIR)
|
|
}
|
|
_DIR='$(_pwd)'
|
|
# Color codes
|
|
_GREEN="\[\033[1;32m\]"
|
|
_DIM="\[\e[92;2m\]"
|
|
_RESET="\[\e[0m\]"
|
|
# Nested shell level
|
|
_SHLVL=$(printf '\$%.0s' $(seq 1 $SHLVL))
|
|
# Build prompt
|
|
export PS1="$_SET_TITLE_BAR$_DIM[\A \u@\h:$_RESET$_GREEN$_DIR$_RESET$_DIM]$_SHLVL$_RESET "
|