User Tools

Site Tools


viki:02_geschichte

Vim ist keine Insel

2. Geschichte

Die Geschichte von Vim ist eine Geschichte von Vorgängern, und sie beginnt zu einer Zeit, als Computer noch ganze Räume füllten.

1966 -- QED

Die SDS 940 von Scientific Data Systems (später Xerox) war 1966 hochmodern: Mit Lochstreifenleser und -stanzer, einem Drucker, und Arbeitsspeicher von bis zu 64k Wörtern zu je 24 Bit. Bis zu 64 Fernschreiber konnten an eine SDS 940 angeschlossen werden und gleichzeitig an ihr arbeiten.

Im Bild: Rick Crandall an der SDS 940 Seriennummer #2; die Aufnahme entstand 1966. Verwendung des Bildes mit freundlicher Genehmigung von Mr. Crandall. Alle Rechte am Bild sind vorbehalten / All rights reserved.

Programmiert wurde in CAL, Fortran IV oder BASIC; als Betriebssystem diente das Berkeley Timesharing System, das an der University of California, Berkeley entwickelt wurde.

Zum Programmieren brauchte man natürlich einen Editor, wenn man nicht die Lochkarten oder -streifen von Hand stanzen wollte. (Nicht dass man das nicht auch getan hätte.) Der Editor der SDS 940 war QED (“quick editor”), entwickelt von Butler Lampson und L.Peter Deutsch.

Ken Thompson machte 1966 seinen Master der Informatik in Berkeley. Er schrieb eine QED-Version für das Compatible Time-Sharing System, die Unterstützung für Reguläre Ausdrücke hinzufügte; später kam eine in BCPL implementierte Version für Multics hinzu.

1971 -- ed

Später arbeitete Thompson an den Bell Laboratories, wo er zusammen mit Dennis Ritchie das Betriebssystem Unix entwickelte – auf einer PDP-7.

Im Bild: Eine PDP-7. Bild unterliegt der Creative Commons Share-Alike Lizenz.

Als eine der ersten Komponenten von Unix entwickelte er den Editor ed, der natürlich stark von Thompsons Erfahrungen mit QED beeinflußt war.

Tatsächlich hat QED viele Unix-Tools beeinflußt: grep zum Beispiel entstand aus dem QED-Befehl `g/re/p` (“global, <regular expression>, print”), und auch sed (“stream editor”) hat seinen Befehlssatz von QED geerbt.

Später hat Dennis Ritchie den Editor noch erheblich weiterentwickelt. Die Single UNIX Specification schreibt das Vorhandensein von ed zwingend vor. Nicht nur Peter H. Salus hält allerdings ed für den “benutzerfeindlichsten Editor der jemals entwickelt wurde”, weswegen er heute eigentlich nur noch in Skripten und nicht mehr interaktiv verwendet wird.

1976 -- em

Am Queen Mary College in London entwickelte George Coulouris eine verbesserte Version von ed, den “editor for mortals”, Editor für Sterbliche (em). Leider ist hier die Quellenlage weniger eindeutig als bei den anderen Ahnen von Vim; zum einen konnte ich kein Veröffentlichungsdatum für em finden. Eine der Verbesserungen, die em mitbrachte, war die Nutzung von Videoterminals. Es war immer noch ein reiner Zeileneditor, aber immerhin war em nicht mehr auf die Möglichkeiten eines Fernschreibers begrenzt.

Jedenfalls spielten die von em gemachten Verbesserungen eine große Rolle beim nächsten Schritt in unserer Ahnengalerie.

1978 -- ex

Bill Joy war einer von vier Gründern von Sun Microsystems. Davor war er an der Entwicklung von BSD Unix beteiligt.

Aber auf dieser Webseite steht er, weil er ex entwickelt hat. Als Weiterentwicklung vom em war eines von Joy's Zielen, die Anforderungen an die Rechenleistung zu reduzieren. Veröffentlicht als Teil der ersten BSD-Release, wurde ex von POSIX standardisiert.

1978 -- vi

Später hat Bill Joy seinen Editor um eine den ganzen Bildschirm benutzende Oberfläche erweitert, den “visual mode”. Diesen konnte man über den ex-Befehl :visual aktivieren; als Abkürzung tat es auch :vi.

Dieser Modus wurde so populär, dass ein Shortcut angelegt wurde: Der Shell-Befehl vi startete ex direkt im “visual mode”. Der Editor vi war geboren.

Im Bild: Ein ADM-3A Terminal, auf dem der visual-mode genutzt werden konnte. Bild von Chris Jacobs, Verwendung unter Creative Commons Attribution-ShareAlike 3.0.

1987 -- Stevie

Stevie war ein vi-Klon, den Tim Thompson für den Atari ST geschrieben hat, und 1987 als freie Software in der Newsgroup comp.sys.atari.st veröffentlichte.

Tony Andrews entwickelte das Projekt weiter, portierte es auf Unix, OS/2 und Amiga, und veröffentlichte die Quellen auf comp.sources.unix.

1991 -- Vim

Bram Moolenaar hatte vi an der Universität kennengelernt, und wollte ihn auch auf seinem heimischen AmigaOS nutzen. Als Startpunkt nahm Moolenaar die verfügbaren Quellen von Stevie; dieser hatte allerdings nicht alle Fähigkeiten von vi, und eine Reihe eigener Probleme.

Im Laufe der Zeit hatte Moolenaar die Quellen so stark überarbeitet, dass kaum noch etwas vom Original übrig blieb. Er nannte diesen neuen Editor Vim, was zunächst für “vi imitation” stand, und veröffentlichte ihn 1991 als freie Software.

1993 erschien die Version 2.0, und der Name Vim wurde umgedeutet zu “vi improved” (verbesserter vi). Mit der Zeit wurde Vim auf eine große Zahl anderer Systeme portiert, und ist heute einer der am weitesten verbreiteten Editoren.

2014 -- Neovim

A fork of the Vim codebase, “ Neovim is a refactor, and sometimes redactor, in the tradition of Vim […]. It is not a rewrite but a continuation and extension of Vim.” It carries Vim into the 21st century.


Nächstes Kapitel -- 3. Modales Editieren

viki/02_geschichte.txt · Last modified: 2021/07/16 10:11 by solar