Sie besuchen die Seite über eine ungesicherte Verbindung. Gesicherte Verbindung mit https (empfohlen)
Bei Beschränkungen des Internet-Zugangs (Gäste-WLAN oder ähnliches, ohne https) wechseln Sie bitte nicht

Diverse Anwendungen

... die das Leben erleichtern

Wissen, KnowHow um Anwendungen

Sehr kleine vim v6.0 Referenz

nach oben (Seitenanfang) nach oben (Seitenanfang)
Die verschiedenen Modi von vim
::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell  
Modus Beschreibung  
normal mode
command mode
Befehlsmodus
Im Normalmodus können alle normalen Editor-Befehle eingegeben werden. Sofern beim Aufruf kein Argument zur Umschaltung in den Einfügemodus angegeben wird befindet man sich in diesem Modus.

Erweiterte Varianten:
operator-pending mode, vim wartet auf Spezifizierung des zu bearbeitenden Texts durch den Anwender.
insert normal mode. Die Umschaltung erfolgt durch Eingabe der Kombination [Strg]O im Einfügemodus. Nach Ausführung des erteilten Befehls schaltet vim wieder in den Einfügemodus.
 
visual mode Ähnelt dem Normalmodus, allerdings erweitern Bewegungsbefehle einen unterlegten Bereich. Wird ein Nicht-Bewegungsbefehl eingegeben, dann wirkt er sich auf den unterlegten Bereich aus.

Erweiterte Variante:
insert visual mode. Die Umschaltung erfolgt durch Eingabe der Kombination "[Strg]O" gefolgt von "v" bzw. "V" oder "[Strg]V" im Einfügemodus. Nach Beenden der visuellen Auswahl schaltet vim wieder in den Einfügemodus.
 
select mode Dieser Modus ähnelt dem Auswahlmodus von OS/2 oder Windows. Bei Eingabe eines druckbaren Zeichens wird die Auswahl gelöscht und in den Einfügemodus geschaltet.

Erweiterte Variante:
insert select mode. Die Aktivierung erfolgt, wenn durch [shift][Pfeil rechts] oder durch Ziehen mit der Maus aus dem Einfügemodus in den Auswahlmodus geschaltet wird. Bei Erreichen des Endes des Auswahlbereichs schaltet vim wieder in den Einfügemodus.
 
insert mode
Einfügemodus
In diesem Modus werden eingegebene Zeichen in den Puffer eingefügt.

Erweiterte Variante:
replace mode, vim fügt eingegebene Zeichen nicht zusätzlich ein, sondern überschreibt vorhandene Zeichen an der aktuellen Position.
 
command-line mode
cmdline mode
In diesem Modus kann am unteren Bildschirmrand eine Textzeile eingegeben werden. Diese Zeile dient zur Eingabe von Ex-Befehlen (":"), Suchbefehlen ("?" oder "/") sowie Filterbefehlen ("!").  
  Umschaltung zwischen den verschiedenen Modi

Falls man nicht weiss, in welchem Modus sich der Editor momentan befindet, so erreicht man durch zweimalige Betätigung der [Esc]-Taste den command mode. Die Kombinationen "[Strg]\", "[Strg]N" oder "C\" bzw. "CN" können ebenso benutzt werden, wobei dann keine akkustische Signalisierung erfolgt.

Die folgende Tabelle zeigt, wie man von einem in einen anderen Modus umschalten kann. Mit * gekennzeichnete Einträge werden weiter unten erklärt.

  normal visual select replace select cmd-line Ex
normal   v V ^V *4 *1 R : / ? ! Q
visual *2   ^G c C -- : --
select *5 ^O ^G   *6 -- -- --
insert [Esc] -- --   [Einf] -- --
replace [Esc] -- -- [Einf]   -- --
cmd-line *3 -- -- :start --   --
Ex :vi -- -- -- -- --  
-- nicht möglich

*1 Die Umschaltung vom Normal-Modus zum Insert- (Einfüge-) Modus erfolgt durch Eingabe von "i", "I", "a", "A", "o", "O", "c", "C", "s" oder "S".
*2 Zur Umschaltung vom visual mode zum Normalmodus muss entweder ein Nicht-Bewegungsbefehl erteilt werden oder [Esc], "v", "V bzw. [Strg]V betätigt werden. Die letztgenannten Möglichkeiten verursachen keine Seiteneffekte.
*3 Vom cmd-line mode kann man auf mehrere Arten zum Normalmodus umschalten:
  • Nach Eingabe eines Befehls die [Return]- ([Eingabe]-) Taste betätigen, woraufhin der erteilte Befehl ausgeführt wird.
  • Löschen der kompletten Zeile (beispielsweise durch [Strg]U) und abschliessender Betätigung der Taste backspace.
  • [Strg]C oder [Esc] betätigen, wodurch der Befehls- (cnd-line) Modus ohne Ausführung des eingegebenen Befehls abgebrochen wird.

Im letztgenannten Fall kann [Esc] ein durch die Option "wildcard" definiertes Zeichen sein, wodurch allerdings die automatische Kommandozeilenergänzung gestartet wird. Diese kann durch Betätigung der Taste [Esc] unterbrochen werden (dies entspricht dem normalen Verhalten von vi). Da dieses Verhalten für viele Anwender ungewohnt war, wurde es in vim geändert. Die Kompatibilität zu vi kann man durch ":cmap ^C[Esc] ^V^M" wieder herstellen.
*4 Umschaltung von Normalmodus zu select mode durch
  • Benutzung der Maus zur Auswahl eines Textes, wenn "selectmode" "mouse" beinhaltet.
  • Mit gedrückter [Umschalt]-Taste Eingabe eines nicht druckbaren Befehls zur Cursor-Bewegung, wenn "selectmode" "keys" beinhaltet.
  • Eingabe von "v", "V" oder "[Strg]V", wenn "selectmode" "cmd" beinhaltet.
  • Eingabe von "gh", "gH" oder "g [Strg]H".
*5 Den Normalmodus erreicht man aus dem select mode heraus durch Eingabe eines nicht druckbaren Bewegegungsbefehls, wenn die [Umschalt]-Taste nicht betätigt ist.
*6 Der Wechsel vom select mode zum insert mode erfolgt durch Eingabe eines druckbaren Zeichens. Die vorgenommene Auswahl wird gelöscht und durch das eingegebene Zeichen ersetzt.
 
