Quando faço tput sgr0
isso, a fonte e a cor do meu terminal são alteradas para branco (deve ser preto) e parece em bloco.
Por favor, veja a captura de tela:
Como eu paro isto?
Para ser mais conciso, qualquer coisa echo
depois tput sgr 0
parece sair em negrito branco, a cor do texto do meu terminal é preta.
Atualizar:
Meu ~.bashrc
:
export LC_ALL="en_GB.UTF-8"
export BASH_SILENCE_DEPRECATION_WARNING=1
branch() {
git branch 2> /dev/null | \
grep \* | \
awk '{print$2}' | \
sed '
s#^#(#g;
s#$#)#g
'
}
colo() { tput setaf $1; }
PS1='`tput bold``colo 5`\W: `tput sgr0``colo 0``branch``colo 0` \n λ '
O
sgr0
código é descritoman terminfo
como " desligar todos os atributos ".O
sgr
código é descrito como " definir atributos de vídeo #1-#9 (PG9) " e assume um valor1
..9
; a sequênciasgr 0
é indefinida. Você usou ambossgr0
esgr 0
em sua pergunta.O restante da resposta assume
sgr0
, já que a outra sequência não é válida.Se o uso
tput sgr0
redefinir seu terminal para preto e branco, essas cores farão parte do modo padrão (redefinir). Presumo, portanto, que em vez de configurar seu aplicativo de terminal para usar seu esquema de cores preferido como padrão, você colocou instruções em um de seus arquivos de inicialização do shell para definir cores específicas de primeiro e segundo plano. Eles estão sendo (corretamente) redefinidos pelosgr0
código.Duas soluções possíveis vêm à mente,