La sortie Tmux est plus lente lorsque des divisions verticales existent: pourquoi?

8

Lorsque j'utilise Tmux et divise la fenêtre en volets, je remarque que les programmes sont un peu plus lents à imprimer des lignes de texte lorsqu'il y a un fractionnement vertical (deux volets côte à côte) que lorsqu'il y a un fractionnement horizontal (volets empilés). Quelqu'un sait-il pourquoi?

dan
la source

Réponses:

10

Voir cette réponse (dernier point en particulier). Fondamentalement, il tmuxdoit faire beaucoup plus de mouvements de curseur et d'autres travaux supplémentaires pour émuler un terminal de largeur réduite qu'il n'aurait à faire pour émuler un terminal de hauteur réduite. Avec un terminal pleine largeur, tmux peut simplement laisser l'émulateur de terminal dans lequel il s'exécute gérer le retour à la ligne, alors qu'il doit faire son propre retour à la ligne pour émuler un terminal de largeur réduite pour les volets côte à côte. Chaque mouvement du curseur implique la sortie de plusieurs octets (éventuellement 7 ou 8 octets ou plus) de séquences d'échappement pour indiquer au terminal de contrôle de tmux de déplacer le curseur, et lorsque des lignes de texte sont rapidement sorties à l'écran et défilées, cela peut ajouter jusqu'à une différence perceptible.

jw013
la source
0

Une chose qui aide légèrement est d'utiliser :set lazyredrawet :set ttyfast.

Ces paramètres permettent à vim de mettre à jour uniquement les caractères nécessaires à l'écran.

Kornél Lugosi
la source