Faça o terminal usar pageup / pagedown em vez de shift-pageup / shift-pagedown?

12

Eu cresci bastante cansado de shift-pgup para page up no terminal do gnome, a linha de comando, terminator e guake, etc.

Qualquer maneira de fazer com que esses aplicativos usem as teclas de page-up e page-down para paginação?

    
por HDave 27.07.2012 / 23:34

4 respostas

9

Eu temo que isso não seja possível, já que nenhum PgUp / PgDown será enviado para aplicações de linha de comando, o que tornará alguns deles inutilizáveis. Este é o bom e velho recurso Unix dos dias.

Se você deseja mais rolagem amigável, sugiro usar o comando less . É usado desta maneira:

command-with-lot-of-output | less

Isso iniciará o comando less com a saída do seu comando original. ( Mais informações sobre saída de tubulação para outros programas podem ser encontradas aqui: link )

Menos pode ser navegado usando setas ou PgUp / PgDown. Para sua conveniência, também oferece pesquisa e mais (veja man less para mais). Você pode sair de less apertando a tecla q .

    
por Jakub Lucký 13.09.2012 / 21:26
1

Use xterm e ajuste as combinações de teclas (em ~/.Xresources ) assim:

xterm*VT100.Translations: #override \n\
    <KeyPress>Prior:scroll-back(1,page)\n\
    <KeyPress>Next:scroll-forw(1,page)\n\

gnome-terminal diz que o PageUp / PageDown é para aplicativos dentro do terminal e usá-los seria confuso ...

    
por aba 23.01.2017 / 23:03
1

O Konsole é um emulador de terminal para o KDE que fornece uma opção relevante, na qual pode ser configurado para usar Teclas Page Up e Page Down para paginação direta. Não há outros emuladores de terminal que eu ache tão fáceis quanto o Konsole para essa customização.

Como direcionar paginação

No Konsole, siga os seguintes passos.

  1. Na barra de menus, vá em "Configurações" e clique em "Configurar Perfil Atual ..." (Kubuntu 12.04) ou "Editar Perfil Atual ..." (Kubuntu 16.04) e uma janela aparecerá.

  2. Clique na aba "Input" (Kubuntu 12.04) ou na aba "Keyboard" (Kubuntu 16.04), que tem uma seção chamada "Key Bindings" com listas predefinidas de atalhos de teclado.

  3. Selecione "Padrão (XFree 4)" e clique no botão "Editar ...", então outra janela aparecerá.

  4. Role para baixo e procure pela combinação de teclas PgDown-Shift-AnyModifier com saída \E[6~ . Renomeie esta saída para ScrollPageDown .

  5. Role para baixo e procure pela combinação de teclas PgUp-Shift-AnyModifier com saída \E[5~ . Renomeie esta saída para ScrollPageUp .

  6. Clique no botão "OK" para finalizar e fechar as janelas.

Como testar a saída

Na etapa 3, há "Área de teste" para confirmar a saída para cada pressionamento de tecla.

  • Clique para trazer o foco no campo de texto "Entrada:" e pressione as teclas Page Up e Page Down (uma de cada vez).

  • Confirme se a saída é igual à renomeada.

Ou escreva um script simples para repetir a mensagem em loop. Eu incluí meu próprio script como segue.

  • Copie e cole as seguintes linhas de código no editor de texto.

    #!/bin/bash
    
    echo "Started script"
    echo "If no input, then loop"
    while true
    do {
        echo "Hello, world"
        echo "Wait 1 second to loop [q to quit]"
        read -t 1 -n 1 INPUT && echo
        if [ "$INPUT" == "q" ]
            then break
            else echo "UTC now: $(date -u +%H%M%S)"
        fi
        continue
    }
    done
    echo "Ended script"
    
  • Salvar como arquivo, por exemplo, loop.sh e executar o script no terminal, ou seja, bash loop.sh (não executável).

  • Aguarde até que as mensagens ecoadas preencham a área de exibição e comece a rolar a saída para baixo.

  • Em seguida, pressione as teclas Page Up e Page Down para rolar para cima e rolar a tela para baixo.

Eu testei usando o Konsole 2.8.5, KDE 4.8.5 no Kubuntu 12.04.

Bônus: combinação de chaves e saída

Tudo bem, resposta de bônus para esclarecimentos. Pode-se perguntar por que eu tive que editar essa combinação de teclas e não outras. Eu havia descoberto isso anteriormente testando vários tipos de teclado.

A seguir, a combinação de teclas padrão e sua saída, que foram calculadas usando "Área de teste" no Konsole.

Para chaves primárias Page Up / Page Down (incluindo variante de teclado que requer a tecla Fn a.k.a. Fn + PgUp / Fn + PgDn):

  • Combinação de chaves: PgDown-Shift-AnyModifier Saída: \E[6~

  • Combinação de chaves: PgUp-Shift-AnyModifier Saída: \E[5~

Para teclas secundárias Page Up / Page Down (atalho padrão no terminal que requer a tecla Shift a.k.a. Shift + PgUp / Shift + PgDn):

  • Combinação de chaves: PgDown+Shift-AppScreen Saída: ScrollPageDown

  • Combinação de chaves: PgUp+Shift-AppScreen Saída: ScrollPageUp

Observe que os sinais de menos - e mais + diferem entre cada palavra-chave para chaves primárias e secundárias. É assim que as teclas são traduzidas em caracteres equivalentes, pelo menos no Konsole.

No entanto, não tenho certeza se esses caracteres equivalentes são realmente entendidos por outros emuladores de terminal. Isso é tanto quanto eu sei por experiência própria.

Veredicto

Para usuários avançados que não gostam de lidar com vários arquivos de configuração e com soluções tediosas, o Konsole conquistará facilmente seu coração. Parece que ninguém notou esse nível de personalização oferecido pelo Konsole e pelo KDE nos últimos quatro anos. Que estranho.

    
por clearkimura 24.01.2017 / 21:15
-2

Você pode usar o comando more da seguinte forma:

command-with-lots-of-output  |  more

isto iniciará a saída original do comando com mais.

more pode ser navegado com 'space'. Basta pressionar o espaço e ver a saída do comando como páginas.

    
por eeecoder 05.08.2013 / 18:20