Re: [F.A.Q.] the advantages of a shared tool/kernel Git repository, tools/perf/ and tools/kvm/

Gerd Hoffmann
2011-11-09T10:41:12Z

Hi,

> What we want to have is to have a set of distinctive colors - just
> two (background, foreground) colors are not enough - we also need
> colors to highlight certain information - we need 5-6 colors for the
> output to be maximally expressive. Is there a canonical way to handle
> that while still adapting to user preferences automatically by taking
> background/foreground color scheme of the xterm into account?

> I suspect to fix the worst of the fallout we could add some logic to
> detect low contrast combinations (too low color distance) and fall
> back to the foreground/background colors in that case.

As far I know it is pretty much impossible to figure the
foreground/background colors of the terminal you are running on. You
can try some guesswork based on $TERM (linux console usually has black
background, xterm is white by default), but there will always be cases
where it fails.

You can run without colors. You can use bold to highlight things and
reverse for the cursor. Surely a bit limited and not as pretty as
colored, but works for sure everywhere.

You can go for a linux-console style black background. Pretty much any
color is readable here, so you should have no problems at all to find
the 5-6 colors you want.

You can go for a xterm-like light background, for example the lightgray
used by older perf versions. I like that background color, problem is
with most colors the contrast is pretty low. IMHO only red, blue and
violet are readable on lightgray. And black of course.

> Plus allowing full .perfconfig configurability of all the relevant
> colors, for those with special taste.

Sure. Maybe also allow multiple color sections and pick them by $TERM
or --colors switch, i.e. [colors "xterm"].

cheers,
Gerd