Até onde eu sei, a única maneira integrada de fazer isso é:
:args *.vim
:tab all
Primeiro, o :args
substituirá a lista de argumentos. A lista de argumentos lista os arquivos com os quais você abriu o Vim; isso vim file1 file2
significa que a lista de argumentos contém file1
e file2
.
Podemos modificar isso em tempo de execução, e o Vim abrirá um buffer para cada nova entrada na lista de argumentos.
Veja :help argument-list
para mais informações.
O :all
comando abre uma janela para cada entrada na lista de argumentos, o :tab
comando executa um comando e abre uma nova guia quando o comando fornecido abrir uma nova janela.
Ressalvas
Existem algumas advertências para esse método.
Antes de tudo, não há verificação de duplicatas; portanto, você pode terminar com 2 ou mais guias para o mesmo buffer.
Mas o maior problema é que ele substitui todas as suas guias pelo que está na lista de argumentos; então você perdeu todas as guias existentes.
Você pode contornar um pouco isso usando :argadd *.vim
para adicionar à lista de argumentos, em vez de substituí-lo; mas comandos como :edit
ou :tabedit
se não alterar a lista de argumentos, e você vai perder os guias a menos que você adicioná-los à lista de argumentos (você ainda tem-los na lista de buffer, embora). Você também pode não querer abrir tudo na sua lista de argumentos em uma guia, talvez apenas queira abrir 2 arquivos como uma guia adicional.
Talvez você possa tornar isso um pouco melhor adicionando primeiro adicionando todas as guias atualmente abertas à lista de argumentos (que eu realmente não consigo trabalhar), mas isso ainda está longe de ser perfeito. Se uma guia tiver 2 ou mais janelas, ela ainda será modificada ...