Consider all TERM values ending in "-256color" to be color supporting. In particular this handles TERM=hterm-256color correctly.
PiperOrigin-RevId: 470232889 Change-Id: Iea594a3fde2b8b0a10e527956d70ba0bb3452e08
This commit is contained in:
parent
25cc5777a1
commit
afd902e992
@ -3245,18 +3245,15 @@ bool ShouldUseColor(bool stdout_is_tty) {
|
|||||||
#else
|
#else
|
||||||
// On non-Windows platforms, we rely on the TERM variable.
|
// On non-Windows platforms, we rely on the TERM variable.
|
||||||
const char* const term = posix::GetEnv("TERM");
|
const char* const term = posix::GetEnv("TERM");
|
||||||
const bool term_supports_color =
|
const bool term_supports_color = term != nullptr && (
|
||||||
String::CStringEquals(term, "xterm") ||
|
String::CStringEquals(term, "xterm") ||
|
||||||
String::CStringEquals(term, "xterm-color") ||
|
String::CStringEquals(term, "xterm-color") ||
|
||||||
String::CStringEquals(term, "xterm-256color") ||
|
|
||||||
String::CStringEquals(term, "screen") ||
|
String::CStringEquals(term, "screen") ||
|
||||||
String::CStringEquals(term, "screen-256color") ||
|
|
||||||
String::CStringEquals(term, "tmux") ||
|
String::CStringEquals(term, "tmux") ||
|
||||||
String::CStringEquals(term, "tmux-256color") ||
|
|
||||||
String::CStringEquals(term, "rxvt-unicode") ||
|
String::CStringEquals(term, "rxvt-unicode") ||
|
||||||
String::CStringEquals(term, "rxvt-unicode-256color") ||
|
|
||||||
String::CStringEquals(term, "linux") ||
|
String::CStringEquals(term, "linux") ||
|
||||||
String::CStringEquals(term, "cygwin");
|
String::CStringEquals(term, "cygwin") ||
|
||||||
|
String::EndsWithCaseInsensitive(term, "-256color"));
|
||||||
return stdout_is_tty && term_supports_color;
|
return stdout_is_tty && term_supports_color;
|
||||||
#endif // GTEST_OS_WINDOWS
|
#endif // GTEST_OS_WINDOWS
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user