Lorsque je me connecte en ssh à un serveur Linux à partir du terminal bash, je peux utiliser CTRL+A pour revenir au début de la ligne correctement, et CTRL+E pour aller à la fin de la ligne et tout fonctionne correctement.
Lorsque j'utilise bash localement sur mon Mac, lorsque j'utilise CTRL+A il retourne logiquement au début de la ligne, mais n'affiche pas le curseur au bon endroit. Il affiche le curseur décalé de 7 caractères environ et ne met pas à jour correctement le texte de la ligne.
Exemple
find . -name "hello.cpp"
CTRL+A!
find . -name "hello.cpp"
^~~ curseur affiché ici ????
Insérer "c'est un test" (juste pour montrer)
Affiche :
find . c'est un test -name "hello.cpp"
^~~ le curseur est toujours là ???
^~~~~~~~~~~~~^ texte inséré ici ???
^~~~~~^ inchangé pour une raison quelconque
Commande exécutée
c'est un test find . -name "hello.cpp"
J'utilise le même
PS1=\n \e[1;95m \u@\h \e[0;32m\w \e[1;30m $(__git_ps1 " (%s)" ) \n \e[1;95m \@ \n $ \e[0;30m
que sur Linux.
Informations sur la version
- version de bash : 3.2.57(1)
- version du terminal : 2.6.1 (361.1)
- OS X El Capitan, 10.11.5