Texteditoren in UNIX

Unter den Editoren, die UNIX-Benutzern in der Regel zur Verfügung stehen, spielen die Programme Emacs und vi eine besondere Rolle. Emacs ist der einzige herstellerunabhängige und freie Editor, der auf praktisch allen UNIX-Plattformen verfügbar ist; zugleich ist Emacs der modernste und am weitesten entwickelte Editor für UNIX-Systeme. vi ist der klassische bildschirmorientierte UNIX-Editor und wird von praktisch allen Herstellen als fester Bestandteil des UNIX-Systems mitgeliefert.

Emacs

Emacs wurde Ende der siebziger Jahre von Richard Stallman (``rms'') entwickelt und ist heute einer der Hauptbestandteile des GNU-Projekts der Free Software Foundation (FSF) und der populärste Editor in der UNIX-Welt.

Ein wichtiges Merkmal von Emacs ist die Erweiterbarkeit: Den Grundfunktionen des Editors können beliebig komplexe Erweiterungen hinzugefügt werden, die in der Programmiersprache Emacs-Lisp geschrieben werden; ein Zugriff auf den Quellcode oder ein Neuübersetzen ist hierfür nicht erforderlich. Inzwischen existiert eine Vielzahl von Emacs-Erweiterungen, unter anderem Emulationen für andere Editoren, Erweiterungen zum Lesen und Schreiben von E-Mail und Netnews, ein WWW-Browser, und ein System zum Lesen von Hypertext-basierter Online-Dokumentation (``Info-Files''). Diese Erweiterungen bilden eine integrierte Arbeitsumgebung, in der sich die meisten Aufgaben unter UNIX bequem erledigen lassen.

Daneben existieren spezielle Erweiterungen zum Editieren von Programmen in den gängigen Programmiersprachen (C/C++, Perl, Lisp, PASCAL, ADA, Tcl, Shell, etc.) und von Texten in anderen Fileformaten (z.B. HTML/SGML und TeX). Diese Emacs-Modes unterstützen z.B. automatisches, sprachabhängiges Einrücken und farbliche Auszeichnung der Syntaxelemente.

Emacs im Fachbereichsnetz

Emacs ist auf allen UNIX-Plattformen im FB3-Netz installiert. Beim Start sollte Emacs gleich in den Hintergrund geschickt werden:

    emacs &
Die wichtigsten Editor-Funktionen lassen sich unter X über den Menübalken am oberen Window-Rand aufrufen; der Cursor kann mit der Maus gesteuert werden.

Anfänger sollten sich das interaktive Emacs-Tutorial anschauen; Aufruf mit ``Control-H t''. Weitergehende Online-Dokumentation zu Emacs und den wichtigsten Erweiterungen kann im Info-Mode gelesen werden; Aufruf mit ``Control-H i''.

Ein weitgehend generisches Initialisierungsfile zum persönlichen Anpassen von Emacs findet sich in

    ~cabo/.emacs
Anfänger können sich diese File in ihr Homeverzeichnis kopieren und es anschließend in Emacs bearbeiten.

XEmacs

Neben GNU-Emacs gibt es mit XEmacs (vormals Lucid-Emacs) eine weitere Emacs-Entwicklungslinie, die sich vor einiger Zeit von GNU-Emacs abgespalten hat. XEmacs enthält gegenüber GNU-Emacs bessere Grafikunterstützung; so kann man z.B. Text mit eingebetter Grafik bearbeiten. XEmacs wird im FB3-Netz zur Zeit nicht angeboten.

vi

``vi'' ist der Standard-Bildschirmeditor unter UNIX und wurde als Teil von Berkeley-UNIX (BSD) als Nachfolger für den Zeileneditor ed eingeführt. Im Gegensatz zu Emacs ist ``vi'' Grundbestandteil von praktisch allen kommerziellen UNIX-Systemen. Inzischen existieren einige frei verfügbare Varianten von ``vi'' (z.B. vim), und ``vi'' selbst wird im Rahmen der UNIX-Standardisierung (POSIX 1003.2) weiterentwickelt. Anders als Emacs enthält ``vi'' keine Unterstützung für X (Maussteuerung, Menüs, etc.), läuft unter X also direkt in einem xterm-Fenster.

Obwohl ``vi'' für die tägliche Arbeit unter UNIX dem Editor Emacs unterlegen ist, sind einige grundlegende vi-Kenntnisse trotzdem von Nutzen. So ist ``vi'' in der Regel auch in einer minimalen UNIX-Umgebung verfügbar, zum Beispiel beim Ausführen von Wartungsarbeiten im Single-User-Mode (das Filesystem, in dem Emacs liegt, ist dann oft nicht zugreifbar). Daher sind vi-Kenntnisse insbesondere für UNIX-Systemadministratoren wichtig. Darüberhinaus bietet sich ``vi'' wegen seiner kurzen Startzeit und dem geringen Speicherbedarf gelegentlich für kurze, einmalige Editiervorgänge oder zum Sichten von Files an (Aufruf im Read-Only-Mode als view).

Ausführliche Dokumentation zu ``vi'' findet sich in der Regel in der zum jeweiligen UNIX-System gehörenden UNIX-Dokumentation (z.B. im Solaris-Answerbook) und in den meisten Büchern zu UNIX. Informationen zu den Aufrufmöglichkeiten und zum Teil eine Kurzübersicht findet sich in der Manual-Page.

Andere Editoren

Neben Emacs und ``vi'' sind auf UNIX-Systemen oft diverse weitere Texteditoren installiert. Im FB3-Netz sind dies unter anderem die Editoren jot (Silicon Graphics), textedit (Sun OpenWindows), dtpad (CDE/Motif), nedit (Motif), axe, xedit und mxedit (Tcl).

Welchen Editor soll ich benutzen?

Für die tägliche Arbeit unter UNIX kommt als Editor heutzutage nur Emacs in Frage; zusätzlich kann es aber nicht schaden, sich einige vi-Kenntnisse anzueignen. Bei der Entscheidung, welchen Editor man lernt, sollten unter anderem diese Punkte bedacht werden:

Kein Editor hat den Verbreitungsgrad von Emacs (und ``vi''), also muß man voraussichtlich im späteren Arbeitsleben ohnehin Emacs lernen. Warum nicht gleich damit beginnen? Durch einen späteren Umstieg auf Emacs geht wertvolle Zeit verloren.

Emacs bietet als einziger Editor eine integrierte Arbeitsumgebung für die Softwareentwicklung, für die Benutzung von E-Mail und News, etc. Alle Editieraufgaben werden daher auf einheitliche Weise abgewickelt, und man muß sich nicht mit der Vielzahl von ``eingebauten'' Spezial-Editoren in anderen Werkzeugen herumplagen.

Alle anderen Editoren sind entweder nicht plattformübergreifend oder nicht frei (als Quellcode) verfügbar, oder setzen kommerzielle Libraries voraus, oder funktionieren nicht zuverlässig (fatal bei einem so wichtigen Werkzeug wie einem Editor), oder sind überhaupt nur als Demonstrationsprogramm für ein Fenster- oder Grafiksystem entwickelt worden.

Weitere Informationen zum T-Bereich

Navigation


Oliver Laumann   ·  net@informatik.uni-bremen.de