Emacs

Emacs ist vermutlich der leistungsfähigste Texteditor überhaupt. Er kann fast alles und ist dazu noch unbegrenzt erweiterbar mit Hilfe der eingebauten auf lisp basierenden Programmiersprache. Mit Emacs können Sie im Web surfen, Ihre E-Mails und Newsbeiträge lesen, Kaffee kochen, usw. Sie werden in diesem Kapitel nicht all diese Dinge lernen, aber Sie bekommen einen guten Einstieg. Sie werden lernen, wie Sie Emacs starten, eine oder mehrere Dateien bearbeiten, diese wieder speichern und Emacs verlassen.

Wenn Sie nach der Lektüre dieses Kapitels mehr über Emacs wissen wollen, sollten Sie sich die Website Tutorial Introduction to GNU Emacs ansehen.

Kurzer Überblick

Emacs zu starten ist relativ simpel:

emacs [Datei(en)]

Emacs wird jede als Argument angegebene Datei in einem eigenen Puffer öffnen, wobei maximal 2 Puffer gleichzeitig sichtbar sind. Wenn Sie Emacs ohne die Angabe von Dateinamen starten finden Sie sich in einem Puffer mit Namen *scratch* wieder. Innerhalb einer grafischen Umgebung werden Sie auch ein Menü sehen. In diesem Kapitel widmen wir uns jedoch dem Betrieb von Emacs mit der Tastatur.

Der Anfang

Jetzt ist es an der Zeit, in die Praxis einzusteigen. In unserem Beispiel werden wir mit dem Öffnen von 2 Dateien anfangen: datei1 und datei2. Falls diese Dateien nicht schon existieren werden sie erstellt, sobald Sie etwas in sie einfügen:

$ emacs datei1 datei2

Sie werden ein Bild wie das Folgende sehen:

Abbildung 4.1. Emacs, Editieren von 2 Dateien

Emacs, Editieren von 2 Dateien

Wie Sie sehen können, wurden 2 Puffer geöffnet, je einer pro Datei. Einen dritten Puffer sehen Sie am unteren Rand des Bildschirms (da steht (Neue Datei)); das ist der sogenannte Mini-Puffer. Sie können auf diesen Puffer nicht ohne Weiteres zugreifen, sondern nur wenn Emacs Sie dazu einlädt. Um den Inhalt des aktuellen Puffers zu ändern geben Sie jetzt Strg+x o ein. Schreiben Sie wie in einem „normalen“ Texteditor und löschen Sie Zeichen mit der Taste Entf oder Backspace.

Zum Bewegen innerhalb des Puffers benutzen Sie die Pfeiltasten oder eine der folgenden Tasten-Kombinationen: Strg+a führt sie zum Anfang und Strg+e zum Ende einer Zeile, Alt+< zum Anfang und Alt+> zum Ende des Puffers. Es gibt viele solcher Kombinationen, sogar welche für die Pfeiltasten [10].

Wenn Sie das Editieren beenden und Ihre geänderte Datei auf der Festplatte speichern wollen, geben Sie Strg+x Strg+s ein. Soll die Datei unter einem anderen Namen gesichert werden, so lautet die Kombination Strg+x Strg+w. Emacs fragt Sie in diesem Fall nach dem neuen Namen der Datei. Sie können dazu natürlich die automatische Komplettierung benutzen.

Arbeiten mit Puffern

Sie können bei Bedarf auch auf die Darstellung eines einzelnen Puffers umschalten. Dazu gibt es zwei Möglichkeiten:

  • Wenn der Puffer, in dem Sie sich befinden, versteckt werden soll, tippen Sie Strg+x 0

  • Wenn der Puffer, in dem Sie sich befinden, sichtbar bleiben soll, lautet die Kombination Strg+x 1.

Ebenso gibt es zwei Möglichkeiten, einen versteckten Puffer wieder sichtbar zu machen:

  • Geben Sie Strg+x b ein und geben Sie den Namen des Puffers an oder

  • schreiben Sie Strg+x Strg+b. Hiermit öffnen Sie einen neuen Puffer mit der sogenannten *Buffer Liste*. Sie können sich in diesem Puffer mit der Kombination Strg+x o umherbewegen und den gewünschten Puffer auswählen und die Taste Enter drücken oder den Namen des Puffers aus der Liste in den Mini-Puffer eingeben. Nachdem Sie Ihre Wahl getroffen haben, verschwindet der Puffer mit der *Buffer Liste* wieder im Hintergrund.

Nach dem Editieren einer Datei können Sie damit verbundene Puffer mit der Kombination Strg+x k wieder schließen. Emacs wird Sie fragen, welcher Puffer geschlossen werden soll. Die Vorgabe ist der Puffer, in dem Sie sich befinden. Falls Sie einen anderen Puffer schließen wollen, geben Sie dessen Namen direkt ein oder drücken die TAB-Taste: nun öffnet Emacs einen weiteren Puffer mit einer Liste von möglichen Namen. Wählen Sie einen aus und drücken Sie zur Bestätigung auf Enter.

