From 5b9d636295a72b22e47ab0c909068d5155645fad Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Sun, 22 Jun 2025 11:40:57 +0200 Subject: [PATCH] giti - optical and color adaptions --- giti | 50 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 30 insertions(+), 20 deletions(-) diff --git a/giti b/giti index ba40eef..a7d0dcc 100755 --- a/giti +++ b/giti @@ -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