diff options
author | Daniel Eklöf <daniel@ekloef.se> | 2024-07-18 08:39:53 +0200 |
---|---|---|
committer | Daniel Eklöf <daniel@ekloef.se> | 2024-07-18 08:39:53 +0200 |
commit | c89bbfe6012275afe500c0c862329f37c4021d73 (patch) | |
tree | c08c2fce0d8bd2f5f7004a3343bf7c416ae61b5c | |
parent | d687493c7cbc3d112db6030ec786b4b719ba075d (diff) | |
download | wbg-c89bbfe6012275afe500c0c862329f37c4021d73.tar.gz |
log: respect the NO_COLOR environment variable
http://no-color.org/
-rw-r--r-- | CHANGELOG.md | 2 | ||||
-rw-r--r-- | log.c | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 210d363..f2290cc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,8 @@ * Nanosvg updated to 93ce879dc4c04a3ef1758428ec80083c38610b1f * JPEG XL support ([#14][14]) +* Log output now respects the [`NO_COLOR`](http://no-color.org/) + environment variable. [14]: https://codeberg.org/dnkl/wbg/pulls/14 @@ -30,7 +30,13 @@ log_init(enum log_colorize _colorize, bool _do_syslog, [LOG_CLASS_DEBUG] = LOG_DEBUG, }; - colorize = _colorize == LOG_COLORIZE_NEVER ? false : _colorize == LOG_COLORIZE_ALWAYS ? true : isatty(STDERR_FILENO); + /* Don't use colors if NO_COLOR is defined and not empty */ + const char *no_color_str = getenv("NO_COLOR"); + const bool no_color = no_color_str != NULL && no_color_str[0] != '\0'; + + colorize = _colorize == LOG_COLORIZE_NEVER + ? false : _colorize == LOG_COLORIZE_ALWAYS + ? true : !no_color && isatty(STDERR_FILENO); do_syslog = _do_syslog; if (do_syslog) { |