From: Jeff King <peff@peff.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] log --decorate: do not leak "commit" color into the next item
Date: Sat, 21 Feb 2015 01:23:10 -0500 [thread overview]
Message-ID: <20150221062310.GB29665@peff.net> (raw)
In-Reply-To: <xmqqwq3cxjwg.fsf@gitster.dls.corp.google.com>
On Fri, Feb 20, 2015 at 03:06:39PM -0800, Junio C Hamano wrote:
> -- >8 --
> Subject: config.txt: spell out how certain typed values are written
>
> Many variables have values that are not arbitrary strings and there
> are ways to spell these values of certain types. The way to spell
> colors was described in a section for color.branch.<slot> and other
> variables refered to that section, which was technically wrong, but
> was a bit awkward.
Did you mean "not technically" here?
I think this patch is certainly an improvement with respect to the
colors. And I like that it organizes the types into one place using a
list, which is easier to scan when you are looking at a manpage. But...
> +Values
> +~~~~~~
> +
> +Values of many variables are treated as a simple string, but there
> +are variables that take values of specific types and there are rules
> +as to how to spell them.
> +
> +boolean::
> + When a variable is said to take a boolean value, many
> + synonyms are accepted for 'true' and 'false'.
> + true;; Boolean true can be spelled as `yes`, `on`, `true`,
> + or `1`. Also, a variable defined without `= <value>`
> + is taken as true.
> + false;; Boolean false can be spelled as `no`, `off`,
> + `false`, or `0`.
This information is redundant with what is in the `Syntax` section:
The values following the equals sign in variable assign are all either
a string, an integer, or a boolean. Boolean values may be given as
yes/no, 1/0, true/false or on/off. Case is not significant in boolean
values, when converting value to the canonical form using '--bool'
type specifier; 'git config' will ensure that the output is "true" or
"false".
I think that paragraph can go away in favor of what you've written. We
should mention case-insensitivity there. And the final sentence about
`git-config` should go in the section `--bool` description of
`git-config`.
Immediately after that paragraph we discuss string values and quoting.
Technically those quoting rules apply to all values (e.g., colors, which
are just strings with special meaning), but I it may make sense to put
them in a "strong::" bullet here.
> +integer::
> + The value for many variables that specify various sizes can
> + be suffixed with `k`, `M`,... to mean "scale the number by
> + 1024", "by 1024x1024", etc.
I had a feeling we only did this for ulong's, but I checked the code and
we do indeed handle handle unit sizes everywhere. Is it worth mentioning
range limits here? I think since c7c377d83f4 it is probably not a big
deal. "git config --int" uses 64-bit integers everywhere. Internally we
use "unsigned long" for big things. There are still some uses of "int"
internally, but only for things that should obviously be small. And in
any case we complain if there is overflow. So probably it is not
something users need to think about.
-Peff
next prev parent reply other threads:[~2015-02-21 6:24 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-18 21:03 [Q] should "color.*.<slot> = normal" emit nothing? Junio C Hamano
2015-02-18 21:44 ` [PATCH] log --decorate: do not leak "commit" color into the next item Junio C Hamano
2015-02-18 23:07 ` Jeff King
2015-02-19 18:02 ` Junio C Hamano
2015-02-20 1:42 ` Jeff King
2015-02-20 23:06 ` Junio C Hamano
2015-02-21 6:23 ` Jeff King [this message]
2015-02-21 7:09 ` Junio C Hamano
2015-03-04 21:33 ` [PATCH v2 0/7] Fix leak of color/attributes in "git log --decorate" Junio C Hamano
2015-03-04 21:33 ` [PATCH v2 1/7] Documentation/config.txt: avoid unnecessary negation Junio C Hamano
2015-03-04 21:33 ` [PATCH v2 2/7] Documentation/config.txt: explain multi-valued variables once Junio C Hamano
2015-03-04 21:33 ` [PATCH v2 3/7] Documentation/config.txt: describe the structure first and then meaning Junio C Hamano
2015-03-04 21:33 ` [PATCH v2 4/7] Documentation/config.txt: have a separate "Values" section Junio C Hamano
2015-03-04 21:33 ` [PATCH v2 5/7] Documentation/config.txt: describe 'color' value type in the " Junio C Hamano
2015-03-04 21:33 ` [PATCH v2 6/7] Documentation/config.txt: simplify boolean description in the syntax section Junio C Hamano
2015-03-04 21:33 ` [PATCH v2 7/7] log --decorate: do not leak "commit" color into the next item Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150221062310.GB29665@peff.net \
--to=peff@peff.net \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.