How do I make vim open all files matching a pattern in different tabs?
You could use the args
list and argdo
like so:
:args **/test*.py
:argdo tabe %
However, the syntax event is turned off by argdo
(to speed up the normal use case), so the files will be loaded without syntax at first. You could follow it up with a :syntax on
to force the syntax event on all loaded buffers. Compressed into one line (need to wrap argdo
in execute
so it doesn't absorb the following |
):
:args **/test*.py | execute 'argdo tabe %' | syntax on
Alternately, you can open vim from the command line via:
vim -p **/test*.py
But that will max out at 10 tabs.
You can use the following:
:next **/test*.py
It opens all the files.
To map it
nmap <c-d> :args **/*.tpl<bar>execute 'argdo tabe %'<bar>syntax on<cr>
But still it displays list of files, you have to press enter few times (depending of number of files).