JDevlieghere wrote: The stream already knows whether color support is enabled, but it looks like we're only storing that in the underlying llvm stream, which is commonly used in combination with `WithColor`. I think we could add a member to check if the stream has colors enabled. It's already a property of `m_forwarder` so we don't need to create a new member.
``` SBStream::HasColor() { return m_forwarded.has_color(); } ``` Alternatively, we could add a helper that does that under the hood. ``` SBStream::FormatAnsiTerminalCodes(llvm::StringRef format) { if (m_forwarded.has_color()) print(FormatAnsiTerminalCodes(format)); } ``` So instead of having to write: ``` if(s->HasColor()) s->Printf("%s", ansi::FormatAnsiTerminalCodes("${ansi.faint}").c_str()); ``` You can just write: ``` s-> FormatAnsiTerminalCodes("${ansi.faint}") ``` and have it do the right thing. ``` I think I understand Jim's concern. Most places that we use colors, we do that through `WithColor` which checks the color property of the underlying LLVM stream. Chelsea is not going through WithColor, so in her case she would indeed need to check https://github.com/llvm/llvm-project/pull/91404 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits