Thread (3 messages) flat view 3 messages, 2 authors, 2016-06-15

Re: bash completion with colour hints

From: Ramkumar Ramachandra <hidden>
Date: 2016-06-15 22:54:52

Hi Simon,

Could you follow the guidelines in Documentation/SubmittingPatches, so
that the patch can be considered for inclusion?
quoted hunk ↗ jump to hunk
--- git-orig-bak	2012-09-26 16:39:47.000000000 +0200
+++ git-bashcompletion	2012-09-26 16:50:57.000000000 +0200
@@ -59,6 +59,9 @@
 #       per-repository basis by setting the bash.showUpstream config
 #       variable.
 #
+#       If you would like an additional hint in colour in your prompt
+#       set GIT_PS1_SHOWCOLORHINT to a nonempty value. Currently
+#       the colours are hardcoded in the function...
Nit: I think it's spelt "color" everywhere else in git.
quoted hunk ↗ jump to hunk
 #
 # To submit patches:
 #
@@ -302,9 +305,35 @@
 				__git_ps1_show_upstream
 			fi
 		fi
-
+	
Whitespace damage.
+		local c_red=' [31m'
+		local c_yellow=' [33m'
+		local c_lblue=' [1,34m'
+		local c_green=' [32m'
+		local c_purple=' [35m'
+		local c_cyan=' [36m'
+		local c_clear=' [0m'
+		local printf_format="${1:- (%s)}"
+
+		if [ -n "${GIT_PS1_SHOWCOLORHINT-}" ]; then
+			if [ "$w" != "*" ]; then
+				printf_format="$c_green$printf_format$c_clear"
+			else
+				printf_format="$c_red$printf_format$c_clear"
+			fi
+			if [ -n "$i" ]; then
+				i="$c_yellow$i$c_clear"
+			fi
+			if [ -n "$s" ]; then
+				s="$c_lblue$i$c_clear"
+			fi
+			if [ -n "$u" ]; then
+				u="$c_purple$i$c_clear"
+			fi
+		fi
+			
 		local f="$w$i$s$u"
-		printf "${1:- (%s)}" "$c${b##refs/heads/}${f:+ $f}$r$p"
+		echo $(printf "$printf_format" "$c${b##refs/heads/}${f:+ $f}$r$p")
 	fi
 }
Looks okay from a glance.

Ram
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help