Re: [PATCH 2/3] Move color option parsing out of diff.c and into color.[ch]
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:39
Jeff King [off-list ref] writes:
+#include <stdarg.h>
+
+#define COLOR_RESET "\033[m"
+
+static int
+parse_color(const char *name, int len)
+{
Style (applies to all functions you moved to this new file).
Some school of programming teach us to start the function name
at the beginning of the line, separate from its type. They say
that would make "grep '^parse_color'" to work better.
That happens to be the way I was taught (actually it was a bit
more strange that return type was to be indented by one TAB, so
it looked like this:
static int
parse_color(const char *name, int len)
). But git style is the kernel style, and I refrain from doing
that myself.
static int parse_color(const char *name, int len)
{
...
+int
+git_config_colorbool(const char *var, const char *value)
+{
+ if (!value)
+ return 1;
+ if (!strcasecmp(value, "auto")) {
+ if (isatty(1) || (pager_in_use && pager_use_color)) {
+ char *term = getenv("TERM");
+ if (term && strcmp(term, "dumb"))
+ return 1;
+ }
+ return 0;
+ }
+ if (!strcasecmp(value, "never"))
+ return 0;
+ if (!strcasecmp(value, "always"))
+ return 1;
+ return git_config_bool(var, value);
+}+int
+color_printf(const char *color, const char *fmt, ...) {
Style.
int color_printf(const char *color, const char *fmt, ...)
{
...