Startparameter des Editors vim
::: die Modi von vim Modi ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell  
Option Beschreibung  
  Allgemeine Aufrufsyntax

vim [Option | Dateiname]

Optionen und Dateinamen können sowohl gemischt als auch in beliebiger Anzahl angegeben werden. Besonders zu beachten sind Optionen, welche Parameter erfordern.

Das Verhalten von vim kann durch Aufruf mit einem anderen Namen oder entsprechenden Argumenten geändert werden. Unter *x basiierenden Plattformen kann der "neue" Name durch einen Link oder ein alias angegeben werden. Bei Einsatz anderer Plattformen erfolgt dies durch Kopieren des executables.

Die Argumente und ihre Entsprechungen bei Umbenennung lauten wie folgt:
vim -e ex startet den Editor im Ex mode
vim -E exim startet den Editor im erweiterten Ex mode
vim -R view startet den Editor im read-only mode
vim -g gvim startet den Editor im GUI mode
vim -eg gex startet den Editor mit GUI im Ex mode
vim -Rg gview startet den Editor mit GUI im read-only mode
vim -Z rvim wie "vim", aber im restricted mode
vim -RZ rview wie "rview", aber im restricted mode
vim -gZ rgvim wie "gvim", aber im restricted mode
vim -RgZ rgview wie "gview", aber im restricted mode
vim -y evim "easy vim", aktiviert Einfügemodus
vim -yR eview wie "evim", aber im restricted mode
vim -d vimdiff startet den Editor im diff mode
vim -gd gvimdiff startet den Editor mit GUI im diff mode
 
Dateiname(n) Einer oder mehrere Dateinamen. Die zuerst angegebene Datei wird in den Puffer geladen, der Cursor in die erste Zeile positioniert.

Achtung! Sollte ein Dateiname mit dem Zeichen - beginnen, so muss dieses Zeichen zum Ausschluss der Verwechslung mit einer Optionsangabe verdoppelt werden (--).
 
- Bei dieser Argumentenangabe ist zu beachten, ob sich der Editor im Ex-Mode befindet oder nicht.

Für den Start im Normalmodus gibt man vim - oder ex -v - ein.
 
< Editieren in einem neuen Puffer, die Eingabe wird von stdin gelesen. Durch entsprechende Umleitung kann direkt von stderr gelesen werden (Beispiel: find . -name "*.c" -print | vim -). Hierbei wird der Buffer als geändert markiert. Im readonly mode hingegen erfolgt diese Markierung nicht (Beispiel: ls | view -).  
vim -e -
vim -E
ex -
exim -
Startet den Editor im Ex-Mode.  
-r <Datei>
-L <Datei>
recover (wiederherstellen) Datei. Nach Systemabsturz bei aktivem Editor oder nach Beenden des Editors mit kill wird bei Neustart von vim die Bearbeitung automatisch an der Stelle fortgesetzt, an der man sich gerade befand.

Ohne Angabe von Datei wird eine Liste der gefundenen Temporärdateien (swap files) angezeigt.
 
-R Read Only (nur lesen). Die zu öffnende Datei wird im Lesemodus geöffnet. Editieren ist zulässig, es ist jedoch keine Speicherung von Änderungen möglich.

Durch den Ex-Befehl ":w!" kann das Schreiben von Änderungen ebenso wie durch Rücksetzen dieser Option durch ":set noro" in der laufenden Session ermöglicht werden.
 
-m Das Speichern von Änderungen ist nicht erlaubt. Umschaltung siehe -R.  
-M Änderungen der aktuellen Datei sind nicht erlaubt. Umschaltung mit ":set modifiable und wie bei -R.  
-Z Aktiviert den restricted mode. Alle Befehle, welche einen externen Aufruf tätigen, sind deaktiviert (einschließlich [Strg]Z, ":sh", Filterung, system()- und backtick-Funktion oder ähnlichem).  
-b Startet den Editor im Binärmodus. Nur das newline-Zeichen (0x0a) wird als Zeilentrenner erkannt. Die Option "expandtab" wird zurückgesetzt, "textwidth" wird auf 0 gesetzt. Die Umschaltung erfolgt, nachdem ev. vorhandene vimrc-/exrc-Dateien gelesen wurden.  
-l Aktiviert den Lisp-Modus (Optionen "lisp" und "showmatch" werden auf ON gesetzt).  
-F Farsi mode. Setzt die Optionen "fkmap" und "rightleft" auf ON. Um diesen Modus zu ermöglichen muss bei der Compilierung das rightleft-Feature aktiviert werden.  
-H Hebrew mode. Setzt die Optionen "hkmap" und "rightleft" auf ON. Um diesen Modus zu ermöglichen muss das rightleft-Feature bei der Compilierung aktiviert werden.  
-C Kompatibilitätsmodus. Diese Option kann dazu benutzt werden, trotz vorhandenem .vimrc den Editor kompatibel zu vi sein zu lassen.  
-N Nicht-kompatibler Modus. Setzt den Kompatibilitätsmodus zurück.  
-o<n> Öffne <n> Fenster mit horizontaler Teilung des Bildschirms. Wird <n> nicht angegeben, dann werden so viele Fenster geöffnet, wie Dateien angegeben wurden. Es werden nur soviele Fenster geöffnet, wie auf dem Bildschirm untergebracht werden können. Ist <n> grösser als die Anzahl angegebener Dateien, dann werden in den letzten Fenstern leere Dateien zum Editieren bereit gestellt.  
-O<n> Öffne <n> Fenster mit vertikaler Teilung des Bildschirms. Ansonsten verhält sich vim in diesem Modus wie bei Angabe von -o.

Sind sowohl -O als auch -o angegeben, dann wird die zuletzt angegebene Option aktiv.
 
-wn Dieser vi-Befehl hat keine Wirkung, Option in vim nicht implementiert.  
vim +/Muster Datei Die angegebene Datei wird geladen, der Cursor in der ersten Zeile positioniert, welche "Muster" enthät.  
vim +n Datei Die angegebene Datei wird geladen, der Cursor in Zeile n positioniert. Wird "n" nicht angegeben, dann erfolt die Cursorpositionierung in der letzten Zeile der Datei.  
+Befehl
-c Befehl
Die möglichen Befehle stammen aus dem Vorrat des Ex-Editors, sie werden vor dem eigentlichen Editieren abgearbeitet.

