mirror of
https://gitlab.freedesktop.org/libinput/libinput.git
synced 2025-12-20 06:50:05 +01:00
tools: add support for NO_COLOR/FORCE_COLOR
Environment variables to control whether the output should not have color or must have color, regardless of the tty-ness of the output stream. Part-of: <https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/1348>
This commit is contained in:
parent
141f571aae
commit
07a9161ef2
1 changed files with 11 additions and 5 deletions
|
|
@ -62,14 +62,20 @@ log_handler(struct libinput *li,
|
|||
const char *format,
|
||||
va_list args)
|
||||
{
|
||||
static int is_tty = -1;
|
||||
static int use_color = -1;
|
||||
static uint32_t last_dispatch_no = 0;
|
||||
static bool color_toggle = false;
|
||||
|
||||
if (is_tty == -1)
|
||||
is_tty = isatty(STDOUT_FILENO);
|
||||
if (use_color == -1) {
|
||||
if (getenv("NO_COLOR"))
|
||||
use_color = 0;
|
||||
else if (getenv("FORCE_COLOR"))
|
||||
use_color = 1;
|
||||
else
|
||||
use_color = isatty(STDOUT_FILENO);
|
||||
}
|
||||
|
||||
if (is_tty) {
|
||||
if (use_color) {
|
||||
if (priority >= LIBINPUT_LOG_PRIORITY_ERROR) {
|
||||
if (strstr(format, "client bug: ") ||
|
||||
strstr(format, "libinput bug: ") ||
|
||||
|
|
@ -97,7 +103,7 @@ log_handler(struct libinput *li,
|
|||
}
|
||||
vprintf(format, args);
|
||||
|
||||
if (is_tty)
|
||||
if (use_color)
|
||||
printf(ANSI_NORMAL);
|
||||
|
||||
log_serial++;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue