mirror of
https://git.proxmox.com/git/mirror_iproute2
synced 2025-10-06 16:14:44 +00:00
color: disable color when json output is requested
Instead of declaring -color and -json exclusive, ignore -color when -json is provided. The rationale is to allow to put -color in an alias for ip while still being able to use -json. -color is merely a presentation suggestion and we can assume there is nothing to color in the JSON output. Signed-off-by: Vincent Bernat <vincent@bernat.im> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
parent
2fb854d07c
commit
1ca4341d2c
@ -13,7 +13,6 @@ enum color_attr {
|
|||||||
};
|
};
|
||||||
|
|
||||||
void enable_color(void);
|
void enable_color(void);
|
||||||
void check_if_color_enabled(void);
|
|
||||||
void set_color_palette(void);
|
void set_color_palette(void);
|
||||||
int color_fprintf(FILE *fp, enum color_attr attr, const char *fmt, ...);
|
int color_fprintf(FILE *fp, enum color_attr attr, const char *fmt, ...);
|
||||||
enum color_attr ifa_family_color(__u8 ifa_family);
|
enum color_attr ifa_family_color(__u8 ifa_family);
|
||||||
|
7
ip/ip.c
7
ip/ip.c
@ -172,6 +172,7 @@ int main(int argc, char **argv)
|
|||||||
{
|
{
|
||||||
char *basename;
|
char *basename;
|
||||||
char *batch_file = NULL;
|
char *batch_file = NULL;
|
||||||
|
int color = 0;
|
||||||
|
|
||||||
basename = strrchr(argv[0], '/');
|
basename = strrchr(argv[0], '/');
|
||||||
if (basename == NULL)
|
if (basename == NULL)
|
||||||
@ -269,7 +270,7 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
rcvbuf = size;
|
rcvbuf = size;
|
||||||
} else if (matches(opt, "-color") == 0) {
|
} else if (matches(opt, "-color") == 0) {
|
||||||
enable_color();
|
++color;
|
||||||
} else if (matches(opt, "-help") == 0) {
|
} else if (matches(opt, "-help") == 0) {
|
||||||
usage();
|
usage();
|
||||||
} else if (matches(opt, "-netns") == 0) {
|
} else if (matches(opt, "-netns") == 0) {
|
||||||
@ -289,8 +290,8 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
_SL_ = oneline ? "\\" : "\n";
|
_SL_ = oneline ? "\\" : "\n";
|
||||||
|
|
||||||
if (json)
|
if (color && !json)
|
||||||
check_if_color_enabled();
|
enable_color();
|
||||||
|
|
||||||
if (batch_file)
|
if (batch_file)
|
||||||
return batch(batch_file);
|
return batch(batch_file);
|
||||||
|
@ -92,14 +92,6 @@ void set_color_palette(void)
|
|||||||
is_dark_bg = 1;
|
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 color_fprintf(FILE *fp, enum color_attr attr, const char *fmt, ...)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user