Re: bash completion only provides revs, not paths

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

 



Hello Shawn,

Shawn O. Pearce wrote:
> Uwe Kleine-Knig <Uwe.Kleine-Koenig@xxxxxxxx> wrote:
> > currently autocompletion in 
> > 
> > 	ukleinek@zentaur:~/gsrc/linux-2.6 git log ar<tab>
> > 
> > only yields "armltd/" (i.e. the prefix of some remote tracking branches)
> > but most of the time I want it to complete to "arch/".
> 
> Right.  It favors refs over paths.  Why?  Because I complete refs
> more than I complete paths.
>  
> > I don't understand that autocompletion stuff, but probably to fix that
> > several __git_complete_revlist should be replaced by a
> > __git_complete_revlist_or_path.  The harder part is to implement the
> > latter function.  An optimal implementation would only give back paths
> > if there is a "--" somewhere before the cursor.
> 
> Its ugly, but if we only do path name completion after a -- then
> we can just return "" as the options to bash, and it will go off
> and do the path name completion itself.  If we do path names and
> and refs at the same time, that's a disaster waiting to happen.
> We would have to do the path name completion ourselves.
I thought compgen can be used for that:

	ukleinek@zentaur:~/gsrc/linux-2.6$ compgen -f ar
	arch

> How is this?
I like it and have already applied it.
 
> --8<--
> bash completion: Completely only path names after -- in options
> 
> If the user has inserted a -- before the current argument we are
> being asked to complete they are most likely trying to force Git into
> treating this argument as a path name, and not as a ref.  We should
> allow bash to complete it as a path from the local working directory.
> 
> Suggested-by: Uwe Kleine-Knig <Uwe.Kleine-Koenig@xxxxxxxx>
There is a letter missing in my name.  I wonder why it's always the only
non-ascii one :-)

Best regards and thanks,
Uwe

-- 
Uwe Kleine-König, Software Engineer
Digi International GmbH Branch Breisach, Küferstrasse 8, 79206 Breisach, Germany
Tax: 315/5781/0242 / VAT: DE153662976 / Reg. Amtsgericht Dortmund HRB 13962
--
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]

  Powered by Linux