2010-09-22 4 views
56

J'ai quelques fichiers ouverts dans vim, dans plusieurs fenêtres. Y at-il une commande comme: e qui va recharger les tampons pour tous les fichiers que j'ai ouverts? J'ai besoin de cela parce que je modifie parfois certains fichiers avec un autre éditeur alors qu'ils sont également ouverts dans vim.Comment recharger toutes les fenêtres vim en même temps?

Répondre

89

La commande: windo fait pour Windows ce que: bufdo fait pour les tampons. C'est:

:windo e 

devrait défiler toutes les fenêtres visibles (i.e., pas de fenêtres sur les autres onglets, le cas échéant) et exécuter le « : » e commande. De même:

:bufdo e 
cycle de

serait par tous les tampons dans la liste de la mémoire tampon (à savoir, pas de tampons « cachés ») et exécuter la même commande.

Notez que vous pouvez avoir des tampons dans la liste des tampons qui ne sont actuellement affichés dans aucune fenêtre. L'utilisation de ': windo e' ou ': bufdo e' dépend donc de ce que vous voulez.

aide pertinente est ici: http://vimdoc.sourceforge.net/htmldoc/windows.html#list-repeat

+31

De même ': tabdo e' aurait recharger toutes les fenêtres dans tous les onglets – rewolf

+7

Hmm, je ne l'ai pas essayé, mais pour couvrir les cas split-window serait-ce pas besoin': tabdo exec 'windo e''? –

+3

Vous avez raison - ma mauvaise. ': tabdo e' ne recharge que la première fenêtre de chaque onglet. Merci :) explique pourquoi j'ai eu des problèmes hier – rewolf

9

Vim rechargera automatiquement les tampons qui ont été modifiés à l'extérieur (et n'ont pas les modifications non enregistrées) si vous définissez l'option 'autoread'.

Questions connexes