From 35e0358bb60d7a22778a61752c6e15c73aa90c82 Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Sat, 21 Jun 2025 09:58:35 +0200 Subject: [PATCH] improved less messy giti --- giti | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/giti b/giti index 2c80c80..a47b3cd 100755 --- a/giti +++ b/giti @@ -34,7 +34,7 @@ COLOR_OCHRE="\033[38;5;95m" # git information storage # git_status="$(LANGUAGE='en_US.UTF-8 git' git status 2> /dev/null)" -git_diff="$(git status --porcelain 2> /dev/null)" +git_diff="$(git status -s 2> /dev/null)" # @@ -93,13 +93,21 @@ fi if [[ ! $git_diff == "" ]]; then if [[ ! $PROMPT || "$GIT_PROMPT_DETAILS" == "on" ]]; then IFS=$'\n' - for ENTRY in $git_diff; do - if [[ $ENTRY = "D "* ]] || [[ $ENTRY = "A "* ]] || [[ $ENTRY = "M "* ]] || [[ $ENTRY = "R "* ]]; then - echo -e "$git_status_color│ $COLOR_DARKYELLOW$ENTRY" + NEW_FILES=0 + for ENTRY in $git_diff; do + if [[ $ENTRY != "??"* ]]; then + if [[ $ENTRY = "D "* ]] || [[ $ENTRY = "A "* ]] || [[ $ENTRY = "M "* ]] || [[ $ENTRY = "R "* ]]; then + echo -e "$git_status_color│ $COLOR_DARKYELLOW$ENTRY" + else + echo -e "$git_status_color│ $COLOR_YELLOW$ENTRY" + fi else - echo -e "$git_status_color│ $COLOR_YELLOW$ENTRY" + NEW_FILES=1 fi done + if [[ $NEW_FILES != 0 ]]; then + echo -e "$git_status_color│ $COLOR_YELLOW N ..." + fi fi fi