From: "Uwe Kleine-König" <Uwe.Kleine-Koenig@digi.com>
To: "Shawn O. Pearce" <spearce@spearce.org>
Cc: Junio C Hamano <gitster@pobox.com>, <git@vger.kernel.org>
Subject: Re: bash completion only provides revs, not paths
Date: Wed, 23 Apr 2008 07:56:37 +0200 [thread overview]
Message-ID: <20080423055637.GA25446@digi.com> (raw)
In-Reply-To: <20080423015236.GM29771@spearce.org>
Hello Shawn,
Shawn O. Pearce wrote:
> Uwe Kleine-Knig <Uwe.Kleine-Koenig@digi.com> 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@digi.com>
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
next prev parent reply other threads:[~2008-04-23 6:05 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-22 11:21 bash completion only provides revs, not paths Uwe Kleine-König
2008-04-23 1:52 ` Shawn O. Pearce
2008-04-23 5:56 ` Uwe Kleine-König [this message]
2008-04-24 1:21 ` [PATCH] " Shawn O. Pearce
2008-04-24 5:52 ` Uwe Kleine-König
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=20080423055637.GA25446@digi.com \
--to=uwe.kleine-koenig@digi.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=spearce@spearce.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).