Como aplico um comando a uma parte selecionada do arquivo?

1

Digamos que eu queira substituir '23px' por '500px' em um arquivo CSS de 3000 linhas, onde há dezenas de instâncias de '23px'. Eu só quero aplicar este comando:

:%s,23px,500px,gc

Para as linhas 550 a 603. Existe alguma maneira (de preferência sucinta) de especificar que eu quero que o comando se aplique apenas a 550 a 603? Estou aberto para também selecionar a área visualmente com SHIFT-V e j / k e, em seguida, executar um comando que se aplica apenas à parte selecionada / realçada.

    
por meder omuraliev 08.11.2011 / 18:14

1 resposta

4

Basta especificar essas linhas como seu intervalo em vez de%. % é apenas uma abreviação para < primeira linha >, < última linha >.

:550,603s,23px,500px,gc

Veja

:help :range
:help 10.3

Você também pode mover o cursor para a linha 550,

550G

selecione visualmente para a linha 603,

V603G

e digite seu comando,

:s,23px,500px,gc

O Vim preencherá o intervalo automaticamente para você, então a linha de comando será realmente assim:

:'<,'>s,23px,500px,gc

Você também pode executar um comando em linhas que correspondam a algum padrão. Veja

:help 10.4
    
por 08.11.2011 / 18:30

Tags