doc: refactor description of color format
This is a general cleanup of the description of colors in git-config, mostly to address inaccuracies and confusion that had grown over time: - you can have many attributes, not just one - the discussion flip-flopped between colors and attributes; now we discuss everything about colors, then everything about attributes - many concepts were lumped into the first paragraph, making it hard to read, and especially to find the actual lists of colors and attributes. I stopped short of breaking those out into their own lists, as it seemed like an excessive use of vertical screen real estate. - we introduced negated attributes, but then the next paragraph basically explains how each item starts off with no attributes. So why would one need negated attributes? We now explain. - minor typo, language, and typography fixes Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
0111681ecf
commit
adb3356664
@ -147,27 +147,32 @@ integer::
|
||||
1024", "by 1024x1024", etc.
|
||||
|
||||
color::
|
||||
The value for a variables that takes a color is a list of
|
||||
colors (at most two) and attributes (at most one), separated
|
||||
by spaces. The colors accepted are `normal`, `black`,
|
||||
`red`, `green`, `yellow`, `blue`, `magenta`, `cyan` and
|
||||
`white`; the attributes are `bold`, `dim`, `ul`, `blink` and
|
||||
`reverse`. The first color given is the foreground; the
|
||||
second is the background. The position of the attribute, if
|
||||
any, doesn't matter. Attributes may be turned off specifically
|
||||
by prefixing them with `no` (e.g., `noreverse`, `noul`, etc).
|
||||
The value for a variable that takes a color is a list of
|
||||
colors (at most two, one for foreground and one for background)
|
||||
and attributes (as many as you want), separated by spaces.
|
||||
+
|
||||
Colors (foreground and background) may also be given as numbers between
|
||||
0 and 255; these use ANSI 256-color mode (but note that not all
|
||||
terminals may support this). If your terminal supports it, you may also
|
||||
specify 24-bit RGB values as hex, like `#ff0ab3`.
|
||||
The basic colors accepted are `normal`, `black`, `red`, `green`, `yellow`,
|
||||
`blue`, `magenta`, `cyan` and `white`. The first color given is the
|
||||
foreground; the second is the background.
|
||||
+
|
||||
The attributes are meant to be reset at the beginning of each item
|
||||
in the colored output, so setting color.decorate.branch to `black`
|
||||
will paint that branch name in a plain `black`, even if the previous
|
||||
thing on the same output line (e.g. opening parenthesis before the
|
||||
list of branch names in `log --decorate` output) is set to be
|
||||
painted with `bold` or some other attribute.
|
||||
Colors may also be given as numbers between 0 and 255; these use ANSI
|
||||
256-color mode (but note that not all terminals may support this). If
|
||||
your terminal supports it, you may also specify 24-bit RGB values as
|
||||
hex, like `#ff0ab3`.
|
||||
+
|
||||
The accepted attributes are `bold`, `dim`, `ul`, `blink`, and `reverse`.
|
||||
The position of any attributes with respect to the colors (before, after,
|
||||
or in between), doesn't matter. Specific attributes may be turned off
|
||||
by prefixing them with `no` (e.g., `noreverse`, `noul`, etc).
|
||||
+
|
||||
For git's pre-defined color slots, the attributes are meant to be reset
|
||||
at the beginning of each item in the colored output. So setting
|
||||
`color.decorate.branch` to `black` will paint that branch name in a
|
||||
plain `black`, even if the previous thing on the same output line (e.g.
|
||||
opening parenthesis before the list of branch names in `log --decorate`
|
||||
output) is set to be painted with `bold` or some other attribute.
|
||||
However, custom log formats may do more complicated and layered
|
||||
coloring, and the negated forms may be useful there.
|
||||
|
||||
|
||||
Variables
|
||||
|
Reference in New Issue
Block a user