|
|
|
@ -22,14 +22,31 @@ LIGHTYELLOW="\033[38;5;229m"
|
|
|
|
|
CONTINUE="\033[38;5;242m"
|
|
|
|
|
DARKGRAY="\033[38;5;247m"
|
|
|
|
|
|
|
|
|
|
# Glyph table for airline fonts
|
|
|
|
|
# U+E0A0 Version control branch
|
|
|
|
|
# U+E0A1 LN (line) symbol
|
|
|
|
|
# U+E0A2 Closed padlock
|
|
|
|
|
# U+E0B0 Rightwards black arrowhead
|
|
|
|
|
# U+E0B1 Rightwards arrowhead
|
|
|
|
|
# U+E0B2 Leftwards black arrowhead
|
|
|
|
|
# U+E0B3 Leftwards arrowhead
|
|
|
|
|
|
|
|
|
|
LAR=""
|
|
|
|
|
RAR=""
|
|
|
|
|
LARS=""
|
|
|
|
|
RARS=""
|
|
|
|
|
LN=""
|
|
|
|
|
VC=""
|
|
|
|
|
LK=""
|
|
|
|
|
|
|
|
|
|
colorize() {
|
|
|
|
|
# $1 is foreground
|
|
|
|
|
# $2 is background
|
|
|
|
|
if [ $OSTYPE = 'msys' ]; then
|
|
|
|
|
echo "\033[$2;$1m"
|
|
|
|
|
else
|
|
|
|
|
echo "$(tput setaf $1)$(tput setab $2)"
|
|
|
|
|
fi
|
|
|
|
|
# $1 is foreground
|
|
|
|
|
# $2 is background
|
|
|
|
|
if [ $OSTYPE = 'msys' ]; then
|
|
|
|
|
echo "\033[$2;$1m"
|
|
|
|
|
else
|
|
|
|
|
echo "$(tput setaf $1)$(tput setab $2)"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
parse_git_branch () {
|
|
|
|
@ -41,32 +58,46 @@ parse_git_tag () {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
parse_git_branch_or_tag() {
|
|
|
|
|
local OUT="$(parse_git_branch)"
|
|
|
|
|
local OUT="$VC$(parse_git_branch)"
|
|
|
|
|
if [ "$OUT" == " ((no branch))" ]; then
|
|
|
|
|
$OUT="($(parse_git_tag))"
|
|
|
|
|
elif [ "$OUT" == " " ]; then
|
|
|
|
|
$OUT=""
|
|
|
|
|
echo "$VC($(parse_git_tag))"
|
|
|
|
|
elif [ "$OUT" == "$VC" ]; then
|
|
|
|
|
echo "x$VC"
|
|
|
|
|
else
|
|
|
|
|
echo "$OUT"
|
|
|
|
|
fi
|
|
|
|
|
echo "$OUT"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
build_prompt_win(){
|
|
|
|
|
TIME="$(colorize 39 48)[$(date +%H:%M)]$(colorize 36 42)";
|
|
|
|
|
USER="$(colorize 39 42) \u@\h $(colorize 32 41)"
|
|
|
|
|
GIT="$(colorize 39 42)$(parse_git_branch_or_tag) $(colorize 42 49)"
|
|
|
|
|
DIR="$(colorize 33 49) \w"
|
|
|
|
|
echo "$TIME$USER$GIT $DIR"
|
|
|
|
|
TIME="$(colorize 39 48)[$(date +%H:%M)]$(colorize 36 42)$RARS";
|
|
|
|
|
USER="$(colorize 39 42) \u@\h $(colorize 32 41)$RARS"
|
|
|
|
|
GIT="$(colorize 39 42)$(parse_git_branch_or_tag) $(colorize 42 49)"
|
|
|
|
|
DIR="$(colorize 33 49) \w"
|
|
|
|
|
echo "$TIME$USER$GIT $DIR"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
build_prompt_mac(){
|
|
|
|
|
TIME="$(colorize 15 33)[$(date +%H:%M)] $(colorize 33 34)";
|
|
|
|
|
USER="$(colorize 15 34) \u@\h $(colorize 34 124)"
|
|
|
|
|
GIT="$(colorize 252 124) $(parse_git_branch_or_tag) $(colorize 124 0)"
|
|
|
|
|
DIR="$(colorize 11 0) \w"
|
|
|
|
|
echo "$TIME$USER$GIT $DIR"
|
|
|
|
|
local TIME="$(colorize 15 33)[$(date +%H:%M)] $(colorize 33 34)$RARS";
|
|
|
|
|
local USER="$(colorize 15 34)\u@\h $(colorize 34 124)$RARS"
|
|
|
|
|
local GIT="$(colorize 252 124) $(parse_git_branch_or_tag) $(colorize 124 240)$RARS"
|
|
|
|
|
local DIR=" $(colorize 11 240)\w $(colorize 240 0)$RARS"
|
|
|
|
|
local LEFT="$TIME$USER$GIT$DIR"
|
|
|
|
|
echo "$LEFT"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
print_prompt(){
|
|
|
|
|
local TIME="$(colorize 15 33)[$(date +%H:%M)] $(colorize 33 34)$RARS";
|
|
|
|
|
local USER="$(colorize 15 34)\u@\h $(colorize 34 124)$RARS"
|
|
|
|
|
local GIT="$(colorize 252 124) $(parse_git_branch_or_tag) $(colorize 124 240)$RARS"
|
|
|
|
|
local DIR=" $(colorize 11 240)\w $(colorize 240 0)$RARS"
|
|
|
|
|
local LEFT="$TIME$USER$GIT$DIR"
|
|
|
|
|
local RIGHT="$DIR"
|
|
|
|
|
local COMPENSATE=11
|
|
|
|
|
PS1=$(printf "%*s\r%s\n$EMPTY\$$GRAY" "$($(tput cols) + ${compensate})" "$RIGHT" "$LEFT")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# [hh:mm] username@host (git branch || svn revision) ~/working/directory
|
|
|
|
|
# $
|
|
|
|
|
# [hh:mm] username@host (git branch || svn revision) ~/working/directory
|
|
|
|
@ -75,40 +106,39 @@ build_prompt_mac(){
|
|
|
|
|
# console is 256 color capable
|
|
|
|
|
if [ $OSTYPE = 'msys' ]; then
|
|
|
|
|
PROMPT_COMMAND='PS1="$(build_prompt_win) \n$EMPTY\$ $GRAY"
|
|
|
|
|
PS2="$CONTINUE> "'
|
|
|
|
|
else
|
|
|
|
|
PROMPT_COMMAND='PS1="$(build_prompt_mac) \n$EMPTY\$ $LIGHTGRAY"
|
|
|
|
|
PS2="$CONTINUE> "'
|
|
|
|
|
else
|
|
|
|
|
PROMPT_COMMAND='PS1="$(build_prompt_mac) \n$EMPTY\$$GRAY"'
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
print_map(){
|
|
|
|
|
if [ $OSTYPE = 'msys' ]; then
|
|
|
|
|
#Background
|
|
|
|
|
for clbg in {40..47} {100..107} 49 ; do
|
|
|
|
|
#Foreground
|
|
|
|
|
for clfg in {30..37} {90..97} 39 ; do
|
|
|
|
|
#Formatting
|
|
|
|
|
for attr in 0 1 2 4 5 7 ; do
|
|
|
|
|
#Print the result
|
|
|
|
|
echo -en "\e[${attr};${clbg};${clfg}m ^[${attr};${clbg};${clfg}m \e[0m"
|
|
|
|
|
done
|
|
|
|
|
echo #Newline
|
|
|
|
|
done
|
|
|
|
|
done
|
|
|
|
|
else
|
|
|
|
|
for fgbg in 38 48 ; do #Foreground/Background
|
|
|
|
|
for color in {0..256} ; do #Colors
|
|
|
|
|
#Display the color
|
|
|
|
|
echo -en "\033[${fgbg};5;${color}m ${color}\t\e[0m"
|
|
|
|
|
#Display 10 colors per lines
|
|
|
|
|
if [ $((($color + 1) % 10)) == 0 ] ; then
|
|
|
|
|
echo #New line
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
echo #New line
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
if [ $OSTYPE = 'msys' ]; then
|
|
|
|
|
#Background
|
|
|
|
|
for clbg in {40..47} {100..107} 49 ; do
|
|
|
|
|
#Foreground
|
|
|
|
|
for clfg in {30..37} {90..97} 39 ; do
|
|
|
|
|
#Formatting
|
|
|
|
|
for attr in 0 1 2 4 5 7 ; do
|
|
|
|
|
#Print the result
|
|
|
|
|
echo -en "\e[${attr};${clbg};${clfg}m ^[${attr};${clbg};${clfg}m \e[0m"
|
|
|
|
|
done
|
|
|
|
|
echo #Newline
|
|
|
|
|
done
|
|
|
|
|
done
|
|
|
|
|
else
|
|
|
|
|
for fgbg in 38 48 ; do #Foreground/Background
|
|
|
|
|
for color in {0..256} ; do #Colors
|
|
|
|
|
#Display the color
|
|
|
|
|
echo -en "\033[${fgbg};5;${color}m ${color}\t\e[0m"
|
|
|
|
|
#Display 10 colors per lines
|
|
|
|
|
if [ $((($color + 1) % 10)) == 0 ] ; then
|
|
|
|
|
echo #New line
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
echo #New line
|
|
|
|
|
done
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
banner() {
|
|
|
|
|