Ao modificar a definição do meu PS1, eu vi que os marcadores "\ [" e "\" "deveriam ser adicionados para ajudar o bash a calcular o comprimento correto da tela. Muitos exemplos na web não os utilizam nem mencionam.
Eu procurei por uma solução para adicioná-los automaticamente, como com sed, mas não encontrei nenhum exemplo.
Eles ainda são necessários e há uma recomendação para não usar sed para definir o PS1?
Isso é o que eu uso no momento:
PS1="$(echo -n "$PS_" | sed -e 's/\\e\[/\\\[\\e\[/g' -e 's/[0-9]m/&\\\]/g')"
red='\[\e[31m\]'
e depois terPS1="${red}\u${norm} ..."
Legal e Limpo.