How to save all files in tabs on Vim?
Solution 1
The command wa
(short for wall
) will write all changed buffers. You can also use :tabdo w
, which is definitely exactly what you want, and generalizes nicely.
Solution 2
Just do
:wa
(followed by return) which is a shorthand for
:wall
Also to "save everything and exit" you can do
:wqa
or :xa
(="write-quit-all")
Solution 3
It's possible to suffix a[ll]
for a number of Vim command-line commands (i.e. type :
when in normal mode), include:
:wa
- save all tabs / unsaved buffers:xa
/:wqa
- save all tabs / unsaved buffers and exit Vim:qa
- exit vim (will warn if unsaved buffers exist)
Solution 4
To save all the files just use an a after the write command to write all the files.
:wa
Solution 5
And you can use :tabdo! w
too, I'm just adding this, because it's useful for other things too (e.g. :tabdo! g/somepattern/ s/something/anything/
... I use it all the time for refactoring purposes...)
Related videos on Youtube
rp101
Updated on April 19, 2020Comments
-
rp101 about 4 years
If I have multiple files in tabs on VIM and I edit few of them. How to save them with one command?
-
Zsolt Botykai over 13 yearsI'd recommend a read on
help :g
, but in short, it only applies the next command (in my case thes/something/anything/
to the lines, that matchessomepattern
). Yeah I know, that usually I can do that without the:g
, but sometimes not (I used to match multiline regexes via\\_.
), and the best part is:g
's little "sister":v
. -
Andrew Marshall about 11 years
:tabdo w
is not equivalent to:wa
. If a tab has multiple windows open,:tabdo w
will only save the currently focused window in each tab, whereas:wa
will save all of them.:wa
will also save hidden buffers. -
Andrew Marshall about 11 yearsSee my comment on the other post above for why
:tabdo w
may not work as expected. -
Zsolt Botykai about 11 years@AndrewMarshall Thanks TIL about those behavior of
:tabdo w
.