Você poderia usar o args
comando:
command G execute ":args `git diff --name-only`"
O primeiro arquivo deve ser aberto e, se você executar :ls
após a execução, deverá ver outros arquivos listados também. Ou, como observa Romano, você não precisa execute
:
command G :args `git diff --name-only`
O argadd
comando também pode ser útil. De :h args
:
:ar[gs] [++opt] [+cmd] {arglist} :args_f
Define {arglist} as the new argument list and edit
the first one. This fails when changes have been made
and Vim does not want to abandon the current buffer.
Also see ++opt and +cmd.
{Vi: no ++opt}
:ar[gs]! [++opt] [+cmd] {arglist} :args_f!
Define {arglist} as the new argument list and edit
the first one. Discard any changes to the current
buffer.
Also see ++opt and +cmd.
{Vi: no ++opt}
:[count]arga[dd] {name} .. :arga :argadd E479
:[count]arga[dd]
Add the {name}s to the argument list. When {name} is
omitted add the current buffer name to the argument
list.
:next
é outra possibilidade. Além disso,:execute
não é necessário, aqui, para que o comando possa ser abreviado paracommand! G args `git diff --name-only`
. Agora, os backticks são difíceis.