Lorsque j'essaie de coloriser l' bash
invite comme ceci:
export PS1="\e[0;31m[\u@\h \W]\$ \e[m "
il rompt le retour chariot (au lieu d'aller sur une nouvelle ligne lorsque la ligne est pleine, il commence sur la même ligne et efface le texte saisi).
Si je supprime la séquence de couleurs, cela fonctionne bien.
J'utilise Ubuntu 11.10 et le terminal (guake a le même bug aussi).
Réponses:
Vous devez envelopper toutes les séquences d'échappement entre
\[
et\]
afin que «readline» calcule correctement la longueur visible de l'invite. Sans eux, 'readline' pense que l'invite est plus longue qu'elle ne l'est et ne sait pas quand le texte atteint la marge.la source
\[
,\]
? Je suppose que oui, mais cela ne semble pas fonctionner pour moi.skip-csi-sequence
est destinée à supprimer les séquences d' entrée générées par des touches spéciales.\e[xxm
séquence, pas la chaîne entière.\e[39m
par\[\e[;39m\]
et cela fonctionne bienle conseil [et] a également fonctionné sur bash sur OS X 10.8.2.
J'utilise:
qui me montre ma branche git actuelle en cours d'utilisation.
la source