blob: 18abeb7c7dd47794d4f5fea4049b5719f03383fe [file] [log] [blame]
Jeff King7c92fe02006-09-08 04:03:18 -04001#ifndef COLOR_H
2#define COLOR_H
3
4/* "\033[1;38;5;2xx;48;5;2xxm\0" is 23 bytes */
5#define COLOR_MAXLEN 24
6
Arjen Laarhovendc6ebd42009-02-13 22:53:40 +01007#define GIT_COLOR_NORMAL ""
8#define GIT_COLOR_RESET "\033[m"
9#define GIT_COLOR_BOLD "\033[1m"
10#define GIT_COLOR_RED "\033[31m"
11#define GIT_COLOR_GREEN "\033[32m"
12#define GIT_COLOR_YELLOW "\033[33m"
13#define GIT_COLOR_BLUE "\033[34m"
Allan Caffee427fc5b2009-04-13 15:53:41 -040014#define GIT_COLOR_MAGENTA "\033[35m"
Arjen Laarhovendc6ebd42009-02-13 22:53:40 +010015#define GIT_COLOR_CYAN "\033[36m"
16#define GIT_COLOR_BG_RED "\033[41m"
17
Matthias Kestenholz6b2f2d92008-02-18 08:26:03 +010018/*
19 * This variable stores the value of color.ui
20 */
21extern int git_use_color_default;
22
23
24/*
25 * Use this instead of git_default_config if you need the value of color.ui.
26 */
Johannes Schindelinef90d6d2008-05-14 18:46:53 +010027int git_color_default_config(const char *var, const char *value, void *cb);
Matthias Kestenholz6b2f2d92008-02-18 08:26:03 +010028
Junio C Hamano0f6f5a42007-12-05 17:26:11 -080029int git_config_colorbool(const char *var, const char *value, int stdout_is_tty);
Jeff King5ef8d772009-01-17 10:32:30 -050030void color_parse(const char *value, const char *var, char *dst);
31void color_parse_mem(const char *value, int len, const char *var, char *dst);
Kristian Høgsbergf26a0012007-09-17 20:06:42 -040032int color_fprintf(FILE *fp, const char *color, const char *fmt, ...);
33int color_fprintf_ln(FILE *fp, const char *color, const char *fmt, ...);
Johannes Schindelin07b57e92009-01-17 17:29:42 +010034int color_fwrite_lines(FILE *fp, const char *color, size_t count, const char *buf);
Jeff King7c92fe02006-09-08 04:03:18 -040035
36#endif /* COLOR_H */