Eu gostaria de inserir uma palavra em várias linhas, existe algum comando como
:[2,3,5,7,11]s/^/word\ /g
que seria inserido word
no início da linha 2, linha 3, linha 5, linha 7 e linha 11?
Aqui, várias linhas não são contíguas.
Eu gostaria de inserir uma palavra em várias linhas, existe algum comando como
:[2,3,5,7,11]s/^/word\ /g
que seria inserido word
no início da linha 2, linha 3, linha 5, linha 7 e linha 11?
Aqui, várias linhas não são contíguas.
Respostas:
Realizar uma substituição em várias linhas consecutivas é bastante fácil:
:2,11s/^/word /
mas um intervalo não pode cobrir linhas não consecutivas.
Com um pouco de criatividade, porém, é inteiramente possível contornar essa "limitação".
De fato, você pode repetir a última substituição com :&
ou :&&
(o primeiro não preservará os sinalizadores originais, o último o fará), para que você possa encadear substituições facilmente:
2s/^/word /|3&|5&|7&|11&
Veja :help :&
e role para ver :&&
.