Wir alle machen Fehler. Fehler machen ist menschlich. Es ist auch wichtig, es zu verbessern.
Wenn Sie in Vim einen Fehler machen, können Sie ein Wort mit dw
löschen im Normalmodus. Sie geben dd
ein und es löscht die aktuelle Zeile.
Wenn Sie mehrere Zeilen in Vim löschen möchten, können Sie denselben dd Vim-Befehl verwenden, indem Sie ihm die Anzahl der Zeilen hinzufügen.
Also 10dd
löscht 10 Zeilen unterhalb des Cursors (einschließlich der Zeile, in der sich der Cursor befindet).
Schauen wir uns genauer an, wie Sie in einem für seine Effizienz bekannten Editor eine oder mehrere Zeilen löschen können.
Einzelne Zeile löschen
Unten sind die Schritte zum Löschen einer einzelnen Textzeile in Vim:
- Rufen Sie den Normalmodus auf, indem Sie die Escape-Taste (Esc) drücken
- Stellen Sie sicher, dass sich Ihr Cursor auf der Zeile befindet, die Sie löschen möchten.
- Drücken Sie schnell
dd
Dadurch wird die gesamte Zeile gelöscht, auf der sich Ihr Cursor befindet.

Wie Sie im GIF sehen können, bin ich in der ersten Zeile und führe den dd
aus Befehl löschte nur die erste Zeile.
Anzahl der zu löschenden Zeilen angeben
Bevor Sie den dd
verwenden Um eine Zeile zu löschen, können Sie eine Zahl davor angeben, um mehrere Zeilen auf einmal in Vim zu löschen.
Unten ist die Syntax:
:[num]dd
Wenn Sie Zahl anstelle von num
angeben , Vim beginnt mit dem Löschen von Zeilen. Sie können sich das so vorstellen, als ob Vim den dd
ausführt Befehl für num
Mal.

Wie aus dem GIF hervorgeht, habe ich den Befehl 12dd
ausgeführt (erscheint in der unteren rechten Ecke) und hat den Block von 12 Zeilen gelöscht.
Geben Sie einen Bereich von zu löschenden Zeilen an
Anstatt anzugeben, wie viele Zeilen von der aktuellen Zeile bis zum Ende gelöscht werden sollen, können Sie Vim einfach mitteilen, ab welcher Zeile er mit dem Löschen beginnen soll und bis zu welcher Zeile.
Unten ist die Syntax, um eine Reihe von Zeilen zu löschen:
:[begin],[end]d
Lassen Sie uns diese Syntax aufschlüsseln...
:
(Doppelpunkt) gibt an, dass es sich um einen Vim-Befehl handelt.begin
teilt Vim mit, ab welcher Zeile er beginnen sollend
sagt Vim, was die letzte zu löschende Zeile istd
der Löschbefehl in Vim
Darüber hinaus sind unten die Zeichen aufgeführt, die verwendet werden, um den Bereich anzugeben (verwendet für „Beginn“ und „Ende“):
.
(aktuelle Zeile)$
(letzte Zeile in der Datei)%
(alle Zeilen)
Um von einigen Beispielen zu lernen, werfen wir einen Blick darauf.
:10,45d
- Von Zeile 10 bis Zeile 45 löschen:.,$d
- Von der aktuellen Zeile bis zur letzten Zeile löschen:.,1d
- Von der aktuellen Zeile bis zum Anfang der Datei löschen:dgg
- Von der aktuellen Zeile bis zum Anfang der Datei löschen

Wie Sie in diesem GIF sehen können, bin ich zwar in Zeile 31 und habe :10,29d
eingegeben und es löschte Zeilen von 10 bis 29.
Alle Zeilen löschen
Wie bereits erwähnt, ist der %
Das Symbol wird verwendet, um den Bereich vom Anfang bis zum Ende der Datei anzugeben, im Wesentlichen alle Zeilen.
Das heißt, um alle Zeilen einer Datei in Vim zu löschen, müssen Sie :%d
verwenden Befehl.

Löschen Sie Zeilen, die einem bestimmten Muster entsprechen
Abgesehen von all diesen Vim-Zaubereien, wussten Sie, dass Sie Zeilen löschen können, die einem bestimmten Muster entsprechen?
Nun, Sie können, und hier ist die Syntax.
:g/PATTERN/d
Um das Gegenteil davon zu tun, indem Sie die Zeilen löschen, die nicht dem angegebenen Muster entsprechen, können Sie die unten angegebene Syntax verwenden.
:g!/PATTERN/d
Wenn wir dies aufschlüsseln, erhalten wir die folgenden Elemente:
g
- global suchen (d. h. die gesamte Datei)!
- Reverse-MatchPATTERN
- das passende Musterd
- Löschbefehl
Wenn Sie den folgenden Befehl in Vim ausführen, werden alle Zeilen entfernt, die das Muster "extern Crate" in der Zeile haben.
:g/extern\ crate/d

Alle leeren Zeilen löschen
Um leere Zeilen zu löschen, ist es notwendig, Regex für den Musterabgleich zu verwenden. Unten ist der Befehl zum Löschen von Leerzeilen:
:g/^$/d
In Regex der ^$
Muster bedeutet jede Zeile, die mit einem Zeilenumbruch beginnt, im Wesentlichen eine leere Zeile.

Schlussfolgerung
Dieser Artikel geht ausführlich darauf ein, wie Sie Zeilen in Vim löschen können. Hier ist eine kurze Zusammenfassung dessen, was Sie in diesem Artikel gelernt haben. Fühlen Sie sich frei, es zu speichern und auf Social Media zu teilen:

Wenn Sie daran interessiert sind, mehr als nur die Vim-Grundlagen zu lernen, empfehle ich dringend, dieses Programm von Jovica Ilic zu verwenden.