All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] completion: add missing configuration variables
@ 2010-12-15  6:46 Martin von Zweigbergk
  2010-12-15 13:00 ` Jeff King
  2010-12-20 15:18 ` [PATCH v2] " Martin von Zweigbergk
  0 siblings, 2 replies; 14+ messages in thread
From: Martin von Zweigbergk @ 2010-12-15  6:46 UTC (permalink / raw)
  To: git; +Cc: Junio C Hamano, Martin von Zweigbergk

Quite a few configuration variables have been added since 226b343
(completion: add missing configuration variables to _git_config(),
2009-05-03). Add these variables to the Bash completion script.

Signed-off-by: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>
---

The color.grep.external option has been deleted. Should it be deleted
from here or do we want to help users run e.g.
'git config --unset color.grep.external'? Same goes for
add.ignore-errors.

I didn't find any references to 'diff.renameLimit.' even in 98171a0
(bash completion: Sync config variables with their man pages,
2008-12-15) in which it was introduced in the completions script. I
hope it was safe to remove it.

Some variables are documented with camelCase but read in all
lowercase in the code. Not worth updating the code just for that, is
it?

I hope none of the added variables are deprecated. After having a
quick look in git-config(1), I think they should not be.

 contrib/completion/git-completion.bash |   67 +++++++++++++++++++++++++++++++-
 1 files changed, 65 insertions(+), 2 deletions(-)

diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index 604fa79..1e2e864 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -1865,29 +1865,51 @@ _git_config ()
 	esac
 	__gitcomp "
 		add.ignore-errors
+		add.ignoreErrors
+		advice.commitBeforeMerge
+		advice.detachedHead
+		advice.implicitIdentity
+		advice.pushNonFastForward
+		advice.resolveConflict
+		advice.statusHints
 		alias.
+		am.keepcr
 		apply.ignorewhitespace
 		apply.whitespace
 		branch.autosetupmerge
 		branch.autosetuprebase
+		browser.
 		clean.requireForce
 		color.branch
 		color.branch.current
 		color.branch.local
 		color.branch.plain
 		color.branch.remote
+		color.decorate.HEAD
+		color.decorate.branch
+		color.decorate.remoteBranch
+		color.decorate.stash
+		color.decorate.tag
 		color.diff
 		color.diff.commit
 		color.diff.frag
+		color.diff.func
 		color.diff.meta
 		color.diff.new
 		color.diff.old
 		color.diff.plain
 		color.diff.whitespace
 		color.grep
+		color.grep.context
 		color.grep.external
+		color.grep.filename
+		color.grep.function
+		color.grep.linenumber
 		color.grep.match
+		color.grep.selected
+		color.grep.separator
 		color.interactive
+		color.interactive.error
 		color.interactive.header
 		color.interactive.help
 		color.interactive.prompt
@@ -1901,21 +1923,29 @@ _git_config ()
 		color.status.untracked
 		color.status.updated
 		color.ui
+		commit.status
 		commit.template
+		core.abbrevguard
+		core.askpass
+		core.attributesfile
 		core.autocrlf
 		core.bare
+		core.bigFileThreshold
 		core.compression
 		core.createObject
 		core.deltaBaseCacheLimit
 		core.editor
+		core.eol
 		core.excludesfile
 		core.fileMode
 		core.fsyncobjectfiles
 		core.gitProxy
 		core.ignoreCygwinFSTricks
 		core.ignoreStat
+		core.ignorecase
 		core.logAllRefUpdates
 		core.loosecompression
+		core.notesRef
 		core.packedGitLimit
 		core.packedGitWindowSize
 		core.pager
@@ -1925,6 +1955,7 @@ _git_config ()
 		core.repositoryFormatVersion
 		core.safecrlf
 		core.sharedRepository
+		core.sparseCheckout
 		core.symlinks
 		core.trustctime
 		core.warnAmbiguousRefs
@@ -1932,9 +1963,10 @@ _git_config ()
 		core.worktree
 		diff.autorefreshindex
 		diff.external
+		diff.ignoreSubmodules
 		diff.mnemonicprefix
+		diff.noprefix
 		diff.renameLimit
-		diff.renameLimit.
 		diff.renames
 		diff.suppressBlankEmpty
 		diff.tool
