Vimdiff: Wie werden alle Änderungen innerhalb einer bestimmten Funktion von einer Datei in eine andere übertragen?

8

In Vimdiff weiß ich, dass ich "do" oder "dp" verwenden kann, um Änderungen von einer Datei in die andere zu verschieben ... aber dies sind individuelle Änderungen. Wenn ich alle Änderungen innerhalb eines bestimmten Bereichs / Auswahl rückgängig machen muss (alle Änderungen an einer bestimmten Funktion rückgängig machen, aber den Rest unberührt lassen), gibt es eine Möglichkeit, dies in einem Schritt zu tun?

    
TCSGrad 23.05.2011, 06:46
quelle

1 Antwort

14

Sie können eine visuelle Auswahl und den ex-Befehl :diffget / :diffput

verwenden

So zum Beispiel, um die Änderungen nur für die aktuellen Innenseiten eines Codeblocks ({...})

zu erhalten %Vor%

Um put die Änderungen für die zwei einschließenden Ebenen einschließlich der Zeilen mit den Klammern:

%Vor%

Beachten Sie, dass die Bewegungen zeilenweise sind, da es sich um ex-Befehle handelt. Natürlich können Sie jeden Bereich verwenden, damit Sie den sichtbaren Bereich wiederholen können, oder verwenden Sie Markierungen

%Vor%

usw. Verwenden Sie Ihre Phantasie, das ist vim:)

    
sehe 23.05.2011, 06:58
quelle

Tags und Links