Im vorherigen Artikel dieser Serie haben wir 7 Tipps und Tricks überprüft, die Sie Ihrem vi/m-Fähigkeiten-Set hinzufügen können, neben den zuvor genannten Gründen ist das Erlernen, wie man effektiv einen Texteditor in Linux verwendet, eine wesentliche Fähigkeit für einen Systemadministrator oder -ingenieur und ist eine erforderliche Kompetenz, um jedes wichtige Linux-Zertifizierungsprogramm zu bestehen (wie LFCS, LFCE, RHCSA und RHCE).
Davon abgesehen, lassen Sie uns beginnen.
8. Horizontale oder vertikale Vim-Fenster erstellen
Dieser Tipp wurde von Yoander, einem unserer Leser, in Teil 1 geteilt. Sie können vi/m mit mehreren horizontalen oder vertikalen Aufteilungen starten, um separate Dateien im selben Hauptfenster zu bearbeiten:
Starte vi/m mit zwei horizontalen Fenstern, mit test1 oben und test2 unten
vim -o test1 test2

Starte vi/m mit zwei vertikalen Fenstern, mit test3 links und test4 rechts:
vim -O test3 test4

Du kannst den Cursor von einem Fenster zum anderen mit der üblichen vi/m-Bewegungsroutine wechseln (h:
rechts, l:
links, j:
unten, k:
oben):
- Strg+w k – oben
- Strg+w j – unten
- Strg+w l – links
- Strg+w h – rechts
9. Groß- oder Kleinschreibung in Vim ändern
Bitte beachten Sie, dass dieser Tipp nur in vim funktioniert. In den folgenden Beispielen ist X eine ganze Zahl.
- Um eine Reihe von Buchstaben in Großbuchstaben zu ändern, positionieren Sie den Cursor auf dem ersten Buchstaben, geben Sie dann gUX im ex-Modus ein und drücken Sie schließlich die rechte Pfeiltaste auf der Tastatur.
- Um X Anzahl von Wörtern zu ändern, positionieren Sie den Cursor am Anfang des Wortes und geben Sie gUXw im ex-Modus ein.
- Um eine ganze Zeile in Großbuchstaben zu ändern, positionieren Sie den Cursor an einer beliebigen Stelle auf der Zeile und geben Sie gUU im ex-Modus ein.
Zum Beispiel, um eine ganze kleingeschriebene Zeile in GROSSBUCHSTABEN umzuwandeln, sollten Sie den Cursor an einer beliebigen Stelle auf der Zeile positionieren und gUU eingeben:

Zum Beispiel, um 2 großgeschriebene Wörter in Kleinbuchstaben umzuwandeln, sollten Sie den Cursor am Anfang des ersten Wortes platzieren und gu2w:

10. Text löschen in Vim Insert-Modus
Sie können in ex-Modus (d. h. dw zum Löschen eines Wortes) auch in Insert-Modus wie folgt löschen:
- Strg + h: löschen Sie den vorherigen Buchstaben an der Stelle, an der der Cursor sich derzeit befindet.
- Strg + w: löschen Sie das vorherige Wort an der Stelle, an der der Cursor sich derzeit befindet. Damit dies korrekt funktioniert, muss der Cursor in einem leeren Raum hinter dem zu löschenden Wort platziert werden.
- Strg + u: löschen Sie die aktuelle Zeile ab dem Zeichen unmittelbar links vom aktuellen Cursor-Standort.
11. Verschieben oder Kopieren vorhandener Zeilen innerhalb von Vim
Obwohl es zutrifft, dass man die bekannten dd
, yy
und p
-Befehle im ex-Modus zum Löschen, Kopieren (yanken) und Einfügen von Zeilen verwenden kann, funktioniert dies nur, wenn der Cursor an der gewünschten Stelle platziert ist.
Die gute Nachricht ist, dass man mit den kopieren und bewegen-Befehlen dasselbe tun kann, unabhängig davon, wo sich der Cursor derzeit befindet.
Für das nächste Beispiel verwenden wir ein kurzes Gedicht mit dem Titel „Forever“ von Terri Nicole Tharrington. Zunächst zeigen wir die Zeilennummern an (:set nu im Kommandomodus – nehmen Sie dies als zusätzlichen Tipp). Wir verwenden :3copy5 (auch im Kommandomodus) um Zeile 3 unter Zeile 5 zu kopieren:

Jetzt machen wir die letzte Änderung rückgängig (Esc + u – ein weiterer Bonus-Tipp!) und tippen :1move7 um Zeile 7 durch Zeile 1 zu ersetzen. Beachten Sie, wie die Zeilen 2 bis 7 nach oben verschoben werden und die ehemalige Zeile 1 nun Zeile 7 einnimmt:

