vi

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Dieser Artikel behandelt den Texteditor vi; zu weiteren gleichnamigen Bedeutungen siehe VI.
vi beim Bearbeiten einer leeren Datei

vi („vi“ für „visual“; ausgesprochen [viːˈaɪ] oder [vaɪ],[1] im deutschen Sprachraum gelegentlich auch [viː], jedoch nicht „sechs“ oder „six“ (wie die römische Zahl VI)) ist ein 1976 von Bill Joy auf einem ADM-3A-Computerterminal für eine frühe BSD-Version geschriebener und von POSIX standardisierter Texteditor. Der Name stammt vom Befehl visual des Editors ex. Mit diesem Befehl konnte man den Zeileneditor in einen visuellen Modus umschalten.

Einordnung[Bearbeiten]

Bis Anfang der 1970er Jahre wurden hauptsächlich zeilenorientierte Editoren benutzt, wobei ein weit verbreiteter der Editor ed war. Joy baute auf diesem auf, zunächst mit ebenfalls einem Zeileneditor, ex. Darauf baute später wiederum der Editor vi auf. vi wurde schnell zum De-facto-Standardeditor unter Unix, jedenfalls bis zum Aufstieg von Emacs um etwa 1984.

1991 benutzten ungefähr die Hälfte aller Teilnehmer einer Usenet-Umfrage den vi. Auch heutzutage ist vi zumindest in der Unixwelt noch sehr verbreitet. Außerdem kann man mit diesem Editor in Kombination mit ssh (früher mit Telnet oder rsh) im Netzwerk auf anderen Rechnern arbeiten.

Aufgrund seiner relativen Ressourcenfreundlichkeit starten vi bzw. fast alle seine Klone schneller und benötigen weniger Speicherplatz als Emacs. Auf einer „Rettungsdiskette“ hat vi auch heute noch seinen Platz, so dass er Bestandteil fast aller Unix-/Linux-Distributionen ist.

Die originale Version von Bill Joy war ursprünglich weder im Quelltext noch sonst frei verfügbar, so dass mittlerweile eine Reihe von Klonen mit zum Teil wesentlichen Erweiterungen existiert, wie z. B. Vim, Nvi, elvis, WinVi, die teilweise auch auf nicht Unix-artigen Systemen laufen.

Arbeitsmodi[Bearbeiten]

vi besitzt drei grundsätzlich unterschiedliche Arbeitsmodi. Die drei Modi sind:

Befehlsmodus (command mode)
Beim Start von vi befindet man sich im Befehlsmodus. Dort können durch verschiedene Tastendrücke einfache Befehle ausgeführt werden, wie zum Beispiel „Wort suchen“, „Zeile löschen“ usw. Durch Drücken von Esc gelangt man aus dem unten angegebenen Einfügemodus wieder zurück in diesen Befehlsmodus. Von diesem Befehlsmodus aus kann man dann die editierte Datei etwa durch Drücken von : w q return abspeichern und verlassen.
Einfügemodus (insert mode)
Im Einfügemodus ist die eigentliche Eingabe von Text möglich. Durch Befehle wie i, a oder o gelangt man aus dem Befehlsmodus in diesen Einfügemodus.
Kommandozeilenmodus (auch Komplexbefehlsmodus, colon mode oder ex mode)
Durch Eingabe von : (Doppelpunkt) gelangt man vom Befehlsmodus in den Kommandozeilenmodus. Dort können komplexere Befehle wie etwa zum Suchen und Ersetzen von Text ausgeführt werden.

Frühere Versionen gaben dem Benutzer keinen Anhaltspunkt, in welchem Modus er sich gerade befand. Aktuelle Versionen von vi zeigen ihren augenblicklichen Modus auf der Statuszeile oder grafisch an.

                                        |  Start mit
                                        |  vi <dateiname>
                                        v
+--------------------+              +--------------------+              +-------------------+
|                    |              |                    |              |                   |
|   Kommandozeilen-  |  <---------  |    Befehls-Modus   |  --------->  |   Einfüge-Modus   |
|       Modus        |     „:“      |                    |  „i“, „a“,   |                   |
|                    |              | Verwendung von:    |  „o“ usw.    |                   |
| z. B. „wq“, „q!“   |              | yy, p, dd, J       |              | Normales Editie-  |
| oder komplexe      |              | usw.               |              | ren, Pfeiltasten  |
| Befehle wie        |              |                    |              | Bildscrollen usw. |
| „Suchen und        |   [Enter]    | (Der vi startet    |    [Esc]     |                   |
| Ersetzen“          |  --------->  | in diesem Modus)   |  <---------  |                   |
|                    |              |                    |              |                   |
+--------------------+              +--------------------+              +-------------------+
    |                                   |
    |  Beenden mit                      |  Beenden mit    
    v  „wq“ oder „x“                    v  „ZZ“  

(wenige Ausnahmen, wie z. B. das Zurückspringen des r-Befehls in den Befehlsmodus ohne Drücken von Esc, existieren)

Vor- und Nachteile[Bearbeiten]

Aufgrund der verschiedenen Arbeitsmodi ist die Bedienung von vi, verglichen mit heute üblichen grafischen Editoren, zunächst gewöhnungsbedürftig. Ein großer Vorteil von vi ist hingegen, dass mehrere Befehle nacheinander ohne gleichzeitiges Betätigen der Alt-, Strg- oder sonstiger Modifikator-Tasten abgesetzt werden können. So ist es auch möglich, mit einem einzigen Befehl mehrere Wörter oder Sätze zu löschen.

Humor[Bearbeiten]

Im Zuge des sogenannten Editor War gründeten die Anhänger von vi den „Cult of Vi“ als Reaktion auf die von Richard Stallman alias St. IGNUcius gegründete Church of Emacs. Daraufhin wurden sie von den Emacs-Anhängern als Nachahmer („ape their betters”) bezeichnet.

Literatur[Bearbeiten]

Weblinks[Bearbeiten]

 Wikibooks: vi-Befehlsreferenz – Lern- und Lehrmaterialien
 Wikibooks: Learning the vi editor – Lern- und Lehrmaterialien

Einzelnachweise[Bearbeiten]

  1. Christian Gross: Open Source for Windows Administrators. Charles River Media, 2005, ISBN 1-584-50347-5, S. 55.