Wenn Befehl Leerzeichen enthält, dann muss der Befehl von doppelten Anführungszeichen eingeschlossen sein ("Befehl mit Leerzeichen").

Es können bis zu 10 Befehle angegeben werden, welche in der Reihenfolge ihres Auftretens ausgeführt werden.
 
vim verlassen, mit/ohne speichern, ...
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell  
Option Beschreibung  
  Zur Eingabe eines Kommandos muss der Editor im Befehlsmodus sein oder durch Betätigung der Esc-Taste in diesen geschaltet werden. Da es normalerweise keine Anzeige für den jeweils aktiven Modus gibt, sollte man die Esc-Taste grundsätzlich betätigen. Es schadet auf keinen Fall!

Im Befehlsmodus springt der Cursor nach Eingabe eines Doppelpunktes (:) in die unterste Bildschirmzeile.
 
ZZ Der aktuelle Pufferinhalt wird gespeichert und die Session beendet. Es ist keine Bestätigung mit der [Return]-Taste erforderlich.  
:x eXit (verlassen). Siehe ZZ.  
:wq Write and Quit (schreiben und beenden). Puffer speichern, Editor verlassen.

Achtung!Typischer Fehler von Neueinsteigern: Eingabe von ":qw".
Das funktioniert nicht, da der Editor sich nicht zuerst beenden und dann die Daten speichern kann.
 
:q Quit (beenden). Geht nur, wenn keine Änderungen am ursprünglichen Dateiinhalt vorgenommen wurden.  
:q! Quit! (beenden!). Beenden ohne speichern. Änderungen gehen verloren.  
Speichern
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell  
mit Wirkung  
:w Write (schreiben). Puffer speichern.  
:w! Puffer speichern, read-only Dateien überschreiben.  
:w Datei Pufferinhalt nicht in Originaldatei, sondern in Datei Datei speichern. Es werden keine bestehenden Daten überschrieben, statt dessen erfolgt eine Fehlermeldung.  
:w! Datei Puffer nicht in Originaldatei, sondern in Datei speichern. Falls Datei schon existiert wird sie mit neuem Inhalt überschrieben.  
:n,mw Datei Pufferinhalt von Zeile n bis m in Datei speichern.
Hinweis: Die Anzeige der Zeilennummern kann mit :se nu aktiviert werden.
 
Cursor in vim positionieren
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell  
  Links-Rechts Bewegung  
mit wohin  
Achtung! Mit Ausnahme der Pfeiltasten sowie einiger Tastenkombinationen funktionieren die folgenden Befehle normalerweise nur im Befehlsmodus wie geschildert.  
^ Zum ersten non-blank Zeichen in der aktuellen Zeile  
$ Zum letzten Zeichen in der aktuellen Zeile  
0
Pos1
[Pos1]
Zum ersten Zeichen in der aktuellen Zeile  
ng0 Zum ersten Zeichen in der aktuellen Bildschirmzeile. Der Unterschied zu "0" liegt im Verhalten bei umgebrochenen Zeilen.
Gezielte Ansteuerung einer anderen Position durch Angabe von "n" möglich.
 
ng^ Zum ersten non-blank Zeichen in der aktuellen Bildschirmzeile. Der Unterschied zu "^" liegt im Verhalten bei umgebrochenen Zeilen.
Gezielte Ansteuerung einer anderen Position durch Angabe von "n" möglich.
 
ng$ Zum letzten Zeichen in der aktuellen Bildschirmzeile. Der Unterschied zu "$" liegt im Verhalten bei umgebrochenen Zeilen.
Gezielte Ansteuerung einer anderen Position durch Angabe von "n" möglich.
 
Pfeil links
[Pfeil links]
backspace
[backspace]
[Ctrl]H
h
Um ein Zeichen nach links. Durch Voranstellen einer Ziffer/Zahl kann der Cursor um mehr Zeichen bewegt werden.  
Pfeil rechts
[Pfeil rechts]
Leertaste, Leerzeichen
[Leertaste]
L
l
Um ein Zeichen nach rechts. Durch Voranstellen einer Ziffer/Zahl kann der Cursor um mehr Zeichen bewegt werden.  
grösser, kleiner, Pipe
|
Zu Spalte 1 in aktueller Zeile. Durch Voranstellen einer Ziffer/Zahl kann der Cursor in eine andere Spalte positioniert werden.  
nf<Zeichen Zum n-ten Auftreten von Zeichen nach rechts.  
nF<Zeichen Zum n-ten Auftreten von Zeichen nach links.  
nt<Zeichen Zur Position vor n-ten Auftreten von Zeichen nach rechts.  
nT<Zeichen Zur Position vor n-ten Auftreten von Zeichen nach links.  
n; n-malige Wiederholung der letzten "f", "F", "t" oder "T" Anweisung  
n, n-malige Wiederholung der letzten "f", "F", "t" oder "T" Anweisung in umgekehrter Richtung  
  Aufwärts/Abwärts Bewegung  
[Strg]P
Pfeil hoch
[nach oben]
k
(wenn möglich, in der gleichen Spalte) um eine Zeile nach oben. Durch Voranstellen einer Ziffer/Zahl kann um mehrere Zeilen gescrolled werden.  
[Strg]J
[Strg]N
Return, Enter, Eingabetaste
Pfeil ab
[nach unten]
j
(wenn möglich, in der gleichen Spalte) um eine Zeile nach unten. Durch Voranstellen einer Ziffer/Zahl kann um mehrere Zeilen gescrolled werden.  
<n>- um eine oder n Zeilen nach oben zum ersten non-blank Zeichen der neuen Zeile  
<n>+
[Strg]M
Return, Enter, Eingabetaste
um eine oder n Zeilen nach unten zum ersten non-blank Zeichen der neuen Zeile  
<n>_ um n - 1 Zeilen nach unten zum ersten non-blank Zeichen der neuen Zeile  
nG Zur letzten oder n-ten Zeile und erstem non-blank Zeichen darin in der Datei  
ngg Zur ersten oder n-ten Zeile und erstem non-blank Zeichen darin in der Datei  
n% um n Prozent in der Datei nach unten. n MUSS angegeben werden, da die Eingabe sonst als %-Befehl interpretiert wird.  
ngk Um n Bildschirmzeilen nach oben. Der Unterschied zu "k" liegt im Verhalten bei umgebrochenen Zeilen.  
ngj Um n Bildschirmzeilen nach unten. Der Unterschied zu "j" liegt im Verhalten bei umgebrochenen Zeilen.  
  Textbezogene Bewegung  
