cmder/vendor/git-prompt.sh

57 lines
1.7 KiB
Bash
Raw Normal View History

function getGitStatusSetting() {
gitStatusSetting=$(git config cmder.status 2>/dev/null)
if [[ -n ${gitStatusSetting} ]] && [[ ${gitStatusSetting} == false ]]
then
echo false
else
echo true
fi
}
2017-07-11 11:21:22 +08:00
if test -f /etc/profile.d/git-sdk.sh
then
2017-07-11 11:23:51 +08:00
TITLEPREFIX=SDK-${MSYSTEM#MINGW}
2017-07-11 11:21:22 +08:00
else
2017-07-11 11:23:51 +08:00
TITLEPREFIX=$MSYSTEM
fi
2017-07-11 11:21:22 +08:00
if test -f ~/.config/git/git-prompt.sh
then
if [[ $(getGitStatusSetting) == true ]]
then
. ~/.config/git/git-prompt.sh
fi
2017-07-11 11:21:22 +08:00
else
PS1='\[\033]0;$MSYSTEM:${PWD//[^[:ascii:]]/?}\007\]' # set window title
2017-07-11 11:23:51 +08:00
# PS1="$PS1"'\n' # new line
2017-07-11 11:21:22 +08:00
PS1="$PS1"'\[\033[32m\]' # change to green
PS1="$PS1"'\u@\h ' # user@host<space>
2017-07-11 11:23:51 +08:00
# PS1="$PS1"'\[\033[35m\]' # change to purple
# PS1="$PS1"'$MSYSTEM ' # show MSYSTEM
2017-07-11 11:21:22 +08:00
PS1="$PS1"'\[\033[33m\]' # change to brownish yellow
PS1="$PS1"'\w' # current working directory
if test -z "$WINELOADERNOEXEC"
then
2017-07-11 11:23:51 +08:00
GIT_EXEC_PATH="$(git --exec-path 2>/dev/null)"
COMPLETION_PATH="${GIT_EXEC_PATH%/libexec/git-core}"
COMPLETION_PATH="${COMPLETION_PATH%/lib/git-core}"
COMPLETION_PATH="$COMPLETION_PATH/share/git/completion"
if test -f "$COMPLETION_PATH/git-prompt.sh"
then
. "$COMPLETION_PATH/git-completion.bash"
if [[ $(getGitStatusSetting) == true ]]
then
. "$COMPLETION_PATH/git-prompt.sh"
PS1="$PS1"'\[\033[36m\]' # change color to cyan
PS1="$PS1"'`__git_ps1`' # bash function
fi
2017-07-11 11:23:51 +08:00
fi
2017-07-11 11:21:22 +08:00
fi
PS1="$PS1"'\[\033[0m\]' # change color
PS1="$PS1"'\n' # new line
PS1="$PS1"'λ ' # prompt: always λ
fi
MSYS2_PS1="$PS1" # for detection by MSYS2 SDK's bash.basrc