11.9. Accumuler du Texte

Généralement, nous copions ou déplaçons du texte en le coupant puis en le collant, mais il existe d'autres méthodes commodes pour copier un bloc de texte en plusieurs endroits, ou pour copier plusieurs blocs de texte éparpillés en un seul endroit. Pour copier un bloc vers plusieurs endroits, stockez-le dans un registre (Chapitre 12). Nous décrivons ici les commandes permettant d'accumuler des morceaux de texte éparpillés dans un tampon ou dans un fichier.

M-x append-to-buffer

Ajoute la région au contenu du tampon spécifié.

M-x prepend-to-buffer

Ajoute la région au début du tampon spécifié.

M-x copy-to-buffer

Copie la région dans le tampon spécifié, supprimant l'ancien contenu du tampon.

M-x insert-buffer

Insére le contenu du tampon spécifié dans le tampon courant, au point.

M-x append-to-file

Ajoute la région au contenu du fichier spécifié.

Pour accumuler du texte dans un tampon, utilisez la commande M-x append-to-buffer. Cette commande lit un nom de tampon, puis insére une copie de la région dans le tampon spécifié. Si vous spécifiez un tampon non existant, append-to-buffer crée ce tampon. Le texte est inséré à la place du point dans ce tampon. Si vous utilisiez ce tampon pour éditer, le texte copié se retrouve au milieu du texte du tampon, à l'endroit où se trouvait le point.

Le point dans ce tampon est déplacé à la fin du texte copié, des utilisations successives de append-to-buffer accumulent donc le texte dans le tampon spécifié dans le même ordre qu'il a été copié. En parlant strictement, append-to-buffer n'ajoute pas toujours au texte déjà dans le tampon--il ajoute seulement si le point dans ce tampon est à la fin. Cependant, si append-to-buffer est la seule commande utilisée pour altérer un tampon, le point est toujours à la fin.

M-x prepend-to-buffer fonctionne comme append-to-buffer à l'exception que le point dans le tampon de destination est laissé avant le texte copié, de manière que des ajouts successifs ajoutent le texte dans l'ordre inverse. M-x copy-to-buffer est similaire à l'exception que le tampon de destination est effacé, pour que ce tampon ne contienne que le texte nouvellement copié.

Pour récupérer le texte accumulé d'un autre tampon, utilisez M-x insert-buffer ; qui prend aussi un nom de tampon comme argument. Elle insére une copie du texte du tampon nom de tampon dans le tampon sélectionné. Vous pouvez alternativement sélectionner l'autre tampon pour l'éditer, puis optionnellement y déplacer du texte en coupant. Chapitre 17, pour des informations supplémentaires sur les tampons.

Plutôt que d'accumuler du texte dans un tampon d'Emacs, vous pouvez ajouter du texte directement dans un fichier avec M-x append-to-file, qui prend nom de fichier comme argument. Elle ajoute le texte de la région à la fin du fichier spécifié. Elle fichier est immédiatement modifié sur le disque.

Vous devez utiliser append-to-file uniquement avec des fichiers qui ne sont pas visités par Emacs. L'utiliser avec un fichier que vous éditez avec Emacs pourrait modifier le fichier dans le dos d'Emacs, ce qui pourrait conduire à perdre certaines de vos éditions.