New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add ColorHeaderAndFields
logger option
#118
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mostly a lot of questions about formatting and logic
intlogger.go
Outdated
// Optionally apply the ANSI "dim" (faint) and "bold" | ||
// SGR values to the key. | ||
if l.fieldColor != ColorOff { | ||
color := color.New(color.Faint, color.Bold) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems weird to use faint and bold. Why not just bold?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The concern is mostly how other folks default terminal fonts will handle faint+bold. We have to be careful picking here because it has a big influence on all the users.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a fair point. I think the Windows terminal would likely be the odd one to consider, and it seems like they do support this style: microsoft/terminal#6703 (comment)
Faint/dim is a fairly standard SGR style, implemented in VSCode's terminal emulator (xtermjs) as well (which is what those screenshots are showing).
Bold, I believe, is the more widely supported style. But, I would really rather have faint than bold here to help break up the line. I feel it's important. I don't know if we can actually detect if it's supported?
Addresses #118 (comment) and #118 (comment)
Addresses #118 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! Be sure to squash the history on merging. One minor question about fainting the = is all.
This PR builds on #108, extending the ability to color fields as well as the level header.
When I have log lines with multiple fields (especially with long values), I find it hard to visually pinpoint the part of the log message I'm interested in. I think by dimming the
key=
part of the field, it'll be faster and easier to visually parse the information. For multi-line values, this will also dim the|
prefix.Usage
Before
After