Aplicando uma mudança a cada linha?

1

Como adicionar 4 espaços a cada linha entre marcas (encadernado com letra m e linha atual). Como fazer o mesmo ao usar o bloqueio visual?

    
por Gspia 09.08.2013 / 09:52

3 respostas

1
:'x,.s/$/    /

Adicionaria 4 espaços no final das linhas entre a marca x e a linha atual.

No modo visual, você pode pressionar : , o que trará :'<,'> e, em seguida, adicionar s/$/    / para adicionar 4 espaços ao final de cada linha nessa seleção.

Se você quiser adicionar 4 espaços na borda direita do bloco visual atualmente selecionado, digite A , insira esses 4 espaços e Esc .

    
por 09.08.2013 / 13:11
1

Você poderia usar um comando substituto

:%s/m/&    /

você pode adicionar alguns sinalizadores no final para aplicar as coisas várias vezes em uma linha ( g ) ou confirmar a substituição ( c ).

O % antes de s aplicará as alterações ao arquivo inteiro. Se você quer um bloco, você pode fazer algo como

:.,+4s/m/&    /

Isso fará a busca da linha atual ( . ) para baixo, para as próximas 4 linhas ( +4 ).

    
por 09.08.2013 / 10:50
0

Você poderia fazer uma pesquisa e substituir com a correspondência de padrão correta. Algo como (não testado):

:%/m.*$/m    $1/g 

No modo visual, você pode usar ctrl + v para definir uma região. Uma edição será duplicada em todos os blocos selecionados.

    
por 09.08.2013 / 10:11

Tags