Inhalt
- Befehle / Kommandos
- Navigieren
- Editieren
- Löschen (Ausschneiden)/ Delete (Cut)
- Rückgängig und Wiederholen/ Undo & Redo
- Kopieren (yank) und Einfügen / Copy & Paste
- Zwischenspeicher / Puffer
- Suchen und Ersetzen / Find & Replace
- Markierungen / Bookmarks
- Text falten (folding)
- Fenster (windows mode)
- Tab / Reiter
- Sonderzeichen
Befehle / Kommandos
- :q - Vim beenden (wenn keine Änderungen vorgenommen wurden)
- :q! - Vim beenden und Änderungen verwerfen
- :wq / ZZ - Vim beenden und speichern
- :w - Datei speichern
- :e! {datei} - Datei zum editieren laden. z.B. :e! .vimrc
- :r {datei} - {datei} ab aktuellem Cursor einfügen
- :r! {command} - Ausgabe des Kommandos einfügen. z.B. :r! ls -a
- :sh - Shell starten
- :!{command} - Das Kommando {command} wird ausgeführt. z.B. :!sort
Navigieren
- hjkl - rechts, runter, hoch, links. Es funktionieren meist aber auch die Pfeiltasten
- w - Ein Wort weiterspringen (nach rechts)
- b - Ein Wort zurückspringen (nach links)
- ( - An den Satzanfang springen (nach links)
- ) - An das Satzende springen (nach rechts)
- zt - Aktuelle Zeile an den Bildschirmanfang (oben) setzen- Top
- zz - Aktuelle Zeile in die Bildmitte setzen- Zentrum
- zb - Aktuelle Zeile an das Bildschirmende (unten) setzen - Bottom
- M - Cursor in Bildmitte setzen
Editieren
- i/I - Insert am aktuellen Zeichen/ Insert am Zeilenanfang
- a/A - Anhängen nach dem aktuellen Zeichen / Am Zeilenende anhängen
- r/R - Überschreiben des aktuellen Zeichens / Überschreiben bis Zeilenende
- cw - Aktuelles Wort löschen und in den Insert Modus schalten
- o/O - Leerzeile unter - / Leerzeile über der aktuellen Zeile einfügen
- C - Ab aktueller Position bis Zeilenende löschen und in den Insert Modus schalten
Löschen (Ausschneiden)/ Delete (Cut)
- x/X - Löscht (Ausschneiden) das Zeichen unter dem Cursor / Vor dem Cursor
- dd/D - Löscht(Ausschneiden) aktuelle Zeile / bis Zeilenende
- d{num}d - Löscht (Ausschneiden) soviele Zeilen, wie in {num} angegeben. z.B. d5d
- dw - Löscht (Ausschneiden) bis Wortende
- d$ - Löscht (Ausschneiden) bis Zeilenende
- J - Zwei Zeilen zusammenfassen
Rückgängig und Wiederholen/ Undo & Redo
- u - Macht Änderungen rückgängig. Die Historie speichert 1000 Vorgänge
- U - Zuletzt geänderte Zeile wieder herstellen
- Strg+r - Letzten rückgängig gemachten Befehl wiederholen
- . - Letzten Befehl wiederholen
Kopieren (yank) und Einfügen / Copy & Paste
- v - Zeichenweise einen Bereich markieren - kopieren mit Eingabe
- V - Zeilenweise einen Bereichmarkieren - kopieren mit Eingabe
- Strg+v - Bereich (horizontal+vertikal) auswählen - kopieren mit Eingabe
- yy - Die aktuelle Zeile kopieren
- yw - Ein einzelnes Wort kopieren
- y( - Von aktuellem Zeichen bis Satzanfang kopieren
- y) - Von aktuellem Zeichen bis Satzende kopieren
- Zum Ausschneiden kann man statt der Eingabetaste d drücken
Zwischenspeicher / Puffer
- Es stehen 36 Puffer zur Verfügung [1..0] und [a..z]
- “{puffer}y - Markierter Text wird in den Puffer {puffer} gespeichert z.B. “fy (Puffer f)
- “{puffer}p/P - Puffer {puffer} wird nach / vor dem aktuellen Zeichen/Zeile eingefügt. z.B. “fp (Puffer f)
Suchen und Ersetzen / Find & Replace
- /{suchbegriff} - Der {suchbegriff} wird gesucht. z.B. /Markierung
- n/b - Vorwärts / Rückwärts suchen
- :%s/{alt}/{neu}/g - Sucht und ersetzt jedes Vorkommen von {alt} mit {neu} in der kompletten Datei
Markierungen / Bookmarks
- m{Key} - Die m Taste plus ein {Key} (Buchstabe) für die Markierung [a..Z]. z.B. ma
- ‘{Key} - Springt in die Zeile der Markierung
- `{Key} - Springt direkt auf das Zeichen, auf dem die Markierung gesetzt wurde
- :marks - Alle Markierungen auflisten
- :jumps - Alle Sprungmarken auflisten
Text falten (folding)
- zfm - Erzeuge Faltung
- zo - Öffne Faltung wieder
- zR - Öffne alle Faltungen
- zc - Schließe Faltung wieder
Fenster (windows mode)
- Strg+ws - Fenster waagrecht teilen (:split)
- Strg+wn - Neues+leeres Fenster erzeugen (:new)
- Strg+wo - Aktuelles Fenster wird einziges Fenster (:on)
- Strg+wj - In das untere Fenster wechseln
- Strg+wk - In das obere Fenster wechseln
- Strg+wv - Fenster senkrecht teilen (:vsplit)
- Strg+wh - In das linke Fenster wechseln
- Strg+wl - In das rechte Fenster wechseln
Tab / Reiter
- vim -p {datei1} {datei2} {datei3} - öffnet die 3 angegebenen Dateien in Tabs
- :tabe {datei} - Neues Tab öffnen und Datei {datei} laden.
- gt - Zum nächsten Tab springen
- gT - Zum vorherigen Tab springen
- :tabr - Zum ersten Tab springen
- :tabl - Zum letzten Tab springen
- :tabm {n} - Verschiebt das aktuelle Tab auf Position {n}
- :tabdo {vi command} - Führt das Kommando in allen geöffneten Tabs aus
Sonderzeichen
- :digraph - Zeigt die komplette Sonderzeichentabelle
- Str+k+{code} - {code} ist der Code aus der Sonderzeichentabelle
Eine noch ausführlichere Übersicht gibt es als PDF Datei zum runterladen hier und hier und hier.