<n>w Zum Anfang des <n>-ten Wortes rechts von der aktuellen Cursorposition (ohne Angabe von n: 1 Wort vorwärts)  
<n>W Zum Anfang des <n>-ten durch Leerzeichen abgetrennten Wortes rechts von der aktuellen Cursorposition (ohne Angabe von n: 1 Wort vorwärts)  
<n>e Zum Ende des <n>-ten Wortes rechts von der aktuellen Cursorposition (ohne Angabe von n: 1 Wort vorwärts)  
<n>E Zum Ende des <n>-ten durch Leerzeichen abgetrennten Wortes rechts von der aktuellen Cursorposition (ohne Angabe von n: 1 Wort vorwärts)  
<n>b Zum Anfang des <n>-ten Wortes links von der aktuellen Cursorposition (ohne Angabe von n: 1 Wort zurück)  
<n>B Zum Anfang des <n>-ten durch Leerzeichen abgetrennten Wortes nach links (ohne Angabe von n: 1 Wort zurück)  
<n>ge Zum Ende des <n>-ten Wortes nach links (ohne Angabe von n: 1 Wort zurück)  
<n>gE Zum Anfang des <n>-ten durch Leerzeichen abgetrennten Wortes nach links (ohne Angabe von n: 1 Wort zurück)  
<n>) <n> Sätze vorwärts (ohne Angabe von n: 1 Satz)  
<n>( <n> Sätze zurück (ohne Angabe von n: 1 Satz)  
<n>} <n> Absätze vorwärts (ohne Angabe von n: 1 Absatz)
Die Absatzkennzeichnung erfolgt durch eine wirklich leere Zeile als Abschluß.
 
