From: "SZEDER Gábor" <szeder@ira.uka.de>
To: Jeff King <peff@peff.net>
Cc: git@vger.kernel.org
Subject: Re: [PATCHv2 3/3] completion: match ctags symbol names in grep patterns
Date: Sun, 23 Oct 2011 23:29:28 +0200 [thread overview]
Message-ID: <20111023212928.GG22551@goldbirke> (raw)
In-Reply-To: <20111021173021.GC24417@sigill.intra.peff.net>
Hi,
On Fri, Oct 21, 2011 at 01:30:21PM -0400, Jeff King wrote:
> This incorporates the suggestions from Gábor's review, with one
> exception: it still looks only in the current directory for the "tags"
> files. I think that might have some performance implications, so I'd
> rather add it separately, if at all.
I agree that scanning through a whole working tree for tags files
would cost too much. But I think that a tags file at the top of the
working tree is common enough to be supported, and checking its
existence is fairly cheap.
> + case "$cword,$prev" in
> + 2,*|*,-*)
> + if test -r tags; then
> + __gitcomp "$(__git_match_ctag "$cur" tags)"
> + return
> + fi
> + ;;
So how about something like this for the case arm? (I didn't actually
tested it.)
local tagsfile
if test -r tags; then
tagsfile=tags
else
local dir="$(__gitdir)"
if test -r "$dir"/tags; then
tagsfile="$dir"/tags
fi
fi
if [ -n "tagsfile" ]; then
__gitcomp "$(__git_match_ctag "$cur" "$tagsfile")"
return
fi
Btw, there is a bug in the case statement: 'git --no-pager grep <TAB>'
offers refs instead of symbols, because $cword is not 2 and $prev
doesn't start with a dash. But it's not worse than the current
behavior, so I don't think this bug is a show-stopper for the patch.
Best,
Gábor
next prev parent reply other threads:[~2011-10-23 21:29 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-18 4:49 [PATCH 0/3] stupid git tricks Jeff King
2011-10-18 4:52 ` [PATCH 1/3] contrib: add diff highlight script Jeff King
2011-10-18 4:54 ` [PATCH 2/3] contrib: add git-jump script Jeff King
2011-10-18 5:01 ` [PATCH 3/3] completion: match ctags symbol names in grep patterns Jeff King
2011-10-18 7:15 ` Junio C Hamano
2011-10-18 7:26 ` Jonathan Nieder
2011-10-18 7:35 ` Junio C Hamano
2011-10-18 7:41 ` Matthieu Moy
2011-10-18 7:55 ` Junio C Hamano
2011-10-18 7:55 ` Jonathan Nieder
2011-10-18 17:14 ` Junio C Hamano
2011-10-18 15:04 ` Jeff King
2011-10-21 13:25 ` SZEDER Gábor
2011-10-21 17:22 ` Jeff King
2011-10-21 17:26 ` [PATCHv2 1/3] contrib: add diff highlight script Jeff King
2011-10-21 17:28 ` [PATCH 2/3] contrib: add git-jump script Jeff King
2011-10-21 17:35 ` Jeff King
2011-10-21 17:30 ` [PATCHv2 3/3] completion: match ctags symbol names in grep patterns Jeff King
2011-10-21 17:37 ` [PATCHv2 4/3] completion: use __gitcomp_nl for ctag matching Jeff King
2011-10-23 21:29 ` SZEDER Gábor [this message]
2011-10-28 6:05 ` [PATCHv2 3/3] completion: match ctags symbol names in grep patterns Jeff King
2011-10-29 12:47 ` SZEDER Gábor
2011-11-01 15:21 ` Jeff King
2011-11-01 18:14 ` Junio C Hamano
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=20111023212928.GG22551@goldbirke \
--to=szeder@ira.uka.de \
--cc=git@vger.kernel.org \
--cc=peff@peff.net \
/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).