J'ai l'invite suivante bash:
YELLOW="\[\033[0;33m\]"
GREEN="\[\033[0;32m\]"
RESET='\e[0m'
export PS1="$GREEN[\W]$YELLOW \$(__git_ps1 \"(%s) \")$RESET\\$ "
Cela ressemble à ceci:
C'est ce que je veux. Cependant, lorsque j'entre une longue ligne, la ligne n'est pas cassée du tout, mais la ligne actuelle est écrasée à partir du début de la ligne. Lorsque cela se produit et que je frappe en arrière, tout ce qui se trouve dans cette ligne disparaîtra. Comment puis-je réparer cela?
command-line
bash
prompt
Tamás Szelei
la source
la source
\[
et\]
délimitent une séquence de caractères non imprimables. Les laisser tomber briserait probablement certains comportements terminaux ou certaines règles d'analyse syntaxique internes. gnu.org/s/bash/manual/bash.html#Printing-a-PromptPlus portable en utilisant
tput
:la source
\[
\]
.