vim

Die einen lieben es, die anderen haben nur Unverständnis für den Editor übrig. Ich gehöre zu den einen und das aus gutem Grund und der ist nicht nur die Gewöhnung, sondern vor allem die Mächtigkeit. Ich zeige hier ein paar ganz einfache, aber sehr nützliche Möglichkeiten auf. Von Dingen wie Speichern und Beenden von Vim nehme ich Abstand. Das sollte nun hinreichend bekannt sein.

 

Splitscreen

Man hat ein Textdokument offen und möchte in einer Konfigurationsdatei ein paar Parameter ändern. Es ist hilfreich das Textdokument Zwecks abschreiben dabei geöffnet zu haben. Wie das geht?

Von Bash aus

vim -O datei1 datei2     <- vertikal
vim -o datei1 datei 2    <- horizontal

Bereits in vim

  1. vim [Textdokument]
  2. Im vim dann ein :vsplit eingeben. Mit STRG+w und den Pfeiltasten lässt sich dann zwischen den Fenstern wechseln. Man wechselt in das andere Fenster ...
  3. Mit :e [Konfigurationsdatei] die Config öffnen.
  4. Bei Bedarf kann man ein :set scrollbind verwenden bzw. mit :set noscrollbind aufheben.

Ausgabe eines externen Kommandos in Vim reinholen

Man befindet sich in Vim und bearbeitet eine Datei. Nun kann man sich einiges an Schreiben sparen, wenn man bspw. den Output von "ip a" direkt in Vim rein holt statt alles händisch zu schreiben oder per Copy/paste zu arbeiten.

Das geht im Kommandomodus mit :read !ip a

Farbschema wechseln

Nicht immer ist das Default-Farbschema brauchbar. Siehe Debian, wenn man an die Kommentarzeilen denkt, die in dunklem Blau dargestellt werden. Lesbar ist das nicht unbedingt. Man kann aber mit einem :color desert das Farbschema innerhalb von vim ändern. Welche Farbschemata es gibt kann man sehen, wenn man in /usr/share/vim/vim80/colors schaut.

Wort(e) löschen

An den Anfang des Wortes mit dem Cursor und dann "dw" drücken. Möchte man mehrere Worte löschen, so fügt man eine Zahl hinzu. Beispiel: d4w <- löscht 4 Worte ab dem Cursor.

Zeile(n) löschen

Möchte man nur eine einzige Zeile löschen, so begibt man sich mit dem Cursor in diese Zeile und drückt "dd" (2 x d). Die Zeile verschwindet.

Möchte man mehrere Zeilen auf einen Schlag löschen, so geht man in die erste zu löschende Zeile, drückt "d" und dann die Zahl der zu löschenden Zeilen. Beispiel: d3 für 3 Zeilen löschen.

Zeile(n) kopieren

Möchte man nur eine Zeile kopieren so begibt man sich mit dem Cursor in diese Zeile und drückt "yy" (2 x y). Dann bewegt man sich mit dem Cursor zum Zielort und drückt dann "p"

Möchte man mehrere Zeilen kopieren, so begibt man sich mit dem Cursor in erste Zeile und drückt "y" (1 x y) und dann die Zahl der Zeilen, die man kopieren möchte. Beispiel: y7 für 7 Zeilen.
Danach bewegt man sich mit dem Cursor zum Zielort und drückt dann "p".

String finden

Für den Fall, dass man in einer unübersichtlichen Datei nach einem String suchen muss, so drückt man einfach / gefolgt vom Suchstring und dann Enter. Beispiel: /Muttis Kuchen

Weitere Suchergebnisse kann man sich dann mit drücken von "n" (wie next) anzeigen lassen. "p" verhilft zur Rückwärtssuche.

Falls CaseSensitive eher hinderlich ist, so lässt es sich mit einem :set ignorecase abschalten.

Undo

Ein Undo erreicht man, wenn man den Editmode verlässt (Esc) und ein oder mehrmals "u" drückt.

Wortekomplettierung

Mit STRG+n bzw STRG+p lässt sich im Insertmode die Wortliste anzeigen woraus sich das gewünschte Wort auswählen lässt.

Zeilennummern anzeigen

Ein einfaches :set number im Kommandomodus verhilft zu den Zeilennummern.

Dateien und Verzeichnisse anzeigen lassen

Möglichkeit 1 ist, sich mit :e [Pfad] das gewünschte Verzeichnis samt Dateien anzeigen zu lassen. Möglichkeit 2 ist im Kommandomodus ein :!ls

 

vimtutor

Das ist ein Tutorial, um mit vim die wichtigsten und nützlichsten Befehle hinzubekommen. Es ist nicht falsch sich damit ein bisschen zu beschäftigen. Die deutsche Übersetzung ist "vimtutor de".