Ao usar tmux
, tenho problemas de caracteres fantasmas ao usar as teclas de seta para cima e para baixo no Bash. Se eu pressionar UpArrow algumas vezes e, em seguida, pressionar DownArrow algumas vezes, então os primeiros caracteres de um comando anterior permanecerão na linha de Bash .
Por exemplo, use esta linha limpa de Bash:
$
Agora eu pressiono UpArrow três vezes:
$ ls /home/dotancohen/Downloads
Agora eu pressiono DownArrow três vezes:
$ ls /home/do
Eu posso reproduzir o problema sem o arquivo ~ / .tmux.conf, depois de sair e reiniciar o tmux
. Como devo diagnosticar isso?
Editar: aqui está meu $PS1
:
$ echo $PS1
\[\] - \h():\W$ \[\]
Note que tudo, desde a segunda barra invertida até o último fechamento, é verde. Esta função cria o prompt:
PROMPT_COMMAND=$(
cat<<-'EOF'
retval=$?
RED=$(tput setaf 1)
GREEN=$(tput setaf 2)
STOP=$(tput sgr0)
c=0
for i in $retval ${PIPESTATUS[@]}; do ((c += $i)); done
if (($c == 0)); then
PS1="\[$GREEN\] - \h(${WINDOW}):\W$ \[$STOP\]"
else
PS1="\[$RED\] - \h(${WINDOW}):\W$ \[$STOP\]"
fi
EOF
)