[PATCH] Use color.ui variable in scripts too

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Matthias Kestenholz <mk@xxxxxxxxxxx>
---

	This patch adds color.ui support for scripts. It does that by
	modifying `git config --get-colorbool`, because there is no
	way to differentiate between undefined and `false` configuration
	variables in scripts. Additionally, the scripts don't need to be
	changed. I have only tested git add -i; git svn uses the same
	functions in Git.pm, so it should work too.

	Of course, it would have been nicer if I had made this change
	before the release of 1.5.5. The 1.5.5 announcement reminded
	me, that this had yet to be done.

 Documentation/git-config.txt |    2 ++
 builtin-config.c             |    6 +++++-
 2 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/Documentation/git-config.txt b/Documentation/git-config.txt
index fa16171..5de5d05 100644
--- a/Documentation/git-config.txt
+++ b/Documentation/git-config.txt
@@ -144,6 +144,8 @@ See also <<FILES>>.
 	"auto".  If `stdout-is-tty` is missing, then checks the standard
 	output of the command itself, and exits with status 0 if color
 	is to be used, or exits with status 1 otherwise.
+	When the color setting for `name` is undefined, the command uses
+	`color.ui` as fallback.
 
 --get-color name default::
 
diff --git a/builtin-config.c b/builtin-config.c
index c34bc8b..eccb7e7 100644
--- a/builtin-config.c
+++ b/builtin-config.c
@@ -224,6 +224,10 @@ static int git_get_colorbool_config(const char *var, const char *value)
 		get_diff_color_found =
 			git_config_colorbool(var, value, stdout_is_tty);
 	}
+	if (!strcmp(var, "color.ui")) {
+		git_use_color_default = git_config_colorbool(var, value, stdout_is_tty);
+		return 0;
+	}
 	return 0;
 }
 
@@ -251,7 +255,7 @@ static int get_colorbool(int argc, const char **argv)
 		if (!strcmp(get_color_slot, "color.diff"))
 			get_colorbool_found = get_diff_color_found;
 		if (get_colorbool_found < 0)
-			get_colorbool_found = 0;
+			get_colorbool_found = git_use_color_default;
 	}
 
 	if (argc == 1) {
-- 
1.5.5.24.g0eec3.dirty

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux