systemctl: use underlines to seperate unit types in listing

(printf("%.*s", -1, "…") is the same as not specifying the precision at all.)

v2: also underline highlighted (failing) units

Fixes #4137.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2016-10-17 11:37:41 -04:00
parent 08a28eeca7
commit 16484a8a15
2 changed files with 62 additions and 27 deletions
+20
View File
@@ -36,6 +36,10 @@
#define ANSI_HIGHLIGHT_YELLOW "\x1B[0;1;33m"
#define ANSI_HIGHLIGHT_BLUE "\x1B[0;1;34m"
#define ANSI_HIGHLIGHT_UNDERLINE "\x1B[0;1;4m"
#define ANSI_HIGHLIGHT_RED_UNDERLINE "\x1B[0;1;4;31m"
#define ANSI_HIGHLIGHT_GREEN_UNDERLINE "\x1B[0;1;4;32m"
#define ANSI_HIGHLIGHT_YELLOW_UNDERLINE "\x1B[0;1;4;33m"
#define ANSI_HIGHLIGHT_BLUE_UNDERLINE "\x1B[0;1;4;34m"
#define ANSI_NORMAL "\x1B[0m"
#define ANSI_ERASE_TO_END_OF_LINE "\x1B[K"
@@ -111,6 +115,22 @@ static inline const char *ansi_highlight_blue(void) {
return colors_enabled() ? ANSI_HIGHLIGHT_BLUE : "";
}
static inline const char *ansi_highlight_red_underline(void) {
return colors_enabled() ? ANSI_HIGHLIGHT_RED_UNDERLINE : "";
}
static inline const char *ansi_highlight_green_underline(void) {
return colors_enabled() ? ANSI_HIGHLIGHT_GREEN_UNDERLINE : "";
}
static inline const char *ansi_highlight_yellow_underline(void) {
return colors_enabled() ? ANSI_HIGHLIGHT_YELLOW_UNDERLINE : "";
}
static inline const char *ansi_highlight_blue_underline(void) {
return colors_enabled() ? ANSI_HIGHLIGHT_BLUE_UNDERLINE : "";
}
static inline const char *ansi_normal(void) {
return colors_enabled() ? ANSI_NORMAL : "";
}