mirror of
https://git.proxmox.com/git/mirror_iproute2
synced 2025-12-01 07:37:26 +00:00
color: add new COLOR_NONE and disable_color function
Signed-off-by: Julien Fortin <julien@cumulusnetworks.com>
This commit is contained in:
parent
0439990238
commit
959f142863
@ -2,6 +2,7 @@
|
||||
#define __COLOR_H__ 1
|
||||
|
||||
enum color_attr {
|
||||
COLOR_NONE,
|
||||
COLOR_IFNAME,
|
||||
COLOR_MAC,
|
||||
COLOR_INET,
|
||||
@ -12,6 +13,7 @@ enum color_attr {
|
||||
};
|
||||
|
||||
void enable_color(void);
|
||||
void check_if_color_enabled(void);
|
||||
void set_color_palette(void);
|
||||
int color_fprintf(FILE *fp, enum color_attr attr, const char *fmt, ...);
|
||||
enum color_attr ifa_family_color(__u8 ifa_family);
|
||||
|
||||
12
lib/color.c
12
lib/color.c
@ -89,6 +89,14 @@ void set_color_palette(void)
|
||||
is_dark_bg = 1;
|
||||
}
|
||||
|
||||
void check_if_color_enabled(void)
|
||||
{
|
||||
if (color_is_enabled) {
|
||||
fprintf(stderr, "Option \"-json\" conflicts with \"-color\".\n");
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
int color_fprintf(FILE *fp, enum color_attr attr, const char *fmt, ...)
|
||||
{
|
||||
int ret = 0;
|
||||
@ -96,13 +104,13 @@ int color_fprintf(FILE *fp, enum color_attr attr, const char *fmt, ...)
|
||||
|
||||
va_start(args, fmt);
|
||||
|
||||
if (!color_is_enabled) {
|
||||
if (!color_is_enabled || attr == COLOR_NONE) {
|
||||
ret = vfprintf(fp, fmt, args);
|
||||
goto end;
|
||||
}
|
||||
|
||||
ret += fprintf(fp, "%s",
|
||||
color_codes[attr_colors[is_dark_bg ? attr + 7 : attr]]);
|
||||
color_codes[attr_colors[is_dark_bg ? attr + 8 : attr]]);
|
||||
ret += vfprintf(fp, fmt, args);
|
||||
ret += fprintf(fp, "%s", color_codes[C_CLEAR]);
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user