Cor no Bash Prompt bagunçando o prompt

5

No meu arquivo bashrc eu tenho meu prompt definido da seguinte forma:

  TC_GRE="^[[0;32;40m"                                                          
  TC_RESET="^[[0m"                                                              
  PS1="${TC_GRE}i:${TC_RESET}"  

O prompt, portanto, é simplesmente um "i:" verde. Quando eu trabalho no meu shell e pergunto na história minha linha de comando desordena. Considere o seguinte:

i: shell_command_one
i: shell_command_two
i: shell_command_three

Agora, quando eu entro na minha história, a linha pode ser algo assim:

i: shell_comshell_command_two

Se eu apertar enter, ele executa shell_command_two. (Observe como o shell_com é apenas lixo eletrônico no terminal.

Suspeito que possa ter algo a ver com a falta de impressão dos caracteres de cor. Alguém sabe como consertar isso no bash?

p.s. Eu não tenho certeza se isso é melhor postado no superusuário, mas eu pensei que poderia ser melhor aqui, já que é sobre o script do bash.

    
por David Mokon Bond 18.02.2013 / 19:25

1 resposta

3

Parece que você tem um código de cor malformado do CSI. Tente isso no seu arquivo .bashrc :

TC_GRE="\[3[0;32m\]"                                                          
PS1="${TC_GRE}i: "  
    
por 18.02.2013 / 19:32

Tags