Metainformationen zur Seite
Vim-Spickzettel
- Fast alle Kommandos können mehrfach angewandt werden, indem du vorher oder zwischendrin eine Zahl eintippst.
- In
~/.vimrcstehen die Starteinstellungen (irgendwo gibt es auch eine vimrc_example). - Nei der Auswahl von Kommandos und Dateinamen funktioniert auch die glorreiche bash-Tab-Vervollständigung.
- Eine gute Art Vim zu lernen ist ein VimVenture.
Umgang mit Dateien
| Eingabe | Bedeutung |
|---|---|
| w | speichern |
| w HALLO | einmalig in Datei HALLO speichern |
| saveas HALLO | ab jetzt immer in HALLO |
| X,Y w [HALLO] | alles zwischen Zeile X und Y speichern |
| wq | speichern und beenden |
| x | speichern und beenden |
| r HALLO | fuege den Inhalt der Datei HALLO vor dem Cursor ein |
Ein angehaengtes ! umgeht eventuelle Bestätigungsfragen.
In den Editier-Modus wechseln
| Eingabe | Bedeutung |
|---|---|
| i | vor dem Cursor einfügen |
| I | am Zeilenbeginn einfügen |
| a | nach dem Cursor einfügen |
| A | nach dem Zeilenende einfügen |
| o | eine neue Zeile vor der aktuellen einfügen |
| O | eine neue Zeile nach der aktuellen einfügen |
| R | ab dem Cursor ersetzen (also Überschreib-Modus) |
| ESC | zurück in den Kommando-Modus |
Bewegung
| Eigabe | Bedeutung |
|---|---|
| h/j/k/l | links/unten/oben/rechts (effizienter als Cursor) |
| w/e | an Anfang/Ende des naechsten Wortes springen |
^/$ | Anfang/Ende der Zeile (wie bei regulären Ausdrücken!) |
| XX Shift-G | zur gewünschten Zeilennummer XX gehen (nix → letzte Zeile) |
| STRG-G | aktuelle Position in der Datei anzeigen |
| XX% | springt zur prozentualen Position |
| XX: | springt zur Zeile XX |
| ma | setzt eine Marke namens „a“ |
| 'a | springt zur Marke „a“ |
| marks | zeigt alle Marken an |
| marks X | zeigt Informationen zur Marke X an |
| STRG-O | springt zu einer „älteren“ (?) Postion |
| STRG-I | springt zu einer „neueren“ (?) Position |
Marken mit Grossbuchstaben funktionieren auch über mehrere offene Dateien hinweg.
Suchen
| Eingabe | Bedeutung |
|---|---|
| / | dann Suchtext eingeben (auch reguläre Ausdrücke) |
| ? | dasselbe, nur rückwaerts |
| n | nächstes Auftreten suchen |
| N | vorheriges Auftreten suchen |
| % | zugehoerige Klammer, also „([{“), suchen (gut für Verschachtelungen beim Programmieren) |
Folgende Optionen sind möglich:
| Eingabe | Bedeutung |
|---|---|
| set ic | ignore case |
| set is | inkrementelle Suche |
| set hls | highlight search |
Loeschen
M d? - das Fragezeichen kann dabei Folgendes sein:
| Eingabe | Bedeutung |
|---|---|
| w | Wort bis zum nächsten Wortanfang (mit Leerzeichen) |
| e | Wort bis zum Wortende (also ohne Leerzeichen) |
^/$ | bis zum Zeilenanfang/-ende |
Ersetzungen
| Eingabe | Bedeutung |
|---|---|
| rX | ersetzt das Zeichen unter dem Cursor durch „X“ |
| cw | löscht das Wort unter dem Cursor und wechselt in Einfügemodus |
| c$ | löscht das Ende der Zeile und wechselt in Einfügemodus |
c^ | löscht den Anfang der Zeile und wechselt in den Einfügemodus |
| s/A/B | ersetzt ein A durch ein B in der aktuellen Zeile (sed-Syntax) |
| s/A/B/g | dito, alle Vorkommen in der aktuellen Zeile |
| X,Ys/A/B | von Zeile X bis Y jeweils ein A durch ein B ersetzen |
| %s/A/B | in allen Zeilen ein A durch ein B ersetzen |
Bemerkungen:
$steht fuer die letzte Zeile- das angehängte
/gkann immer verwendet werden - ein angehängtes
cbzw./cfragt jedesmal nach - ein
/im Text muss durch\/geschützt werden - reguläre Ausdrücke sind erlaubt
Rückgängig machen
| Eingabe | Bedeutung |
|---|---|
| u | letzte Aktion |
| U | letzte Zeile wiederherstellen |
| STRG-R | rückgängig Gemachtes wiederherstellen |
Kopieren und Einfügen
| Eingabe | Bedeutung |
|---|---|
| p | fügt das zuletzt gelöschte/kopierte Objekt nach dem Cursor ein |
| P | dito, vor dem Cursor |
| y | eine Zeile in Zwischenspeicher kopieren |
meherere Dateien
| Eingabe | Bedeutung |
|---|---|
| e DATEI | öffnet eine Datei und schiebt die aktuelle in den Hintergrund |
| e #X | die Xste Datei wieder hervorholen |
| files | alle geöffneten Dateien auflisten |
| hide DATEI | schiebt die aktuelle Datei - ohne zu speichern - in den Hintergrund und öffnet DATEI |
| n | wechselt zur nächsten, die Aktuelle wird geschlossen |
| wn | speichert vorher die Aktuelle |
| prev | zur Vorherigen |
| args: | zeigt welche Datei gerade aktuell ist |
| first | wechselt zur Ersten |
| last | zur Letzen |
Bemerkungen:
| Eingabe | Bedeutung |
|---|---|
| set autowrite | speichert die Aktuelle ohne nachzufragen |
| 2n oder 4prev | springt über Dateien hinweg |
STRG-^ | springt zur vorher editierten Datei |
Split-Screen
| Eingabe | Bedeutung |
|---|---|
| split | teilt den Bildschirm |
| STRG-w STRG-w | springt zum nächsten Fenster |
| close | schliesst das aktuelle Fenster |
| only | schliesst alle ausser dem Aktuellen |
| new | öffnet ein neues Fenster leer |
| split HALLO | öffnet HALLO in neuem Fenster |
| STRG-w +/- | vergrössert/verkleinert das aktuelle Fenster |
| vsplit | vertikales Splitting |
| wall/qall | speichert/schliesst alle |
Beim Aufruf von vim öffnet der Parameter -o alle Dateien in Fenstern.
Sonstiges
| Eingabe | Bedeutung |
|---|---|
| »/« | Ein-/Ausrücken (?), (mit Zahl: mehrere Zeilen) |
| !KOMMANDO | führt das externe Kommando aus |
| r !KOMMANDO | dito & schreibt den Output an die aktuelle Position |
| set XXX | setzt die jeweilige Option |
| set noXXX | Option ausschalten |
| set all | setzt alle Optionen auf default |
Hilfe
| Eingabe | Bedeutung |
|---|---|
| help | Meta-Hilfe (hilfreich, um die Hilfe nutzen zu können) |
| help THEMA | die Hilfe - mit :q verlassen |
| help user-manual | hier steht wirklich alles |
| help EXX | die Hilfe für Fehlernummer XX |
Bewegungen
| Eingabe | Bedeutung |
|---|---|
| STRG-] | folgt einem Verweis |
| STRG-T/O | zurück springen |