Vim - Diff
Ähnlich wie beim UNIX-Befehl diff können wir Vim verwenden, um diff viel besser anzuzeigen. Es wird diff auf farbenfrohe Weise zeigen. In diesem Kapitel werden wir folgende Punkte diskutieren:
- Unterschiede zwischen Dateien anzeigen
- Aktivieren und deaktivieren Sie den Diff-Modus
- Navigation im Diff-Modus
- Anwenden von Änderungen aus dem Diff-Fenster
Unterschied zeigen
Um Unterschiede zwischen Dateien anzuzeigen, führen Sie den folgenden Befehl aus:
$ vimdiff <file> <file>
OR
$ vim –d <file> <file>
Zum Beispiel zeigt der folgende Befehl Unterschiede -
Im obigen Bild ist häufig in Magenta hervorgehobener Text üblich. Der verbleibende Text wird rot hervorgehoben, was darauf hinweist, dass es nach dem allgemeinen Text einige Unterschiede gibt.
Aktivieren und deaktivieren Sie den Diff-Modus
Wenn Sie sich bereits in vim befinden und eine diff-Aktion ausführen möchten, verwenden Sie einen der folgenden Befehle:
diffsplit
Verwenden Sie den folgenden Befehl, um eine horizontale Aufteilung durchzuführen -
:diffsplit filename
Die obigen Bilder zeigen, dass wir zwei Dateien vergleichen, nämlich message-1.txt und message-2.txt.
Vertikales Diffsplit
Verwenden Sie den folgenden Befehl, um eine vertikale Aufteilung durchzuführen:
:vert diffsplit <filename>
Es öffnet sich folgendes Fenster -
Die obigen Bilder zeigen, dass wir zwei Dateien vergleichen, nämlich message-1.txt und message-2.txt.
Navigation im Diff-Modus
Die Navigation im Diff-Modus ist etwas anders. Wenn Sie beispielsweise Text aus einem Fenster scrollen, wird auch Text aus dem angrenzenden Fenster gescrollt. Dies nennt man Scrollbind. Um diese Verwendung zu aktivieren -
:set scrollbind
Um diese Verwendung zu deaktivieren -
:set noscrollbind
Wenn Sie die Datei in diesem Modus bearbeiten, verwenden Sie den folgenden Befehl, um diff - zu aktualisieren.
:diffupdate
Zwischen Diff-Fenster wechseln
Um zwischen verschiedenen Fenstern zu wechseln, führen Sie den folgenden Befehl aus:
Ctrl + w Ctrl + w
Bitte beachten Sie, dass wir zweimal Strg + W drücken müssen.
Zur vorherigen Änderung springen
Führen Sie im Diff-Fenster den folgenden Befehl aus, um zur vorherigen Änderung zu springen:
[c
Zur nächsten Änderung springen
Führen Sie im Diff-Fenster den folgenden Befehl aus, um zur nächsten Änderung zu springen -
]c
Übernehmen Sie die Änderungen aus dem Diff-Fenster
Anwenden von Änderungen in aktuellen Diff-Fenstern
Um die Änderung vom benachbarten Diff-Fenster auf das aktuelle Diff-Fenster anzuwenden, führen Sie Folgendes aus:
:diffget
Wenn Sie sich beispielsweise im linken Fenster befinden und vom rechten zum aktuellen Fenster wechseln möchten, führen Sie den obigen Befehl aus.
Übernehmen Sie die Änderung vom aktuellen Bereich in einen anderen
Um die Änderung vom aktuellen Diff-Fenster auf das benachbarte Diff-Fenster anzuwenden, führen Sie Folgendes aus:
:diffput
Wenn Sie sich beispielsweise im linken Fenster befinden und Änderungen vom aktuellen zum rechten Fenster vornehmen möchten, führen Sie den obigen Befehl aus.