Zum Inhalt springen

Emacs

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 9. Juni 2008 um 18:50 Uhr durch 84.152.118.182 (Diskussion). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Emacs

Basisdaten

Maintainer Eli Zaretskii, Richard Stallman, Andrea Corallo[1], Stefan Kangas[2], John Wiegley, Lars Magne Ingebrigtsen
Entwickler Richard Stallman
Erscheinungsjahr 1984
Aktuelle Version 22.2
(26. März 2008)
Aktuelle Vorabversion 30.0.93[3]
(19. Dezember 2024)
Betriebssystem UNIX, GNU/Linux, Mac OS X, Windows, u.a.
Programmier­sprache Emacs Lisp[4], C[5]
Kategorie Texteditor, Integrierte Entwicklungsumgebung
Lizenz GNU General Public License
deutschsprachig nein
www.gnu.org/software/emacs/

Emacs ist ein ursprünglich von Richard Stallman entwickelter Texteditor, der durch seine Programmierschnittstelle in der Programmiersprache LISP mit beliebigen Erweiterungen ausgestattet werden kann.

Emacs ist als Freie Software unter der GNU General Public License erhältlich und läuft auf den meisten heute üblichen Betriebssystemen (UNIX, GNU/Linux, Mac OS X und Windows).

Besonderheiten

Datei:Emacs-plain-osx.png
Emacs-Startbildschirm im Grafikmodus. Ursprünglich ist Emacs ein Programm für das Terminal

Emacs bietet eine ganze Reihe Betriebsarten (engl. modes), die bei der Erstellung von Quelltext für diverse Programmier- bzw. Beschreibungssprachen hilfreich sind. Somit kann man Emacs z. B. als HTML-Editor betreiben, der auch Syntaxüberprüfungen vornimmt.

Syntaxhervorhebung wird in den meisten dieser Betriebsarten unterstützt. Dabei wird der Text aufgrund der Syntax des bearbeiteten Textes (LaTeX, HTML, Perl, Java und andere) eingefärbt, was dem Benutzer die Orientierung erleichtert. Die Modi bieten in der Regel wesentlich mehr als eine Syntaxhervorhebung; Übersetzungsvorgänge, Syntaxprüfer, Debugger und dergleichen mehr lassen sich von Emacs aus aufrufen. Die Modi bieten auch vielerei Hilfen beim Kodieren, insbesondere der VHDL-Modus und diverse LaTeX-Hilfestellungen seien hier erwähnt.

In der Grundkonfiguration verfügt Emacs bereits über einen Kalender, mehrere Mail- und Newsreader, eine eingebaute Shell, Spiele, einen FTP-Client und einen Webbrowser. Es gibt zusätzlich zahlreiche Tools, die in Emacs eingebunden werden können, darunter IRC-Clients, IM-Clients, Adressbücher, MP3-Player und sogar Webserver.

Ein besonderes Merkmal von Emacs ist der Wiki Mode, der das Bearbeiten von Webseiten als Wikitext ermöglicht.

Zum Spaß und zur Demonstration, was mit Emacs Lisp alles möglich ist, enthält Emacs mit ELIZA ein Programm zur Unterhaltung mit einem vom Computer generierten „Psychologischen Psychotherapeuten“ (Aufruf mit „M-x doctor“; „M-x“ ist z. B. „ESC x“ oder „Alt-x“). Das Programm wandelt Aussagen des Benutzers in Fragen um, ermuntert ihn, mehr zu erzählen, und suggeriert Lebensprobleme allgemeinster Art. Ein weiterer nostalgischer Zusatz ist ein Textadventure („M-x dunnet“).

Man kann Emacs auch als eine Umgebung zur Programmierung von Spezialeditoren betrachten; so gibt es einen po-mode, mit dem man Übersetzungen erstellen kann.

Geschichte

Emacs entstand 1976 am MIT zunächst als Sammlung von Makros für den Editor TECO. Der Name ist die Abkürzung von „Editor MACroS“.

Benutzer haben weitere, scherzhafte Deutungen aus Eigenarten von Emacs abgeleitet: Eight Megabytes And Constantly Swapping (Acht Megabyte groß und swappt dauernd) nimmt den für damalige Zeiten großen Arbeitsspeicher-Bedarf aufs Korn, ebenso Emacs Makes Any Computer Slow (Emacs macht jeden Computer langsam). Escape-Meta-Alt-Control-Shift ist eine Anspielung auf die Tastenkombinationen, mit denen die meisten Funktionen von Emacs auszulösen sind.

