Infos Home | Impressum | Original Artikel & Autoren Liste


Emacs Lisp

Emacs Lisp ist ein Dialekt der Programmiersprache LISP, in der der größte Teil des Editors Emacs programmiert ist und die auch zur Erweiterung des Editors genutzt werden kann. Alle Editorfunktionen liegen als LISP-Funktionenen vor. Die einfachsten davon sind in C implementiert. Tastenkombinationen sind über eine so genannte keymap den Funktionen zugewiesen. Emacs-LISP ist für die außerordentliche Erweiterbarkeit dieses Editors verantwortlich.

Emacs stellt dem Benutzer standardmäßig einen Buffer (Textfenster) zur Verfügung, in dem LISP-Funktionen ausgewertet werden können. Einstellungen des Editors werden in LISP-Variablen festgehalten. Sie können interaktiv gesetzt werden oder mit einer Initialisierungsdatei festgelegt werden.

Quelltext und Byte-Code

Emacs-Lisp-Quelltext wird in Textdateien gespeichert. Die Dateien besitzen die Dateikennung ".el". Eine Ausnahme ist die Startdatei, deren Befehle beim Aufrufen des Editors abgearbeitet werden. Sie heißt ".emacs" und befindet sich im Home-Verzeichnis. Dies kann auch unter Windows durch Setzen der Umgebungsvariablen Home festgelegt werden. Ein Lispinterpreter führt den in den Textdateien enthaltenen Programmtext aus. Funktionsdefinitionen werden eingelesen und stehen während der Editorlaufzeit zur Verfügung. Funktionen und Variablen können frei neu definiert oder verändert werden.

Ein Großteil der Funktionen wird erst dann geladen, wenn er benötigt wird.

Die Basisfunktionen des Editors sind in C geschrieben. Sie werden auf English primitives genannt; es handelt sich gewissermaßen um die eingebauten Funktionen. Diese werden von den LISP-Funktionen benutzt; sie können aber nicht verändert werden. (Außer man schreibt sie in C neu und rekompiliert den ganzen Editor, was möglich ist, da er ja als Open-Source-Programm vorliegt.)

Emacs-Lisp bietet wie die spätere Programmiersprache Java auch die Möglichkeit den Quelltext in Byte-Code zu übersetzen (Menu Compile). Die produzierten Dateien haben dann die Kennung ".elc". Die kompilierten Programme benötigen weniger Speicherplatz und werden rascher ausgeführt.
Der Ursprungsartikel stammt von der deutschsprachigen Wiki pedia (siehe oben: "Original Artikel & Autoren Liste").
Der Text steht unter der GNU Freie Dokumentation Lizenz.