@@ -1952,6 +1984,8 @@ _git_config ()
 		format.subjectprefix
 		format.suffix
 		format.thread
+		format.to
+		gc.
 		gc.aggressiveWindow
 		gc.auto
 		gc.autopacklimit
@@ -1989,15 +2023,20 @@ _git_config ()
 		http.lowSpeedLimit
 		http.lowSpeedTime
 		http.maxRequests
+		http.minSessions
 		http.noEPSV
+		http.postBuffer
 		http.proxy
 		http.sslCAInfo
 		http.sslCAPath
 		http.sslCert
+		http.sslCertPasswordProtected
 		http.sslKey
 		http.sslVerify
+		http.useragent
 		i18n.commitEncoding
 		i18n.logOutputEncoding
+		imap.authMethod
 		imap.folder
 		imap.host
 		imap.pass
@@ -2006,6 +2045,7 @@ _git_config ()
 		imap.sslverify
 		imap.tunnel
 		imap.user
+		init.templatedir
 		instaweb.browser
 		instaweb.httpd
 		instaweb.local
@@ -2013,19 +2053,29 @@ _git_config ()
 		instaweb.port
 		interactive.singlekey
 		log.date
+		log.decorate
 		log.showroot
 		mailmap.file
 		man.
 		man.viewer
+		merge.
 		merge.conflictstyle
 		merge.log
 		merge.renameLimit
+		merge.renormalize
 		merge.stat
 		merge.tool
 		merge.verbosity
 		mergetool.
 		mergetool.keepBackup
+		mergetool.keepTemporaries
 		mergetool.prompt
+		notes.displayRef
+		notes.rewrite.
+		notes.rewrite.amend
+		notes.rewrite.rebase
+		notes.rewriteMode
+		notes.rewriteRef
 		pack.compression
 		pack.deltaCacheLimit
 		pack.deltaCacheSize
@@ -2036,31 +2086,42 @@ _git_config ()
 		pack.window
 		pack.windowMemory
 		pager.
+		pretty.
 		pull.octopus
 		pull.twohead
 		push.default
+		rebase.autosquash
 		rebase.stat
+		receive.autogc
 		receive.denyCurrentBranch
+		receive.denyDeleteCurrent
 		receive.denyDeletes
 		receive.denyNonFastForwards
 		receive.fsckObjects
 		receive.unpackLimit
+		receive.updateserverinfo
+		remotes.
 		repack.usedeltabaseoffset
 		rerere.autoupdate
 		rerere.enabled
+		sendemail.
 		sendemail.aliasesfile
-		sendemail.aliasesfiletype
+		sendemail.aliasfiletype
 		sendemail.bcc
 		sendemail.cc
 		sendemail.cccmd
 		sendemail.chainreplyto
 		sendemail.confirm
 		sendemail.envelopesender
+		sendemail.from
+		sendemail.identity
 		sendemail.multiedit
 		sendemail.signedoffbycc
+		sendemail.smtpdomain
 		sendemail.smtpencryption
 		sendemail.smtppass
 		sendemail.smtpserver
+		sendemail.smtpserveroption
 		sendemail.smtpserverport
 		sendemail.smtpuser
 		sendemail.suppresscc
@@ -2071,6 +2132,8 @@ _git_config ()
 		showbranch.default
 		status.relativePaths
 		status.showUntrackedFiles
+		status.submodulesummary
+		submodule.
 		tar.umask
 		transfer.unpackLimit
 		url.
-- 
1.7.3.2.864.gbbb96

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-15  6:46 [PATCH] completion: add missing configuration variables Martin von Zweigbergk
@ 2010-12-15 13:00 ` Jeff King
  2010-12-15 19:44   ` Martin von Zweigbergk
  2010-12-17 20:44   ` Junio C Hamano
  2010-12-20 15:18 ` [PATCH v2] " Martin von Zweigbergk
  1 sibling, 2 replies; 14+ messages in thread
From: Jeff King @ 2010-12-15 13:00 UTC (permalink / raw)
  To: Martin von Zweigbergk; +Cc: git, Junio C Hamano

On Wed, Dec 15, 2010 at 07:46:53AM +0100, Martin von Zweigbergk wrote:

> The color.grep.external option has been deleted. Should it be deleted
> from here or do we want to help users run e.g.
> 'git config --unset color.grep.external'? Same goes for
> add.ignore-errors.

