mirror of
https://git.yoctoproject.org/poky
synced 2026-05-09 17:39:31 +00:00
bitbake: lib/bb: support NO_COLOR
Red text on a black background can make it difficult for people with visual impairments to read the text of error messages. Respect the presence of a non-empty NO_COLOR environment variable as an indication the user doesn't want colorization to be automatically enabled. See: https://no-color.org/ (Bitbake rev: d9986c54cd3d67ed1f7cb636b17696c8d0d4db85) Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
2eeef2800b
commit
adb0ea98d1
@@ -230,7 +230,7 @@ def logger_create(name, output=sys.stderr, level=logging.INFO, preserve_handlers
|
|||||||
console = logging.StreamHandler(output)
|
console = logging.StreamHandler(output)
|
||||||
console.addFilter(bb.msg.LogFilterShowOnce())
|
console.addFilter(bb.msg.LogFilterShowOnce())
|
||||||
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
|
format = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
|
||||||
if color == 'always' or (color == 'auto' and output.isatty()):
|
if color == 'always' or (color == 'auto' and output.isatty() and os.environ.get('NO_COLOR', '') == ''):
|
||||||
format.enable_color()
|
format.enable_color()
|
||||||
console.setFormatter(format)
|
console.setFormatter(format)
|
||||||
if preserve_handlers:
|
if preserve_handlers:
|
||||||
|
|||||||
@@ -179,7 +179,7 @@ class TerminalFilter(object):
|
|||||||
new[3] = new[3] & ~termios.ECHO
|
new[3] = new[3] & ~termios.ECHO
|
||||||
termios.tcsetattr(fd, termios.TCSADRAIN, new)
|
termios.tcsetattr(fd, termios.TCSADRAIN, new)
|
||||||
curses.setupterm()
|
curses.setupterm()
|
||||||
if curses.tigetnum("colors") > 2:
|
if curses.tigetnum("colors") > 2 and os.environ.get('NO_COLOR', '') == '':
|
||||||
for h in handlers:
|
for h in handlers:
|
||||||
try:
|
try:
|
||||||
h.formatter.enable_color()
|
h.formatter.enable_color()
|
||||||
|
|||||||
Reference in New Issue
Block a user