1984 begann Richard Stallman an einer neuen Implementierung von Emacs, GNU Emacs, zu arbeiten, die das erste Programm des damals entstehenden GNU-Projekts wurde. Die Lizenz des Programms war zu Beginn der Entwicklung die GNU Emacs General Public License. Es war die erste Copyleft-Lizenz und die Grundlage für die später entwickelte GNU General Public License (GPL). GNU Emacs ist zum größten Teil in Emacs Lisp, einem eigenen Dialekt der Lisp-Programmiersprache, programmiert. Den Kern bildet ein in C geschriebener Interpreter für Emacs Lisp. Gerd Moellmann hat Version 21 (21.1 und 21.2) als Hauptprogrammierer betreut und veröffentlicht. Version 22 wurde Anfang 2008 veröffentlicht und Arbeiten an der Version 23 haben begonnen.

Wie Clifford Stoll aufdeckte, ermöglichte ein Bug in Emacs 1986 dem für den KGB spionierenden Hacker Markus Hess den Einbruch in das Lawrence Berkeley National Laboratory.[6]

Varianten

Von Emacs wurden einige Derivate entwickelt,[7] das am weitesten verbreitete ist XEmacs, dessen Projektgruppe sich schon seit längerem mit der Einbindung von GUI-Elementen in Emacs beschäftigt. Aus politischen Gründen scheint es unwahrscheinlich, dass die beiden Projekte GNU Emacs und XEmacs in naher Zukunft zusammengeführt werden können. Bekannt ist auch MicroEmacs, der unter anderem mit AmigaOS ausgeliefert wurde. Ein weiterer Klon ist QEmacs.

Für Mac OS X gibt es mehrere native Varianten, von denen Aquamacs, Carbon Emacs und Emacs.app die bekanntesten sind.

Eine besonders kleine, aber dennoch recht leistungsstarke Version ist Zile. Der Name ist ein rekursives Akronym und bedeutet Zile is lossy Emacs.

Humor

Richard Stallmann hat scherzhafterweise den Editor Emacs zu einer Spaßreligion erhoben, der "Church of Emacs" und bezeichnet sich selbst als St. IGNUcius. Als Glaubensbekenntnis muss man dreimal "There is no system but GNU, and Linux is one of its kernels." sagen.[8] Dazu gibt es noch die Newsgroup alt.religion.emacs, die sich dieser Parodie widmet.

Zitate

  • „Emacs is a great operating system – it lacks a good editor, though.“ (übersetzt in etwa „Emacs ist ein großartiges Betriebssystem – allerdings fehlt ihm ein guter Editor.“) – Thomer M. Gil
  • „When you ask what Emacs does, you are asking a question with no answer, because Emacs doesn't do, it is done to. Emacs just is.“ (übersetzt in etwa „Wenn du fragst, was Emacs tut, stellst du eine Frage ohne Antwort. Emacs macht nicht, sondern ist dazu gemacht. Emacs ist einfach.“ – Scott Dorsey
  • „Emacs started out as a text editor, which became a way of life for many users because they could do all their work on a computer while never exiting from Emacs, and ultimately it became a religion as well.“ (übersetzt in etwa „Emacs begann als Texteditor welcher eine Lebensweise für viele Benutzer wurde, weil man die ganze Arbeit damit erledigen kann ohne Emacs zu verlassen und wurde letztlich zu einer Religion“) - Richard Stallmann

Siehe auch

  • Gnus - Ein E-Mail- und Newsreader für Emacs.
  • SLIME – Eine auf Emacs basierende Entwicklungsumgebung für Common Lisp.

Literatur

Einzelnachweise

  1. Richard Stallman: A new Emacs maintainer: Andrea Corallo. 14. Mai 2024 (englisch, abgerufen am 16. Mai 2024).
  2. Richard Stallman: Stefen Kangas is now an Emacs maintainer. 25. August 2023 (englisch, abgerufen am 22. Juni 2024).
  3. Andrea Corallo: Emacs 30.0.93 pretest is available. 19. Dezember 2024 (englisch, abgerufen am 27. Dezember 2024).
  4. The emacs Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 5. September 2018).
  5. The emacs Open Source Project on Open Hub: Languages Page (English). In: Open Hub. (abgerufen am 28. Oktober 2023).
  6. Clifford Stoll: Kuckucksei. Die Jagd auf die deutschen Hacker, die das Pentagon knackten. Fischer Verlag, Frankfurt/M. 2001, ISBN 3-596-13984-8
  7. Emacs Timeline (englisch)
  8. Richard Stallman als Prophet (englisch)