[~] BACK



~~ VIM (III) ~~

** MODES **

[VIM] | [20211209] | [0] | [0x17]




Im ersten Teil meiner kleinen Reihe "Ich lerne Vim neu und ausführlicher" hatte ich die Grundzüge von Vim erklärt und die einfache Art text einzugeben und zu bearbeiten. Das reicht prinzipiell für die ersten Schritte in Vim vollkommen aus.
Soll nun aber die Bearbeitung von Text etwas größer ausfallen und sich nicht auf das einzelne Löschen von Zeichen beschränken, kommt der VISUAL Mode ins Spiel.
Der VISUAL Mode dient also rein der Modifikation von Text. Ausgehend vom NORMAL Mode (in den wir immer per "ESC" kommen), gibt es drei Möglichkeiten in den VISUAL Mode zu wechseln:

v - startet VISUAL im Character-Mode
V - startet VISUAL im Line-Mode
CTRL + V - startet VISUAL im Block-Mode


VISUAL CHARACTER MODE (VCM)

Der VCM kann entweder einen Satz in einem Absatz oder eine Phrase in einem Satz hervorheben. Der gehighlightete Text kann danach mit jedem Vim Bearbeitungsbefehl entweder gelöscht, kopiert, geändert oder andersweitig modifiziert werden.

Text markieren und bearbeiten

In manchen Fällen (z.B.: beim Artikel schreiben für die Nerdbude) muss ein ganzer Satz an eine andere Stelle im Dokument.
Dazu wird der Cursor zum ersten Buchstaben im Satz, der verschoben werden soll, navigiert und mit "v" der VISUAL Mode aktiviert.
Danach haben wir folgende Möglichkeiten zur Textmarkierung:

H/L - Text markieren Zeichen für Zeichen
w - markiert bis zum Anfang des nächsten Wortes (word)
$ - markiert bis zum Ende der Zeile

Nachdem der Text, den wir modifizieren wollen, nun markiert ist geht es weiter mit der Modifikation:

d - löschen (delete)
p - fügt Text aus der Zwischenablage ein (paste)
y - kopiert das markierte (yank)
u - macht die letzte Aktion rückgängig (undo)

Phrase ändern

Wenn ihr eine ganze Phrase in einem Text ändern wollt geht das genau so einfach im VISUAL Mode.
Wieder mit dem Cursor an den Anfang der Phrase die geändert werden soll und mit "v" in den VISUAL Mode. Danach wieder wie oben beschrieben die Phrase, die geändert werden soll, markieren und mit folgenden Keys ersetzen:

c - ändern (change)

Danach verschwindet der markierte Text und ihr werdet direkt in den INSERT Mode verfrachtet und könnt den Text ändern.

VISUAL LINE MODE (VLM)

Im VCM lässt ich "zeichengenau" arbeiten. Wenn wir uns also sicher sind, dass die einzelnen Wörter und Zeichen korrekt sind, aber die Zeile falsch ist (passiert gerade beim coden öfters)? Hier greift der VISUAL LINE MODE.
Mit dem VLM lässt sich über mehrer Zeilen markieren und modifizieren und das glücklicherweise mit den gleichen Commands wie im VCM.
Wir navigieren also wieder zum Anfang der Zeilen die markiert werden sollen. Danach wechseln wir in den VLM mit "SHIFT + V".
Danach gibt es die üblichen Commands wie:

  d - löscht die Zeilen (delete)
  p - fügt Text aus der Zwischenablage ein (paste)
  y - kopiert das markierte (yank)
  u - macht die letzte Aktion rückgängig (undo)

Gerade beim Code schreiben, wollen wir natürlich auch eingerückten Text haben. Also wieder zum Anfang des Text navigieren, in den VLM wechseln mit "SHIFT + v" und den Codeblock markieren. Danach kann der ganze Absatz eingerückt werden:

   > - rückt das Markierte nach rechts  
   < - rückt das markierte nach links

VISUAL BLOCK MODE (VBM)

Der VISUAL BLOCK MODE ist etwas anders aufgebaut. Hier wird nicht auf Zeichen- oder Zeilenebene operiert sondern in Spalten. Das kann durchaus hilfreich sein bei CSV Files oder bei YAML files.
So lassen sich Spalten löschen oder einrücken ohne dabei Zeile für Zeile durchgehen zu müssen. Auch das funktioniert nahezu identisch zum VCM oder VLM.
Wir navigieren wieder zum Anfang des Blocks der bearbeitetwerden soll, wechseln zum VISUAL BLOCK MODE mit "CTRL + v" und markieren den Block. Hier wird automatisch nach unten, also spaltenweise, markiert nicht horizontal in der Line.
Die Modifikationen die wir nun vornehmen können sind bekannt:

  d - löscht die Zeilen (delete)
  u - macht die letzte Aktion rückgängig (undo)
   > - rückt das Markierte nach rechts  
   < - rückt das markierte nach links

Tadaa! Der VISUAL MODE. Praktisch und einfacher zu benutzen als man denkt. Die Praxis spar ich mir diesmal, da es einfach das gleiche wäre wie alles was ich hier geschrieben habe ;)
[~] BACK