vi
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 freier Texteditor. Er wurde 1976 von Bill Joy auf einem ADM-3A-Computerterminal für eine frühe BSD-Version geschrieben und von POSIX standardisiert. 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 ed war. Joy baute auf diesem auf, zunächst ebenfalls mit einem Zeileneditor, ex. Darauf baute später wiederum der Editor vi auf. vi wurde schnell zum De-facto-Standardeditor unter Unix.
1991 benutzten ungefähr die Hälfte aller Teilnehmer einer Usenet-Umfrage den vi. Auch heutzutage ist die Verwendung von vi bzw. dessen Erweiterungen zumindest in der Unix- und Linuxwelt 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 ihrer relativen Ressourcenfreundlichkeit starten vi bzw. fast alle seine Klone schneller und benötigen deutlich weniger Speicherplatz als etwa 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 und WinVi, die teilweise auch für Plattformen jenseits von Unix verfügbar sind. Unterschiedlich verbesserte Implementierungen des Originals sind bei den BSDs und einigen kommerziellen Unices noch immer verbreitet, bei den Linux-Distributionen findet sich der originale vi dagegen nicht mehr im Standardumfang und nur selten in erweiterten Repositories. Hier ist als Default-Editor zumeist eine abgespeckte Version von Vim installiert, je nach Zielgruppe aber auch das nicht immer.
Tastatur
Die von Bill Joy verwendete ADM-3A-Tastatur besaß neben Buchstaben und Zahlen nur wenige weitere Tasten (hier grau). Das erklärt die für heutige Verhältnisse ungewöhnliche Bedienung. Ebenfalls ist zu beachten, dass : ohne Umsch aufgerufen wird.
Arbeitsmodi
Vi besitzt drei grundsätzlich unterschiedliche Arbeitsmodi:
Befehlsmodus
Beim Start von vi befindet man sich im Befehlsmodus (command mode). Dort können durch verschiedene Tastendrücke einfache Befehle ausgeführt werden, wie zum Beispiel „Wort suchen“, „Zeile löschen“ usw. Von diesem Befehlsmodus aus kann man dann die editierte Datei etwa durch Drücken von : w q return abspeichern und verlassen.
Einfügemodus
Durch Befehle wie i, a oder o gelangt man aus dem Befehlsmodus in den Einfügemodus. (insert mode). Hier ist die eigentliche Eingabe von Text möglich. Durch Drücken von Esc gelangt man aus dem unten Einfügemodus wieder zurück in den Befehlsmodus.
Kommandozeilenmodus
Durch Eingabe von : (Doppelpunkt) gelangt man vom Befehlsmodus in den Kommandozeilenmodus ("colon mode" oder "ex mode"). Dort können komplexere Befehle wie etwa zum Suchen und Ersetzen von Text ausgeführt werden. durch drücken von Enter kommt man wieder zurück in den Befehlsmodus. 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 Terminaleditoren wie GNU nano oder heute üblicheren 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 Wars 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“) verspottet.[2]
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 (PDF; 58 kB; 1 Seite) vi-Referenzkarte (englisch)
- The Vi Lovers (englisch)
- 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, Hingham, Mass. 2005, ISBN 1-58450-347-5, S. 55.
- Andrew Min: The top 4 internet flame wars about free software Free Software Magazine, 16. August 2008, abgerufen am 13. September 2020.