J’ai arrêté d’utiliser la souris dans mon terminal : ces raccourcis changent tout

Le terminal sans souris, c’est la promesse d’une productivité décuplée, à condition de survivre à la courbe d’apprentissage. Spoiler : ça prend environ une semaine avant que vos doigts ne quittent plus le clavier, et après, retourner cliquer dans un terminal vous semblera aussi archaïque que rembobiner une cassette VHS.

J’ai franchi le cap il y a quelques mois, poussé par l’agacement croissant de devoir attraper ma souris pour sélectionner une commande au milieu d’un long historique. Ce moment où votre main quitte le home row du clavier, c’est un micro-stress répété des dizaines de fois par jour. Cumulé sur une semaine de dev, ça représente une quantité absurde d’énergie mentale gaspillée pour des gestes purement mécaniques.

À retenir

  • Un raccourci caché qui vous fait remonter dans l’historique comme par magie
  • Comment manipuler le texte avec des gestes qui deviennent des réflexes en une semaine
  • La couche d’abstraction suivante qui rend la souris définitivement obsolète

La navigation dans l’historique, c’est là que tout commence

Le premier réflexe à cultiver, c’est d’oublier les touches fléchées pour parcourir l’historique des commandes. Ctrl+R ouvre une recherche incrémentale inversée dans cet historique : vous tapez un fragment, et le terminal remonte automatiquement à la dernière commande qui le contient. Tapez « git » et vous retrouvez votre dernier commit, tapez « ssh » et voilà votre dernière connexion distante. Chaque pression sur Ctrl+R continue à remonter dans le temps parmi les correspondances.

Ce qui change vraiment la donne, c’est de comprendre que le shell Bash (ou Zsh, si vous avez fait le bon choix de vie) s’appuie sur la bibliothèque Readline pour gérer les raccourcis clavier. Readline, c’est un système hérité d’Emacs, et ça explique pourquoi les raccourcis ont parfois des noms qui évoquent un éditeur des années 80. Cette dette historique est en fait une aubaine : une fois appris dans le terminal, ces raccourcis fonctionnent dans d’autres contextes qui embarquent Readline, comme certains interpréteurs Python ou le client MySQL en ligne de commande.

Pour le déplacement dans la ligne de commande, le duo de base est Ctrl+A (début de ligne) et Ctrl+E (fin de ligne). Bien plus rapide que d’appuyer frénétiquement sur la touche Home ou End. Ctrl+B et Ctrl+F avancent ou reculent caractère par caractère, mais l’usage vraiment puissant vient des sauts par mots : Alt+F pour avancer d’un mot, Alt+B pour reculer. Sur un chemin de fichier à rallonge ou une commande avec beaucoup d’options, ces deux raccourcis font gagner un temps fou.

Supprimer du texte comme un chirurgien

Le couper-coller dans le terminal a sa propre logique, et elle est élégante une fois qu’on l’accepte. Ctrl+W supprime le mot qui précède le curseur, parfait pour corriger une faute de frappe sans effacer toute la fin d’argument. Ctrl+U, lui, efface tout ce qui se trouve à gauche du curseur, d’un coup. Ctrl+K fait le miroir en supprimant tout ce qui est à droite.

La beauté du truc, c’est que ce qui est « supprimé » est en réalité placé dans un tampon interne qu’on appelle le kill ring. Ctrl+Y (pour « yank ») colle immédiatement ce contenu là où se trouve votre curseur. En pratique, ça permet de déplacer rapidement un argument d’une position à l’autre dans une commande, ou de réutiliser un long chemin de fichier sans retaper quoi que ce soit. C’est un presse-papiers minimaliste, mais redoutablement efficace au quotidien.

Un raccourci sous-estimé : Alt+. (Alt + point). Ce raccourci insère le dernier argument de la commande précédente. Vous venez de faire mkdir /some/deeply/nested/directory ? Tapez cd suivi de Alt+. et le chemin apparaît comme par magie. Appuyez plusieurs fois sur Alt+. pour remonter dans les derniers arguments des commandes précédentes. C’est bête, mais ça m’a changé la vie plus que la moitié des plugins Zsh que j’avais installés.

Tmux : quand on veut vraiment plus jamais toucher la souris

Les raccourcis Readline règlent le problème à l’intérieur d’une commande, mais qu’en est-il de la navigation entre plusieurs sessions, fenêtres et panneaux ? C’est là que Tmux entre en scène. Ce multiplexeur de terminal est un autre niveau d’abstraction, avec sa propre philosophie.

Tmux fonctionne sur le principe d’un préfixe : par défaut Ctrl+B, suivi d’une touche pour exécuter une action. Ctrl+B puis % divise le panneau verticalement, Ctrl+B puis " horizontalement. Ctrl+B suivi des flèches (là, les flèches sont acceptées) déplace le focus entre les panneaux. Et Ctrl+B puis z zoome sur le panneau courant, ce qui fait office de mise en plein écran temporaire.

Le mode copie de Tmux mérite un paragraphe à lui seul. Activé avec Ctrl+B puis [, il transforme Tmux en un véritable éditeur de sélection de texte. Les touches vi ou Emacs (selon votre configuration) permettent de naviguer dans le scrollback, de sélectionner du texte, de le copier dans le tampon Tmux et de le coller ailleurs. Zéro souris, zéro compromis.

Une petite astuce de configuration que je recommande à tous ceux qui démarrent avec Tmux : remapper le préfixe de Ctrl+B à Ctrl+A (comme dans Screen, l’ancêtre). Ctrl+B est une combinaison inconfortable sur la plupart des claviers, et Ctrl+A tombe bien plus naturellement sous les doigts. Un seul ajout dans votre .tmux.conf et c’est réglé.

Ce que la souris masquait en réalité

Arrêter d’utiliser la souris dans le terminal m’a appris quelque chose que je n’attendais pas : j’avais des lacunes dans ma compréhension de certaines commandes. Pointer et cliquer, c’est souvent contourner le problème, on navigue visuellement plutôt que de savoir précisément où l’on va. Forcer ses mains à rester sur le clavier oblige à être plus intentionnel, à connaître sa commande avant de l’exécuter.

Le gain de vitesse est réel, mais c’est peut-être secondaire. Ce qui compte vraiment, c’est que l’interface disparaît progressivement du champ de conscience. On pense à ce qu’on fait, plus à comment le faire. Les gestes deviennent des réflexes musculaires, comme les accords de guitare qu’on n’a plus besoin de regarder ses doigts pour jouer. Et à partir de ce moment-là, le terminal cesse d’être un outil qu’on utilise pour devenir un espace où l’on pense.

La vraie question, finalement, c’est pas « faut-il bannir la souris ? », c’est plutôt jusqu’où vous êtes prêts à aller dans cette direction. Parce que des outils comme fzf, zoxide ou des configurations Neovim avancées attendent juste derrière la porte, avec des promesses encore plus radicales sur la même philosophie.

Leave a Comment