Sie können zu jeder Zeit auch zwei Puffer gleichzeitig wieder zur Anzeige bringen, indem Sie Strg+x 2 eingeben. Standardgemäß enthält der zweite Puffer eine Kopie der Datei, die der aktuelle Puffer enthält (was bei der Bearbeitung von großen Dateien an mehreren Stellen „zur gleichen Zeit“ sehr hilfreich ist). Zum Bewegen zwischen den Puffern benutzen Sie die vorher beschriebenen Befehle.

Sie können jederzeit eine weitere Datei mit dem Befehl Strg+x Strg+f öffnen. Emacs wird nach dem Namen fragen und Sie geben ihn ein, wobei Sie natürlich wieder die automatische Wortergänzung einsetzen können.

Kopieren, Ausschneiden, Einfügen, Suchen

Stellen Sie sich folgende Situation vor: Abbildung 4.2, „Emacs, vor dem Kopieren eines Textblocks“.

Abbildung 4.2. Emacs, vor dem Kopieren eines Textblocks

Emacs, vor dem Kopieren eines Textblocks

Zuerst müssen Sie den zu kopierenden Text markieren. In diesem Beispiel wollen wir den gesamten Satz kopieren. Zuerst setzen wir eine Marke an den Anfang des Bereiches. Nehmen wir an, der Cursor ist da, wo ihn die Abbildung weiter oben zeigt, dann wäre die Befehlsfolge: Strg+Leer (Strg-Taste + Leertaste). Emacs zeigt daraufhin die Meldung Mark set im Mini-Puffer an. Nun gehen wir mit dem Befehl Strg+a an den Anfang der Zeile. Der jetzt ausgewählte Bereich zum Kopieren oder Ausschneiden umfasst den gesamten Bereich zwischen der gesetzten Marke und der aktuellen Position des Cursors, also die ganze Zeile in unserem Beispiel. Jetzt stehen zwei Befehls-Sequenzen zur Verfügung–Alt+w (zum Kopieren) und Strg+w (zum Ausschneiden). Beim Kopieren geht Emacs kurz zum markierten Punkt zurück um Ihnen nochmal den in Frage kommenden Bereich anzuzeigen.

Schließlich müssen Sie zu dem Puffer gehen, in den Sie den Text einfügen wollen und geben Sie da das Kommando Strg+y. Damit sollte das Resultat so aussehen:

Abbildung 4.3. Text kopieren mit Emacs

Text kopieren mit Emacs

Was Sie hier tatsächlich gemacht haben: Sie haben den Text in den sogenannten Zwischenspeicher des Emacs kopiert. Dieser Zwischenspeicher enthält alle kopierten oder ausgeschnittenen Textteile seit dem Start des Programms. Jeglicher kopierter oder ausgeschnittener Bereich landet an erster Position des Zwischenspeichers. Die Tastenfolge Strg+y fügt lediglich den Bereich ein, der an Position 1 steht. Um an die weiteren Bereiche zu gelangen, drücken Sie erst die Tastenfolge Strg+y und dann solange Alt+y bis Sie den gewünschten Textteil gefunden haben.

Die Suche nach bestimmten Textteilen starten Sie durch die Eingabe von Strg+s. Emacs fordert Sie dann auf, das Suchmuster einzugeben. Eine Fortsetzung einer Suche im gleichen Puffer nach dem gleichen Muster wie vorher starten Sie mit Strg+s. Wenn Emacs das Ende des Puffers erreicht hat können Sie mit Strg+s die Suche erneut am Anfang des Puffers beginnen lassen. Mit der Taste Enter beenden Sie die Suche.

Die Aktion „Suchen und Ersetzen“ starten Sie durch Alt+%. Emacs fragt Sie zuerst nach dem zu suchen den Text, dann nach dem Ersatztext und bittet Sie bei jeder Fundstelle um Bestätigung, bevor eine Änderung vorgenommen wird.

Sie machen eine Aktion rückgängig, indem Sie die Tastenfolge Strg+x u eingeben. Diese Eingabe können Sie beliebig oft vornehmen.

Emacs beenden

Das Tastenkürzel dafür lautet Strg+x Strg+c. Falls Sie die letzten Änderungen nicht gespeichert haben, werden Sie von Emacs darauf aufmerksam gefragt.



[10] Emacs wurde für den Betrieb auf vielen verschiedenen Computer-Modellen geschrieben, darunter auch Modelle, deren Tastaturen keine Pfeiltasten besitzen. Dieser Grundsatz gilt noch mehr für den Editor Vi.