atalho de teclado no xterm para mudar uma linha usando shift + up

atalho de teclado no xterm para mudar uma linha usando shift + up

seguirurxvt: rola apenas uma linha

Como podemos definir atalhos de teclado para que shift+up possa rolar uma linha no xterm?

Responder1

Use oRecursos Xdocumentado noPágina de manual do XTerm, particularmente a seção "AÇÕES" cerca de 80% do caminho.

Crie um arquivo ~/.Xresourcese coloque nele:

XTerm.VT100.translations: #override \
    Shift <Key>Up: scroll-back(1) \n\
    Shift <Key>Down: scroll-forw(1) 

"Traduções" é o nome da biblioteca base Xt para ligações de teclas e mouse. Isso define as ligações para o componente VT100 (emulação de terminal) do XTerm, substituindo quaisquer ligações existentes e configurando Shift-Up para rolar para cima (ou "voltar") uma linha e Shift-Down para rolar para baixo ("avançar") uma linha . Estamos fazendo uma linha longa, então usamos barras invertidas no final para marcar a continuação.

Como acontece com qualquer uso de .Xresources, você precisará ter a XENVIRONMENTvariável definida apontando para o lugar certo ou usarxrdb -merge ~/.Xresourcespara carregar o arquivo explicitamente no gerenciador de recursos.

Responder2

A resposta de Michael Horner está próxima, mas ignora um detalhe:

XTerm.VT100.translations: #override \
    Shift <Key>Up: scroll-back(1) \n\
    Shift <Key>Down: scroll-forw(1)

usa as unidades padrão para rolagem. Para garantir que você obtenhalinhas, você precisa adicionar um parâmetro:

XTerm.VT100.translations: #override \
    Shift <Key>Up: scroll-back(1,line) \n\
    Shift <Key>Down: scroll-forw(1,line) 

A página do manual menciona as unidades na descriçãoscroll-backescroll-forw, mas não menciona nesse parágrafo que o padrão é definido por outro recurso,scrollLines:

   scrollLines (class ScrollLines)
           Specifies  the number of lines that the scroll-back and scroll-
           forw actions should use as a default.  The default value is 1.

informação relacionada