Habillage de ligne dynamique dans le terminal GNOME

27

Comment pouvez-vous boucler dynamiquement les lignes du terminal GNOME lorsque vous redimensionnez la fenêtre?

Marius Butuc
la source

Réponses:

19

Au moment où la question a été posée, cela n'était pas possible dans Gnome Terminal. Cependant, un correctif a été validé fin 2013. Cette modification n'est pas entrée dans Ubuntu 14.04, mais elle devrait faire partie d'Ubuntu 14.10.

Selon le problème sur Launchpad , vous pouvez avoir cette fonctionnalité aujourd'hui en activant le PPA de l'équipe Gnome. Vous pouvez activer le PPA de mise en scène de l'équipe Gnome (mise en scène requise pour obtenir la dernière version) en procédant comme suit

 sudo apt-add-repository ppa:gnome3-team/gnome3-staging

Mettez à jour vos sources

sudo apt-get update

Réinstallez gnome-terminal pour obtenir la dernière version

sudo apt-get install gnome-terminal

Vérifiez que vous disposez de la version 3.13 ou ultérieure (à partir du 10 septembre, devrait être 3.13.1)

$ gnome-terminal --version
GNOME Terminal 3.12.1
Michael Martin-Smucker
la source
Je viens d'installer le PPA de l'équipe Gnome, mis à jour, maintenant j'ai Gnome Terminal 3.10.2. Pas de retour à la ligne dynamique. Alors...?
Jay Sullivan
@notfed Vous aurez probablement besoin de la 3.12, qui est disponible pour Ubuntu 14.04 dans le stagingppa. Essayez (à vos risques et périls)ppa:gnome3-team/gnome3-staging
Michael Martin-Smucker
J'ai juste essayé d'ajouter le ppa:gnome3-team:gnome3ppa "normal" , j'ai eu une version qui était 3.10. Après avoir ajouté, ppa:gnome3-team:gnome3-stagingj'ai obtenu la bonne version 3.13.1, donc je peux confirmer que cela fonctionne.
Victor Bjelkholm
C'est le numéro de version de VTE qui compte vraiment. La fonctionnalité est apparue dans vte-0.36 (en conséquence, echo $VTE_VERSIONdevrait rapporter au moins 3600).
egmont
1
J'ai maintenant GNOME Terminal 3.12.3sur Ubuntu 14.04 en utilisant cette méthode, et les travaux de redistribution.
nh2
11

Le terminal Gnome par défaut ne vous permet pas de le faire - cependant, si pendant que vous tapez dans le terminal screen- il exécutera le terminal dans un émulateur de terminal qui se redimensionne correctement.

Par exemple - voici mon dossier personnel lors de l'exécution ls -l

entrez la description de l'image ici

et voici le même écran redimensionné horizontalement

entrez la description de l'image ici

Démarrer Gnome-Terminal automatiquement avec Screen

cp /usr/share/applications/gnome-terminal.desktop ~/.local/share/applications

puis éditez le fichier gnome-terminal.desktop et changez la ligne de commande Exec en:

Exec=gnome-terminal -x screen -q
liberté libre
la source
2
Après avoir installé le paquet - sudo apt-get install screen- il fait le screenretour à la ligne, mais s'exécuter à chaque fois dans ce but n'est pas vraiment intrusif. Voyons quelles sont les autres solutions de contournement.
Marius Butuc
très vrai - ont mis à jour avec une autre suggestion.
fossfreedom
Il y a un sujet sur l' intégration d'écran gnome-terminal + GNU et un rapport de bogue, mais personne n'y travaille. Pourtant, l'écran GNU ressemble à la voie à suivre pour l'habillage de ligne dynamique.
Maxime R.
1
Encore un problème: le défilement est désormais une corvée. :( Peut-être pire que de ne pas avoir la refusion.
allprog
1
À tous ceux qui pensent essayer ceci: c'est cool au début, mais vraiment excentrique, et j'ai finalement cessé de l'utiliser
Jay Sullivan
10

Je fais de grands progrès dans l'implémentation du reconditionnement dans VTE (gnome-terminal etc.). Veuillez voir le bogue en amont à https://bugzilla.gnome.org/show_bug.cgi?id=336238 , n'hésitez pas à essayer mon patch si vous êtes du genre hacker. En cas de commentaires techniques, veuillez commenter ce bug en amont, merci! Avec un peu de chance, mon travail finira bientôt dans la TEV grand public.

egmont
la source
2
Je veux simplement vous exprimer ma sincère gratitude pour ce travail. Il est obscène que VTE ne remballe pas en 2013.
Justin Force
Si cette fonctionnalité pouvait atteindre la prochaine version d'Ubuntu, ce serait super duper génial!
allprog
J'espère que ça y arrivera. Il est maintenant inclus dans la version 0.35 de VTE, qui deviendra stable 0.36, faisant partie de Gnome 3.12 stable.
egmont
Malheureusement, il n'est pas devenu ubuntu fidèle, mais vous pouvez mettre à niveau vos packages vte (et gnome-terminal) à partir de la zone de transit gnome3 sur launchpad.net/~gnome3-team/+archive/gnome3-staging/+packages
egmont
7

gnome-terminal ne peut pas le faire ( bug en amont ).

Après quelques expérimentations, rxvt-unicode semble fonctionner.

Installer via le centre logiciel

sudo apt-get install rxvt-unicode

La redistribution ne fonctionne que lorsque vous avez suffisamment de texte pour remplir la valeur d'un écran entier, alias une fois que vous avez appuyé sur le tampon de défilement.

Sur une note personnelle, je trouve que rxvt est assez moche, mais si la redistribution est plus importante pour vous, allez-y.

achiang
la source
Ce qui m'étonne, c'est qu'à ce jour - personne n'a pensé à développer un nouveau terminal qui ne soit pas basé sur VTE - c'est la raison pour laquelle la plupart des applications de terminaux pour Linux ne refont pas. Il suffit de regarder Terminal.app- de Mac OSX, il est redistribué et est l'un des meilleurs émulateurs de terminaux que j'ai utilisés.
papashou
6

Bien que je ne connaisse malheureusement pas la réponse à cela pour une session de terminal normale, je sais comment le faire si vous utilisez un écran (même si vous utilisez byobu): rattachez votre écran en utilisant ce qui suit:

screen -raAd

Cela fera évoluer votre session d'écran au fur et à mesure que vous redimensionnez (et détachez également toutes les sessions en cours) et c'est ce que j'utilise toujours pour ramener une session d'écran.

Anna
la source
2
C'est cool ... mais maintenant je ne peux pas faire défiler vers le haut dans le terminal .... :(
gregghz
Pour faire défiler la page screen, consultez cette question .
Ruslan
2

Pour autant que je sache, cela dépend du programme que vous utilisez. Le terminal lui-même ne peut pas envelopper dynamiquement le texte. Cependant, certains programmes terminaux peuvent, par exemple,less [1].

Une solution de contournement consisterait à essayer de diriger [2] ce que vous souhaitez afficher à travers less.

[1] http://linuxcommand.org/lts0030.php#less

[2] http://linuxcommand.org/lts0060.php#pipes

Dariel Dato-on
la source
0

Solution: installez l' écran ( écran sudo apt-get ) et lancez-le dans votre terminal.

ern0
la source
3
Mieux encore, installez byobu . C'est fondamentalement un bon emballage screen, mais une fonctionnalité intéressante est que vous pouvez le faire démarrer automatiquement dans tous les terminaux, donc vous savez à peine qu'il est là.
Ams
0

Au cours des 5 dernières années, j'ai régulièrement passé de longues sessions à entretenir et alimenter des machines Linux (dans des endroits éloignés). Et, fondamentalement, Gnome Terminal ne le coupe pas tout à fait ..

Je l' ai souvent utilisé sous Windows SecureCRT et SecureFX (SFTP) sur XP et Win7, ainsi que sur Ubuntu (en vin ), me donnant un ensemble beaucoup mieux de fonctionnalités, y compris: multi-fenêtres et / ou onglets, paramètres enregistrés , macros de connexion, colorisation par session, beaucoup de personnalisation, SFTP intégré et même des scripts .. Il y avait toujours des problèmes mineurs (avec Wine, en particulier avec SFTP), et je me suis souvent éloigné de Gnome Terminal pour les tâches locales sur Ubuntu .

Cependant, depuis le début de cette année (en version bêta), j'ai eu SecureCRT (natif d' Ubuntu ). Outre une intégration plus étroite avec Nautilus (ou quelque chose) pour le transfert de fichiers SFTP / SSH, cela a presque remplacé mon utilisation de Gnome Terminal .

Même la nouvelle configuration de la machine est meilleure avec un copier-coller sans tracas , une capture de session complète et des paramètres de connexion enregistrés. Il a toujours eu une gestion de redimensionnement, de redistribution et de jeu de caractères supérieure, même sur la plupart des autres applications de terminal.

Je ne l'ai pas essayé, mais il vient également de sortir pour Mac OS X v1.5 (Intel) ou v10.6 +.

david6
la source