Limpar para o final da linha usa a cor de fundo errada na tela

1

Na expansão de prompt do ZSH, o comando% E deve "Limpar até o final da linha".

Isso funciona. Nós vemos isso na barra cinza indo até o fim.

Noentanto,seeuchamar"screen", o% E pára de funcionar:

Alguma ideia de qual é a causa disso e como ela pode ser corrigida?

    
por JoshuaD 27.12.2015 / 06:21

1 resposta

5

Quando você envia uma das seqüências de controle de apagamento do ECMA-48, quer a eliminação use a cor de fundo atual ou a cor de fundo padrão varia entre diferentes tipos de terminal. (No banco de dados terminfo, há um recurso que permite que os programas determinem com o que o terminal com o qual estão conversando. Ele é denominado bce . O nome equivalente do termcap é ut .) Você está definindo a cor atual do plano de fundo e, em seguida, apagando para o final da linha, esperando a eliminação para sempre usar essa cor atual.

screen é um emulador de terminal. Mas, ao contrário dos terminais de hardware, seu comportamento a esse respeito é comutável. Por padrão, apagar cor de fundo é desativado, e a seqüência de controle causa o apagamento com a cor padrão. Um liga-o com o comando bce . Um define o padrão para a configuração bce em todas as novas telas com o comando defbce .

Então ligue. É tão simples assim.

Leitura adicional

por 27.12.2015 / 11:10