Il y a une semaine, une importante mise à jour du multiplexeur de terminal tmux a été publiée numéro 3.5, dont le principal changement était une implémentation améliorée des touches étendues (extended keys). Le 5 octobre, les développeurs ont présenté la version corrective 3.5a.
Tmux est un programme libre qui permet de gĂ©rer plusieurs sessions de console depuis un seul terminal virtuel. Il permet de diviser l'espace d'Ă©cran de l'Ă©mulateur de terminal principalement de maniĂšre verticale ou horizontale en « panneaux » (pane), chacun exĂ©cutant une session de l'interprĂ©teur de commandes distincte, et de regrouper ces « panneaux » en « fenĂȘtres » (window). La gestion des « fenĂȘtres » et des « panneaux » se fait par des combinaisons de touches, avec Ă©galement un support optionnel de la souris. De plus, Tmux implĂ©mente le dĂ©filement Ă l'intĂ©rieur de la sortie de la console et un presse-papiers intĂ©grĂ©. Les fonctionnalitĂ©s de Tmux sont Ă©tendues grĂące Ă l'installation de plugins.
Le programme est publié sous la Licence ISC et se distribue sur GitHub. Tmux est inclus dans la distribution minimale OpenBSD, et l'installation est possible sur de nombreux systÚmes de type Unix.
Changements dans Tmux 3.5
- Pour une compatibilité totale avec xterm en mode 2 et mode 1, le support des touches étendues a été revu. Désormais, tmux demandera toujours le mode 2 au terminal parent. Cela permet d'obtenir une représentation interne unique des touches. Une option extended-keys-format a été ajoutée pour contrÎler le format de représentation des touches, semblable à la ressource formatOtherKeys dans xterm.
- L'overlay (fenĂȘtre contextuelle ou menu) sera effacĂ© lors de l'ouverture de la ligne de commande.
- Le drapeau copy-mode -d a été ajouté pour faire défiler d'une page vers le bas tout en étant déjà en mode copie (correspond à -e).
- Les hyperliens seront affichés en mode copie. Un format copy_cursor_hyperlink a été ajouté pour obtenir la cible de l'hyperlien sous le curseur.
- Une option pour le temps d'attente du préfixe (combinaison de touches à partir de laquelle les commandes tmux sont saisies) a été ajoutée.
- Les combinaisons avec les touches de déplacement de la souris ont été désactivées. Elles seront ignorées pour éviter de sortir du préfixe.
- Le mode copie a reçu les formats search_count et search_count_partial.
- Le focus de la souris ne sera pas déplacé lors d'un clic sur la barre d'état.
- Des versions en miroir des dispositions main-horizontal et main-vertical ont Ă©tĂ© ajoutĂ©es, oĂč le principal panneau est en bas ou Ă droite, plutĂŽt qu'en haut ou Ă gauche.
- Le fonctionnement de REP avec des caractÚres Unicode est autorisé.
- Le calcul de la fin des séquences d'échappement du presse-papiers a été corrigé.
- CRLF sera traité comme LF dans les fichiers de configuration, lorsque cela est possible.
- Des solutions de contournement pour les bogues de la console Linux s'affichant lors de l'utilisation de couleurs vives ont été ajoutées.
- Lors de la compilation avec systemd, les variables d'environnement utilisées par celui-ci sont supprimées.
- La logique de suppression du dernier tampon a Ă©tĂ© ajustĂ©e pour mieux conserver la sĂ©lection : si un Ă©lĂ©ment ne peut pas ĂȘtre sĂ©lectionnĂ© en dessous de l'Ă©lĂ©ment supprimĂ© (par exemple, si la sĂ©lection incluait la fin de la sortie), l'Ă©lĂ©ment au-dessus est choisi.
- L'option âenable-jemalloc a Ă©tĂ© ajoutĂ©e pour compiler avec le rĂ©partiteur de mĂ©moire jemalloc, en raison des limitations de glibc malloc.
- Pour les clients, un moyen (refresh-client -r) a Ă©tĂ© ajoutĂ© pour obtenir les requĂȘtes OSC 10 et 11, afin que les clients puissent dĂ©finir les couleurs de premier et de second plan.
- La recherche à rebours avec la touche N en mode arborescent a été ajoutée.
- default-shell sera utilisĂ© pour la ligne de commande, #() et les fenĂȘtres contextuelles (voir les notes de version 3.5a).
- Les parties des modifications censées permettre de sauter les lignes déjà visualisées lors de la recherche pour augmenter les performances ont été annulées, car elles sautaient également la fin des lignes.
- Un hook command-error a été ajouté pour les commandes ayant échoué.
- L'option allow-set-title a été ajoutée pour interdire aux applications de changer le titre de la barre.
- Le comportement de la souris lors du relÚvement du curseur a été corrigé : ignorer uniquement le dernier bouton relùché et toujours traiter les double-clics.
- Un crash a été corrigé lors du changement de focus vers un panneau en cours de fermeture.
- Lors de la recherche de la prochaine session avec detach-on-destroy, la derniÚre session créée est choisie.
- Le temps de sortie par défaut a été réduit à 10 millisecondes.
- La commande display-menu -M a été ajoutée pour activer toujours la souris dans le menu.
- Dans les attributs de l'appareil, une recherche du code de fonctionnalité 21 pour DECSLRM et 28 pour DECFRA sera effectuée. Le niveau 1 est autorisé.
- Un crash a été corrigé si le programme est compilé avec le support SIXEL et le registre de couleur SIXEL est incorrect. Les images SIXEL seront supprimées avant l'exécution du reformatage.
- La notification window-layout-changed n'est pas envoyĂ©e si la fenĂȘtre doit ĂȘtre fermĂ©e bientĂŽt.
- Lorsque la zone sélectionnée est vide, la sélection sera considérée comme absente en ce qui concerne les formats de variable selection_active et selection_present.
- Comportement split-window -p corrigé.
Modifications dans Tmux 3.5a.
- Le nom de la couleur gris a été rétabli.
- L'utilisation de /bin/sh pour #(), run-shell et if-shell a Ă©tĂ© rĂ©tablie. Les fenĂȘtres contextuelles continueront d'utiliser default-shell.
- Raccourcis corrigés impliquant les touches Shift et C-BSpace lorsque les touches étendues sont activées.
Lors de la mise à jour, gardez à l'esprit que 3.5 change la représentation des touches, c'est-à -dire que les touches auparavant considérées comme équivalentes se comporteront désormais différemment., par exemple :
- C-A et C-a, C-B et C-b, etc.
- C-i et Tab
- C-m et Enter
- C-@ et C-Space
- C-Enter et Enter
- C-BTab et C-S-Tab.
Tous les raccourcis utilisant ces touches devront ĂȘtre modifiĂ©s dans .tmux.conf lors de la mise Ă jour vers 3.5a.
Source : linux.org.ru
