Softwaretechnologie I KU
Arbeitsumgebung - Emacs


A. Bollin (andi@isys.uni-klu.ac.at)

Quellenangaben

Emacs Version 20.7: ftp://www.itec.uni-klu.ac.at/pub/infocd/packages/sw1/windows/emacsbin.tgz
Java Mode 2.19: ftp://www.itec.uni-klu.ac.at/pub/infocd/packages/sw1/shared/ifi-jde.tgz
Winzip ftp://ftp.winzip.com/download.htm
Weitere Emacstips: http://www.gnu.org/software/emacs/windows/ntemacs.html
JDE Homepage: http://sunsite.auc.dk/jde/
Emacs Homepage: http://www.cs.washington.edu/homes/voelker/ntemacs.html

Wichtige Hinweise

Im folgenden eine kurze Einführung in die Installation des (vorallem im akademischen Bereich) populären und frei verfügbaren Texteditors Emacs. Emacs ist ein sehr vielseitiger ``Editor'', man kann damit im Internet surfen, Mails lesen und verschicken ... und eben Texte schreiben. Dazu bietet Emacs für viele Programmiersprachen eigene ``Modes'' und Entwicklungsumgebungen (die in Lisp geschrieben und als .el Files gespeichert werden) an. Standardmäßig werden nur wenige Umgebungen mitgeliefert, da Emacs aber frei programmierbar ist gibt es mittlerweile eine Vielzahl an ``Modes'' im Internet. Eine dieser Umgebungen heißt ``JDE Mode'' und sollte nach der Installation das Arbeiten mit Java wesentlich erleichtern. Der aktuelle JDE Mode benötigt zusätzlich zwei weitere Modes (speedbar und semantic), diese sind im File ``ifi-jde.tgz'' aber bereits enthalten.

Installation von Emacs 20.7