IMHO, they should go away. People who have them can figure out how to
delete them, but it is more important not to advertise them to people
who are adding variables.

As an aside, I would think "--unset" should actually choose from the set
of configured variables for completion (i.e., "git config --list | cut
-d= -f1"). But that would obviously be a separate patch.

> I didn't find any references to 'diff.renameLimit.' even in 98171a0
> (bash completion: Sync config variables with their man pages,
> 2008-12-15) in which it was introduced in the completions script. I
> hope it was safe to remove it.

Yeah, I don't think it has ever existed.

> Some variables are documented with camelCase but read in all
> lowercase in the code. Not worth updating the code just for that, is
> it?

All variables are case-insensitive. The config parser down-cases them,
so all code should treat tham as all-lowercase. However, we tend to
document them as camelCase for readability.

The completion code should match case-insensitively, too. It doesn't
seem to now, but I suspect it is not a problem in practice because the
first camelCase word is often enough to get a match, and is lowercase
itself.

> I hope none of the added variables are deprecated. After having a
> quick look in git-config(1), I think they should not be.

All looked OK from my quick glance.

One note:

>  		color.diff
>  		color.diff.commit
>  		color.diff.frag
> +		color.diff.func
>  		color.diff.meta
>  		color.diff.new
>  		color.diff.old
>  		color.diff.plain
>  		color.diff.whitespace

We have color.diff.branch coming soon (I think it is in 'next' now).

-Peff

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-15 13:00 ` Jeff King
@ 2010-12-15 19:44   ` Martin von Zweigbergk
  2010-12-16  4:23     ` Jeff King
  2010-12-16 12:42     ` SZEDER Gábor
  2010-12-17 20:44   ` Junio C Hamano
  1 sibling, 2 replies; 14+ messages in thread
From: Martin von Zweigbergk @ 2010-12-15 19:44 UTC (permalink / raw)
  To: Jeff King; +Cc: Martin von Zweigbergk, git, Junio C Hamano

On Wed, 15 Dec 2010, Jeff King wrote:

> On Wed, Dec 15, 2010 at 07:46:53AM +0100, Martin von Zweigbergk wrote:
> 
> > The color.grep.external option has been deleted. Should it be deleted
> > from here or do we want to help users run e.g.
> > 'git config --unset color.grep.external'? Same goes for
> > add.ignore-errors.
> 
> IMHO, they should go away. People who have them can figure out how to
> delete them, but it is more important not to advertise them to people
> who are adding variables.

Sounds good to me. If no one disagrees, I'll send an updated patch in
a day or two, removing both color.grep.external and add.ignore-errors.

> As an aside, I would think "--unset" should actually choose from the set
> of configured variables for completion (i.e., "git config --list | cut
> -d= -f1"). But that would obviously be a separate patch.

Good point. I'll put it on my todo.

> > Some variables are documented with camelCase but read in all
> > lowercase in the code. Not worth updating the code just for that, is
> > it?
> 
> All variables are case-insensitive.

That I knew...

> The config parser down-cases them,
> so all code should treat tham as all-lowercase.

... but not that. Thanks. I could/should have figured that out if I
had noticed that *all* of them were lowercase in the code :-P.

> One note:
> 
> >  		color.diff
> >  		color.diff.commit
> >  		color.diff.frag
> > +		color.diff.func
> >  		color.diff.meta
> >  		color.diff.new
> >  		color.diff.old
> >  		color.diff.plain
> >  		color.diff.whitespace
> 
> We have color.diff.branch coming soon (I think it is in 'next' now).

Strictly speaking, that note is for Junio to think of when he merges,
right? But adding it early is pretty harmless and if that relieves him
of some work, I would be happy to add it in the next submission of
this patch. Is that better?

Thinking a bit more, maybe what you are suggesting is that I base the
next revision of this patch on the branch that adds that variable?


/Martin

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-15 19:44   ` Martin von Zweigbergk
@ 2010-12-16  4:23     ` Jeff King
  2010-12-17 20:52       ` Junio C Hamano
  2010-12-16 12:42     ` SZEDER Gábor
  1 sibling, 1 reply; 14+ messages in thread
From: Jeff King @ 2010-12-16  4:23 UTC (permalink / raw)
  To: Martin von Zweigbergk; +Cc: git, Junio C Hamano

On Wed, Dec 15, 2010 at 08:44:45PM +0100, Martin von Zweigbergk wrote:

> > One note:
> > 
> > >  		color.diff
> > >  		color.diff.commit
> > >  		color.diff.frag
> > > +		color.diff.func
> > >  		color.diff.meta
> > >  		color.diff.new
> > >  		color.diff.old
> > >  		color.diff.plain
> > >  		color.diff.whitespace
> > 
> > We have color.diff.branch coming soon (I think it is in 'next' now).
> 
> Strictly speaking, that note is for Junio to think of when he merges,
> right? But adding it early is pretty harmless and if that relieves him
> of some work, I would be happy to add it in the next submission of
> this patch. Is that better?
> 
> Thinking a bit more, maybe what you are suggesting is that I base the
> next revision of this patch on the branch that adds that variable?

The "correct" thing to do from a topic branch standpoint is to submit
this patch without it as its own topic, submit a patch with just
color.diff.branch on top of the other topic, and then the merge
resolution will include both sets.

In this case, it might be OK to just start shipping color.diff.branch in
the completion list. It doesn't hurt anything to have the extra
completion before the feature is in, and the feature seems very likely
to make it in soon.

But I'll let Junio decide how meticulous about history he wants to be.
:)

-Peff

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-16 12:42     ` SZEDER Gábor
@ 2010-12-16  7:14       ` Martin von Zweigbergk
  2010-12-16 14:28         ` Jeff King
  0 siblings, 1 reply; 14+ messages in thread
From: Martin von Zweigbergk @ 2010-12-16  7:14 UTC (permalink / raw)
  To: SZEDER Gábor; +Cc: Martin von Zweigbergk, Jeff King, git, Junio C Hamano

On Thu, 16 Dec 2010, SZEDER G?bor wrote:

> Hi,
> 
> 
> On Wed, Dec 15, 2010 at 08:44:45PM +0100, Martin von Zweigbergk wrote:
> > On Wed, 15 Dec 2010, Jeff King wrote:
> > > As an aside, I would think "--unset" should actually choose from the set
> > > of configured variables for completion (i.e., "git config --list | cut
> > > -d= -f1"). But that would obviously be a separate patch.
> > 
> > Good point. I'll put it on my todo.
> 
> It already works that way since 0065236 (bash completion: complete
> variable names for "git config" with options, 2009-05-08).

Nice. Thanks. Removed from my todo :-). Then I don't see any reason at
all to keep color.grep.external and add.ignore-errors.


/Martin

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-15 19:44   ` Martin von Zweigbergk
  2010-12-16  4:23     ` Jeff King
@ 2010-12-16 12:42     ` SZEDER Gábor
  2010-12-16  7:14       ` Martin von Zweigbergk
  1 sibling, 1 reply; 14+ messages in thread
From: SZEDER Gábor @ 2010-12-16 12:42 UTC (permalink / raw)
  To: Martin von Zweigbergk; +Cc: Jeff King, git, Junio C Hamano

Hi,


On Wed, Dec 15, 2010 at 08:44:45PM +0100, Martin von Zweigbergk wrote:
> On Wed, 15 Dec 2010, Jeff King wrote:
> > As an aside, I would think "--unset" should actually choose from the set
> > of configured variables for completion (i.e., "git config --list | cut
> > -d= -f1"). But that would obviously be a separate patch.
> 
> Good point. I'll put it on my todo.

It already works that way since 0065236 (bash completion: complete
variable names for "git config" with options, 2009-05-08).


Best,
Gábor

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-16  7:14       ` Martin von Zweigbergk
@ 2010-12-16 14:28         ` Jeff King
  0 siblings, 0 replies; 14+ messages in thread
From: Jeff King @ 2010-12-16 14:28 UTC (permalink / raw)
  To: Martin von Zweigbergk; +Cc: SZEDER Gábor, git, Junio C Hamano

On Thu, Dec 16, 2010 at 08:14:54AM +0100, Martin von Zweigbergk wrote:

> > On Wed, Dec 15, 2010 at 08:44:45PM +0100, Martin von Zweigbergk wrote:
> > > On Wed, 15 Dec 2010, Jeff King wrote:
> > > > As an aside, I would think "--unset" should actually choose from the set
> > > > of configured variables for completion (i.e., "git config --list | cut
> > > > -d= -f1"). But that would obviously be a separate patch.
> > > 
> > > Good point. I'll put it on my todo.
> > 
> > It already works that way since 0065236 (bash completion: complete
> > variable names for "git config" with options, 2009-05-08).
> 
> Nice. Thanks. Removed from my todo :-). Then I don't see any reason at
> all to keep color.grep.external and add.ignore-errors.

Agreed. Thanks.

-Peff

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-15 13:00 ` Jeff King
  2010-12-15 19:44   ` Martin von Zweigbergk
@ 2010-12-17 20:44   ` Junio C Hamano
  2010-12-17 21:21     ` Jeff King
  1 sibling, 1 reply; 14+ messages in thread
From: Junio C Hamano @ 2010-12-17 20:44 UTC (permalink / raw)
  To: Jeff King; +Cc: Martin von Zweigbergk, git, Junio C Hamano

Jeff King <peff@peff.net> writes:

> All variables are case-insensitive. The config parser down-cases them,
> so all code should treat tham as all-lowercase. However, we tend to
> document them as camelCase for readability.

Careful.  The second level of three-level names is supposed to be usable
for user defined names (e.g. names of branches and remotes) and I think
the completion code should not downcase it.
 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-16  4:23     ` Jeff King
@ 2010-12-17 20:52       ` Junio C Hamano
  2010-12-17 21:04         ` Jeff King
  0 siblings, 1 reply; 14+ messages in thread
From: Junio C Hamano @ 2010-12-17 20:52 UTC (permalink / raw)
  To: Jeff King; +Cc: Martin von Zweigbergk, git

Jeff King <peff@peff.net> writes:

> On Wed, Dec 15, 2010 at 08:44:45PM +0100, Martin von Zweigbergk wrote:
>
>> > One note:
>> > 
>> > >  		color.diff
>> > >  		color.diff.commit
>> > >  		color.diff.frag
>> > > +		color.diff.func
>> > >  		color.diff.meta
>> > >  		color.diff.new
>> > >  		color.diff.old
>> > >  		color.diff.plain
>> > >  		color.diff.whitespace
>> > 
>> > We have color.diff.branch coming soon (I think it is in 'next' now).
>
> The "correct" thing to do from a topic branch standpoint is to submit
> this patch without it as its own topic, submit a patch with just
> color.diff.branch on top of the other topic, and then the merge
> resolution will include both sets.

Perhaps, if we had color.diff.branch ;-).

> In this case, it might be OK to just start shipping color.diff.branch in
> the completion list. It doesn't hurt anything to have the extra
> completion before the feature is in, and the feature seems very likely
> to make it in soon.
>
> But I'll let Junio decide how meticulous about history he wants to be.

Well, in this case, probably the right thing to do is to ignore this
addition to completion as the lowest priority item for now, wait for other
changes that add or modify the set of configuration variables to land on
'master', and then resubmit a single patch.

Yes, merge is wonderful and easy, but it is merely a tool to help
coordination between developers (the ones who add code to understand new
variables, the others who add completion to help spell the new variables),
not a replacement.  And orderly submission of patches that are related and
have dependencies is a prime example of such coordination.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-17 20:52       ` Junio C Hamano
@ 2010-12-17 21:04         ` Jeff King
  0 siblings, 0 replies; 14+ messages in thread
From: Jeff King @ 2010-12-17 21:04 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Martin von Zweigbergk, git

On Fri, Dec 17, 2010 at 12:52:07PM -0800, Junio C Hamano wrote:

> >> > We have color.diff.branch coming soon (I think it is in 'next' now).
> >
> > The "correct" thing to do from a topic branch standpoint is to submit
> > this patch without it as its own topic, submit a patch with just
> > color.diff.branch on top of the other topic, and then the merge
> > resolution will include both sets.
> 
> Perhaps, if we had color.diff.branch ;-).

Urgh. Color.status.branch is what I meant all along.

> >
> > But I'll let Junio decide how meticulous about history he wants to be.
> 
> Well, in this case, probably the right thing to do is to ignore this
> addition to completion as the lowest priority item for now, wait for other
> changes that add or modify the set of configuration variables to land on
> 'master', and then resubmit a single patch.

Sure, that is reasonable to me.

> Yes, merge is wonderful and easy, but it is merely a tool to help
> coordination between developers (the ones who add code to understand new
> variables, the others who add completion to help spell the new variables),
> not a replacement.  And orderly submission of patches that are related and
> have dependencies is a prime example of such coordination.

Well, yes. But on the other hand, they are two totally separate topics;
they just happen to both have a component of "add stuff to config
completion".  And don't you always preach about not holding one topic
hostage by introducing an unnecessary dependency on another?

I don't think it is a huge deal in this case, but Martin's patch could
theoretically be "maint" material (I say theoretically because I didn't
actually check whether any of the added completions were for things not
yet in maint).  Basing it on something in "next", even if you wait until
it's in "master", makes that impossible.

But this is all philosphical wankery. I think any of the solutions is
fine.

-Peff

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH] completion: add missing configuration variables
  2010-12-17 20:44   ` Junio C Hamano
@ 2010-12-17 21:21     ` Jeff King
  0 siblings, 0 replies; 14+ messages in thread
From: Jeff King @ 2010-12-17 21:21 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Martin von Zweigbergk, git

On Fri, Dec 17, 2010 at 12:44:36PM -0800, Junio C Hamano wrote:

> > All variables are case-insensitive. The config parser down-cases them,
> > so all code should treat tham as all-lowercase. However, we tend to
> > document them as camelCase for readability.
> 
> Careful.  The second level of three-level names is supposed to be usable
> for user defined names (e.g. names of branches and remotes) and I think
> the completion code should not downcase it.

Yeah, good point. It is not even "second level" in the parsing code,
though, since that code sees:

  [first "second"]
    third

and not

  first.second.third

IOW, the second one is ambiguous in the face of an internal dot.  So if
I had something like:

  [Foo "Bar.Baz"]
    Bleep = true

then "Foo" and "Bleep" are case-insensitive, but both "Bar" and "Baz"
are not. So in terms of dotted components, the rule is "the first and
last dotted components are case-insensitive, and middle ones are
case-sensitive". At least with respect to my simple test of calling "git
config x.y.z". I'm afraid if I look too deeply I might discover some
inconsistency. :)

-Peff

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH v2] completion: add missing configuration variables
  2010-12-15  6:46 [PATCH] completion: add missing configuration variables Martin von Zweigbergk
  2010-12-15 13:00 ` Jeff King
@ 2010-12-20 15:18 ` Martin von Zweigbergk
  2010-12-20 21:20   ` Jeff King
  1 sibling, 1 reply; 14+ messages in thread
From: Martin von Zweigbergk @ 2010-12-20 15:18 UTC (permalink / raw)
  To: git; +Cc: Junio C Hamano, Jeff King, Martin von Zweigbergk

Quite a few configuration variables have been added since 226b343
(completion: add missing configuration variables to _git_config(),
2009-05-03). Add these variables to the Bash completion script.

Also remove the obsolete 'add.ignore-errors' and
'color.grep.external', as well as 'diff.renameLimit.', which never
existed and rename the misspelled 'sendemail.aliasesfiletype'.

Signed-off-by: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>
---
Changes since previous version:

Removed 'add.ignore-errors' and 'color.grep.external'.

Added 'fetch.recurseSubmodules', which has entered master since last
round.

(Still based on master.)

 contrib/completion/git-completion.bash |   70 ++++++++++++++++++++++++++++++--
 1 files changed, 66 insertions(+), 4 deletions(-)

diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index 604fa79..25c4314 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -1864,30 +1864,50 @@ _git_config ()
 		;;
 	esac
 	__gitcomp "
-		add.ignore-errors
+		add.ignoreErrors
+		advice.commitBeforeMerge
+		advice.detachedHead
+		advice.implicitIdentity
+		advice.pushNonFastForward
+		advice.resolveConflict
+		advice.statusHints
 		alias.
+		am.keepcr
 		apply.ignorewhitespace
 		apply.whitespace
 		branch.autosetupmerge
 		branch.autosetuprebase
+		browser.
 		clean.requireForce
 		color.branch
 		color.branch.current
 		color.branch.local
 		color.branch.plain
 		color.branch.remote
+		color.decorate.HEAD
+		color.decorate.branch
+		color.decorate.remoteBranch
+		color.decorate.stash
+		color.decorate.tag
 		color.diff
 		color.diff.commit
 		color.diff.frag
+		color.diff.func
 		color.diff.meta
 		color.diff.new
 		color.diff.old
 		color.diff.plain
 		color.diff.whitespace
 		color.grep
-		color.grep.external
+		color.grep.context
+		color.grep.filename
+		color.grep.function
+		color.grep.linenumber
 		color.grep.match
+		color.grep.selected
+		color.grep.separator
 		color.interactive
+		color.interactive.error
 		color.interactive.header
 		color.interactive.help
 		color.interactive.prompt
@@ -1901,21 +1921,29 @@ _git_config ()
 		color.status.untracked
 		color.status.updated
 		color.ui
+		commit.status
 		commit.template
+		core.abbrevguard
+		core.askpass
+		core.attributesfile
 		core.autocrlf
 		core.bare
+		core.bigFileThreshold
 		core.compression
 		core.createObject
 		core.deltaBaseCacheLimit
 		core.editor
+		core.eol
 		core.excludesfile
 		core.fileMode
 		core.fsyncobjectfiles
 		core.gitProxy
 		core.ignoreCygwinFSTricks
 		core.ignoreStat
+		core.ignorecase
 		core.logAllRefUpdates
 		core.loosecompression
+		core.notesRef
 		core.packedGitLimit
 		core.packedGitWindowSize
 		core.pager
@@ -1925,6 +1953,7 @@ _git_config ()
 		core.repositoryFormatVersion
 		core.safecrlf
 		core.sharedRepository
+		core.sparseCheckout
 		core.symlinks
 		core.trustctime
 		core.warnAmbiguousRefs
@@ -1932,15 +1961,17 @@ _git_config ()
 		core.worktree
 		diff.autorefreshindex
 		diff.external
+		diff.ignoreSubmodules
 		diff.mnemonicprefix
+		diff.noprefix
 		diff.renameLimit
-		diff.renameLimit.
 		diff.renames
 		diff.suppressBlankEmpty
 		diff.tool
 		diff.wordRegex
 		difftool.
 		difftool.prompt
+		fetch.recurseSubmodules
 		fetch.unpackLimit
 		format.attach
 		format.cc
@@ -1952,6 +1983,8 @@ _git_config ()
 		format.subjectprefix
 		format.suffix
 		format.thread
+		format.to
+		gc.
 		gc.aggressiveWindow
 		gc.auto
 		gc.autopacklimit
@@ -1989,15 +2022,20 @@ _git_config ()
 		http.lowSpeedLimit
 		http.lowSpeedTime
 		http.maxRequests
+		http.minSessions
 		http.noEPSV
+		http.postBuffer
 		http.proxy
 		http.sslCAInfo
 		http.sslCAPath
 		http.sslCert
+		http.sslCertPasswordProtected
 		http.sslKey
 		http.sslVerify
+		http.useragent
 		i18n.commitEncoding
 		i18n.logOutputEncoding
+		imap.authMethod
 		imap.folder
 		imap.host
 		imap.pass
@@ -2006,6 +2044,7 @@ _git_config ()
 		imap.sslverify
 		imap.tunnel
 		imap.user
+		init.templatedir
 		instaweb.browser
 		instaweb.httpd
 		instaweb.local
@@ -2013,19 +2052,29 @@ _git_config ()
 		instaweb.port
 		interactive.singlekey
 		log.date
+		log.decorate
 		log.showroot
 		mailmap.file
 		man.
 		man.viewer
+		merge.
 		merge.conflictstyle
 		merge.log
 		merge.renameLimit
+		merge.renormalize
 		merge.stat
 		merge.tool
 		merge.verbosity
 		mergetool.
 		mergetool.keepBackup
+		mergetool.keepTemporaries
 		mergetool.prompt
+		notes.displayRef
+		notes.rewrite.
+		notes.rewrite.amend
+		notes.rewrite.rebase
+		notes.rewriteMode
+		notes.rewriteRef
 		pack.compression
 		pack.deltaCacheLimit
 		pack.deltaCacheSize
@@ -2036,31 +2085,42 @@ _git_config ()
 		pack.window
 		pack.windowMemory
 		pager.
+		pretty.
 		pull.octopus
 		pull.twohead
 		push.default
+		rebase.autosquash
 		rebase.stat
+		receive.autogc
 		receive.denyCurrentBranch
+		receive.denyDeleteCurrent
 		receive.denyDeletes
 		receive.denyNonFastForwards
 		receive.fsckObjects
 		receive.unpackLimit
+		receive.updateserverinfo
+		remotes.
 		repack.usedeltabaseoffset
 		rerere.autoupdate
 		rerere.enabled
+		sendemail.
 		sendemail.aliasesfile
-		sendemail.aliasesfiletype
+		sendemail.aliasfiletype
 		sendemail.bcc
 		sendemail.cc
 		sendemail.cccmd
 		sendemail.chainreplyto
 		sendemail.confirm
 		sendemail.envelopesender
+		sendemail.from
+		sendemail.identity
 		sendemail.multiedit
 		sendemail.signedoffbycc
+		sendemail.smtpdomain
 		sendemail.smtpencryption
 		sendemail.smtppass
 		sendemail.smtpserver
+		sendemail.smtpserveroption
 		sendemail.smtpserverport
 		sendemail.smtpuser
 		sendemail.suppresscc
@@ -2071,6 +2131,8 @@ _git_config ()
 		showbranch.default
 		status.relativePaths
 		status.showUntrackedFiles
+		status.submodulesummary
+		submodule.
 		tar.umask
 		transfer.unpackLimit
 		url.
-- 
1.7.3.2.864.gbbb96

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH v2] completion: add missing configuration variables
  2010-12-20 15:18 ` [PATCH v2] " Martin von Zweigbergk
@ 2010-12-20 21:20   ` Jeff King
  2010-12-21  1:22     ` Junio C Hamano
  0 siblings, 1 reply; 14+ messages in thread
From: Jeff King @ 2010-12-20 21:20 UTC (permalink / raw)
  To: Martin von Zweigbergk; +Cc: git, Junio C Hamano

On Mon, Dec 20, 2010 at 04:18:25PM +0100, Martin von Zweigbergk wrote:

> Quite a few configuration variables have been added since 226b343
> (completion: add missing configuration variables to _git_config(),
> 2009-05-03). Add these variables to the Bash completion script.
> 
> Also remove the obsolete 'add.ignore-errors' and
> 'color.grep.external', as well as 'diff.renameLimit.', which never
> existed and rename the misspelled 'sendemail.aliasesfiletype'.
> 
> Signed-off-by: Martin von Zweigbergk <martin.von.zweigbergk@gmail.com>
> ---
> Changes since previous version:
> 
> Removed 'add.ignore-errors' and 'color.grep.external'.
> 
> Added 'fetch.recurseSubmodules', which has entered master since last
> round.
> 
> (Still based on master.)

Based on our prior discussion, I think this can go in, and all of the
other issues can be left for future patches if somebody wants to address
them.

Acked-by: Jeff King <peff@peff.net>

-Peff

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH v2] completion: add missing configuration variables
  2010-12-20 21:20   ` Jeff King
@ 2010-12-21  1:22     ` Junio C Hamano
  0 siblings, 0 replies; 14+ messages in thread
From: Junio C Hamano @ 2010-12-21  1:22 UTC (permalink / raw)
  To: Martin von Zweigbergk, Jeff King; +Cc: git

Will queue with the Ack from peff; thanks, both.

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2010-12-21  1:22 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-12-15  6:46 [PATCH] completion: add missing configuration variables Martin von Zweigbergk
2010-12-15 13:00 ` Jeff King
2010-12-15 19:44   ` Martin von Zweigbergk
2010-12-16  4:23     ` Jeff King
2010-12-17 20:52       ` Junio C Hamano
2010-12-17 21:04         ` Jeff King
2010-12-16 12:42     ` SZEDER Gábor
2010-12-16  7:14       ` Martin von Zweigbergk
2010-12-16 14:28         ` Jeff King
2010-12-17 20:44   ` Junio C Hamano
2010-12-17 21:21     ` Jeff King
2010-12-20 15:18 ` [PATCH v2] " Martin von Zweigbergk
2010-12-20 21:20   ` Jeff King
2010-12-21  1:22     ` Junio C Hamano

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.