Você precisa colocar \[ e \] em todas as seqüências de escape para que o editor de linha saiba quanto tempo o prompt é.
Quando eu defino a variável PS1 em ~/.bash_profile , funcionou como configurado. No entanto, a história está de alguma forma confusa.
Quando eu pressiono Arrow Up ou Ctrl+P para ver os comandos que eu digitei, ele começa a duplicar parcialmente em alguns pontos. O cenário é exibido abaixo (preste atenção em cd /Co , que é a parte duplicada):

Emboravisualmenteduplicado,quandopressionaenter,aindarecebooresultadocorretonoscomandosdehistórico.
Aquiestãoasinformaçõesdomeusistema:
EudefinoPS1nomeu.bash_profiledaseguinteforma:
PS1='${YELLOW}\u${WHITE} in ${GREEN}\w${WHITE}${YELLOW}'__git_ps1 " on
%s"'${WHITE}\r\n${NORMAL}$ '
Você precisa colocar \[ e \] em todas as seqüências de escape para que o editor de linha saiba quanto tempo o prompt é.
Tags bash prompt command-history