Nach dem Download (= Speichern der Dateien ``emacsbin-20.7.tgz'', ``winzip.exe'' und ``ifi-jde.tgz'' auf die lokalen Festplatte, z.B. im Ordner C:/Temp) haben sie zwei tar-Archivdateien (d.h. diese Dateien bestehen wieder aus mehreren Dateien) angelegt, die erst ausgepackt werden müssen. Um ein Archiv zu entpacken verwenden Sie zum Beispiel das Tool ``WinZip''. Die Installation von Winzip ist einfach - ein Doppelklick auf diese Datei reicht, und der Install Wizard von Windows hilft Ihnen beim Einrichten dieses Tools). Somit ergibt sich folgende Vorgangsweise:

  1. Installation von Winzip (durch Doppelklick auf die Winzip Datei).
  2. Doppelklick auf die Datei emacsbin-20.7.tgz. Sie werden gefragt, ob das Archiv zunächst in einem temporären Directory entpackt werden soll. Antworten Sie mit ``JA''.
  3. Extrahieren Sie nun das Archiv in einen von Ihnen frei wählbare Ordner (zum Beispiel ``c:/Programme/emacs''). Nach einigen Minuten ist emacs in diesem Ordner entpackt.
  4. Sie müssen Emacs nun initialisieren. Dazu starten Sie das Programm ``addpm'', welches Sie unter ``C:/Programme/emacs/emacs-20.7/bin'' finden, UNBEDINGT vom MS-DOS Prompt aus. D.h. Sie starten die MS-DOS Eingabeaufforderung, wechseln per ``cd C:/Programme/ emacs/emacs-20.7/bin'' in den passenden Ordner und geben dort ``addpm'' ein.
  5. Emacs ist nun installiert. Was nun folgt ist die zusätzliche Installation des Java Modes (eigentlich der drei benötigten Modi). Entpacken Sie den Java Mode in einem von ihnen frei wählbaren Verzeichnis (z.B. ``C:/Programme/emacs/site-lisp'') durch Doppelcklick auf die Datei ``ifi-jde.tgz''. Es werden in diesem Verzeichnis drei Ordner angelegt (jde-2.19, speedbar-0.11 und semantic-1.2).
  6. Nun müssen Sie dem Editor sagen, daß es einen neuen Mode gibt. Dieser Teil ist für Computerneulinge meist der verwirrenste. Wenn man aber immer daran denkt, daß Emacs alle ``neuen'' Informationen in einer Textatei mit dem Namen ``_emacs'' (unter Linux als ``.emacs'') speichert, und eben bei jedem Start aus dieser Datei seine Informationen holt, ist folgender Schritt klar: Eintragen des neuen Modes in der Datei ``_emacs''.
  7. Die Datei ``_emacs'' muß (nach der ersten Installation existiert sie noch nicht, ein Muster finden Sie im File ifi-ide.tgz und am ftp Server unter ``ftp://colossus.itec.uni-klu.ac.at/infocd/ sw1/_emacs``) erst neu erzeugt werden. Es gibt zwei Plätze, wo Sie die Datei hinkopieren können: Entweder im Rootverzeichnis ``C:/'' oder in Ihrem Homeverzeichnis (dazu muß aber die Umgebungsvariable ``HOME''definiert sein).
  8. Eintragen des neuen Modes im File ``_emacs''. Der Eintrag muß im Lisp Format erfolgen. Unter der Annahme, daß obige Ordner verwendet wurden sieht der Eintrag im File wie folgt aus (haben Sie andere Ordner gewählt, so ändern Sie sinngemäß die Zeilen 12-14):
      (add-to-list 'load-path "c:/Programme/Emacs/emacs-20.7/site-lisp/speedbar-0.12/")
      (add-to-list 'load-path "c:/Programme/Emacs/emacs-20.7/site-lisp/semantic-1.2/")
      (add-to-list 'load-path "c:/Programme/Emacs/emacs-20.7/site-lisp/jde-2.1.9/lisp")
    

Das wars. Emacs und der Javamode sind eingerichtet. Achtung! Um generell Java, den Javacomiler und Debugger zu benutzen, müssen Sie unter Windows die Umgebungsvariable ``PATH'' richtig setzten. Liegen Ihre Java Binaries z.B. unter ``c:/Programme/jdk/ jdk-1.3/bin'', so erweitern Sie entweder das File ``autoexec.bat'' um den Eintrag ``set PATH=C:/Programme/jdk/jdk1.3/bin;%PATH%'' oder (z.B. unter Windows NT) oder die PATH Variable unter ``Einstellungen - System - Umgebungsvariablen''.


Es gibt sehr gute Einleitungen zum Thema ``Arbeiten mit dem Emacs'' (siehe Quellenangaben), hier aber ein kurzer Überblick über die wichtigsten Eigenschaften:

  1. Emacs ist ein Editor für User, die nicht dauernd zwischen der Maus und der Tastatur wechseln wollen. Alle Commands (wie das Öffnen von Files, Speichern, Anzeigen der Hilfe) sind über Tastaturkürzel erreichbar. Es gibt zwei wichtige Tasten, die ein solches Kürzel einleiten: die ESC-Taste (im Emacs Minibuffer, das ist die Zeile am Fensterende, als ``M-'' abgekürzt) und die STRG-Taste (im Minibuffer als ``C-'' abgekürzt). Das Kürzel ``C-x'' bedeutet, daß die Tasten ``STRG und x'' GLEICHZEITIG gedrückt werden (müssen). Da es sehr viele mögliche Commands gibt, bestehen die Commands meist aus einer Kombination von zwei oder drei Kürzel (Keystrokes). ``C-x C-f'' zum Beispiel bedeutet das Öffnen eines Files. Egal in welchem Mode oder in welcher Kürzelkombination Sie sich befinden, Sie können immer mit ``C-g'' die Eingabe abbrechen. Einige Commands erlauben die Übergabe von Argumenten. Man denke nur an die Angabe des Dateiamens beim Öffnen einer Datei. Emacs erwartet diese Eingabe im sog. Minibuffer, das ist die letzte Zeile am unteren Ende des Fensters. Die Eingabe wird mit Return abgeschlossen.
  2. Emacs kann mehrere Dateien (und Modes) gleichzeitig geöffnet haben. Diese sind in sog. Buffer abgelegt. Eigene Fenster werden als ``Frames'' bezeichnet. Eine Liste aller offenen Buffer und Frames erhalten Sie über das Menu ``Buffers''. Eine weitere Eigenheit von Emacs ist, daß in einem Frame auch zwei Buffer gleichzeitig angezeigt werden können (d.h. ein Buffer in der oberen Hälfte, der andere in der unteren). Sie können die Trennlinie mit der Maus (linke Mausetaste gedrückt halten) verschieben und die Zwei- (oder auch Mehr-)teilung mit der mittleren Maustaste beenden.

Der Java Mode wird unter emacs automatisch beim Öffnen eines .java Files gestartet. Zum Java Mode selbst gibt es eine sehr gute Online-Hilfe im HTML Format (im Java Mode über ``JDE$\rightarrow$Help$\rightarrow$JDE Users Guide'' erreichbar). (Den Java mode können Sie übrigens auch einfach so mittels ``M-x jde-mode'' aktivieren!) Eine weitere Erleichterung ist die Verwendung der Speedbar. Sie ermöglicht Ihnen einen Überblick über Ihre Klassen uns gestattet das Browsen (Wechseln zwischen Klassen, Methoden, ...) Ihrer Projekte. Die Speedbar erreichen sie vom JDE-mode aus über das Menü ``JDE$\rightarrow$Speedbar''. Eine Beschreibung zur Speedbar erhalten Sie, indem Sie (nach Aktivierung des Speedbarfensters) den Command ``M-x describe-mode'' eingeben.


Viel Spaß beim Arbeitem mit Emacs.