Problema de ajuste de línea de PS1 con colores

Aquí está mi variable PS1:

PS1='\u:\W$(__git_ps1 "\e[32m\][%s]\e[0m\]")$ '

Funciona muy bien para recoger mi rama Git, pero tiene el desafortunado efecto secundario de envolver las líneas cuando los colores están activos, para que se superpongan cuando usa comandos largos.

¿Puede alguien con habilidades mágicas de PS1 ayudarme a solucionar esto?

Respuestas a la pregunta(3)

Su respuesta a la pregunta