Couper et coller du texte dans vi ou vim

Couper et coller du texte dans un éditeur est une exigence de base. Cette recette technique décrit les fonctions copier-coller de vi et vim.


La découpe de texte dans vi / vim est réalisée à l'aide des différentes commandes de suppression résumées ci-dessous:

dd Supprimer la ligne en cours
D Supprimer du curseur à la fin de la ligne
d $ Supprimer du curseur à la fin de la ligne
d0 Supprimer du curseur au début de la ligne
dw Supprimer du curseur à la fin du mot actuel
db Supprimer du curseur au début du mot actuel

Ces commandes doivent être données en mode commande dans vi / vim, pas en mode insertion. Toutes ces commandes peuvent être précédées d'un nombre qui est interprété comme le nombre d'opérations à effectuer. Par exemple, 5jj est interprété comme supprimer 5 lignes.

Lors d’une suppression, le texte supprimé est stocké temporairement dans une mémoire tampon. Ce tampon peut être collé dans le document par rapport à la position actuelle du curseur en utilisant le p (p minuscule) coller après la position actuelle du curseur ou P (majuscule P) coller avant les commandes de position du curseur en cours.

Attention, certaines commandes de vi / vim videront le tampon. Le mouvement du curseur est sécurisé. Cependant, comme il n'y a qu'un seul tampon utilisé à la fois pour couper / copier / coller / annuler / rétablir, toute fonction utilisant ce tampon (insérer, remplacer, etc.) enverra votre texte coupé aux limbes.