threads / discuss / 32608

git-completion.bash should not add a space after a ref

Subject: git-completion.bash should not add a space after a ref

## tl;dr

2 messages between Jan 12, 2013 and Jan 13, 2013.

replies: 1people: 2as markdown or json

Manlio Perillo· Jan 12, 2013, 18:35 UTC · lore
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi.
This is not really a bug, but a small usability problem.
When completing a reference, Bash will add a space after the reference name.
As an example in:
    $git show master<TAB>

The problem is that an user may want to show a tree or blog object from master:

    $git show master:git.c

A possible solution is to define a new __gitcomp_nospace function and use it where appropriate.

Probably the __gitcomp_nospace should be used when git_complete_file is called, and __gitcomp_nl should be used when __git_complete_revlist is called, but I'm not sure.

P.S.: it seems that __gitcomp_nl is **never** called with 4 arguments.

Regards  Manlio
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAlDxrQ8ACgkQscQJ24LbaURHmACfRXoM+uEVDgFUtZFzUcPC5oSZ FGsAnAxQf+SN7GrNljxU1io4IuayHmed =JRVU -----END PGP SIGNATURE-----

Junio C Hamano· Jan 13, 2013, 23:16 UTC · re: Manlio Perillo · lore

Re: git-completion.bash should not add a space after a ref

Manlio Perillo <manlio.perillo@gmail.com> writes:
Show 12 quoted lines
> This is not really a bug, but a small usability problem.
>
> When completing a reference, Bash will add a space after the reference name.
>
> As an example in:
>
>     $git show master<TAB>
>
> The problem is that an user may want to show a tree or blog object from
> master:
>
>     $git show master:git.c
Or the user may want to see only changes to the documentation, e.g.
	$ git show master Documentation/
so removing a SP is a regression in the other way around.

Given that "refer to an object in a tree" is a much less often used operation, I have a feeling that the current behaviour happens to make a good trade-off between these two conflicting purposes that cannot be satisfied both at the same time.

← back to recent threads