Se eu tentar abrir um arquivo com less
, seu conteúdo começará na posição do cursor, não no topo da tela.
.
Isso acontece apenas no gnome-terminal, por exemplo no Terminator está tudo bem. Como posso consertar isso?
Responder1
Conforme mencionado por egmont, less
deve ser possível posicionar o cursor e, de fato, existe uma maneira de fazer isso. De acordo com less
a página de manual:
As opções também são retiradas da variável de ambiente "LESS". Por exemplo, para evitar digitar "less -options ..." cada vez que less for invocado, você pode dizer ao csh:
setenv MENOS "-opções"
ou se você usar sh:
MENOS="-opções"; exportar MENOS
Então, para poder less
redesenhar a tela com o cursor posicionado para cima, faça
echo 'LESS="-c"; export LESS' >> ~/.bashrc
-c
A opção, que significa “limpar tela”, será anexada a cada uma less
automaticamente e funcionará até mesmo em TTY, limpando a tela e reposicionando o cursor
Responder2
gnome-terminal
e terminator
ambos dependem do vte
widget para emulação de terminal, embora terminator
usem um widget antigo (baseado em gtk2). Mais precisamente, terminator
usa vte
a versão 0.28.2 (ambos no Ubuntu 14.04 e 16.06), enquanto gnome-terminal
usa vte
a versão 0.34.9 no Ubuntu 14.04 e 0.42.5 no Ubuntu 16.04.
Tal como acontece com a maioria dos softwares, as versões mais recentes devem ser mais estáveis, ricas em recursos e conter menos bugs (embora novos bugs, regressões, mudanças que as pessoas não gostam, etc. possam surgir de vez em quando). vte
recebeu uma grande quantidade de alterações (correções) nos últimos 3 anos, incluindo esta.
vte
pretende usar xterm
como referência para o comportamento de emulação (a menos que veja um bom motivo para divergir, o que acontece muito raramente). Nesse caso, não vimos motivo para divergir (e provavelmente tínhamos um relatório de bug válido sobre vte
não funcionar como esperado em relação à posição do cursor ao mudar para a tela alternativa), então corrigimos vte
para nos comportarmos como xterm
.
Em outras palavras, o Ubuntu 14.04 gnome-terminal
, e tanto o 14.04 quanto o 16.04 terminator
foram quebrados, assumindo que aceitamos que o comportamento correto seja definido por xterm
. terminator
está muito atrasado com vte
a versão e receberá essa correção (junto com muitas outras) quando finalmente lançar uma versão baseada em gtk3.
Eu entendo que você não gosta do novo comportamento de less
(na verdade, eu também não gosto e prefiro a maneira como funcionou acidentalmente com o mais antigo vte
), no entanto, seria uma abordagem absolutamente errada interromper intencionalmente vte
para alcançar o comportamento anterior . Em vez disso, less
você poderá posicionar o cursor na parte superior da tela. Se o comportamento atual realmente incomoda você, recomendo que você registre um relatório de bug/solicitação de recurso contra o less
.