Vim - substituindo somente no bloco selecionado
Dica publicada em Linux / Vim
Vim - substituindo somente no bloco selecionado
Usando o modo visual do Vim, quando você seleciona um trecho de uma linha ou parágrafo e executa um comando de substituição, o editor processa o texto da linha inteira.
Como fazer para processar somente o bloco selecionado?
Para explicar o recurso, vou usar um exemplo prático... supondo que você possui o seguinte texto:
Tecle "v" para entrar no modo visual e selecione as palavras "monitor" e "mouse". Em seguida digite:
s/mo/MO/g
Como resultado você terá todas as palavras da linha alteradas:
Tecle "u" para desfazer:
Tecle "v" e selecione novamente as palavras "monitor" e "mouse". Em seguida digite:
s/\%Vmo/MO/g
Como resultado teremos:
A "mágica" da coisa está em informar ao Vim que você quer processar a substituição somente na área selecionada: \%V
Até a próxima!
Como fazer para processar somente o bloco selecionado?
Para explicar o recurso, vou usar um exemplo prático... supondo que você possui o seguinte texto:
monitor, mouse, montanha, moinho, mosca
Tecle "v" para entrar no modo visual e selecione as palavras "monitor" e "mouse". Em seguida digite:
s/mo/MO/g
Como resultado você terá todas as palavras da linha alteradas:
MOnitor, MOuse, MOntanha, MOinho, MOsca
Tecle "u" para desfazer:
monitor, mouse, montanha, moinho, mosca
Tecle "v" e selecione novamente as palavras "monitor" e "mouse". Em seguida digite:
s/\%Vmo/MO/g
Como resultado teremos:
MOnitor, MOuse, montanha, moinho, mosca
A "mágica" da coisa está em informar ao Vim que você quer processar a substituição somente na área selecionada: \%V
Até a próxima!
Muito bom. Pode ser útil.
___________________________________
Conhecimento não se Leva para o Túmulo.