Re: [PATCH v3] completion: add new _GIT_complete helper

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

 



Felipe Contreras wrote:

> Since v3:
>
>  * Rename to _GIT_complete to follow bash completion "guidelines"
>  * Get rid of foo_wrap name

Thanks.  Gábor, does the "all caps _GIT_ prefix for public API
functions" convention look like one we should adopt?  If I understand
correctly, previously contrib/completion/git-completion.bash used
leading double underscores for everything except completion functions,
so this is a change.

Following a convention similar to the bash-completion project's
proposed future convention doesn't really help compatibility.  If we
want to be able to include this function in that project without
change some day, we'd have to call it _BC_git_complete. :)

I personally would be happier with a git_complete function provided
by another script, like this:

	contrib/completion/git-completion.bash:

		__git_complete () {
			...
		}

	contrib/completion/bash-helpers.bash:

		git_complete () {
			__git_complete "$@"
		}

One might object that if the user includes bash-helpers.bash (name is
just a strawman) in .bashrc for interactive shells because he is
defining some custom completion functions,

	git<TAB>

would show the git_complete function.  I think that's fine.  Maybe
the user would enjoy the reminder.  git<TAB> also shows any
dashed-form git commands that happen to be on the $PATH.

Please don't take this as a strong objection.  Maybe the
user-unfriendly version would be called _GIT_complete and someone
interested can provide the friendly git_complete and git_ps1 wrappers
separately, for example.  I just think it is worth thinking carefully
and being consistent about.

Hope that helps,
Jonathan
--
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]