<n>]] <n> Abschnitte vorwärts, zum Abschnittsbeginn  
<n>[[ <n> Abschnitte zurück, zum Abschnittsbeginn  
<n>][ <n> Abschnitte vorwärts, zum Abschnittsende  
<n>[] <n> Abschnitte zurück zum Abschnittsende  
<n>[( <n> mal zurück zu offener runder Klammer ("(")  
<n>[{ <n> mal zurück zu offener geschweifter Klammer "{"  
<n>[m <n> mal zurück zum Beginn einer Methode (Java)  
<n>[M <n> mal zurück zum Ende einer Methode (Java)  
<n>]) <n> mal vorwärts zu offener runder Klammer ")"  
<n>]} <n> mal vorwärts zu offener geschweifter Klammer "}"  
<n>]m <n> mal vorwärts zum Beginn einer Methode (Java)  
<n>]M <n> mal vorwärts zum Ende einer Methode (Java)  
<n>[# <n> mal zurück zu nicht abgeschlossenem "#if" oder "#else"  
<n>]# <n> mal vorwärürts zu nicht abgeschlossenem "#else" oder "#endif"  
<n>[* <n> mal zurück zum Beginn von "/*"-Kommentaren  
<n>]* <n> mal vorwärts zum Ende von "*/"-Kommentaren  
Auf dem Bildschirm blättern
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell  
mit wohin  
Achtung! Die folgenden Befehle funktionieren nur im Befehlsmodus.  
[Ctrl]B Wenn möglich, eine Bildschirmseite rückwärts blättern. Dabei wird zur einfacheren Orientierung eine zweizeilige Überlappung des Inhalts eingerichtet.  
<<n>[Ctrl] + [B] Wenn möglich, um n Bildschirmseiten rückwärts blättern. Dabei wird zur einfacheren Orientierung eine zweizeilige Überlappung des Inhalts eingerichtet.  
[Ctrl]D Wenn möglich, eine halbe Bildschirmseite weiterblättern.  
<n>[Ctrl]D Wenn möglich, um n Zeilen weiterblättern. Eine durch Angabe der Anzahl n vorgenommene Einstellung bleibt während der aktiven Session für [Ctrl]+[D] und [Ctrl]+[U] erhalten.  
[Ctrl]F Wenn möglich, eine Bildschirmseite weiterblättern. Dabei wird zur einfacheren Orientierung eine zweizeilige Überlappung des Inhalts eingerichtet (wenn möglich).  
<n>[Ctrl]F Wenn möglich, um n Bildschirmseiten weiterblättern. Dabei wird zur einfacheren Orientierung eine zweizeilige Überlappung des Inhalts eingerichtet (wenn möglich).  
<n>[Ctrl]U Wenn möglich, eine halbe Bildschirmseite oder (wenn n angegeben) <n> Zeilen zurückblättern.  
<n>[Ctrl]Y Wenn möglich, den Bildschirminhalt um <n> oder eine Zeile zurück verschieben (aufwärts).  
z
zt
Bildschirm neu aufbauen, aktuelle Zeile als oberste Zeile darstellen  
z.
zz
Bildschirm neu aufbauen, aktuelle Zeile in Bildschirmmitte darstellen  
z-
zb
Bildschirm neu aufbauen, aktuelle Zeile als unterste Zeile darstellen  
[Ctrl]G Statuszeile mit wichtigen Informationen bezüglich des aktuellen Bearbeitungsstandes aktivieren.  
<n>G Wenn möglich, Cursor auf die <n>-te Zeile der Datei setzen.  
G Cursor auf die letzte Zeile der Datei setzen.  
  Manchmal kommt es vor, dass die Bildschirmausgabe reichlich verwirrt aussieht (speziell nach mehrmaligem Blättern). Abhilfe ist wie folgt möglich:  
[Ctrl]l Neuaufbau des Bildschirms.  
[Ctrl]r Löschen und Neuaufbau des Bildschirms.  
z Neuaufbau und Neupositionierung des Bildschirms (siehe oben).  
Editieren - Einfügen, löschen, formatieren, ...
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell  
  Einfügen und Formatieren (im Befehlsmodus)  
a append (anhängen). Nachfolgend eingegebene Zeichen werden rechts vom Cursor eingefügt.  
A
$a
Nachfolgend eingegebene Zeichen werden am Ende der Zeile angehängt.  
i insert (einfügen). Nachfolgend eingegebene Zeichen werden links vom Cursor eingefügt.  
I Nachfolgend eingegebene Zeichen werden am Zeilenanfang eingefügt.  
J Im Befehlsmodus bewirkt diese Taste das Anfügen der nächsten Zeile an die aktuelle (Zeilen verbinden).  
o open (öffnen). Neue Zeile unterhalb der aktuellen Zeile einfügen, Cursor dort positionieren und Einfügemodus aktivieren. Nachfolgend eingegebene Zeichen werden in dieser neuen Zeile eingefügt.  
O Wie [o], jedoch wird die neue Zeile oberhalb der aktuellen Zeile eingefügt.  
u undo (rückgängig machen). Letzten Befehl rückgängig machen.  
U Macht alle vorgenommenen Änderungen in der aktuellen Zeile rückgängig.  
.
(Punkt)
Wiederholt die gesamte letzte Änderung ab der aktuellen Cursorposition.  
[Ctrl] Die aktuelle Zeile wird an Cursorposition aufgetrennt. Der rechts vom Cursor stehende Zeilenteil wird in eine neue Zeile unterhalb der aktuellen eingefügt.  
[Ctrl]D Automatisches Einrücken einschalten  
[Ctrl]D Automatisches Einrücken für die aktuelle Zeile ausschalten.  
O[Ctrl]D Automatisches Einrücken ausschalten  
< Schiebe Text nach links.  
> Schiebe Text nach rechts.  
  Befehle im Einfügemodus nach oben (Seitenanfang)
Return
[Return]
Neue Zeile eröffnen.  
Rückwärts löschen, backspace
[backspace]
[Ctrl]H
Das zuletzt eingegebene Zeichen löschen.  
[Ctrl]w Das zuletzt eingegebene Wort löschen.  
[Ctrl]x Die zuletzt eingegebene Zeile löschen.  
\ Hebt die Befehlswirkung der gerade beschriebenen Korrekturzeichen auf. Dadurch werden sie wie Textzeichen behandelt.  
[Ctrl]v Steuerzeichen direkt als Controlsequenzen in Datei einfügen. Die Nachahmung derartiger Zeichen durch [^] sowie des passenden Buchstabens (z.B. ^L) ist nicht möglich.  
Escape
[Esc]
Beendet den Einfügemodus  
löschen
[Entf]
Bricht den Einfügemodus ab  
  Löschen von Zeichen nach oben (Seitenanfang)
d d ist die Einleitung eines Löschbefehls. Zusätzlich muss immer eine Bereichsangabe erfolgen.  
 
  Beispiele
dd Aktuelle Zeile löschen
ndd n Zeilen ab der aktuellen Zeile löschen
dL Löschen von der aktuellen Cursorposition bis zum Dateiende
dw Löschen des Wortes, in welchem der Cursor positioniert ist
d) Von der aktuellen Cursorposition bis zum Absatzende löschen
D Bis zum Ende der aktuellen Zeile löschen
 
x Das Zeichen an aktueller Cursorposition löschen.  
X Das Zeichen vor der aktuellen Cursorposition löschen (links davon).  
u Macht den letzten Befehl rückgängig.  
U Macht die Änderungen in der aktuellen Zeile rückgängig.  
.
(Punkt)
Wiederholt die gesamte letzte Änderung ab der aktuellen Cursorposition.  
  Kopieren von Zeichen nach oben (Seitenanfang)
  Innerhalb von vim gibt es 27 Puffer, von denen 26 mit den Buchstaben des Alphabets bezeichnet sind. Der nicht näher bezeichnete Puffer wird gewissermassen automatisch genutzt.

In diesen einen Puffer wird immer der gesamte zuletzt gelöschte Text (siehe Löschen) eingefügt. Mit dem Kommando u (undo, rückgängig) kann dieser Text wieder an die gleiche Stelle geschrieben werden bzw. mit den P-Kommandos an anderer Stelle eingefügt werden.
 
y Kopiert das Zeichen unter dem Cursor in den automatischen Puffer.  
ny Kopiert n + 1 Zeichen ab der aktuellen Cursorposition in den automatischen Puffer.  
yw Kopiert das Wort, in welchem der Cursor steht, in den automatischen Puffer. Es kann anschliessend mit p/P an anderer Stelle eingefügt werden.  
yy
Y
Kopiert die aktuelle Zeile in den automatischen Puffer.  
n yy Kopiert, inklusive und ausgehend von der aktuellen Zeile, n Zeilen in den automatischen Puffer.  
y]] Steht der Cursor auf einer geschweiften öffnenden Klammer ({), wird alles bis zur nächsten schliessenden geschweiften Klammer (}) in den Puffer kopiert.  
Yp Verdoppelt die aktuelle Zeile.  
n Yp Verdoppelt n Zeilen und fügt sie unterhalb der aktuellen Zeile ein.  
p Fügt den Inhalt des automatischen Puffers unterhalb der aktuellen Zeile ein.  
P Fügt den Inhalt des automatischen Puffers oberhalb der aktuellen Zeile ein.  
  Nutzung der 26 anderen Puffer

Diese Puffer sind mit alphabetischen Zeichen (a bis z) gekennzeichnet. Solange die aktuelle Session des Editors nicht mit :q beendet oder mit :x abgebrochen wird, geht der Pufferinhalt nicht verloren (auch nicht bei hinzuladen weiterer Dateien mit :e <Datei>).

Die Ansprache der Puffer geschieht im Befehlsmodus durch z.B. "a, "b usw..
 
