Re: [PATCH v2/RFC] Make git-completion Bash 4 compatible.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 28 Oct 2010 09:15:45 -0700 (PDT)
Jakub Narebski <jnareb@xxxxxxxxx> wrote:

> Peter van der Does <peter@xxxxxxxxxxxxxxxx> writes:
> > On Wed, 27 Oct 2010 19:54:55 -0500
> > Jonathan Nieder <jrnieder@xxxxxxxxx> wrote:
> > 
> > > Peter van der Does wrote:
> > > 
> > > > The bash completion script could still be included with the
> > > > core, but we can offer different versions for different shells.
> > > 
> > > Why?  That's three times the maintenance work.
> > 
> > The cons of everything in one script:
> > - If the script needs an update the submitter has to take in account
> >   the different coding standards each shell has. Examples of this
> > have been given in the commit message of 06f44c3 (completion: make
> >   compatible with zsh, 2010-09-06)
> > 
> > - The script could end up with a slew of if statements to see which
> >   shell the script is running in and taking some action.
> > 
> > - Shells don't share all the same functions, the script could be
> > filled with functions not needed in other shells. the zsh patch
> > includes one, the Bash 4 patch includes several.
> > 
> > The pros of everything in one script:
> > - Small changes, like adding an extra option to a git command for
> >   completion only have to implemented in one script.
> 
> What about having separate scripts, but sourcing common library that
> doesn't do completion, but just provides list of possible completions?
> This would be best of both worlds, I think.
> 

That would be the best solution.

I believe it's very hard to accomplish though.
The options for completion are determined within each completion
function, and depending on the option a decision on what to offer the
user is made.
The way to decide which option is given and what to offer differs, some
functions use for/next loops, some use case <var>.

-- 
Peter van der Does

GPG key: E77E8E98

IRC: Ganseki on irc.freenode.net
Twitter: @petervanderdoes

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]