more macside terminal line tweaks

pull/1/head
Adam Veldhousen 2014-07-16 12:34:07 -05:00
parent bb991593ff
commit de7496dba3
1 changed files with 81 additions and 51 deletions

View File

@ -22,14 +22,31 @@ LIGHTYELLOW="\033[38;5;229m"
CONTINUE="\033[38;5;242m" CONTINUE="\033[38;5;242m"
DARKGRAY="\033[38;5;247m" 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() { colorize() {
# $1 is foreground # $1 is foreground
# $2 is background # $2 is background
if [ $OSTYPE = 'msys' ]; then if [ $OSTYPE = 'msys' ]; then
echo "\033[$2;$1m" echo "\033[$2;$1m"
else else
echo "$(tput setaf $1)$(tput setab $2)" echo "$(tput setaf $1)$(tput setab $2)"
fi fi
} }
parse_git_branch () { parse_git_branch () {
@ -41,32 +58,46 @@ parse_git_tag () {
} }
parse_git_branch_or_tag() { parse_git_branch_or_tag() {
local OUT="$(parse_git_branch)" local OUT="$VC$(parse_git_branch)"
if [ "$OUT" == " ((no branch))" ]; then if [ "$OUT" == " ((no branch))" ]; then
$OUT="($(parse_git_tag))" echo "$VC($(parse_git_tag))"
elif [ "$OUT" == " " ]; then elif [ "$OUT" == "$VC" ]; then
$OUT="" echo "x$VC"
else
echo "$OUT"
fi fi
echo "$OUT"
} }
build_prompt_win(){ build_prompt_win(){
TIME="$(colorize 39 48)[$(date +%H:%M)]$(colorize 36 42)"; TIME="$(colorize 39 48)[$(date +%H:%M)]$(colorize 36 42)$RARS";
USER="$(colorize 39 42) \u@\h $(colorize 32 41)" USER="$(colorize 39 42) \u@\h $(colorize 32 41)$RARS"
GIT="$(colorize 39 42)$(parse_git_branch_or_tag) $(colorize 42 49)" GIT="$(colorize 39 42)$(parse_git_branch_or_tag) $(colorize 42 49)"
DIR="$(colorize 33 49) \w" DIR="$(colorize 33 49) \w"
echo "$TIME$USER$GIT $DIR" echo "$TIME$USER$GIT $DIR"
} }
build_prompt_mac(){ build_prompt_mac(){
TIME="$(colorize 15 33)[$(date +%H:%M)] $(colorize 33 34)"; local TIME="$(colorize 15 33)[$(date +%H:%M)] $(colorize 33 34)$RARS";
USER="$(colorize 15 34) \u@\h $(colorize 34 124)" local USER="$(colorize 15 34)\u@\h $(colorize 34 124)$RARS"
GIT="$(colorize 252 124) $(parse_git_branch_or_tag) $(colorize 124 0)" local GIT="$(colorize 252 124) $(parse_git_branch_or_tag) $(colorize 124 240)$RARS"
DIR="$(colorize 11 0) \w" local DIR=" $(colorize 11 240)\w $(colorize 240 0)$RARS"
echo "$TIME$USER$GIT $DIR" 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
# $ # $
# [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 # console is 256 color capable
if [ $OSTYPE = 'msys' ]; then if [ $OSTYPE = 'msys' ]; then
PROMPT_COMMAND='PS1="$(build_prompt_win) \n$EMPTY\$ $GRAY" PROMPT_COMMAND='PS1="$(build_prompt_win) \n$EMPTY\$ $GRAY"
PS2="$CONTINUE> "'
else
PROMPT_COMMAND='PS1="$(build_prompt_mac) \n$EMPTY\$ $LIGHTGRAY"
PS2="$CONTINUE> "' PS2="$CONTINUE> "'
else
PROMPT_COMMAND='PS1="$(build_prompt_mac) \n$EMPTY\$$GRAY"'
fi fi
print_map(){ print_map(){
if [ $OSTYPE = 'msys' ]; then if [ $OSTYPE = 'msys' ]; then
#Background #Background
for clbg in {40..47} {100..107} 49 ; do for clbg in {40..47} {100..107} 49 ; do
#Foreground #Foreground
for clfg in {30..37} {90..97} 39 ; do for clfg in {30..37} {90..97} 39 ; do
#Formatting #Formatting
for attr in 0 1 2 4 5 7 ; do for attr in 0 1 2 4 5 7 ; do
#Print the result #Print the result
echo -en "\e[${attr};${clbg};${clfg}m ^[${attr};${clbg};${clfg}m \e[0m" echo -en "\e[${attr};${clbg};${clfg}m ^[${attr};${clbg};${clfg}m \e[0m"
done done
echo #Newline echo #Newline
done done
done done
else else
for fgbg in 38 48 ; do #Foreground/Background for fgbg in 38 48 ; do #Foreground/Background
for color in {0..256} ; do #Colors for color in {0..256} ; do #Colors
#Display the color #Display the color
echo -en "\033[${fgbg};5;${color}m ${color}\t\e[0m" echo -en "\033[${fgbg};5;${color}m ${color}\t\e[0m"
#Display 10 colors per lines #Display 10 colors per lines
if [ $((($color + 1) % 10)) == 0 ] ; then if [ $((($color + 1) % 10)) == 0 ] ; then
echo #New line echo #New line
fi fi
done done
echo #New line echo #New line
done done
fi fi
} }
banner() { banner() {