X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;ds=sidebyside;f=color.h;h=3cb4b7fc890880b0fcf19a11c6bc7de6b10d6e8d;hb=4b7acc186f33037178f4d137b2e6099c67492bde;hp=6846be1706c1842f5a53abafd4e03758a36695e9;hpb=442dd42d6d4903640b0dc5561481a77c88dcea90;p=git.git diff --git a/color.h b/color.h index 6846be170..3cb4b7fc8 100644 --- a/color.h +++ b/color.h @@ -4,6 +4,11 @@ /* "\033[1;38;5;2xx;48;5;2xxm\0" is 23 bytes */ #define COLOR_MAXLEN 24 +/* + * IMPORTANT: Due to the way these color codes are emulated on Windows, + * write them only using printf(), fprintf(), and fputs(). In particular, + * do not use puts() or write(). + */ #define GIT_COLOR_NORMAL "" #define GIT_COLOR_RESET "\033[m" #define GIT_COLOR_BOLD "\033[1m" @@ -11,6 +16,7 @@ #define GIT_COLOR_GREEN "\033[32m" #define GIT_COLOR_YELLOW "\033[33m" #define GIT_COLOR_BLUE "\033[34m" +#define GIT_COLOR_MAGENTA "\033[35m" #define GIT_COLOR_CYAN "\033[36m" #define GIT_COLOR_BG_RED "\033[41m" @@ -28,7 +34,9 @@ int git_color_default_config(const char *var, const char *value, void *cb); int git_config_colorbool(const char *var, const char *value, int stdout_is_tty); void color_parse(const char *value, const char *var, char *dst); void color_parse_mem(const char *value, int len, const char *var, char *dst); +__attribute__((format (printf, 3, 4))) int color_fprintf(FILE *fp, const char *color, const char *fmt, ...); +__attribute__((format (printf, 3, 4))) int color_fprintf_ln(FILE *fp, const char *color, const char *fmt, ...); int color_fwrite_lines(FILE *fp, const char *color, size_t count, const char *buf);