Pergunta

Há o. ": Um" comando, mas isso é multi-linha, e argdo pede-lhe para o texto novamente para cada arquivo

Os documentos mencionam o comando global (g / pat / command) que irá utilizar uma versão alternativa de ": a" que é terminada por uma nova linha em vez de por "" em uma linha (você pode incluir novas linhas por escapar-los com "\"). Mas eu não podia chegar a este trabalho.

A única maneira que eu vi é a primeira puxão o texto-para-ser-adicionado em um registro chamado, então, usar:

:argdo put x                 " where x is the register

Eu estou esperando por algo como

:argdo append myTextHere
Foi útil?

Solução

Eu sou claro onde você está tentando inserir o texto no buffer. Se você quer após a linha atual:

:argdo exe 'normal osometext'

Inserir texto com quebras de linha nele:

:argdo exe "normal osometext\<CR>anewline"

Outras dicas

Para acrescentar texto após a linha nr 10:

:argdo call append(10, "hello world")

Para texto acréscimo para a linha 10:

:argdo call setline(10, getline(10)."textappended")

Arrancando um texto no vim vai colocá-lo no buffer padrão, que é ". Pode colar que tampão no modo de inserção, por exemplo, por <C-R>" digitação. Então tudo que você precisa é argdo put "

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top