O excelente artigo a que Jon Z se refere não está mais disponível, mas eu pude pescar a versão somente em texto do cache do Google. Estou salvando aqui caso o Google solte isso também no futuro. O post original foi de Mikael Ståldal, portanto, credite onde o crédito é devido.
-
Como usar a roda do mouse na tela GNU
O GNU Screen tem suporte para rolagem, mas por padrão você precisa usar teclas estranhas para usá-lo. Eu gostaria de poder usar Shift-PageUp, Shift-PageDown e a roda do mouse para rolar, assim como você pode fazer no xterm.
Não foi fácil configurar o Screen para isso e envolve cooperação com o emulador de terminal. Mas finalmente consegui alcançar uma solução que funciona muito bem. Adicione isso ao seu arquivo ~ / .Xresources (você precisa fazer logout para que isso entre em vigor):
XTerm*saveLines: 0
XTerm*vt100.translations: #override \n\
Ctrl <Btn4Down>: string(0x1b) string("[25S") \n\
Lock Ctrl <Btn4Down>: string(0x1b) string("[25S") \n\
Lock @Num_Lock Ctrl <Btn4Down>: string(0x1b) string("[25S") \n\
@Num_Lock Ctrl <Btn4Down>: string(0x1b) string("[25S") \n\
<Btn4Down>: string(0x1b) string("[5S") \n\
Ctrl <Btn5Down>: string(0x1b) string("[25T") \n\
Lock Ctrl <Btn5Down>: string(0x1b) string("[25T") \n\
Lock @Num_Lock Ctrl <Btn5Down>: string(0x1b) string("[25T") \n\
@Num_Lock Ctrl <Btn5Down>: string(0x1b) string("[25T") \n\
<Btn5Down>: string(0x1b) string("[5T") \n\
Shift <KeyPress> Prior: string(0x1b) string("[25S") \n\
Shift <KeyPress> Next: string(0x1b) string("[25T") \n
Em seguida, adicione isso ao seu arquivo ~ / .screenrc:
defscrollback 1000
# Scroll up
bindkey -d "^[[5S" eval copy "stuff 5\025"
bindkey -m "^[[5S" stuff 5\025
# Scroll down
bindkey -d "^[[5T" eval copy "stuff 5\004"
bindkey -m "^[[5T" stuff 5\004
# Scroll up more
bindkey -d "^[[25S" eval copy "stuff \025"
bindkey -m "^[[25S" stuff \025
# Scroll down more
bindkey -d "^[[25T" eval copy "stuff \004"
bindkey -m "^[[25T" stuff \004
Isso funciona no xterm. Não tenho certeza se funciona em outros emuladores de terminal.
Observe que isso desativa o suporte de rolagem normal no xterm; você só poderá rolar ao usar Tela. Você pode querer iniciar o xterm assim para sempre usar o Screen:
xterm -e screen