Vous pouvez effacer complètement un tampon en utilisant la commande: bwipeout (ou: bw). Cela supprime complètement le tampon de la mémoire, y compris les repères, les options, etc. que vous y avez ajoutés. De même,: bdelete (ou: bd) supprime le tampon, mais le laisse en mémoire et conserve les repères et les options.
Selon le commentaire de Tom Hale, la documentation de Vim recommande d'utiliser: bd over: bw sauf si vous savez ce que vous faites. J'ai tendance à utiliser: bw parce que, comme l'idée de supprimer complètement le tampon de la mémoire, et que je ne me sers pas beaucoup des marques, des paramètres d'option spécifiques au tampon, etc., au point de les obliger à rester après la fermeture de mon tampon.
Comme pour la commande: quit (: q), Vim donnera une erreur si le tampon a changé. Pour résoudre ce problème, vous pouvez ajouter un point d'exclamation après la commande pour supprimer l'invite. Une autre option, au lieu d’ajouter des points d’exclamation, consiste à ajouter «set confirm» à votre vimrc. Avec cet ensemble, vim vous invitera à enregistrer les modifications de fichier à la fermeture.
: bufdo est une commande utile qui exécute une autre commande sur tous les tampons actifs. La combinaison de la commande: bufdo avec la commande: bw /: bd vous permet de supprimer tous les tampons actifs en même temps. Vous pouvez toujours utiliser le point d'exclamation pour supprimer les erreurs, mais si vous le placez après: bufdo, après: bw ou après les deux, des résultats différents pour chacun:
:bd - deletes the current buffer, error if there are unwritten changes
:bd! - deletes the current buffer, no error if unwritten changes
:bufdo bd - deletes all buffers, stops at first error (unwritten changes)
:bufdo! bd - deletes all buffers except those with unwritten changes
:bufdo! bd! - deletes all buffers, no error on any unwritten changes
:bw - completely deletes the current buffer, error if there are unwritten changes
:bw! - completely deletes the current buffer, no error if unwritten changes
:bufdo bw - completely deletes all buffers, stops at first error (unwritten changes)
:bufdo! bw - completely deletes all buffers except those with unwritten changes
:bufdo! bw! - completely deletes all buffers, no error on any unwritten changes
:set confirm - confirm changes (Yes, No, Cancel) instead of error
Voici quelques autres commandes de tampon utiles:
:ls - list open buffers
:b N - open buffer number N (as shown in ls)
:tabe +Nbuf - open buffer number N in new tab
:bnext - go to the next buffer (:bn also)
:bprevious - go to the previous buffer (:bp also)
Il y a beaucoup plus de choses sur le traitement des tampons qui sont hors du champ de cette question. Jetez un coup d'œil sur:
http://vim.wikia.com/wiki/Vim_buffer_FAQ
http://vimdoc.sourceforge.net/htmldoc/windows.html#buffers