web-dev-qa-db-fra.com

Faire en sorte que le terminal utilise pageup / pagedown au lieu de shift-pageup / shift-pagedown?

Je suis devenu assez fatigué de shift-pgup pour remonter dans le terminal de gnome, la ligne de commande, le terminateur, guake, etc.

Est-il possible de faire en sorte que ces applications utilisent les touches de page vers le haut et de page en bas pour faire défiler les pages?

12
HDave

Je crains que cela ne soit pas possible, car aucun PgUp/PgDown ne sera envoyé aux applications en ligne de commande, ce qui rendra certaines d'entre elles inutilisables. C'est une bonne vieille fonctionnalité Unix.

Si vous souhaitez un défilement plus convivial, je vous suggère d’utiliser la commande less. Il est utilisé de cette façon:

command-with-lot-of-output | less

Ceci lancera la commande less avec la sortie de votre commande d'origine. ( Pour en savoir plus sur la sortie de tuyauterie vers d'autres programmes, cliquez ici: http://www.dsj.net/compedge/shellbasics1.html)

Vous pouvez naviguer dans Less en utilisant les flèches ou PgUp/PgDown. Pour votre commodité, il permet également d'effectuer des recherches et plus encore (voir man less pour plus). Vous pouvez quitter less en appuyant simplement sur la touche q.

9
Jakub Lucký

Konsole est un émulateur de terminal pour KDE qui fournit une option pertinente dans laquelle vous pouvez configurer Page Up et Page Down touches pour la pagination directe. Je n'ai trouvé aucun autre émulateur de terminal aussi facile que Konsole pour une telle personnalisation.

Comment diriger la pagination

Dans Konsole, procédez comme suit.

  1. Dans la barre de menus, allez dans "Paramètres" et cliquez sur "Configurer le profil actuel ..." (Kubuntu 12.04) ou sur "Modifier le profil actuel ..." (Kubuntu 16.04) pour afficher une fenêtre.

  2. Cliquez sur l'onglet "Entrée" (Kubuntu 12.04) ou "Clavier" (Kubuntu 16.04), qui comporte une section appelée "Liaisons de touches" avec des listes prédéfinies de combinaisons de touches.

    Key Bindings in Konsole

  3. Sélectionnez "Par défaut (XFree 4)" et cliquez sur le bouton "Modifier ...", une autre fenêtre apparaîtra.

  4. Faites défiler la liste et cherchez la combinaison de touches PgDown-Shift-AnyModifier avec la sortie \E[6~. Renommez cette sortie en ScrollPageDown.

  5. Faites défiler la liste et cherchez la combinaison de touches PgUp-Shift-AnyModifier avec la sortie \E[5~. Renommez cette sortie en ScrollPageUp.

  6. Cliquez sur le bouton "OK" pour terminer et fermer les fenêtres.

Comment tester la sortie

À l'étape 3, il existe une "zone de test" pour confirmer la sortie à chaque pression de touche.

  • Cliquez pour amener le focus dans le champ "Entrée:" et appuyez sur Page Up et Page Down clés (une à la fois).

  • Confirmez que la sortie est identique à celle renommée.

    Key Bindings List and Test Area in Konsole

Ou encore, écrivez un script simple pour faire écho à un message en boucle. J'ai inclus mon propre script comme suit.

  • Copiez et collez les lignes de code suivantes dans l’éditeur de texte.

    #!/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"
    
  • Enregistrez le fichier en tant que fichier loop.sh et exécutez le script dans le terminal i_e bash loop.sh (non-exécutable).

  • Attendez que les messages en écho remplissent la zone de visualisation et commencent à faire défiler la sortie vers le bas.

  • Puis appuyez Page Up et Page Down touches pour faire défiler et faire défiler la zone de visualisation.

J'ai testé avec Konsole 2.8.5, KDE 4.8.5 dans Kubuntu 12.04.

Bonus: Combinaison de touches et sortie

Bon, réponse de bonus pour la clarification. On peut se demander pourquoi j'ai dû éditer ces combinaisons de touches et non d'autres. Je l'avais compris plus tôt en testant plusieurs types de clavier.

Voici la combinaison de touches par défaut et sa sortie, qui ont été calculées à l’aide de "Zone de test" dans Konsole.

Pour les touches principales Page Up/Page Down (y compris la variante de clavier qui nécessite d’appuyer sur Fn clé a.k.a. Fn + PgUp/Fn + PgDn):

  • Combinaison de touches: PgDown-Shift-AnyModifier Sortie: \E[6~

  • Combinaison de touches: PgUp-Shift-AnyModifier Sortie: \E[5~

Pour les touches secondaires Page Up/Page Down (raccourci par défaut du terminal nécessitant Shift touche a.k. Shift + PgUp/Shift + PgDn):

  • Combinaison de touches: PgDown+Shift-AppScreen Sortie: ScrollPageDown

  • Combinaison de touches: PgUp+Shift-AppScreen Sortie: ScrollPageUp

Notez que les signes moins - et plus + diffèrent entre chaque mot-clé pour les clés primaire et secondaire. C’est ainsi que les pressions sur les touches sont traduites en caractères équivalents, du moins en Konsole.

Cependant, je ne suis pas sûr que ces caractères équivalents soient réellement compris par les autres émulateurs de terminaux. Pour autant que je sache, je le sais par expérience.

Verdict

Konsole gagnera facilement votre coeur pour les utilisateurs expérimentés qui n'aiment pas traiter avec divers fichiers de configuration et des solutions de rechange fastidieuses. Il semble que personne n’avait remarqué ce niveau de personnalisation offert par Konsole et KDE au cours des quatre dernières années. Comme c'est étrange.

1
clearkimura

Utilisez xterm et ajustez les raccourcis clavier (dans ~/.Xresources) comme ceci:

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

gnome-terminal indique que PageUp/PageDown est destiné aux applications du terminal et qu'il serait déroutant de les utiliser ...

1
aba