Por que uma atualização recente do Ubuntu 14.04 atrapalhou meu prompt do PS1?

2

Atualizei recentemente meu Ubuntu 14.04 usando a atualização de software.

Isso causou alguns problemas. Inicialmente não consegui abrir uma nova janela de terminal devido a erros desconhecidos com o meu .bashrc eu tive que usar outro shell para remover meu arquivo .bashrc para consertá-lo. Enquanto lentamente adicionando de volta o arquivo .bashrc agora tenho um problema com minhas configurações de alerta PS1.

Por um tempo eu usei

git_branch () { git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)//'; }
HOST='3[02;36m\]\h'; HOST=' '$HOST
TIME='3[01;31m\]\t 3[01;32m\]'
LOCATION=' 3[01;34m\]'pwd | sed "s#\(/[^/]\{1,\}/[^/]\{1,\}/[^/]\{1,\}/\).*\(/[^/]\{1,\}/[^/]\{1,\}\)/\{0,1\}#_#g"''
BRANCH=' 3[00;33m\]$(git_branch)\[3[00m\]\n\$ '
PS1=$TIME$USER$HOST$LOCATION$BRANCH
PS2='\[3[01;36m\]>'

no meu .bashrc para mostrar o tempo, usuário, host, pwd e git branch (em várias cores) dentro do meu prompt.

Após a atualização, tenho um personagem estranho no início de cada um daqueles que não costumavam estar lá. Algum tipo de pequena caixa delineada com 4 números minúsculos!

O que está causando isso & como consertar isso?

    
por Michael Durrant 28.02.2015 / 14:11

1 resposta

3

A resposta parece ser que eu precisava adicionar um \[ antes das construções 3[ , por exemplo

Antes:

HOST='3[02;36m\]\h'; HOST=' '$HOST

Depois:

HOST='\[3[02;36m\]\h'; HOST=' '$HOST

    
por 28.02.2015 / 14:25

Tags