summaryrefslogtreecommitdiff
path: root/builtin-remote.c
diff options
context:
space:
mode:
authorLibravatar Shawn O. Pearce <spearce@spearce.org>2008-07-15 05:52:04 +0000
committerLibravatar Junio C Hamano <gitster@pobox.com>2008-07-14 23:35:18 -0700
commitdb8a9ff03831a26aa8bfad8bb026b90739d684ec (patch)
treebb730340310f88b7a70eb5db0b1537e2d723d7f2 /builtin-remote.c
parentbash completion: Append space after file names have been completed (diff)
downloadtgif-db8a9ff03831a26aa8bfad8bb026b90739d684ec.tar.xz
bash completion: Resolve git show ref:path<tab> losing ref: portion
Linus reported that the bash completion for git show often dropped the ref portion of the argument (stuff before the :) when trying to complete a file name of a file in another branch or tag. Björn Steinbrink tracked it down to the gvfs completion script which comes standard on many Fedora Core based systems. That is removing : from COMP_WORDBREAKS, making readline treat the entire argument (including the ref) as the name that must be completed. When the git completion routines supplied a completion of just the filename, readline replaced everything. Since Git users often need to use "ref:path" or "ref:ref" sort of arguments, and expect completion support on both sides of the : we really want the : in COMP_WORDBREAKS to provide a good user experience. This is also the default that ships with bash as it can be useful in other contexts, such as rcp/scp. We now try to add : back to COMP_WORDBREAKS if it has been removed by a script that loaded before us. However if this doesn't work (as the : is stripped after we load) we fallback in the completion routines to include "ref:" as part of the prefix for completions, allowing readine to fully insert the argument the user wanted. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-remote.c')
0 files changed, 0 insertions, 0 deletions