"anyy n Zeilen in Puffer a kopieren  
"cnw n Worte in Puffer c kopieren  
"tp Inhalt des Puffers t unterhalb der aktuellen Zeile einfügen  
"zP Inhalt des Puffers z oberhalb der aktuellen Zeile einfügen  
  Zusätzlich zu den Puffern gibt es noch neun Register, in welchen die letzten neun vorgenommenen Änderungen gespeichert werden. Durch diese Speicherung ist es möglich, sie durch den Wiederherstellungs-(Recover-)Mechanismus wieder zu laden. Beim Wechsel der editierten Datei (auch innerhalb einer Session) geht ihr Inhalt verloren. Die Bezeichnung der Register erfolgt mit den Ziffern 1 bis 9, wobei sich die zuletzt gelöschte Zeihenfolge im Register 1 befindet. Die vorher gespeicherten Daten werden um jeweils ein Register "verschoben".  
  Beispiel:
Zunächst wurde das Wort Zeichen aus der Datei gelöscht und dabei vom Editor im Register 1 gespeichert. Anschliessend wird das Wort Stern gelöscht.

Stern ist nun im Register 1, durch die Verschiebung ist Zeichen im Register 2.

Es können nur neun Zeichenfolgen in den Registern gespeichert werden, weshalb nach Löschen von mehr Daten die zuerst gelöschten Daten verloren gehen (es gibt kein Register 10).

Anwendungsbeispiele in Verbindung mit der Kopierfunktion:
 
"1p Eine neue Zeile unterhalb der aktuellen Zeile erzeugen und den Inhalt von Register 1 einfügen. Die angegebene Ziffer bestimmt das gewählte Register (mit "5p" würde der Inhalt von Register 5 übertragen werden).  
"1pu Alle Registerinhalte auf dem Bildschirm anzeigen lassen und anschliessend wieder löschen.  
  Diese Kommandofolge scheint zunächst nicht sonderlich nutzbringend zu sein. Tatsächlich wird der Nutzen erst nach Eingabe des Punkt-(.)Befehls sichtbar, da mit jedem eingegebenen Punkt entweder der gerade angezeigte Inhalt gelöscht oder der Registerzähler um eins erhöht und der Inhalt des nächsten Registers angezeigt wird.  
  Gleichzeitiges bearbeiten mehrerer Dateien nach oben (Seitenanfang)
:e <Datei> In der aktiven Editor-Session wird die angegebene Datei in den Arbeitsspeicher geladen, wenn die vorher bearbeitete Datei keine Änderung erfuhr oder bereits mit :w gespeichert wurde.  
:e!<Datei> Unbedingt Datei laden. Nicht gespeicherte Änderungen in der bisher bearbeiteten Datei gehen verloren.  
:e# Die Datei laden, welche in der laufenden Session vor der derzeit aktuellen Datei bearbeitet wurde.  
:e +<Datei> Benannte Datei laden, Cursor an deren Ende positionieren.  
:e +<n> <Datei> Benannte Datei laden, Bildschirminhalt beginnt bei Zeile n.  
:e +/<Zeichenfolge> <Datei> Benannte Datei laden, Darstellung wird um Zeichenfolge herum aufgebaut (wenn möglich erscheint Zeichenfolge in Bildschirmmitte).  
:e! Das Original der derzeit bearbeiteten Datei nochmals laden. Vorgenommene Änderungen werden verworfen.  
:n Die nächste, beim Aufruf des Editors auf der Kommandozeile angegebene Datei laden. Sollte die bisher bearbeitete Datei geändert worden, aber noch nicht mit :w gespeichert worden sein, erscheint eine Fehlermeldung.  
:n! Ohne Rücksicht auf vorgenommene Änderungen in der momentan aktuellen Datei die nächste, beim Aufruf des Editors auf der Kommandozeile angegebene Datei laden. In der aktuellen Datei gehen etwaige Änderungen verloren.  
:r <Datei> Inhalt der benannten Datei unterhalb der aktuellen Zeile einfügen.  
Suchen, Ersetzen
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell
Achtung! Sonderzeichen in zu suchenden Zeichenfolgen sind durch vorangestelltes Zeichen \ als normaler Text zu deklarieren. Andernfalls werden sie ihrer Bedeutung entsprechend ausgewertet.  
  Suchen  
/<Begriff>[/[<offset>]] Den Dateiinhalt in Vorwärtsrichtung nach dem nächsten Auftreten von Begriff durchsuchen. Sollte die Option Ringsuche (ws) aktiv sein, dann wird die Suche ggf. vom Dateianfang ausgehend fortgesetzt.
Wird Begriff nicht gefunden, so erscheint ein entsprechender Kommentar.

Durch Voranstellen einer Ziffer/Zahl n kann nach dem n-ten Auftreten von Begriff gesucht werden. Mit offset legt man fest, ab wo gesucht werden soll.
 
?<Begriff>[?[<offset>]] Den Dateiinhalt in Rückwärtsrichtung nach dem nächsten Auftreten von Begriff durchsuchen. Sollte die Option Ringsuche (ws) aktiv sein, dann wird die Suche ggf. vom Dateiende ausgehend fortgesetzt.
Wird Begriff nicht gefunden, so erscheint ein entsprechender Kommentar.

Durch Voranstellen einer Ziffer/Zahl n kann nach dem n-ten Auftreten von Begriff gesucht werden. Mit offset legt man fest, ab wo gesucht werden soll.
 
