GERBEN'S BLOG

Rétro-Geekeries: copier-coller avec tmux sur un vieux eeePC

Mon EeePC 4G

Ah, le Eee PC 4G. Compact, silencieux, mais aussi strictement limité avec ses quelques gigaoctets de stockage et son processeur anémique. Afin de lui donner un second souffle et de l’utiliser sous forme de terminal mobile, j’ai installé dessus une distribution Alpine Linux en mode terminal-only.

Mais comment, sur une machine aussi modeste copier-coller du texte dans le terminal (sans surcharger la machine avec des graphismes inutiles) ? La réponse : tmux. Et plus précisément une fonctionnalité méconnue (à tort) mais puissante : le mode copy.

Pourquoi tmux ?

Sur un Eee PC 4G avec seulement 4 Go de SSD et 512 Mo de RAM fixée (upgradée à 1 Go pour ma part) — sans compter les quelques centaines de mégos dévorés par le système lui-même — chaque ressource compte. Un IDE comme VS Code n’a simplement pas sa place ici : trop gourmand en RAM et CPU pour ce qui est installé (le fameux Celeron M @ 900 MHz ne va pas se rajeunir du jour au lendemain).

tmux apporte plusieurs avantages majeurs dans ce contexte minimaliste :

  1. Fonctionne dans un terminal Pas besoin de lancer Wayland ou Xorg: la console linux suffit.
  2. La persistance de session Si la connexion distante tombe en route, mes processus continuent de tourner.
  3. Le multi-tâche/multi-fenêtre C’est même la raison d’être de tmux.
  4. Un système de navigation et de copier-coller intégré, capable de copier du texte affiché sans même avoir besoin de la souris.

Le mode « copy » : Ctrl+B [

La fonctionnalité qui change tout est le mode copy de tmux. Pour y entrer, il suffit de taper la séquence de touches suivante dans le terminal où votre session tmux est ouverte :

Ctrl+B [

Une fois cette séquence entrée, on bascule dans le mode « navigation ». L’écran du terminal se fige — et là commence la partie vraiment utile.

Screenshot du mode copy avec les lignes de texte

Vous pouvez désormais :

  • Naviguer aux flèches du clavier (ou h / j / k / l si vous avez activé le mode vi).
  • Activer le mode sélection en appuyant sur Ctrl+espace puis sélectionner en se déplaçant dans le terminal.
  • Copier dans le tampon en appuyant sur entrée.

Le principe est simple et élégant : on lit le contenu affiché (une sortie ls, un bout de configuration, une erreur quelconque) et on copie ce qu’on veut sans avoir besoin d’ouvrir quoi que ce soit. Aucun éditeur à lancer, aucun processus supplémentaire. Sur un matériel aussi limité que l’Eee PC 4G
c’est exactement le genre d’outils qui font la différence entre « ça marche » et « je dois installer des trucs qui ralentissent tout ».

Coller : Ctrl+B ]

Vous pouvez maintenant aller dans une autre fenêtre/session tmux et une fois que vous avez terminé de naviguer à l’endroit où vous voulez insérer votre texte, il suffit de taper :

Ctrl+B ]

Et on colle exactement ce qu’on a sélectionné. Sans avoir ouvert d’application, sans passer par le presse-papiers du système… tout se fait dans tmux.

Exemple concret sur l’Eee PC 4G

Pour illustrer concrètement ce que cela permet de faire sur ma machine : voici un extrait typique de mon eeePC actuellement sous Alpine Linux en mode terminal. Je suis connecté en SSH sur un autre PC dans une session tmux, et quand j’ai besoin de copier du texte qui s’affiche dans la session ssh distante, je procède comme suit :

# On navigue dedans et lance ses commandes habituelles
ls /var/log | grep syslog
cat ~/.config/something.conf

# Pour copier : Ctrl+B [ puis navigation avec les flèches (ou h/j/k/l)
# Puis on sélectionne le texte au clavier : Ctrl+espace puis déplacement et entrée

# On navigue sur une autre session tmux (par exemple Ctrl+B n), potentiellement sur une 
# autre session SSH
cat >> ~/.config/other.conf
# et enfin Ctrl+B ] pour coller dans une l'autre fenêtre.

Dans cet exemple j’utilise simplement un fichier de configuration dont je veux récupérer une entrée. Il est nettement plus rapide de naviguer directement dans la sortie du terminal que d’ouvrir un fichier avec un éditeur, de le trouver… surtout sur un eeePc.

Pourquoi ça marche si bien sur un vieux matériel

L’Eee PC 4G est une machine qui a maintenant pas mal d’âge. Mais tmux fonctionne parfaitement parce que :

  • C’est du pur terminal — aucun overhead graphique ni processus supplémentaires.
  • La mémoire est minimale — tmux consomme quelques Mo et tout le reste va aux applications réelles qu’on lance (Vim, grep, wget…).
  • Le réseau SSH permet de contrôler la machine à distance, donc on peut travailler sur un PC moderne tout en ayant une session persistante sur l’eeePC.

C’est ce genre d’astuce minimaliste qui sauve la mise dans le monde du rétro-computing : peu d’outils, bien maîtrisés, pour aller loin avec si peu.

À bientôt dans la prochaine Rétro-Geekerie !