On 2014-10-14 14:47, Johannes Sixt wrote:
> Am 14.10.2014 um 04:32 schrieb Jess Austin:
>> diff --git a/contrib/completion/git-prompt.sh
>> b/contrib/completion/git-prompt.sh
>> index c5473dc..d7559ff 100644
>> --- a/contrib/completion/git-prompt.sh
>> +++ b/contrib/completion/git-prompt.sh
>> @@ -84,6 +84,11 @@
>> # GIT_PS1_SHOWCOLORHINTS to a nonempty value. The colors are based on
>> # the colored output of "git status -sb" and are available only when
>> # using __git_ps1 for PROMPT_COMMAND or precmd.
>> +#
>> +# If you would like __git_ps1 to do nothing in the case when the current
>> +# directory is set up to be ignored by git, then set
>> +# GIT_PS1_HIDE_ON_IGNORED_PWD to a nonempty value, or set
>> +# bash.hideOnIgnoredPwd to true in the repository configuration.
>>
>> # check whether printf supports -v
>> __git_printf_supports_v=
>> @@ -501,6 +506,13 @@ __git_ps1 ()
>> local f="$w$i$s$u"
>> local gitstring="$c$b${f:+$z$f}$r$p"
>>
>> + if [ -n "$(git check-ignore .)" ] &&
>> + ( [ -n "${GIT_PS1_HIDE_ON_IGNORED_PWD}" ] ||
>> + [ "$(git config --bool bash.hideOnIgnoredPwd)" = "true" ] )
>
> Ahem, no. Please do not punish users who are not interested in the new
> feature with two new processes every time __git_ps() is run. Think of
> Windows where fork() is really, *really* expensive.
Is this why bash.showDirtyState and friends aren't checked unless the
corresponding environment variable is set to a non-empty value?
Regardless, it would be nice if the behavior matched the other bash.*
variables (only check the bash.* variable if the corresponding
environment variable is set, and default to true). The following should
fix it:
if [ -n "${GIT_PS1_HIDE_ON_IGNORED_PWD}" ] &&
[ "$(git config --bool bash.hideOnIgnoredPwd)" != "false" ] &&
[ "$(git check-ignore .)" ]
then
...
-Richard
>
> BTW, you can write '{ foo || bar; }' to bracket a || chain without a
> sub-process.
>
>> + then
>> + printf_format=""
>> + fi
>> +
>> if [ $pcmode = yes ]; then
>> if [ "${__git_printf_supports_v-}" != yes ]; then
>> gitstring=$(printf -- "$printf_format" "$gitstring")
>
> -- Hannes
>
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html