[PATCH v3 0/3] doc: spell configuration variable names in camelCase
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Feb 24, 2021, 20:26 UTC
- Message-ID
- <20210224202641.913770-1-gitster@pobox.com>
- In-Reply-To
- <xmqqlfbe1sim.fsf@gitster.g>
I said in the first review on Denton's patch
This obviously does not have to be part of this miniseries, but I
wonder if we should have a list of all the configuration variables
in one place that we can use to record the canonical spelling of
these variables. As$ git grep -h -E -i \ -e '^[a-z][-a-z0-9]*\.[a-z][-a-z0-9]*::' \ -e '^[a-z][-a-z0-9]*\.(\*|<?[a-z][-a-z0-9]*>?)\.(\*|<?[a-z][-a-z0-9]*>?)::' \ Documentation/config
gives many hits with camelCased names, it might be a good place to
start. Pretending that the above gives a good "canonical list" (it does not
yet, if you look at the hits), I got curious how far we can go.Massaging the output from the above into config-variables.lst
$ ... above command ... |
sed -e 's/::$//' |
sort -u >config-variables.lst and then to extract use of these tokens in the main part of the
documentation like this: $ git grep -h -o -i -F -f config-variables.lst -- \
Documentation/ ':!Documentation/RelNotes/' |
sort -u >config-usage.lstgives us something we can compare with the "canonical" usage list.
$ comm -3 config-usage.lst config-variables.lst
blame.blankboundary
core.excludesfile
core.filemode
core.gitproxy
core.ignorestat
core.logallrefupdates
core.repositoryformatversion
core.trustCtime
http.sslverify
http.sslversion
i18n.commitencoding
push.pushoption
remote.<name>.partialCloneFilter
remote.pushdefault
repack.UseDeltaBaseOffset
sendemail.aliasesfile
showbranch.default
transfer.hiderefs
uploadArchive.allowUnreachable Some of them may be false hits, some may be showing that the copy in
Documentation/config/ are spelled in all lowercase, but the majority
of the hits above seem to be genuine errors similar to what you fixed
in your patch.Thanks.
and as I identified a handful of low hanging fruits that way, here are a few patches on top of his patch that started the whole thing.
I think we should make sure Documentation/config/*.txt
- spells all the configuration variables in the way we want to see them, and
- covers all the configuration variables.
before we can proceed with more low hanging fruits with confidence, as I do think the coverage is very good, but I know it is not 100%, and the eventual goal should be to make sure we can teach lint-docs to catch these before the reviewers even see them.
Denton Liu (1): i18n.txt: camel case and monospace "i18n.commitEncoding"
Junio C Hamano (2): blame-options.txt: camelcase blame.blankBoundary index-format doc: camelCase core.excludesFile
Documentation/blame-options.txt | 2 +- Documentation/git-am.txt | 2 +- Documentation/git-mailinfo.txt | 4 ++-- Documentation/i18n.txt | 2 +- Documentation/technical/index-format.txt | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-)
-- 2.30.1-826-g07a034c5ea