tmux est un multiplexeur de terminal. Il permet d’afficher plusieurs terminaux soit par fenêtres successives, soit sur des panneaux concomitants. Il évite d’ouvrir plusieurs fenêtres de terminal en privilégiant une navigation au clavier. Il est nécessaire de retenir la syntaxe de ses commandes pour qu’il soit utile.

Installer tmux

sudo apt-get install tmux
Disponible sous Windows à partir du Microsoft Store avec l’application Terminal et les applications Ubuntu ou Debian au choix.

Démarrer tmux

$tmux -v
L’option verbose permet d’avoir l’affichage de tous les retours de l’application.

Le préfixe

Pour différencier les commandes de tmux, des saisies dans le terminal le préfixe [ctrl]+[B] précède les commandes spécifiques.
Bien évidemment, il est aussi possible d’effectuer des commandes en relançant la commande principale tmux. Le préfixe est alors sans objet. Les deux propositions seront indiquées chaque fois que cela sera possible.

Les commandes de tmux

Créer une nouvelle fenêtre

  • [ctrl]+[B] puis [C]
  • $tmux new-window

La barre d’état indique toutes les fenêtres créées.

Passer de fenêtre en fenêtre

La fenêtre active est désignée par * dans la barre d’état.

  • [ctrl]+[B] puis [N] pour passer à la fenêtre suivante.
  • tmux select-window -n
  • [ctrl]+[B] puis [P] pour passer à la fenêtre précédente.
  • tmux select-window -p
  • [ctrl]+[B] puis [0…9] pour passer à la fenêtre précisée par le numéro saisi et affiché dans la barre d’état.
  • tmux select-window -t :0-9

Renommer la fenêtre en cours

  • [ctrl]+[B] puis [,]. Le nouveau nom est à saisir dans la barre d’état.
  • tmux rename-window nouveau_nom_sans_espace

Diviser les fenêtres en panneaux

  • [ctrl]+[B] puis [%] divisera la fenêtre en cours en deux verticalement.
  • tmux split-window -h
  • [ctrl]+[B] puis [« ] divisera la fenêtre en cours en deux horizontalement.
  • tmux split-window

Se déplacer dans les panneaux

  • [ctrl]+[B] puis flèche, permet de se déplacer de panneau en panneau.
  • [ctrl]+[B] puis [;] pour revenir au dernier panneau utilisé précédemment.
  • [ctrl]+[B] puis [O] pour échanger les panneaux.

Fermer un panneau (ou une fenêtre)

  • [ctrl]+[B] puis [x].
  • $exit

Un outil vintage ?

Tmux

tmux est toujours en phase de développement. Son avantage réside bien dans le fait de s’affranchir de la souris et de garder à l’écran plusieurs processus utilisés en mode Terminal (htop, vim, python, BASH ..). Lorsque les raccourcis sont intégrés, le mode texte reprend tout son intérêt par la rapidité de l’exécution des tâches que l’on réalise. Il pourra plaire aux codeurs, et autres scripteurs de MD, en particulier s’ils n’ont pas l’envie d’installer autre chose que le minimum sur leur machine.