<n>/ Den letzten Befehl zur Vorwärtssuche n-mal wiederholen. Ohne Angabe von n wird nach dem nächsten Vorkommen gesucht.  
<n>? Den letzten Befehl zur Rückwärtssuche n-mal wiederholen. Ohne Angabe von n wird nach dem nächsten Vorkommen gesucht.  
<n>n Den letzten Suchbefehl n-mal wiederholen (unabhängig von Suchrichtung). Ohne Angabe von n wird nach dem nächsten Vorkommen gesucht.  
<n>N Den letzten Suchbefehl n-mal in umgekehrter Richtung wiederholen. Ohne Angabe von n wird nach dem nächsten Vorkommen gesucht.  
<n>* Suche vorwärts nach dem n-ten Vorkommen des unter dem Cursor befindlichen identifiers. Ohne Angabe von n wird nach dem nächsten Vorkommen gesucht.  
<n># Suche rückwärts nach dem n-ten Vorkommen des unter dem Cursor befindlichen identifiers. Ohne Angabe von n wird nach dem nächsten Vorkommen gesucht.  
<n>g* Suche vorwärts nach dem n-ten Vorkommen des unter dem Cursor befindlichen identifiers, wobei auch teilweise Übereinstimmungen erkannt werden. Ohne Angabe von n wird nach dem nächsten Vorkommen gesucht.  
<n>g# Suche rückwärts nach dem n-ten Vorkommen des unter dem Cursor befindlichen identifiers, wobei auch teilweise Übereinstimmungen erkannt werden. Ohne Angabe von n wird nach dem nächsten Vorkommen gesucht.  
gd Gehe zur lokalen Definition des unter dem Cursor befindlichen identifiers.  
gD Gehe zur globalen Definition des unter dem Cursor befindlichen identifiers.  
<n>F<Zeichen> Wie f<Zeichen>, jedoch rückwärts.  
<n>t<Zeichen> Wie f<Zeichen>, der Cursor wird jedoch vor dem gefundenen Zeichen positioniert.  
<n>T<Zeichen> Wie F<Zeichen>, der Cursor wird jedoch vor dem gefundenen Zeichen positioniert.  
; Wiederholung des letzten f-, F-, t- oder T-Befehls.  
, Wiederholung des letzten f-, F-, t- oder T-Befehls, wobei die Suchrichtung des ursprünglichen Befehls umgekehrt (invertiert) wird.  
^ Steht in Suchbegriffen für Zeilenanfang.  
$ Steht in Suchbegriffen für Zeilenende oder, wenn $ ohne weitere Zeichen als Suchbegriff angegeben wird, für Dateiende.  
<n>| Positioniere den Cursor in Spalte n. Die Angabe der Zahl n ist zwingend erforderlich (mandatory).  
[[ Suche nach der nächsten öffnenden geschweiften Klammer ({).  
]] Suche nach der nächsten schliessenden geschweiften Klammer (}).  
  Suchen und Ersetzen  
:s/<alt>/<neu>/ Suche einmal in der aktuellen Zeile nach dem ersten Auftreten von ><>alt> und ersetze dort <alt> durch <neu>.  
:s/<alt>/<neu>/g Suche in der aktuellen Zeile nach <alt> und ersetze alle Vorkommen von <alt> durch <neu> (g = global).  
:gs/<alt>/<neu>/g Suche in der aktuellen Datei nach <alt> und ersetze alle Vorkommen von <alt> durch <neu> (g = global).  
:<n>s/<alt>/<neu>/ Suche in der <n>-ten Zeile nach dem ersten Auftreten von <alt> und ersetze dort <alt> durch <neu>.  
:<m>,<n>s/<alt>/<neu>/ Suche einmal in den Zeilen <m> bis <n> nach dem ersten Auftreten von <alt> und ersetze dort <alt> durch <neu>  
:1,$s/<alt>/<neu>/g Suche in der aktuellen Datei nach <alt> und ersetze alle Vorkommen von <alt> durch <neu> (g = global).

Die Suche beginnt in Zeile 1 und geht bis zum Dateiende ($). Wegen g (= global) werden alle gefundenen Elemente ersetzt.
 
:s/<alt>// Suche einmal in der aktuellen Zeile nach dem ersten Auftreten von <alt> und lösche es (ersetze es durch nichts). Sollen alle Vorkommen von <alt> in der aktuellen Zeile gelöscht werden, so ist zusätzlich g am Ende des Befehls anzugeben.  
& Wiederhole den letzten Ersetzungsbefehl vom Typ :s....  
Sonderzeichen
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Optionen, Einstellungen Optionen ::: Shell Commands Shell  
  Zeichen mit besonderer Bedeutung  
% Im Befehlsmodus versteht das System darunter den Inhalt des Puffers der gerade bearbeiteten Datei (z.B.: :!% %.org).  
# Im Befehlsmodus wird dieses Zeichen durch den zuletzt in einem Kommando verwendeten Dateinamen ersetzt.  
#% Dient zum hin- und herschalten zwischen zwei gleichzeitig in Bearbeitung befindlichen Dateien.  
~ Dient auf dem Bildschirm als Symbol zur Anzeige von Zeilen, in denen die bearbeitete Datei keinen Text enthält.

Dieser Fall kann beispielsweise auftreten, wenn bei der Bearbeitung Zeilen gelöscht, der Bildschirm jedoch nicht aktualisiert wurde.
 
:l Im Befehlsmodus bewirkt es, dass alle in der aktuellen Zeile befindlichen Sonderzeichen (z.B. $ für Zeilenende) dargestellt werden. Bei mehr als 72 Zeichen in der Zeile wird diese umbrochen und der Umbruch am Zeilenende mit \ markiert. Control-Zeichen werden in der Form ^L dargestellt (^ steht für [Ctrl]). Es handelt sich hierbei um echte Control-Sequenzen!  
Optionen, Einstellungen
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Shell Commands Shell  
  Parameter zum Anpassen der Einstellungen  
  Einstellungen können sowohl auf Systemebene (wirken sofort beim Aufruf des Editors) oder während des laufenden Betriebs vorgenommen werden.

Beim Aufruf des Editors wird die Environment-Variable EXINIT geprüft und darin hinterlegte Parameter übernommen. Der entsprechende Eintrag muss in der profile-Datei der vom Benutzer verwendeten Shell (z.B. $HOME/.profile bei sh, $HOME/.login bei csh) stehen, die beim Login gelesen wird.

Zu beachten ist, dass bei Verwendung mehrerer profile-Dateien, welche beim Login nacheinander abgearbeitet werden, der letzte Eintrag gültig ist (vorherige Einträge überschreibt).

Die Syntax zum Einschalten einer Option bei Verwendung von sh lautet
EXINIT="set nu list";export EXINIT

Zum Ausschalten einer Option lautet sie bei Verwendung von sh
EXINIT="set nonu nolist";export EXINIT

Bei Verwendung von csh gilt entsprechend
setenv EXINIT "set nu list"

beziehungsweise
setenv EXINIT "set nonu nolist"

Das bedeutet, dass zum Einschalten die Option genannt wird, zum Ausschalten dieser Nennung no vorangestellt wird.

Im laufenden Betrieb muss mit in in den Befehlsmodus gewechselt werden. Die Syntax lautet dann

:set <OPTION> [=Zeichen]

Den Zusatz Zeichen benötigt man bei einigen Optionen, welche zusätzliche Parameter zulassen bzw. wahlweise Änderungen zulassen (z.B. ht, ts usw.). Änderungen, welche im laufenden Betrieb vorgenommen werden, gelten nur für die Dauer der aktiven Session.

