giti - optical and color adaptions

This commit is contained in:
Dirk Alders 2025-06-22 11:40:57 +02:00
parent 1a1999fcef
commit 5b9d636295

50
giti
View File

@ -2,6 +2,8 @@
#
# DEFINITIONS #####################################################################################
COLOR_BACKGROUND="\033[48;2;50;80;150m" # RGB BACKGROUND
COLOR_FOR_AS_BACKGROUND="\033[38;2;50;80;150m" # RGB FOREGROUND
COLOR_WHITE="\033[00m"
COLOR_CYAN="\033[1;36m"
COLOR_RED="\033[1;31m"
@ -13,8 +15,10 @@ COLOR_OCHRE="\033[38;5;95m"
COLOR_BLUE="\033[34m"
COLOR_NORMAL="\033[0m"
SYMBOL_START="$COLOR_NORMAL$COLOR_FOR_AS_BACKGROUND\Ue0b2"
SYMBOL_END="$COLOR_NORMAL$COLOR_FOR_AS_BACKGROUND\Ue0b0"
SYMBOL_SPLIT=" "
SYMBOL_BRANCH=""
SYMBOL_BRANCH="\Ue0a0"
SYMBOL_NEW="…"
SYMBOL_AHEAD="↑"
SYMBOL_BEHIND="↓"
@ -22,10 +26,14 @@ SYMBOL_CHANGED="✚"
SYMBOL_COMMITED="●"
SYMBOL_STASH="⚑"
COLOR_BRANCH="$COLOR_GREEN"
COLOR_BRANCH_CLEAN="\033[38;2;0;190;0m"
COLOR_BRANCH_CHANGED="\033[38;2;255;195;11m"
COLOR_BRANCH_OUTDATED="\033[38;2;150;150;150m"
COLOR_BRANCH_COMMIT="\033[38;2;204;169;221m"
COLOR_BRANCH_BRANCH="\033[38;2;137;204;240m"
COLOR_NEW="$COLOR_RED"
COLOR_AHEAD="$COLOR_WHITE"
COLOR_BEHIND="$COLOR_WHITE"
COLOR_AHEAD="\033[38;2;190;190;190m"
COLOR_BEHIND="$COLOR_AHEAD"
COLOR_CHANGED="$COLOR_DARKYELLOW"
COLOR_COMMITED="$COLOR_GREEN"
COLOR_STASH="$COLOR_BLUE"
@ -98,28 +106,30 @@ if [[ ! -z "$GIT_FILES" ]]; then
fi
# GIT STATUS COLOR ################################################################################
if [[ $COMMITED_VAL > 0 || $CHANGED_VAL > 0 || $NEW_VAL > 0 ]]; then
COLOR_BRANCH="$COLOR_WHITE"
elif [[ $BEHIND_VAL > 0 || $AHEAD_VAL > 0 ]]; then
COLOR_BRANCH="$COLOR_DARKGREEN"
if [[ $COMMITED_VAL > 0 || $CHANGED_VAL > 0 ]]; then
COLOR_BRANCH="$COLOR_BRANCH_CHANGED"
elif [[ $BEHIND_VAL > 0 || $AHEAD_VAL > 0 || $NEW_VAL > 0 ]]; then
COLOR_BRANCH="$COLOR_BRANCH_OUTDATED"
elif [[ $BRANCH_VAL != "master" && $BRANCH_VAL != "main" ]]; then
if [[ $BRANCH_VAL == *"HEAD detached at"* ]]; then
COLOR_BRANCH=$COLOR_OCHRE
COLOR_BRANCH=$COLOR_BRANCH_COMMIT
BRANCH_VAL=$(echo $BRANCH_VAL | awk '{print $4}')
BRANCH_VAL=${BRANCH_VAL::-1}
else
COLOR_BRANCH=$COLOR_BLUE
COLOR_BRANCH=$COLOR_BRANCH_BRANCH
fi
else
COLOR_BRANCH=$COLOR_BRANCH_CLEAN
fi
# GIT GATHERING ###################################################################################
BRANCH="$COLOR_BRANCH$SYMBOL_BRANCH$BRANCH_VAL"
BEHIND="$COLOR_BEHIND$SYMBOL_BEHIND$BEHIND_VAL"
AHEAD="$COLOR_AHEAD$SYMBOL_AHEAD$AHEAD_VAL"
NEW="$COLOR_NEW$SYMBOL_NEW$NEW_VAL"
CHANGED="$COLOR_CHANGED$SYMBOL_CHANGED$CHANGED_VAL"
COMMITED="$COLOR_COMMITED$SYMBOL_COMMITED$COMMITED_VAL"
STASH="$COLOR_STASH$SYMBOL_STASH$STASH_VAL"
BRANCH="$COLOR_BRANCH$COLOR_BACKGROUND$SYMBOL_BRANCH$BRANCH_VAL"
BEHIND="$COLOR_BEHIND$COLOR_BACKGROUND$SYMBOL_BEHIND$BEHIND_VAL"
AHEAD="$COLOR_AHEAD$COLOR_BACKGROUND$SYMBOL_AHEAD$AHEAD_VAL"
NEW="$COLOR_NEW$COLOR_BACKGROUND$SYMBOL_NEW$NEW_VAL"
CHANGED="$COLOR_CHANGED$COLOR_BACKGROUND$SYMBOL_CHANGED$CHANGED_VAL"
COMMITED="$COLOR_COMMITED$COLOR_BACKGROUND$SYMBOL_COMMITED$COMMITED_VAL"
STASH="$COLOR_STASH$COLOR_BACKGROUND$SYMBOL_STASH$STASH_VAL"
# GIT OUTPUT ######################################################################################
GIT_STATUS_SUMMARY="$BRANCH"
@ -144,9 +154,9 @@ fi
if [[ $PROMPT == "True" ]]; then
if [[ $SHORT == "True" ]]; then
echo -ne " $COLOR_BRANCH($GIT_STATUS_SUMMARY$COLOR_BRANCH)$COLOR_NORMAL"
echo -ne " $SYMBOL_START$GIT_STATUS_SUMMARY$SYMBOL_END"
else
echo -e "$COLOR_DARKGREEN├──$COLOR_BRANCH($GIT_STATUS_SUMMARY$COLOR_BRANCH) - $COLOR_CYAN$GIT_URL"
echo -e "$COLOR_DARKGREEN├──$SYMBOL_START$GIT_STATUS_SUMMARY $COLOR_WHITE$COLOR_BACKGROUND- $COLOR_CYAN$GIT_URL$SYMBOL_END"
if [[ $GIT_PROMPT_DETAILS == "on" && ! -z "$GIT_FILES" ]]; then
while IFS= read -r line ;do
FILES_STATUS=${line:0:2}
@ -159,7 +169,7 @@ if [[ $PROMPT == "True" ]]; then
echo -ne "$COLOR_NORMAL\b"
fi
else
echo -e " $GIT_STATUS_SUMMARY$COLOR_DARKGREEN - $COLOR_CYAN$GIT_URL\n"
echo -e "$SYMBOL_START$GIT_STATUS_SUMMARY $COLOR_WHITE$COLOR_BACKGROUND- $COLOR_CYAN$GIT_URL$SYMBOL_END"
if [[ ! -z "$GIT_FILES" ]]; then
while IFS= read -r line ;do
if [[ $line != "??"* ]]; then