Quando você executa screen
, ele envia (entre outras coisas) as strings definidas na descrição do terminal para iniciar / parar a operação em tela inteira. Estes são ti
e te
(em termcap), smcup
e rmcup
(em terminfo).
- Quando você inicia a tela ou anexa a uma sessão, ela envia
ti
(smcup
). - Quando você para a tela ou detalha de uma sessão, ele envia
te
(rmcup
).
Dependendo da descrição do terminal, eles podem ser usados para alternar o xterm (e terminais semelhantes) para / da tela alternativa . Para a maioria dos terminais, voltar para a tela normal a partir da tela alternativa faz parecer que o aplicativo de tela inteira foi apagado da tela. (Com o xterm, você pode alternar entre os menus: os dados ainda estarão lá até serem apagados).
Você poderia forçar screen
a sempre usar a tela alternativa
- especificando um valor específico para a opção
term
ou - usando os ajustes termcap / terminfo para modificar as configurações
ti
/te
(smcup
/rmcup
)
De qualquer forma, há desvantagens (porque você pode executar screen
em um tipo de terminal diferente), mas é mais provável que o último funcione, pois não interfere na capacidade de usar teclas especiais (teclas de cursor e de função) .
Se você preferir que screen
use a tela alternativa do terminal do tipo xterm, adicione ao seu arquivo .screenrc
termcapinfo xterm*|rxvt* te=\E[?1049l:ti=\E[?1049h:
Se preferir que não use a tela alternativa, você pode redefinir te
para limpar a tela:
termcapinfo xterm*|rxvt* te=\E[H\E[2J:ti=\E[H\E[2J:
Leitura adicional:
- 16.3 O comando termcap (manual de tela do GNU)
- Por que a tela não é limpa ao executar o vi? (FAQ xterm)