Mensaje de color de Bash y comandos largos

Mensaje de color de Bash y comandos largos

Estoy coloreando partes de mi indicador de bash usando secuencias de escape ANSI. Esto funciona muy bien, hasta que el comando que estoy escribiendo actualmente sea lo suficientemente largo como para tener que ajustarlo. En lugar de que el resto del comando se muestre en la siguiente línea, regresa a la columna 1 de la línea actual, sobrescribiendo el comienzo del mensaje.

Obtengo ese comportamiento con este mensaje:

export PS1="[\u][\033[0;32;40mdemo \033[0;33;40m1.5.40.b\033[0;37;40m] \w> \033[0m"

pero funciona correctamente con el mismo mensaje, las secuencias ANSI eliminan:

export PS1="[\u][demo 1.5.40.b] \w> "

Me estoy conectando usando la versión actual de Putty, con la configuración predeterminada de Putty. El sistema operativo es Ubuntu 8.10.

Respuesta1

Debe haber algo allí porque la siguiente cadena deldocumentación de bashno muestra el mismo comportamiento:

PS1="\[\033[1;34m\][\$(date +%H%M)][\u@\h:\w]$\[\033[0m\] "

Aún no he descubierto qué es, pero sus trabajos y el tuyo no...

EDITAR:Intentar:

PS1="[\u][\[\033[1;32m\]\[\033[1;40m\]demo \[\033[1;33m\]\[\033[1;40m\]1.5.40.b\[\033[0;37m\]] \w> \[\033[0m\] "

información relacionada