Han-Wen Nienhuys <hanwen@xxxxxxxxxx> writes: > The highlighting is done on the client-side. Supported keywords are > "error", "warning", "hint" and "success". > > The colorization is controlled with the config setting "color.remote". > > Signed-off-by: Han-Wen Nienhuys <hanwen@xxxxxxxxxx> > --- > sideband.c | 78 +++++++++++++++++++++++++---- > t/t5409-colorize-remote-messages.sh | 34 +++++++++++++ > 2 files changed, 103 insertions(+), 9 deletions(-) > create mode 100644 t/t5409-colorize-remote-messages.sh > > diff --git a/sideband.c b/sideband.c > index 325bf0e97..e939cd436 100644 > --- a/sideband.c > +++ b/sideband.c > @@ -1,7 +1,63 @@ > #include "cache.h" > +#include "color.h" > +#include "config.h" > #include "pkt-line.h" > #include "sideband.h" > > + > +/* > + * Optionally highlight some keywords in remote output if they appear at the > + * start of the line. > + */ > +void maybe_colorize_sideband(struct strbuf *dest, const char *src, int n) I'll make this "static" to this file while queuing. Also hoist "struct kwtable ... keywords[]" to an earlier place in the function to avoid decl-after-stmt error. sideband.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/sideband.c b/sideband.c index e939cd4360..74b2fcaf64 100644 --- a/sideband.c +++ b/sideband.c @@ -9,10 +9,20 @@ * Optionally highlight some keywords in remote output if they appear at the * start of the line. */ -void maybe_colorize_sideband(struct strbuf *dest, const char *src, int n) +static void maybe_colorize_sideband(struct strbuf *dest, const char *src, int n) { static int sideband_use_color = -1; int i; + struct kwtable { + const char *keyword; + const char *color; + } keywords[] = { + {"hint", GIT_COLOR_YELLOW}, + {"warning", GIT_COLOR_BOLD_YELLOW}, + {"success", GIT_COLOR_BOLD_GREEN}, + {"error", GIT_COLOR_BOLD_RED}, + }; + if (sideband_use_color < 0) { const char *key = "color.remote"; char *value = NULL; @@ -25,16 +35,6 @@ void maybe_colorize_sideband(struct strbuf *dest, const char *src, int n) return; } - struct kwtable { - const char *keyword; - const char *color; - } keywords[] = { - {"hint", GIT_COLOR_YELLOW}, - {"warning", GIT_COLOR_BOLD_YELLOW}, - {"success", GIT_COLOR_BOLD_GREEN}, - {"error", GIT_COLOR_BOLD_RED}, - }; - while (isspace(*src)) { strbuf_addch(dest, *src); src++;