[RFC PATCH] color: respect the $NO_COLOR convention
From: Leah Neukirchen <hidden>
Date: 2018-03-01 16:44:30
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: Leah Neukirchen <hidden>
Date: 2018-03-01 16:44:30
Subsystem:
the rest · Maintainer:
Linus Torvalds
When the NO_COLOR environment variable is set to any value, default to disabling color, i.e. resolve 'auto' to false. NO_COLOR (http://no-color.org/) is a comprehensive approach to disable colors by default for all tools:
All command-line software which outputs text with ANSI color added should check for the presence of a NO_COLOR environment variable that, when present (regardless of its value), prevents the addition of ANSI color.
Signed-off-by: Leah Neukirchen <redacted> --- This is a first stab at implementing NO_COLOR for git, effectively making it then behave like before colors were enabled by default. I feel this should be documented somewhere, but I'm not sure where the best place is. Perhaps in config.ui, or the Git environment variables (but they all start with GIT_). color.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/color.c b/color.c
index d48dd947c..59e9c2459 100644
--- a/color.c
+++ b/color.c@@ -326,6 +326,8 @@ int git_config_colorbool(const char *var, const char *value) static int check_auto_color(void) { + if (getenv("NO_COLOR")) + return 0; if (color_stdout_is_tty < 0) color_stdout_is_tty = isatty(1); if (color_stdout_is_tty || (pager_in_use() && pager_use_color)) {
--
2.16.2