Você tem a idéia completamente banyanxed do que foi impresso e o que ele tem que apagar / reescrever, pois exibe o histórico de comandos e permite que você edite a linha de comando. Isso é porque você fez um hash real desse prompt.
- Use
\e
ou3
de forma consistente para sua própria sanidade. - Faça com que seus pares de não aninhamento coincidam com
\[
e\]
. - Certifique-se de que todas sequências não impressas estejam em
\[
e\]
(e que, inversamente, todas as sequências de impressão não sejam).
(É por isso que eu pessoalmente prefiro o Z Shell e seu mecanismo alternativo de expansão de prompt para quando eu quiser prompts coloridos malucos. sabe que coisas como %F{green}
não são sequências de impressão, sem para ser informado, e também funciona as seqüências de escape corretas de terminfo
, sem tê-los conectados.