:se <OPTION>
zeigt an, ob die genannte Option aktiviert ist.

:se all
zeigt die aktuellen Einstellungen aller Optionen an.
 
Option Beschreibung default nach oben (Seitenanfang)
se nolist Macht die List-Darstellung rückgängig.  
ai Im Einfügemodus wird bei den Kommandos a, c, und i jede Zeile entsprechend der vorherigen mit führenden Leerzeichen versehen (eingerückt). noai
ap Der Bildschirm wird automatisch neu aufgebaut, wenn eine Zeile gelöscht oder eingefügt wird. ap
aw Es wird immer der Arbeitsspeicherinhalt (Puffer) in die Originaldatei geschrieben, wenn der Editor verlassen oder eine neue Datei zur Bearbeitung geöffnet wird. noaw
bf Sämtliche Control-Zeichen werden aus der Datei entfernt. nobf
dir Verzeichnis, in welchem die Arbeitskopie bearbeiteter Dateien angelegt wird. dir=/tmp
eb Bei erkannten Bedienungsfehlern gibt der Editor zusätzlich ein akustisches Signal (^). noeb
ht Tabulatorabstände im Terminal. ht=8
ic Bei Suchvorgängen nicht auf Groß-/Kleinschreibung achten. noic
lisp Einrückungen nach LISP-Regeln vornehmen, Klammern nach entsprechenden Vorschriften behandeln. nolisp
list Dateiinhalt mit allen Sonderzeichen anzeigen. $ steht für Zeilenende, ^I für Tabulator. nolist
magic Sonderzeichen werden entsprechend berücksichtigt und nicht als reine Textzeichen gewertet. magic
mesg Es können Meldungen, die nicht vom Editor selbst stammen (z.B. mail), auf dem Bildschirm angezeigt werden. Nach setzen von nomesg können nur noch Meldungen angezeigt werden, die direkt vom Editor stammen. mesg
nu Zeilennummern werden angezeigt (kann wegen längerer Zeilen zu Zeilenumbrüchen führen). nonu
para Definition der Absatzgrenzen, die bei Befehlen mit geschweiften Klammern ({}) eingerichtet werden sollen. para
=IPLPPPQPP Llbp
prompt Das Zeichen erscheint bei mit : aufgerufenen Kommandos als Prompt auf dem Bildschirm. prompt
redraw Neuaufbau der Zeile, sobald ein Zeichen eingegeben wird. noredraw
remap Rekursive Abarbeitung von Makros remap
report Meldung ausgeben, wenn mehr als die angegebene Anzahl Zeilen durch ein Änderungskommando verändert werden. report=5
scroll Scroll-Bereich der Scroll-Befehle definieren. scroll=1/2
sections Definition der Grenzen bei den Befehlen [[ und ]]. sections
=SHNHH HU
sh Festlegung, welche Shell beim !-Kommando genutzt wird. sh=/bin/sh
sw Schrittweite des Tabulators einstellen. Gleichzeitig legt dieser Eintrag den Richtwert für den Sprung des Cursors bei den Befehlen < und > fest, wenn diese ohne vorangestellte Zahl eingegeben werden (z.B. 3<). Die Definition gilt auch bei der Option ai und [Strg]D-Befehlen im Einfügemodus sw=8
sm Anzeigehilfe beim Editieren von Programmen: Bei Eingabe von Klammern des Typs ) oder } wird die als zugehörig erkannte, öffnende Klammer für ca. 1 Sekunde hell unterlegt dargestellt. nosm
ts Tabulatorposition in der Zeile festlegen. ts=8
term Der Inhalt der Environment-Variablen TERM wird zur Definition des Terminaltyps herangezogen. Der zu diesem Namen gehörende Eintrag wird in /etc/termcap gesucht. Sollte kein passender Eintrag gefunden werden, dann schaltet der Editor in einen Einzeilenmodus, welcher keine spezielle Terminalanpassung benötigt. TERM
terse Fehlermeldungen in Kurzform anzeigen. noterse
warn Fehlermeldung anzeigen, wenn eine geänderte Datei vor Eingabe eines !-Befehls nicht gespeichert wurde. Der Inhalt des Arbeitsspeichers wird nicht geändert warn
window, w300
w1200, w9600
In Abhängigkeit von der Baudrate die Anzahl der Zeilen pro Bildschirmseite auf 8, 16 oder die Zahl der im System selbst (nicht im Editor) festgelegten Anzahl von Bildschirmzeilen einstellen. meist >= 1200
ws In den Such-Modi / und ? die Ringsuche über Dateianfang bzw. -ende hinweg aktivieren. ws
wm Akustisches Signal ausgeben, wenn hinter Spalte wm noch ein Zeichen eingefügt werden soll. wm=0
wa Ohne vorherige Prüfung in Dateien schreiben. nowa
Shell-Kommandos
::: die Modi von vim Modi ::: Starten des Editors Starten ::: Verlassen des Editors Beenden ::: Speichern Speichern ::: Positionieren des Cursors Cursorbewegung ::: Blättern auf dem Bildschirm Blättern nach oben (Seitenanfang)
::: Editieren - Einfügen, Formatieren, ... Editieren ::: Suchen und Ersetzen Suchen / Ersetzen ::: Sonderzeichen Sonderzeichen ::: Optionen, Einstellungen Optionen  
     
:!Befehl Befehl ausführen und entsprechende Meldung ausgeben (die Meldung wird nicht in die bearbeitete Datei übernommen). Der Bildschirminhalt muss mit [Ctrl]l wieder hergestellt werden.  
:!! Wiederholt das zuletzt eingegebene Unix-Kommando.  
:sh :csh Neue (C-)Shell starten, in welcher ohne Einschränkung gearbeitet werden kann. Der Editor läuft so lange im Hintergrund, bis die neu gestartete Shell mit [Ctrl]D oder [Ctrl]Z beendet wird.  
:r !Befehl Den Rückgabewert des Shell-Kommandos Befehl an aktueller Stelle in Datei einfügen.  
!Befehl Der eingegebene Befehl ersetzt den ursprünglichen Pufferinhalt der gerade bearbeiteten Datei.