vi
vi („vi“ für „visual“; ausgesprochen [ ] oder [ ],[1] im deutschen Sprachraum gelegentlich auch [ ], 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
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 die Verwendung von vi zumindest in der Unix- und Linuxwelt 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 für nicht Unix-artigen Systeme verfügbar sind.
Arbeitsmodi
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.
| 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
Aufgrund der verschiedenen Arbeitsmodi ist die Bedienung von vi, verglichen mit anderen Befehlszeilenprogrammen wie GNU nano oder 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
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
- Morris I. Bolsky: UNIX-Text-Editor – Das vi-Handbuch. Carl Hanser & Prentice-Hall International, 1988, ISBN 3-446-15128-1.
- Arnold Robbins: vi-Editor kurz & gut. O’Reilly Verlag, ISBN 3-89721-213-7.
- Boor, Hutter, Pribas: vi-Referenzhandbuch. Prentice Hall, ISBN 3-8272-9533-5.
Weblinks
- The Traditional vi Quelltext des Original-vi, mit Anpassungen um auf modernen Unix-Systemen zu kompilieren
- Linkkatalog zum Thema Vi bei curlie.org (ehemals DMOZ)
- vi-Cheat-Sheet The Semi-Official IBM developerWorks vi-Cheat-Sheet (englisch)
- vi Reference Card vi-Referenzkarte (1 PDF-Seite, englisch; 58 kB)
- The Vi Lovers (englisch)
- vi-Cheat-Sheet (deutsch)
- Der Quelltext des Original-vi in den Versionen 1.1 bis 3.7, kompilierfähig auf aktuellen Unix-Systemen
Einzelnachweise
- ↑ Christian Gross: Open Source for Windows Administrators. Charles River Media, 2005, ISBN 1-58450-347-5, S. 55.