Simon Oosthoek <s.oosthoek@xxxxxxxxx> writes: > The problem with doing it in pre-post is when inside non-git > directories. You want to avoid any gitstring output, including the > brackets, when not inside a repository. Ah, Ok, that is probably what I missed. >> Or we could go the other way and drop "pre/post" strings, making >> them part of the printf_format string. Perhaps that might be a >> better interface in the longer term. Then people can use the same >> "<pre>%s<post>" format string and do either of these: >> >> PS1=$(__git_ps1 "<pre>%s<post>") >> PROMPT_COMMAND='PS1=$(__git_ps1 "<pre>%s<post>")' >> >> without __git_ps1 having a special "prompt command" mode, no? > > But how to determine which mode to use? > In pcmode, you must set the PS1, in command-subsitute mode, you must print a formatted gitstring. The point of the above two was that __git_ps1 does not have to set PS1 as long as the insn says user to use PROMPT_COMMAND that sets PS1 himself, exactly as illustrated above. In other words, replace the last PS1=... in the "prompt command" mode with an echo or something and make the user responsible for assigning it to PS1 in his PROMPT_COMMAND. Or put it in another way, I was hoping that we can do without adding the prompt command mode---if there is no two modes, there is no need to switch between them. But as I said, there probably is a reason why that approach does not work, that is why I said... >> I have a feeling that I am missing something major, though... -- 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