On 09/27/2012 10:53 AM, Michael J Gruber wrote:
From trying myself, I'm convinced that you need a clever combination of
PROMPT_COMMAND and PS1 to make this work. Setting PS1 in PROMPT_COMMAND
is probably a no-go because that makes it difficult to customize PS1. I
have something in the works which reproduces the current prompt but need
to clean it up further. The actual coloring would require setting a lot
of variables which communicate data from PROMPT_COMMAND to PS1, and I
actually don't like that.
An alternative approach would be:
- Tell users to activate git prompt by doing something like
PROMPT_COMMAND='__git_prompt "[\u@\h \W (%s)]\$ '
rather than the current
PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '
- set PS1 from __git_prompt
I'm not sure about the performance implications of re-setting PS1 on
(before) each prompt invocation, though. Would that be OK?
After some research, I completely agree with your assessment!
I don't think the performance issue is that big and it's the only way to
get the colors in there without messing up word wrapping.
I'm afraid that either this will need a new function just to get the
coloring hints or that it will break the usage of __git_ps1 entirely (if
you'd require the user to use it as PROMPT_COMMAND instead of via PS1)
And I suppose this will not be compatible with zsh?
/Simon
PS, I'd rather have colours with wrapping issues, than no colour hints.
But I realise this has to be fixed before inclusion into the main tree.
--
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