Vimdiff:Como colocar todas as alterações dentro de uma função específica de um arquivo para outro?

StackOverflow https://stackoverflow.com/questions/6093746

  •  09-09-2020
  •  | 
  •  

Pergunta

Em Vimdiff, eu sei que eu posso usar o "fazer" ou "dp" para mover alterações a partir de um arquivo para o outro...mas estes são para mudanças individuais.Se eu tiver que desfazer todas as alterações dentro de um escopo específico/seleção (diga-se de desfazer todas as alterações para uma determinada função, mas deixe o resto intocado), há uma maneira de fazê-lo em uma viagem ?

Foi útil?

Solução

Você pode usar um visual a seleção e o ex-comando :diffget/:diffput

Assim, por exemplo, para obter as mudanças para a atual interior de um bloco de código ( { ...} )

Vi}:diffget<Enter>

Para coloque as alterações para os dois colocando os níveis, incluindo as linhas com os parênteses:

V2a}:diffput<Enter>

Note que uma vez que estes são comandos ex os movimentos são linewise.Claro, você pode usar qualquer intervalo, então você pode repetir o alcance visual, ou uso de marcadores

:'a,'bdiffput

etc.Use a sua imaginação, este é o vim :)

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