12. Navigieren und Zählen von Mustermatches in Vim
Dieser Tipp basiert auf dem Ersetzungsbefehl (Tipp #7 in Teil 1 dieser Serie), mit dem Unterschied, dass nichts entfernt wird, da das Ersetzungsverhalten durch die n Option überschrieben wird, was zu einer Zählung der Vorkommen des angegebenen Musters führt:
Achten Sie darauf, keine der Schrägstriche zu vergessen!
:%s/pattern//gn
Zum Beispiel,
:%s/libero//gn

Um vom aktuellen Vorkommen des Musters zum nächsten im ex Modus zu wechseln, drücken Sie n (kleines N). Um zum vorherigen Vorkommen zu gelangen, drücken Sie N.
13. Datei in Vim mit einer angegebenen Zeile öffnen
Standardmäßig wird beim Starten von vi/m der Cursor auf der zuletzt bearbeiteten Zeile platziert. Wenn Sie das Programm starten und den Cursor direkt auf einer angegebenen Zeile platzieren möchten, können Sie folgenden Trick verwenden:
# vim filename +line_number
Zum Beispiel öffnen Sie forever.txt und platzieren den Cursor in Zeile 6:
# vim forever.txt +6
Lassen Sie uns dieses Beispiel ein wenig verändern. Angenommen, wir möchten die Datei an der Stelle öffnen, an der das 3. Auftreten des Musters auftritt:
# vim filename +$(grep -in pattern filename | sed -n 3p | cut -d: -f1)
Schauen wir uns genauer an, was der obige Befehl tut:
- grep -in Muster Dateiname – zeigt alle Zeilen aus dem Dateinamen an, in denen das Muster auftritt, mit der Zeilennummer am Anfang jeder Ausgabezeile.
- sed -n 3p – zeigt die 3. Zeile aus dem vorherigen Pipeline-Ausgang an.
Schließlich
- cut -d: -f1 gibt das erste Feld des vorherigen Pipelines mit dem Doppelpunkt
(:)
als Feldseparator zurück.
grep -in forever forever.txt grep -in forever forever.txt | sed -n 3p grep -in forever forever.txt | sed -n 3p | cut -d: -f1

Das Ergebnis des vorherigen Befehls wird dann an vi/m übergeben, um das Programm an der angegebenen Zeile zu öffnen.
14. Anpassen der Vim-Umgebung
Wenn Sie vi/m verwenden, um Konfigurationsdateien zu bearbeiten oder Code zu schreiben, möchten Sie möglicherweise, dass die Zeile
- Vim für Linux-Administratoren: 8 leistungsstarke Tipps und Tricks (Teil 2)
Zahlen, wenn Sie das Programm zum ersten Mal öffnen, und um automatische Einrückung festzulegen, so dass, wenn Sie die Eingabetaste drücken, der Cursor automatisch an der richtigen Position platziert wird. Darüber hinaus möchten Sie möglicherweise die Anzahl der Leerzeichen festlegen, die ein Tabulator einnimmt.
Während Sie das jedes Mal tun können, wenn Sie vi/m starten, ist es einfacher, diese Optionen in ~/.vimrc
festzulegen, damit sie automatisch angewendet werden:
set number set autoindent set shiftwidth=4 set softtabstop=4 set expandtab
Für weitere Optionen zur Anpassung Ihrer vi/m-Umgebung können Sie sich an die Online-Vim-Dokumentation wenden.
15. Allgemeine Vim-Hilfe erhalten/mit Vimtutor
Wenn Sie jederzeit Ihre allgemeinen vi/m-Fähigkeiten auffrischen müssen, können Sie vimtutor über die Kommandozeile starten, die eine vollständige vi/m-Hilfe anzeigt, die Sie so oft wie gewünscht zu Rate ziehen können, ohne einen Webbrowser zu starten, um herauszufinden, wie man eine bestimmte Aufgabe in vi/m erledigt.
vimtutor

Beachten Sie, dass Sie den Inhalt von Vimtutor navigieren oder durchsuchen können, als ob Sie eine reguläre Datei in vi/m navigieren würden.
Zusammenfassung
In dieser 2-Artikel-Reihe habe ich Ihnen verschiedene vi/m-Tipps und -Tricks mitgeteilt, die Ihnen dabei helfen sollten, effektiver zu sein, wenn es darum geht, Text mit Kommandozeilen-Tools zu bearbeiten.
I’m sure you must have other ones – so feel free to share them with the rest of the community in the comment form below. As always, questions and comments are also welcome.
Source:
https://www.tecmint.com/how-to-use-vi-and-vim-editor-in-linux/