Emacs: Unterschied zwischen den Versionen
(9 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Einführung == | == Einführung == | ||
[https://www.gnu.org/software/emacs/ Emacs] ist einer der ältesten und vielseitigsten Texteditoren | [https://www.gnu.org/software/emacs/ Emacs] ist einer der ältesten und vielseitigsten Texteditoren | ||
* Die GNU-Emacs-Version wurde ursprünglich 1984 geschrieben und ist für ihre leistungsstarken und umfangreichen Bearbeitungsfunktionen bekannt | |||
* Sie kann mit verschiedenen „Modi“ angepasst und erweitert werden, sodass sie wie eine integrierte Entwicklungsumgebung (IDE) für Programmiersprachen wie Java, C und Python verwendet werden kann | |||
Für diejenigen, die sowohl den Vi als auch die benutzerfreundlichen Nano-Texteditoren verwendet haben, stellt Emacs eine Zwischenlösung dar | Für diejenigen, die sowohl den Vi als auch die benutzerfreundlichen Nano-Texteditoren verwendet haben, stellt Emacs eine Zwischenlösung dar | ||
* Seine Stärken und Funktionen ähneln denen von Vi, während seine Menüs, Hilfedateien und Befehlstasten mit denen von Nano vergleichbar sind | |||
== Installieren == | |||
sudo apt install emacs | |||
== | == Verwendung der Benutzeroberfläche == | ||
Starten Sie Emacs, indem Sie den Befehl <tt>emacs</tt> in Ihrem Terminal eingeben | |||
emacs | |||
Emacs startet mit einem leeren Bearbeitungspuffer und wartet darauf, dass Sie mit der Eingabe beginnen | |||
* Wenn Emacs ohne eine angegebene Datei gestartet wird, zeigt das Programm eine Willkommensnachricht an | |||
Emacs startet mit einem leeren Bearbeitungspuffer und wartet darauf, dass Sie mit der Eingabe beginnen | |||
[[Image:Bild1.png]] | [[Image:Bild1.png]] | ||
Um eine neue Datei zu erstellen, bewegen Sie den Cursor mit der <tt>TAB</tt>-Taste auf den Link „Neue Datei öffnen“ und drücken Sie dann <tt>ENTER</tt> | Um eine neue Datei zu erstellen, bewegen Sie den Cursor mit der <tt>TAB</tt>-Taste auf den Link „Neue Datei öffnen“ und drücken Sie dann <tt>ENTER</tt> | ||
* Sie können auch <tt>STRG+X</tt> und dann <tt>STRG+F</tt> drücken, um eine neue Datei zu erstellen | |||
* Am Ende Ihres Terminals erscheint eine Eingabeaufforderung, in der Sie nach einem Dateinamen gefragt werden | |||
[[Image:Bild2.png]] | [[Image:Bild2.png]] | ||
Geben Sie einen Dateinamen ein, um mit der Textbearbeitung zu beginnen | Geben Sie einen Dateinamen ein, um mit der Textbearbeitung zu beginnen | ||
* Im folgenden Beispiel wird verwendet | |||
* Sie können diese Datei benennen, wie Sie möchten | |||
* Drücken Sie nach Eingabe des Dateinamens <tt>ENTER</tt>, um fortzufahren | |||
Eine leere Datei steht für die Texteingabe bereit | Eine leere Datei steht für die Texteingabe bereit | ||
[[Image:Bild3.png]] | [[Image:Bild3.png]] | ||
Am oberen Bildschirmrand befindet sich ein Menü | Am oberen Bildschirmrand befindet sich ein Menü | ||
* Nach dem Menü befindet sich ein großer Bearbeitungsbereich | |||
* Dieser wird als „Hauptpuffer“ bezeichnet, in dem Sie Ihren Text eingeben oder den Inhalt einer Datei anzeigen können | |||
Wenn Emacs eine vorhandene Datei auf der Festplatte bearbeitet, wird zunächst eine Kopie dieses Dokuments in den Speicher geladen und dann im Hauptbearbeitungsfenster angezeigt | Wenn Emacs eine vorhandene Datei auf der Festplatte bearbeitet, wird zunächst eine Kopie dieses Dokuments in den Speicher geladen und dann im Hauptbearbeitungsfenster angezeigt | ||
* Dieser Bereich im Speicher wird als „Puffer“ bezeichnet | |||
* Während Sie das Dokument bearbeiten, werden alle Änderungen, die Sie im Bearbeitungsbereich vornehmen, auf den Puffer angewendet, während die Originaldatei auf der Festplatte unverändert bleibt | |||
* Gelegentlich speichert Emacs automatisch im Hintergrund, aber erst wenn Sie das Dokument manuell speichern, werden die Änderungen auf die Festplatte geschrieben | |||
* Dasselbe gilt auch für eine neue Datei | |||
* Alle Änderungen werden im Puffer vorgenommen, bis Sie ihn speichern | |||
* Der Hauptbearbeitungsbereich in Emacs ist Ihre Ansicht des Puffers | |||
Nach dem Hauptpuffer wird am unteren Bildschirmrand eine hervorgehobene Textleiste angezeigt | Nach dem Hauptpuffer wird am unteren Bildschirmrand eine hervorgehobene Textleiste angezeigt | ||
* Diese wird als „Statusleiste“ oder „Moduszeile“ bezeichnet | |||
* Der hier angezeigte Text hängt davon ab, in welchem Modus sich Emacs gerade befindet | |||
Die Statusleiste enthält unter anderem | |||
* Name der aktuellen Datei | |||
* Aktuelle Cursorposition | |||
* Aktueller Bearbeitungsmodus | * Aktueller Bearbeitungsmodus | ||
* Status der Datei (-- für eine unveränderte Datei, ** für eine Datei mit nicht gespeicherten Änderungen und %% für schreibgeschützte Dateien) | * Status der Datei (-- für eine unveränderte Datei, | ||
** für eine Datei mit nicht gespeicherten Änderungen und %% für schreibgeschützte Dateien) | |||
Schließlich gibt es eine einzelne Leerzeile nach der Statusleiste, wo der Bildschirm endet | Schließlich gibt es eine einzelne Leerzeile nach der Statusleiste, wo der Bildschirm endet | ||
* In diesem Beispiel wird der Text „(Neue Datei)“ angezeigt | |||
* Dieser Bereich wird als „Minipuffer“ bezeichnet | |||
* Emacs ist ein befehlsgesteuertes Tool und der Minipuffer ist Ihr Hauptinteraktionspunkt | |||
* Hier fordert Emacs Sie zur Eingabe von Befehlen auf und zeigt die Ausgabe an | |||
Die textbasierte Version von Emacs behandelt Fenster anders als die GUI-basierte Version | Die textbasierte Version von Emacs behandelt Fenster anders als die GUI-basierte Version | ||
* Im Gegensatz zu GUI-basierten Anwendungen werden textbasierte Emacs-Fenster nicht eingeblendet, da dies in einer Terminal- oder Konsolensitzung physisch nicht möglich ist | |||
* Wenn Emacs ein neues Fenster öffnen muss, wird sein Hauptpuffer in zwei Teile geteilt, wie bei zwei Frames in einem Browser | |||
* Die obere Hälfte zeigt den Hauptpuffer und die untere Hälfte den neuen Inhalt an | |||
* Ein Beispiel dafür, dass Emacs ein neues Fenster öffnet, ist der Zugriff auf seine Hilfedateien oder Tutorials | |||
=== Zugriff auf die Menüs === | === Zugriff auf die Menüs === | ||
Wenn Emacs startet, nimmt es normalerweise den gesamten Bildschirm ein | Wenn Emacs startet, nimmt es normalerweise den gesamten Bildschirm ein | ||
* Die meisten seiner Funktionen sind über eine Menüleiste am oberen Bildschirmrand zugänglich | |||
Im Gegensatz zu GUI-basierten Programmen können textbasierte Menüs nicht per Mausklick geöffnet werden | Im Gegensatz zu GUI-basierten Programmen können textbasierte Menüs nicht per Mausklick geöffnet werden | ||
* Tatsächlich können Sie die Menüs nicht mit einer Tastenkombination markieren und durchblättern | |||
Um auf die Menüs zuzugreifen, drücken Sie die Taste <tt>F10</tt> | Um auf die Menüs zuzugreifen, drücken Sie die Taste <tt>F10</tt> | ||
* Dadurch wird ein weiteres Fenster unter dem Hauptpuffer geöffnet und eine Liste mit Tasten zum Zugriff auf die Menüelemente angezeigt | |||
* Der Minipuffer fordert Sie auf, die erforderliche Taste einzugeben | |||
* Sobald Sie diese Taste drücken, ändert sich der Inhalt des neuen Fensters und zeigt die nächste Ebene von Optionen an | |||
Um die Menüs zu verlassen, drücken Sie die Taste <tt>ESC</tt> dreimal, unabhängig davon, wie tief Sie sich in den Menüs befinden | Um die Menüs zu verlassen, drücken Sie die Taste <tt>ESC</tt> dreimal, unabhängig davon, wie tief Sie sich in den Menüs befinden | ||
* Dadurch wird in der Regel das Menüfenster geschlossen und Sie kehren zum Hauptpuffer zurück | |||
Hier sind einige der Optionen, die im Menü <tt>„Tools“</tt> verfügbar sind | Hier sind einige der Optionen, die im Menü <tt>„Tools“</tt> verfügbar sind | ||
* Kalender | * Kalender | ||
* Einfacher Taschenrechner | * Einfacher Taschenrechner | ||
Zeile 87: | Zeile 98: | ||
* Dateien vergleichen und zusammenführen | * Dateien vergleichen und zusammenführen | ||
* Spiele | * Spiele | ||
=== Zugriff auf Hilfe und Tutorials === | === Zugriff auf Hilfe und Tutorials === | ||
Emacs verfügt über ein umfangreiches Hilfesystem und Tutorials | Emacs verfügt über ein umfangreiches Hilfesystem und Tutorials | ||
* Um darauf zuzugreifen, können Sie entweder das Menü verwenden, indem Sie <tt>F10</tt> drücken und die Pfeiltasten <tt>NACH RECHTS</tt> oder <tt>NACH LINKS</tt> drücken, um <tt>Hilfe</tt> auszuwählen, oder <tt>STRG+H</tt> und dann eine entsprechende Taste drücken | |||
* Beispielsweise können Sie nach dem Drücken von <tt>STRG+H</tt> eine der folgenden Tasten eingeben, um FAQs, Tutorials, Nachrichten und andere Themen zu überprüfen | |||
* <tt>t</tt> für ein Emacs-Tutorial | * <tt>t</tt> für ein Emacs-Tutorial | ||
* <tt>STRG+F</tt> für eine FAQ | * <tt>STRG+F</tt> für eine FAQ | ||
Zeile 98: | Zeile 109: | ||
* <tt>STRG+E</tt>, um zusätzliche Pakete zu finden | * <tt>STRG+E</tt>, um zusätzliche Pakete zu finden | ||
== Verwendung von Befehlstasten == | |||
Nachdem Sie sich mit der Benutzeroberfläche vertraut gemacht haben, können Sie sich mit den Befehlstasten von Emacs vertraut machen | |||
* Wenn Sie eine Datei öffnen, können Sie gleichzeitig mit dem Tippen und dem Ausgeben von Befehlen beginnen | |||
Befehlsfunktionen umfassen in der Regel zwei oder drei Tasten | |||
* Am häufigsten wird die <tt>STRG</tt>-Taste verwendet, gefolgt von der <tt>ALT</tt>- oder <tt>ESC</tt>-Taste. <tt>STRG</tt> wird in der Emacs-Umgebung in Kurzform als „C“ angezeigt | |||
* Notizen in Emacs wie <tt>C-x C-c</tt> bedeuten, dass Sie die Tasten <tt>STRG+X</tt> zusammen drücken und dann <tt>STRG+C</tt> drücken. Ähnlich bedeutet <tt>C-h t</tt>, dass Sie <tt>STRG+H</tt> zusammen drücken, dann beide Tasten loslassen und <tt>t</tt> drücken | |||
Die Tasten <tt>ALT</tt> und <tt>ESC</tt> werden in Emacs als „Meta-Tasten“ bezeichnet | |||
* Auf Apple-Computern verwenden Sie anstelle von <tt>ALT</tt> die <tt>OPTION</tt>-Taste | |||
* Andere Tastaturen verwenden eine <tt>EDIT</tt>-Taste. Ähnlich wie bei der <tt>STRG</tt>-Taste verwendet Emacs Mehrtastenfunktionen mit der Meta-Taste | |||
* Eine Notation wie <tt>M-x</tt> bedeutet beispielsweise, dass Sie <tt>ALT</tt> oder <tt>OPTION</tt> und <tt>x</tt> gleichzeitig drücken | |||
* Ebenso können Sie <tt>ESC+X</tt> verwenden, um denselben Befehl auszuführen | |||
Die Tasten <tt>ALT</tt> und <tt>ESC</tt> werden in Emacs als „Meta-Tasten“ bezeichnet | |||
Die <tt>ENTER</tt>-Taste wird in Emacs als <tt>RET</tt> angezeigt, was für „Return“ steht | Die <tt>ENTER</tt>-Taste wird in Emacs als <tt>RET</tt> angezeigt, was für „Return“ steht | ||
* Die <tt>ESC</tt>-Taste wird oft als <tt>E</tt> angezeigt | |||
Mit der <tt>ESC</tt>-Taste können Sie einen Befehl oder eine Eingabeaufforderung abbrechen | Mit der <tt>ESC</tt>-Taste können Sie einen Befehl oder eine Eingabeaufforderung abbrechen | ||
* Sie können beispielsweise mehrmals <tt>ESC</tt> drücken, um ein bestimmtes Menü zu verlassen | |||
* Eine andere Möglichkeit, einen Vorgang abzubrechen, ist das Drücken von <tt>STRG+G</tt> | |||
=== Speichern und Beenden === | === Speichern und Beenden === | ||
Wenn Sie Änderungen an Ihrem Dokument vorgenommen oder Text geschrieben haben, können Sie es speichern, indem Sie <tt>STRG+X</tt> und anschließend <tt>STRG+S</tt> drücken | Wenn Sie Änderungen an Ihrem Dokument vorgenommen oder Text geschrieben haben, können Sie es speichern, indem Sie <tt>STRG+X</tt> und anschließend <tt>STRG+S</tt> drücken | ||
Der Minipuffer gibt die folgende Meldung aus | |||
Wrote /home/sammy/myfile.txt | |||
Sie können Emacs verlassen, indem Sie <tt>STRG+X</tt> und dann <tt>STRG+C</tt> drücken | |||
Wenn die Datei vor dem Verlassen nicht manuell gespeichert wurde, erhalten Sie diese Meldung | |||
Datei speichern /home/sammy/myfile.txt? (y, n, !, ., q, C-r, C-f, d oder C-h) | |||
Drücken Sie <tt>Y</tt>, um die Datei zu speichern | |||
Wenn Sie <tt>N</tt> für Nein drücken, erhalten Sie diese Meldung | |||
Geänderte Puffer vorhanden; trotzdem beenden? (Ja oder Nein) | Geänderte Puffer vorhanden; trotzdem beenden? (Ja oder Nein) | ||
Geben Sie <tt>Ja</tt> ein, um das Programm ohne Speichern zu beenden | Geben Sie <tt>Ja</tt> ein, um das Programm ohne Speichern zu beenden | ||
=== Navigieren in Text === | === Navigieren in Text === | ||
Das Navigieren durch ein langes Dokument oder Hilfethema kann eine mühsame Aufgabe sein | Das Navigieren durch ein langes Dokument oder Hilfethema kann eine mühsame Aufgabe sein | ||
* Glücklicherweise gibt es in Emacs mehrere Möglichkeiten, in einer Datei zu navigieren | |||
; Gängiger Navigationsfunktionen | |||
{| class="wikitable options" | |||
|- | |||
{| | ! Funktion !! Tasten | ||
|- | |- | ||
! | | Nächsten Zeile || <tt>STRG+N</tt> (N für ‚Next‘) | ||
! | |- | ||
|- | | Vorherigen Zeile || <tt>STRG+P</tt> (P für „Vorherige“) | ||
| | |- | ||
|| <tt>STRG+N</tt> (N für ‚Next‘) | | Ein Zeichen vorwärts || <tt>STRG+F</tt> (F für ‚Vorwärts‘) | ||
|- | |- | ||
|| | | Ein Zeichen rückwärts || <tt>STRG+B</tt> (B für „Rückwärts“) | ||
|<tt>STRG+P</tt> (P für „Vorherige“) | |- | ||
|- | | Ein Wort vorwärts || <tt>META+F</tt> (F für vorwärts) | ||
| Ein Zeichen vorwärts | |- | ||
|<tt>STRG+F</tt> (F für ‚Vorwärts‘) | | Ein Wort rückwärts || <tt>META+B</tt> (B für rückwärts) | ||
|- | |- | ||
| Ein Zeichen rückwärts | | Anfang der Zeile || <tt>STRG+A</tt> | ||
|<tt>STRG+B</tt> (B für „Rückwärts“) | |- | ||
|- | | Ende der Zeile || <tt>STRG+E</tt> (E für Ende) | ||
| | |- | ||
| | | Anfang des Satzes || <tt>META+A</tt> | ||
|- | |- | ||
| | | Ende des Satzes || <tt>META+E</tt> (E für Ende) | ||
| | |- | ||
|- | | Eine Seite nach unten || <tt>STRG+V</tt> (oder PgDn) | ||
| | |- | ||
|| <tt>STRG+A</tt> | | Eine Seite nach oben || <tt>META+V</tt> (oder PgUp) | ||
|- | |- | ||
| | | Anfang der Datei || <tt>META+</tt>(Alt + Umschalt + ‚<‘) | ||
|| <tt>STRG+E</tt> (E für Ende) | |- | ||
|- | | Ende der Datei || <tt>META+</tt>(Alt + Umschalt + „>“) | ||
| | |||
|<tt>META+A</tt> | |||
|- | |||
| | |||
|<tt>META+E</tt> (E für Ende) | |||
|- | |||
| | |||
| | |||
|- | |||
| | |||
| | |||
|- | |||
| | |||
|<tt>META+</tt>(Alt + Umschalt + ‚<‘) | |||
|- | |||
| | |||
|<tt>META+</tt>(Alt + Umschalt + „>“) | |||
|- | |- | ||
|} | |} | ||
Denken Sie daran, dass <tt>META</tt> bedeutet, dass Sie eine der folgenden Tasten verwenden können: <tt>ALT</tt>, <tt>ESC</tt>, <tt>OPTION</tt> oder <tt>EDIT</tt> | |||
== Bearbeitungsfunktionen == | |||
Wenn Sie speziellere Aufgaben ausführen müssen, die in gängigen Textverarbeitungsprogrammen üblich sind, wie das Auswählen oder Hervorheben eines bestimmten Abschnitts einer Textdatei, können Sie dies in Emacs tun | |||
== | |||
Wenn Sie speziellere Aufgaben ausführen müssen, die in gängigen Textverarbeitungsprogrammen üblich sind, wie das Auswählen oder Hervorheben eines bestimmten Abschnitts einer Textdatei, können Sie dies in Emacs tun | |||
=== Textbereiche markieren === | === Textbereiche markieren === | ||
Um einen Textbereich zu markieren, gehen Sie folgendermaßen vor: * Bewegen Sie den Cursor an die Stelle, an der die Auswahl beginnen soll | Um einen Textbereich zu markieren, gehen Sie folgendermaßen vor: * Bewegen Sie den Cursor an die Stelle, an der die Auswahl beginnen soll | ||
* Drücken Sie <tt>STRG+LEERTASTE</tt> oder <tt>STRG+@</tt>, um eine Markierung für den Beginn der Texthervorhebung zu setzen | * Sie können eine der zuvor beschriebenen Methoden verwenden, um den Cursor zu bewegen | ||
* Bewegen Sie den Cursor an die Stelle, an der der Bereich enden soll | * Drücken Sie <tt>STRG+LEERTASTE</tt> oder <tt>STRG+@</tt>, um eine Markierung für den Beginn der Texthervorhebung zu setzen | ||
* Der Text wird bis zu der Stelle hervorgehoben, an der sich der Cursor jetzt befindet | * Im Minipuffer wird die Statusmeldung <tt>Markierung aktiviert</tt> angezeigt | ||
* Drücken Sie zweimal <tt>STRG+LEERTASTE</tt> oder <tt>STRG+@</tt>, um die Markierung des hervorgehobenen Textes aufzuheben | * Bewegen Sie den Cursor an die Stelle, an der der Bereich enden soll | ||
* Verwenden Sie dazu eine der zuvor beschriebenen Tastenkombinationen | |||
* Der Text wird bis zu der Stelle hervorgehoben, an der sich der Cursor jetzt befindet | |||
* Drücken Sie zweimal <tt>STRG+LEERTASTE</tt> oder <tt>STRG+@</tt>, um die Markierung des hervorgehobenen Textes aufzuheben | |||
* Im Minipuffer wird die Statusmeldung <tt>Markierung deaktiviert</tt> angezeigt | |||
Alternativ können Sie wie in einem Textverarbeitungsprogramm die <tt>UMSCHALTTASTE</tt> gedrückt halten und den Cursor mit den <tt>AUF-</tt> oder <tt>AB-</tt> Pfeiltasten auf Ihrer Tastatur bewegen, um Ihre Auswahl zu treffen | Alternativ können Sie wie in einem Textverarbeitungsprogramm die <tt>UMSCHALTTASTE</tt> gedrückt halten und den Cursor mit den <tt>AUF-</tt> oder <tt>AB-</tt> Pfeiltasten auf Ihrer Tastatur bewegen, um Ihre Auswahl zu treffen | ||
Wenn Sie den Absatz auswählen möchten, auf dem sich der Cursor gerade befindet, drücken Sie <tt>META+H</tt> | Wenn Sie den Absatz auswählen möchten, auf dem sich der Cursor gerade befindet, drücken Sie <tt>META+H</tt> | ||
* Wenn Sie danach kontinuierlich <tt>META+h</tt> drücken, werden die nächsten Absätze in Ihrer Textdatei ausgewählt | |||
Wenn Sie den gesamten Inhalt des Hauptpuffers auswählen möchten (d. h. „Alles auswählen“), drücken Sie <tt>STRG+X</tt> und dann <tt>h</tt> | Wenn Sie den gesamten Inhalt des Hauptpuffers auswählen möchten (d. h. „Alles auswählen“), drücken Sie <tt>STRG+X</tt> und dann <tt>h</tt> | ||
=== Ausschneiden, Kopieren und Einfügen von Text === | === Ausschneiden, Kopieren und Einfügen von Text === | ||
Ähnlich wie in einem Textverarbeitungsprogramm können Sie Text kopieren, ausschneiden und einfügen | Ähnlich wie in einem Textverarbeitungsprogramm können Sie Text kopieren, ausschneiden und einfügen | ||
* Um den ausgewählten Text zu kopieren, drücken Sie <tt>META+W</tt> | * Um den ausgewählten Text zu kopieren, drücken Sie <tt>META+W</tt> | ||
* Um die Textauswahl auszuschneiden, drücken Sie <tt>STRG-W</tt> | * Um die Textauswahl auszuschneiden, drücken Sie <tt>STRG-W</tt> | ||
* Um eine Textauswahl einzufügen, drücken Sie <tt>STRG-Y</tt> | * Um eine Textauswahl einzufügen, drücken Sie <tt>STRG-Y</tt> | ||
=== Text löschen === | === Text löschen === | ||
Das Löschen von Text mithilfe der <tt>Rücktaste</tt> und der <tt>Entf-Taste</tt> funktioniert wie erwartet | Das Löschen von Text mithilfe der <tt>Rücktaste</tt> und der <tt>Entf-Taste</tt> funktioniert wie erwartet | ||
Um ein ganzes Wort schnell zu löschen, bewegen Sie den Cursor an den Anfang eines Wortes und drücken Sie <tt>META+D</tt> | Um ein ganzes Wort schnell zu löschen, bewegen Sie den Cursor an den Anfang eines Wortes und drücken Sie <tt>META+D</tt> | ||
* Um mehrere Wörter zu löschen, drücken und halten Sie die <tt>META</tt>-Taste und drücken Sie kontinuierlich <tt>D</tt> | |||
* Die Wörter werden einzeln gelöscht | |||
Um eine ganze Zeile zu löschen, positionieren Sie den Cursor an der gewünschten Stelle und drücken Sie dann <tt>STRG+K</tt> | Um eine ganze Zeile zu löschen, positionieren Sie den Cursor an der gewünschten Stelle und drücken Sie dann <tt>STRG+K</tt> | ||
* Dadurch wird der Text bis zum Ende der Zeile gelöscht | |||
Um einen Satz zu löschen, drücken Sie <tt>META+K</tt> | Um einen Satz zu löschen, drücken Sie <tt>META+K</tt> | ||
* Bitte beachten Sie jedoch, dass Emacs eine ganze Zeile oder mehr löscht, wenn nach dem Punkt nicht zwei Leerzeichen stehen | |||
* Anhand der zwei Leerzeichen nach einem Punkt erkennt Emacs, wenn ein Satz über mehrere Zeilen umbrochen wurde | |||
=== Rückgängig machen und Wiederherstellen === | === Rückgängig machen und Wiederherstellen === | ||
Sie können den letzten Vorgang rückgängig machen, indem Sie <tt>STRG+X</tt> und dann <tt>u</tt> drücken | Sie können den letzten Vorgang rückgängig machen, indem Sie <tt>STRG+X</tt> und dann <tt>u</tt> drücken | ||
* Eine alternative Tastenkombination ist <tt>STRG+_</tt> (hierbei werden <tt>STRG</tt>, <tt>UMSCHALT</tt> und <tt>-</tt> gedrückt, um einen Unterstrich zu setzen) | |||
Um die letzte Rückgängigmachung rückgängig zu machen, drücken Sie <tt>STRG+G</tt>, gefolgt von <tt>STRG+_</tt> | Um die letzte Rückgängigmachung rückgängig zu machen, drücken Sie <tt>STRG+G</tt>, gefolgt von <tt>STRG+_</tt> | ||
=== Suchen und Ersetzen von Text === | === Suchen und Ersetzen von Text === | ||
In Emacs gibt es zwei Suchrichtungen: vorwärts und rückwärts | In Emacs gibt es zwei Suchrichtungen: vorwärts und rückwärts | ||
* Drücken Sie <tt>STRG+R</tt>, um rückwärts zu suchen | * Bei der Vorwärtssuche wird das von Ihnen angegebene Wort von der aktuellen Cursorposition aus vorwärts gesucht | ||
* Bei der Rückwärtssuche ist es umgekehrt | |||
* Drücken Sie <tt>STRG+S</tt>, um vorwärts zu suchen | |||
* Geben Sie dann den gesuchten Text in die Mini-Buffer-Eingabeaufforderung ein | |||
* Drücken Sie <tt>STRG+R</tt>, um rückwärts zu suchen | |||
Unmittelbar nach der Eingabe Ihres Suchbegriffs sucht Emacs nach diesem und markiert alle gefundenen Übereinstimmungen im Hauptpuffer | Unmittelbar nach der Eingabe Ihres Suchbegriffs sucht Emacs nach diesem und markiert alle gefundenen Übereinstimmungen im Hauptpuffer | ||
Wenn Sie beispielsweise in einer Textdatei nach dem Wort „Katze“ suchen, wird jedes Vorkommen im Hauptpuffer als hervorgehobener Text angezeigt | Wenn Sie beispielsweise in einer Textdatei nach dem Wort „Katze“ suchen, wird jedes Vorkommen im Hauptpuffer als hervorgehobener Text angezeigt | ||
[[Image:Bild4.png]] | [[Image:Bild4.png]] | ||
Um Text zu ersetzen, gehen Sie folgendermaßen vor: * Drücken Sie <tt>META+%</tt> | Um Text zu ersetzen, gehen Sie folgendermaßen vor: * Drücken Sie <tt>META+%</tt> | ||
* Geben Sie den zu ersetzenden Text ein und drücken Sie <tt>ENTER</tt> | * Der Minipuffer fordert Sie auf, den zu suchenden Text mit <tt>Query replace:</tt> einzugeben | ||
* Der Minipuffer zeigt <tt>Query replace with:</tt> an | * Geben Sie den zu ersetzenden Text ein und drücken Sie <tt>ENTER</tt> | ||
* Geben Sie das Wort oder den Ausdruck ein, durch den Sie ersetzen möchten, und drücken Sie <tt>ENTER</tt> | * Der Minipuffer zeigt <tt>Query replace with:</tt> an | ||
* Jede Übereinstimmung wird hervorgehoben und Sie werden aufgefordert, eine Ersetzung vorzunehmen | * Geben Sie das Wort oder den Ausdruck ein, durch den Sie ersetzen möchten, und drücken Sie <tt>ENTER</tt> | ||
* Drücken Sie <tt>y</tt>, um die aktuell gefundene Übereinstimmung zu ersetzen | * Jede Übereinstimmung wird hervorgehoben und Sie werden aufgefordert, eine Ersetzung vorzunehmen | ||
* Drücken Sie <tt>n</tt>, um zur nächsten Übereinstimmung zu springen | * Der Minipuffer fragt <tt>Abfrage Ersetzen durch: (C-h für Hilfe)</tt> | ||
* Drücken Sie <tt>q</tt>, um den Vorgang ohne Ersetzungen zu beenden | * Drücken Sie <tt>y</tt>, um die aktuell gefundene Übereinstimmung zu ersetzen | ||
* Drücken Sie <tt>!</tt>, um eine globale Ersetzung ohne Eingabeaufforderungen durchzuführen | * Drücken Sie <tt>n</tt>, um zur nächsten Übereinstimmung zu springen | ||
* Drücken Sie <tt>q</tt>, um den Vorgang ohne Ersetzungen zu beenden | |||
* Drücken Sie <tt>!</tt>, um eine globale Ersetzung ohne Eingabeaufforderungen durchzuführen | |||
* Der Minipuffer gibt folgende Meldung aus: <tt>Ersetzte Vorkommen</tt> | |||
=== Hinzufügen von Ausrichtung links, rechts und zentriert === | === Hinzufügen von Ausrichtung links, rechts und zentriert === | ||
Um eine Zeile zu zentrieren, bewegen Sie den Cursor an den Anfang dieser Zeile und drücken Sie <tt>META+O</tt>, dann <tt>META+S</tt> | Um eine Zeile zu zentrieren, bewegen Sie den Cursor an den Anfang dieser Zeile und drücken Sie <tt>META+O</tt>, dann <tt>META+S</tt> | ||
Um einen ausgewählten Textbereich zu rechtfertigen, gehen Sie wie folgt vor | Um einen ausgewählten Textbereich zu rechtfertigen, gehen Sie wie folgt vor | ||
* Markieren Sie den Text, den Sie rechtfertigen möchten | * Markieren Sie den Text, den Sie rechtfertigen möchten | ||
* Drücken Sie <tt>META+X</tt> | * Drücken Sie <tt>META+X</tt> | ||
* Geben Sie <tt>set-justifiction-</tt> ein und drücken Sie die <tt>TAB</tt>-Taste | * Der Minipuffer wartet auf eine Antwort | ||
* Sie erhalten die folgenden Vervollständigungsoptionen: <tt>set-justification-center</tt>, <tt>set-justification-left</tt>, <tt>set-justification-right</tt>, <tt>set-justification-none</tt> und <tt>set-justification-full</tt> | * Geben Sie <tt>set-justifiction-</tt> ein und drücken Sie die <tt>TAB</tt>-Taste | ||
* Schließen Sie den Befehl für die Ausrichtung ab, indem Sie <tt>set-justification-right</tt> oder eine andere Option auswählen und dann <tt>ENTER</tt> drücken | * Sie erhalten die folgenden Vervollständigungsoptionen: <tt>set-justification-center</tt>, <tt>set-justification-left</tt>, <tt>set-justification-right</tt>, <tt>set-justification-none</tt> und <tt>set-justification-full</tt> | ||
* Der ausgewählte Text wird in der von Ihnen gewählten Richtung ausgerichtet | * Schließen Sie den Befehl für die Ausrichtung ab, indem Sie <tt>set-justification-right</tt> oder eine andere Option auswählen und dann <tt>ENTER</tt> drücken | ||
* Der ausgewählte Text wird in der von Ihnen gewählten Richtung ausgerichtet | |||
Hier ist ein Beispiel für den Text, der den verschiedenen Ausrichtungseinstellungen zugewiesen ist | |||
Hier ist ein Beispiel für den Text, der den verschiedenen Ausrichtungseinstellungen zugewiesen ist | |||
[[Image:Bild7.png]] | [[Image:Bild7.png]] | ||
=== Groß-/Kleinschreibung umwandeln === | === Groß-/Kleinschreibung umwandeln === | ||
Sie können die Groß-/Kleinschreibung mit einigen verschiedenen Befehlen umwandeln | Sie können die Groß-/Kleinschreibung mit einigen verschiedenen Befehlen umwandeln | ||
* Hier ist eine Liste einiger Befehlstasten | |||
{| class="wikitable options" | |||
{| | |- | ||
|- | ! So führen Sie diese Funktion aus | ||
! | ! Verwenden Sie diese Tasten | ||
! | |- | ||
|- | |||
|| Großschreibung eines Wortes nach dem Cursor | || Großschreibung eines Wortes nach dem Cursor | ||
| <tt>META+C</tt> (C für Großschreibung) | | <tt>META+C</tt> (C für Großschreibung) | ||
|- | |- | ||
| Umwandlung eines Wortes in Kleinbuchstaben | | Umwandlung eines Wortes in Kleinbuchstaben | ||
| <tt>META+L</tt> (L für Kleinbuchstaben) | | <tt>META+L</tt> (L für Kleinbuchstaben) | ||
|- | |- | ||
|- | |- | ||
|- Umwandlung eines Wortes in Großbuchstaben | |- Umwandlung eines Wortes in Großbuchstaben | ||
|- | |- | ||
|- Umwandlung eines Absatzes in Großbuchstaben | |- Umwandlung eines Absatzes in Großbuchstaben | ||
|- Block auswählen, dann <tt>STRG+X</tt> <tt>STRG+U</tt> | |- Block auswählen, dann <tt>STRG+X</tt> <tt>STRG+U</tt> | ||
|- | |- | ||
|| Einen Absatz in Kleinbuchstaben umwandeln | || Einen Absatz in Kleinbuchstaben umwandeln | ||
|| Block auswählen, dann <tt>STRG+X</tt> <tt>STRG+L</tt> | || Block auswählen, dann <tt>STRG+X</tt> <tt>STRG+L</tt> | ||
Zeile 298: | Zeile 305: | ||
|} | |} | ||
Wenn Sie einen ganzen Absatz oder mehr in Groß- oder Kleinbuchstaben umwandeln, wird ein neues Fenster mit folgender Meldung angezeigt | Wenn Sie einen ganzen Absatz oder mehr in Groß- oder Kleinbuchstaben umwandeln, wird ein neues Fenster mit folgender Meldung angezeigt | ||
Fenster | Fenster | ||
Sie haben C-x C-l eingegeben und damit den deaktivierten Befehl „downcase-region“ aufgerufen | Sie haben C-x C-l eingegeben und damit den deaktivierten Befehl „downcase-region“ aufgerufen | ||
* Er ist deaktiviert, weil er für neue Benutzer oft verwirrend ist | |||
* Hier ist der erste Teil seiner Beschreibung: „Convert the region to lowercaselower case“ | |||
* In Programmen werden zwei Argumente benötigt | |||
* Diese Argumente geben die Start- und Endzeichennummern des Bereichs an, auf den angewendet werden soll | |||
* Bei Verwendung als Befehl wird der Text zwischen dem Punkt und der Markierung bearbeitet | |||
* Möchten Sie diesen Befehl trotzdem verwenden? Sie können jetzt „y“ eingeben, um es zu versuchen und zu aktivieren (keine Fragen, wenn Sie es erneut verwenden) | |||
* „n“, um abzubrechen – versuchen Sie den Befehl nicht, und er bleibt deaktiviert. „SPC“, um den Befehl nur dieses eine Mal zu versuchen, ihn aber deaktiviert zu lassen | |||
* „!“ um es zu versuchen und alle deaktivierten Befehle nur für diese Sitzung zu aktivieren | |||
[[Image:Bild6.png|top]] | [[Image:Bild6.png|top]] | ||
Drücken Sie die genannten Tasten, um fortzufahren | Drücken Sie die genannten Tasten, um fortzufahren | ||
=== Verwalten von Fenstern === | === Verwalten von Fenstern === | ||
Durch die Verwaltung von Fenstern in Emacs können Sie effizienter mit Ihren Dateien arbeiten | Durch die Verwaltung von Fenstern in Emacs können Sie effizienter mit Ihren Dateien arbeiten | ||
Wechseln Sie beispielsweise vom Hauptpuffer zum Emacs-Tutorial, indem Sie <tt>STRG+h</tt> und dann <tt>t</tt> drücken | Wechseln Sie beispielsweise vom Hauptpuffer zum Emacs-Tutorial, indem Sie <tt>STRG+h</tt> und dann <tt>t</tt> drücken | ||
* Ihr Hauptpufferfenster ist jetzt das Emacs-Tutorial | |||
* Wenn Sie zum Puffer zurückwechseln möchten, drücken Sie <tt>STRG+X</tt> und dann <tt>b</tt> | |||
* Dies ist der Befehl „Puffer wechseln“ | |||
* Emacs fordert Sie auf, einen Puffernamen einzugeben, zu dem Sie wechseln möchten | |||
* Beginnen Sie mit der Eingabe des Puffernamens und drücken Sie <tt>ENTER</tt> | |||
* Dadurch wechseln Sie vom Emacs-Tutorial zu der von Ihnen angegebenen Datei | |||
== | == Modi aufrufen == | ||
=== Einen Hauptmodus aufrufen === | === Einen Hauptmodus aufrufen === | ||
Einer der Gründe, warum Emacs in der UNIX-Community so weit verbreitet ist, liegt in seiner Fähigkeit, verschiedene Modi anzunehmen | Einer der Gründe, warum Emacs in der UNIX-Community so weit verbreitet ist, liegt in seiner Fähigkeit, verschiedene Modi anzunehmen | ||
* Ein Modus kann die Funktionalität von Emacs erweitern | |||
Je nach ausgewähltem Modus kann Emacs als Textverarbeitungsprogramm zum Schreiben von Textdateien verwendet werden oder für fortgeschrittene Aufgaben wie das Schreiben von Python-, C- oder Java-Code angepasst werden | |||
* Sie können beispielsweise den Modus von Emacs ändern, damit er mit Versionskontrollsystemen funktioniert, Shell-Befehle ausführt oder Man-Pages liest | |||
Es gibt zwei verschiedene Arten von Emacs-Modi | |||
* Einer wird als „Hauptmodus“ bezeichnet | |||
* Im Hauptmodus kann Emacs als integrierte Entwicklungsumgebung (IDE) für Programmier- oder Skriptsprachen verwendet werden | |||
* In diesem Modus bietet das Programm spezielle Funktionen wie farbige Syntaxhervorhebung, Einrückung und Formatierung, sprachspezifische Menüoptionen oder automatische Schnittstellen zu Debuggern und Compilern | |||
Zur Veranschaulichung können Sie mit Emacs eine „Hello World“-App in Python schreiben | |||
Geben Sie in Ihrem Terminal und in Ihrem Stammverzeichnis die folgenden Befehle ein | |||
cd ~ | cd ~ | ||
emacs hello.py | emacs hello.py | ||
Emacs erkennt die Dateierweiterung und startet im Python-Modus | Emacs erkennt die Dateierweiterung und startet im Python-Modus | ||
* Geben Sie im Hauptpuffer den folgenden Python-Code ein | |||
print „hello world!\n“ | |||
Die Schlüsselwörter werden nun mit farbiger Syntaxhervorhebung angezeigt | |||
* Beachten Sie auch, dass in der Statuszeile über dem Minipuffer der Modus angezeigt wird, in dem Sie sich gerade befinden | |||
Das Hauptmenü enthält auch einen separaten Eintrag speziell für Python | |||
[[Image:Bild5.png]] | [[Image:Bild5.png]] | ||
Speichern Sie den Puffer mit <tt>STRG+X</tt> <tt>STRG+S</tt> | Speichern Sie den Puffer mit <tt>STRG+X</tt> <tt>STRG+S</tt> | ||
Um den Hauptmodus von Emacs aus zu ändern, drücken Sie <tt>META+X</tt> | Um den Hauptmodus von Emacs aus zu ändern, drücken Sie <tt>META+X</tt> | ||
* Der Minipuffer wartet auf Ihre Antwort | |||
* Sie können dann einen anderen Modus eingeben | |||
Hier sind einige Beispiele für Hauptmodi | |||
* c-mode | * c-mode | ||
* python-mode | * python-mode | ||
Zeile 345: | Zeile 377: | ||
* shell-script-mode | * shell-script-mode | ||
* text-mode | * text-mode | ||
=== Einen Minor-Modus aufrufen === | === Einen Minor-Modus aufrufen === | ||
Im Vergleich zu den Major-Modi bieten die „Minor-Modi“ spezifischere Funktionen | Im Vergleich zu den Major-Modi bieten die „Minor-Modi“ spezifischere Funktionen | ||
* Diese Funktionen können mit einem bestimmten Major-Modus verknüpft sein oder systemweite Auswirkungen haben, unabhängig vom Major-Modus | |||
* Außerdem können im Gegensatz zu den Major-Modi mehrere Minor-Modi gleichzeitig aktiv sein | |||
* Minor-Modi sind wie Schalter: Einige sind standardmäßig aktiviert, andere nicht | |||
* Wenn ein Minor-Modus bereits aktiviert ist, wird er durch den Aufruf deaktiviert | |||
* Ist er ausgeschaltet, wird er wieder eingeschaltet | |||
Ein Beispiel für einen Nebenmodus ist die Option zum Einstellen der Ausrichtung, die in den vorherigen Beispielen verwendet wurde | Ein Beispiel für einen Nebenmodus ist die Option zum Einstellen der Ausrichtung, die in den vorherigen Beispielen verwendet wurde | ||
Ein weiteres Beispiel für einen Nebenmodus ist der <tt>Auto-Fill-Modus</tt> | Ein weiteres Beispiel für einen Nebenmodus ist der <tt>Auto-Fill-Modus</tt> | ||
* Um diesen Modus in Ihrem Emacs-Editor aufzurufen, drücken Sie die Taste <tt>META+X</tt> und geben dann <tt>auto-fill-mode</tt> ein | |||
In diesem Modus wird eine Textzeile umbrochen und in die nächste Zeile umgebrochen, wenn sie länger als 70 Zeichen ist | In diesem Modus wird eine Textzeile umbrochen und in die nächste Zeile umgebrochen, wenn sie länger als 70 Zeichen ist | ||
* Denken Sie daran, dass das Aufrufen eines Minor-Modus einem Kippschalter ähnelt | |||
* Wenn Sie denselben Befehl erneut aufrufen, wird der Zeilenumbruch deaktiviert | |||
Hier sind einige weitere Beispiele für Minor-Modi | Hier sind einige weitere Beispiele für Minor-Modi | ||
* <tt>auto-save-mode</tt>: Schaltet die Eigenschaft des automatischen Speicherns um, das den Inhalt des Hauptpuffers regelmäßig im Hintergrund speichert | * <tt>auto-save-mode</tt>: Schaltet die Eigenschaft des automatischen Speicherns um, das den Inhalt des Hauptpuffers regelmäßig im Hintergrund speichert | ||
* <tt>line-number-mode</tt>: Schaltet die Anzeige der aktuellen Zeilennummer in der Statusleiste um | * <tt>line-number-mode</tt>: Schaltet die Anzeige der aktuellen Zeilennummer in der Statusleiste um | ||
* <tt>linum-mode</tt>: Schaltet die Anzeige der Zeilennummern am linken Rand des Fensters um | * <tt>linum-mode</tt>: Schaltet die Anzeige der Zeilennummern am linken Rand des Fensters um | ||
* <tt>column-number-mode</tt>: Zeigt die aktuelle Position des Cursors in der Statusleiste an | * <tt>column-number-mode</tt>: Zeigt die aktuelle Position des Cursors in der Statusleiste an | ||
* <tt>overwrite-mode</tt>: Dies entspricht dem Drücken der <tt>INS</tt>-Taste auf Ihrer Tastatur. Wenn diese Option aktiviert ist, wird der Text rechts vom Cursor während der Eingabe überschrieben | * <tt>overwrite-mode</tt>: Dies entspricht dem Drücken der <tt>INS</tt>-Taste auf Ihrer Tastatur. Wenn diese Option aktiviert ist, wird der Text rechts vom Cursor während der Eingabe überschrieben | ||
* <tt>menu-bar-mode</tt>: Hiermit kann das Hauptmenü ein- oder ausgeschaltet werden | * <tt>menu-bar-mode</tt>: Hiermit kann das Hauptmenü ein- oder ausgeschaltet werden | ||
Um Ihr Verständnis des Emacs-Editors zu fördern, finden Sie auf der GNU-Emacs-Webseite eine Fülle von Informationen, einschließlich Links zu anderen Ressourcen wie dem Emacs-Wiki | |||
* Sie können auch das [GNU-Emacs-Handbuch] lesen | |||
[[Kategorie:Linux/Editoren]] |
Aktuelle Version vom 10. November 2024, 10:54 Uhr
Einführung
Emacs ist einer der ältesten und vielseitigsten Texteditoren
- Die GNU-Emacs-Version wurde ursprünglich 1984 geschrieben und ist für ihre leistungsstarken und umfangreichen Bearbeitungsfunktionen bekannt
- Sie kann mit verschiedenen „Modi“ angepasst und erweitert werden, sodass sie wie eine integrierte Entwicklungsumgebung (IDE) für Programmiersprachen wie Java, C und Python verwendet werden kann
Für diejenigen, die sowohl den Vi als auch die benutzerfreundlichen Nano-Texteditoren verwendet haben, stellt Emacs eine Zwischenlösung dar
- Seine Stärken und Funktionen ähneln denen von Vi, während seine Menüs, Hilfedateien und Befehlstasten mit denen von Nano vergleichbar sind
Installieren
sudo apt install emacs
Verwendung der Benutzeroberfläche
Starten Sie Emacs, indem Sie den Befehl emacs in Ihrem Terminal eingeben
emacs
Emacs startet mit einem leeren Bearbeitungspuffer und wartet darauf, dass Sie mit der Eingabe beginnen
- Wenn Emacs ohne eine angegebene Datei gestartet wird, zeigt das Programm eine Willkommensnachricht an
Um eine neue Datei zu erstellen, bewegen Sie den Cursor mit der TAB-Taste auf den Link „Neue Datei öffnen“ und drücken Sie dann ENTER
- Sie können auch STRG+X und dann STRG+F drücken, um eine neue Datei zu erstellen
- Am Ende Ihres Terminals erscheint eine Eingabeaufforderung, in der Sie nach einem Dateinamen gefragt werden
Geben Sie einen Dateinamen ein, um mit der Textbearbeitung zu beginnen
- Im folgenden Beispiel wird verwendet
- Sie können diese Datei benennen, wie Sie möchten
- Drücken Sie nach Eingabe des Dateinamens ENTER, um fortzufahren
Eine leere Datei steht für die Texteingabe bereit
Am oberen Bildschirmrand befindet sich ein Menü
- Nach dem Menü befindet sich ein großer Bearbeitungsbereich
- Dieser wird als „Hauptpuffer“ bezeichnet, in dem Sie Ihren Text eingeben oder den Inhalt einer Datei anzeigen können
Wenn Emacs eine vorhandene Datei auf der Festplatte bearbeitet, wird zunächst eine Kopie dieses Dokuments in den Speicher geladen und dann im Hauptbearbeitungsfenster angezeigt
- Dieser Bereich im Speicher wird als „Puffer“ bezeichnet
- Während Sie das Dokument bearbeiten, werden alle Änderungen, die Sie im Bearbeitungsbereich vornehmen, auf den Puffer angewendet, während die Originaldatei auf der Festplatte unverändert bleibt
- Gelegentlich speichert Emacs automatisch im Hintergrund, aber erst wenn Sie das Dokument manuell speichern, werden die Änderungen auf die Festplatte geschrieben
- Dasselbe gilt auch für eine neue Datei
- Alle Änderungen werden im Puffer vorgenommen, bis Sie ihn speichern
- Der Hauptbearbeitungsbereich in Emacs ist Ihre Ansicht des Puffers
Nach dem Hauptpuffer wird am unteren Bildschirmrand eine hervorgehobene Textleiste angezeigt
- Diese wird als „Statusleiste“ oder „Moduszeile“ bezeichnet
- Der hier angezeigte Text hängt davon ab, in welchem Modus sich Emacs gerade befindet
Die Statusleiste enthält unter anderem
- Name der aktuellen Datei
- Aktuelle Cursorposition
- Aktueller Bearbeitungsmodus
- Status der Datei (-- für eine unveränderte Datei,
- für eine Datei mit nicht gespeicherten Änderungen und %% für schreibgeschützte Dateien)
Schließlich gibt es eine einzelne Leerzeile nach der Statusleiste, wo der Bildschirm endet
- In diesem Beispiel wird der Text „(Neue Datei)“ angezeigt
- Dieser Bereich wird als „Minipuffer“ bezeichnet
- Emacs ist ein befehlsgesteuertes Tool und der Minipuffer ist Ihr Hauptinteraktionspunkt
- Hier fordert Emacs Sie zur Eingabe von Befehlen auf und zeigt die Ausgabe an
Die textbasierte Version von Emacs behandelt Fenster anders als die GUI-basierte Version
- Im Gegensatz zu GUI-basierten Anwendungen werden textbasierte Emacs-Fenster nicht eingeblendet, da dies in einer Terminal- oder Konsolensitzung physisch nicht möglich ist
- Wenn Emacs ein neues Fenster öffnen muss, wird sein Hauptpuffer in zwei Teile geteilt, wie bei zwei Frames in einem Browser
- Die obere Hälfte zeigt den Hauptpuffer und die untere Hälfte den neuen Inhalt an
- Ein Beispiel dafür, dass Emacs ein neues Fenster öffnet, ist der Zugriff auf seine Hilfedateien oder Tutorials
Zugriff auf die Menüs
Wenn Emacs startet, nimmt es normalerweise den gesamten Bildschirm ein
- Die meisten seiner Funktionen sind über eine Menüleiste am oberen Bildschirmrand zugänglich
Im Gegensatz zu GUI-basierten Programmen können textbasierte Menüs nicht per Mausklick geöffnet werden
- Tatsächlich können Sie die Menüs nicht mit einer Tastenkombination markieren und durchblättern
Um auf die Menüs zuzugreifen, drücken Sie die Taste F10
- Dadurch wird ein weiteres Fenster unter dem Hauptpuffer geöffnet und eine Liste mit Tasten zum Zugriff auf die Menüelemente angezeigt
- Der Minipuffer fordert Sie auf, die erforderliche Taste einzugeben
- Sobald Sie diese Taste drücken, ändert sich der Inhalt des neuen Fensters und zeigt die nächste Ebene von Optionen an
Um die Menüs zu verlassen, drücken Sie die Taste ESC dreimal, unabhängig davon, wie tief Sie sich in den Menüs befinden
- Dadurch wird in der Regel das Menüfenster geschlossen und Sie kehren zum Hauptpuffer zurück
Hier sind einige der Optionen, die im Menü „Tools“ verfügbar sind
- Kalender
- Einfacher Taschenrechner
- Programmierbarer Taschenrechner
- Verzeichnis durchsuchen
- Dokument verschlüsseln und entschlüsseln
- E-Mails senden und lesen
- Dateien mit grep durchsuchen
- Rechtschreibprüfung
- Shell-Befehle ausführen und Code kompilieren
- Versionskontrolle
- Dateien vergleichen und zusammenführen
- Spiele
Zugriff auf Hilfe und Tutorials
Emacs verfügt über ein umfangreiches Hilfesystem und Tutorials
- Um darauf zuzugreifen, können Sie entweder das Menü verwenden, indem Sie F10 drücken und die Pfeiltasten NACH RECHTS oder NACH LINKS drücken, um Hilfe auszuwählen, oder STRG+H und dann eine entsprechende Taste drücken
- Beispielsweise können Sie nach dem Drücken von STRG+H eine der folgenden Tasten eingeben, um FAQs, Tutorials, Nachrichten und andere Themen zu überprüfen
- t für ein Emacs-Tutorial
- STRG+F für eine FAQ
- STRG+P für Informationen zu bekannten Fehlern und Problemen
- STRG+R, um das Emacs-Handbuch zu lesen
- STRG+E, um zusätzliche Pakete zu finden
Verwendung von Befehlstasten
Nachdem Sie sich mit der Benutzeroberfläche vertraut gemacht haben, können Sie sich mit den Befehlstasten von Emacs vertraut machen
- Wenn Sie eine Datei öffnen, können Sie gleichzeitig mit dem Tippen und dem Ausgeben von Befehlen beginnen
Befehlsfunktionen umfassen in der Regel zwei oder drei Tasten
- Am häufigsten wird die STRG-Taste verwendet, gefolgt von der ALT- oder ESC-Taste. STRG wird in der Emacs-Umgebung in Kurzform als „C“ angezeigt
- Notizen in Emacs wie C-x C-c bedeuten, dass Sie die Tasten STRG+X zusammen drücken und dann STRG+C drücken. Ähnlich bedeutet C-h t, dass Sie STRG+H zusammen drücken, dann beide Tasten loslassen und t drücken
Die Tasten ALT und ESC werden in Emacs als „Meta-Tasten“ bezeichnet
- Auf Apple-Computern verwenden Sie anstelle von ALT die OPTION-Taste
- Andere Tastaturen verwenden eine EDIT-Taste. Ähnlich wie bei der STRG-Taste verwendet Emacs Mehrtastenfunktionen mit der Meta-Taste
- Eine Notation wie M-x bedeutet beispielsweise, dass Sie ALT oder OPTION und x gleichzeitig drücken
- Ebenso können Sie ESC+X verwenden, um denselben Befehl auszuführen
Die ENTER-Taste wird in Emacs als RET angezeigt, was für „Return“ steht
- Die ESC-Taste wird oft als E angezeigt
Mit der ESC-Taste können Sie einen Befehl oder eine Eingabeaufforderung abbrechen
- Sie können beispielsweise mehrmals ESC drücken, um ein bestimmtes Menü zu verlassen
- Eine andere Möglichkeit, einen Vorgang abzubrechen, ist das Drücken von STRG+G
Speichern und Beenden
Wenn Sie Änderungen an Ihrem Dokument vorgenommen oder Text geschrieben haben, können Sie es speichern, indem Sie STRG+X und anschließend STRG+S drücken
Der Minipuffer gibt die folgende Meldung aus
Wrote /home/sammy/myfile.txt
Sie können Emacs verlassen, indem Sie STRG+X und dann STRG+C drücken
Wenn die Datei vor dem Verlassen nicht manuell gespeichert wurde, erhalten Sie diese Meldung
Datei speichern /home/sammy/myfile.txt? (y, n, !, ., q, C-r, C-f, d oder C-h)
Drücken Sie Y, um die Datei zu speichern
Wenn Sie N für Nein drücken, erhalten Sie diese Meldung
Geänderte Puffer vorhanden; trotzdem beenden? (Ja oder Nein)
Geben Sie Ja ein, um das Programm ohne Speichern zu beenden
Das Navigieren durch ein langes Dokument oder Hilfethema kann eine mühsame Aufgabe sein
- Glücklicherweise gibt es in Emacs mehrere Möglichkeiten, in einer Datei zu navigieren
- Gängiger Navigationsfunktionen
Funktion | Tasten |
---|---|
Nächsten Zeile | STRG+N (N für ‚Next‘) |
Vorherigen Zeile | STRG+P (P für „Vorherige“) |
Ein Zeichen vorwärts | STRG+F (F für ‚Vorwärts‘) |
Ein Zeichen rückwärts | STRG+B (B für „Rückwärts“) |
Ein Wort vorwärts | META+F (F für vorwärts) |
Ein Wort rückwärts | META+B (B für rückwärts) |
Anfang der Zeile | STRG+A |
Ende der Zeile | STRG+E (E für Ende) |
Anfang des Satzes | META+A |
Ende des Satzes | META+E (E für Ende) |
Eine Seite nach unten | STRG+V (oder PgDn) |
Eine Seite nach oben | META+V (oder PgUp) |
Anfang der Datei | META+(Alt + Umschalt + ‚<‘) |
Ende der Datei | META+(Alt + Umschalt + „>“) |
Denken Sie daran, dass META bedeutet, dass Sie eine der folgenden Tasten verwenden können: ALT, ESC, OPTION oder EDIT
Bearbeitungsfunktionen
Wenn Sie speziellere Aufgaben ausführen müssen, die in gängigen Textverarbeitungsprogrammen üblich sind, wie das Auswählen oder Hervorheben eines bestimmten Abschnitts einer Textdatei, können Sie dies in Emacs tun
Textbereiche markieren
Um einen Textbereich zu markieren, gehen Sie folgendermaßen vor: * Bewegen Sie den Cursor an die Stelle, an der die Auswahl beginnen soll
- Sie können eine der zuvor beschriebenen Methoden verwenden, um den Cursor zu bewegen
- Drücken Sie STRG+LEERTASTE oder STRG+@, um eine Markierung für den Beginn der Texthervorhebung zu setzen
- Im Minipuffer wird die Statusmeldung Markierung aktiviert angezeigt
- Bewegen Sie den Cursor an die Stelle, an der der Bereich enden soll
- Verwenden Sie dazu eine der zuvor beschriebenen Tastenkombinationen
- Der Text wird bis zu der Stelle hervorgehoben, an der sich der Cursor jetzt befindet
- Drücken Sie zweimal STRG+LEERTASTE oder STRG+@, um die Markierung des hervorgehobenen Textes aufzuheben
- Im Minipuffer wird die Statusmeldung Markierung deaktiviert angezeigt
Alternativ können Sie wie in einem Textverarbeitungsprogramm die UMSCHALTTASTE gedrückt halten und den Cursor mit den AUF- oder AB- Pfeiltasten auf Ihrer Tastatur bewegen, um Ihre Auswahl zu treffen
Wenn Sie den Absatz auswählen möchten, auf dem sich der Cursor gerade befindet, drücken Sie META+H
- Wenn Sie danach kontinuierlich META+h drücken, werden die nächsten Absätze in Ihrer Textdatei ausgewählt
Wenn Sie den gesamten Inhalt des Hauptpuffers auswählen möchten (d. h. „Alles auswählen“), drücken Sie STRG+X und dann h
Ausschneiden, Kopieren und Einfügen von Text
Ähnlich wie in einem Textverarbeitungsprogramm können Sie Text kopieren, ausschneiden und einfügen
- Um den ausgewählten Text zu kopieren, drücken Sie META+W
- Um die Textauswahl auszuschneiden, drücken Sie STRG-W
- Um eine Textauswahl einzufügen, drücken Sie STRG-Y
Text löschen
Das Löschen von Text mithilfe der Rücktaste und der Entf-Taste funktioniert wie erwartet
Um ein ganzes Wort schnell zu löschen, bewegen Sie den Cursor an den Anfang eines Wortes und drücken Sie META+D
- Um mehrere Wörter zu löschen, drücken und halten Sie die META-Taste und drücken Sie kontinuierlich D
- Die Wörter werden einzeln gelöscht
Um eine ganze Zeile zu löschen, positionieren Sie den Cursor an der gewünschten Stelle und drücken Sie dann STRG+K
- Dadurch wird der Text bis zum Ende der Zeile gelöscht
Um einen Satz zu löschen, drücken Sie META+K
- Bitte beachten Sie jedoch, dass Emacs eine ganze Zeile oder mehr löscht, wenn nach dem Punkt nicht zwei Leerzeichen stehen
- Anhand der zwei Leerzeichen nach einem Punkt erkennt Emacs, wenn ein Satz über mehrere Zeilen umbrochen wurde
Rückgängig machen und Wiederherstellen
Sie können den letzten Vorgang rückgängig machen, indem Sie STRG+X und dann u drücken
- Eine alternative Tastenkombination ist STRG+_ (hierbei werden STRG, UMSCHALT und - gedrückt, um einen Unterstrich zu setzen)
Um die letzte Rückgängigmachung rückgängig zu machen, drücken Sie STRG+G, gefolgt von STRG+_
Suchen und Ersetzen von Text
In Emacs gibt es zwei Suchrichtungen: vorwärts und rückwärts
- Bei der Vorwärtssuche wird das von Ihnen angegebene Wort von der aktuellen Cursorposition aus vorwärts gesucht
- Bei der Rückwärtssuche ist es umgekehrt
- Drücken Sie STRG+S, um vorwärts zu suchen
- Geben Sie dann den gesuchten Text in die Mini-Buffer-Eingabeaufforderung ein
- Drücken Sie STRG+R, um rückwärts zu suchen
Unmittelbar nach der Eingabe Ihres Suchbegriffs sucht Emacs nach diesem und markiert alle gefundenen Übereinstimmungen im Hauptpuffer
Wenn Sie beispielsweise in einer Textdatei nach dem Wort „Katze“ suchen, wird jedes Vorkommen im Hauptpuffer als hervorgehobener Text angezeigt
Um Text zu ersetzen, gehen Sie folgendermaßen vor: * Drücken Sie META+%
- Der Minipuffer fordert Sie auf, den zu suchenden Text mit Query replace: einzugeben
- Geben Sie den zu ersetzenden Text ein und drücken Sie ENTER
- Der Minipuffer zeigt Query replace with: an
- Geben Sie das Wort oder den Ausdruck ein, durch den Sie ersetzen möchten, und drücken Sie ENTER
- Jede Übereinstimmung wird hervorgehoben und Sie werden aufgefordert, eine Ersetzung vorzunehmen
- Der Minipuffer fragt Abfrage Ersetzen durch: (C-h für Hilfe)
- Drücken Sie y, um die aktuell gefundene Übereinstimmung zu ersetzen
- Drücken Sie n, um zur nächsten Übereinstimmung zu springen
- Drücken Sie q, um den Vorgang ohne Ersetzungen zu beenden
- Drücken Sie !, um eine globale Ersetzung ohne Eingabeaufforderungen durchzuführen
- Der Minipuffer gibt folgende Meldung aus: Ersetzte Vorkommen
Hinzufügen von Ausrichtung links, rechts und zentriert
Um eine Zeile zu zentrieren, bewegen Sie den Cursor an den Anfang dieser Zeile und drücken Sie META+O, dann META+S
Um einen ausgewählten Textbereich zu rechtfertigen, gehen Sie wie folgt vor
- Markieren Sie den Text, den Sie rechtfertigen möchten
- Drücken Sie META+X
- Der Minipuffer wartet auf eine Antwort
- Geben Sie set-justifiction- ein und drücken Sie die TAB-Taste
- Sie erhalten die folgenden Vervollständigungsoptionen: set-justification-center, set-justification-left, set-justification-right, set-justification-none und set-justification-full
- Schließen Sie den Befehl für die Ausrichtung ab, indem Sie set-justification-right oder eine andere Option auswählen und dann ENTER drücken
- Der ausgewählte Text wird in der von Ihnen gewählten Richtung ausgerichtet
Hier ist ein Beispiel für den Text, der den verschiedenen Ausrichtungseinstellungen zugewiesen ist
Groß-/Kleinschreibung umwandeln
Sie können die Groß-/Kleinschreibung mit einigen verschiedenen Befehlen umwandeln
- Hier ist eine Liste einiger Befehlstasten
So führen Sie diese Funktion aus | Verwenden Sie diese Tasten |
---|---|
Großschreibung eines Wortes nach dem Cursor | META+C (C für Großschreibung) |
Umwandlung eines Wortes in Kleinbuchstaben | META+L (L für Kleinbuchstaben) |
Einen Absatz in Kleinbuchstaben umwandeln | Block auswählen, dann STRG+X STRG+L |
Wenn Sie einen ganzen Absatz oder mehr in Groß- oder Kleinbuchstaben umwandeln, wird ein neues Fenster mit folgender Meldung angezeigt
Fenster Sie haben C-x C-l eingegeben und damit den deaktivierten Befehl „downcase-region“ aufgerufen
- Er ist deaktiviert, weil er für neue Benutzer oft verwirrend ist
- Hier ist der erste Teil seiner Beschreibung: „Convert the region to lowercaselower case“
- In Programmen werden zwei Argumente benötigt
- Diese Argumente geben die Start- und Endzeichennummern des Bereichs an, auf den angewendet werden soll
- Bei Verwendung als Befehl wird der Text zwischen dem Punkt und der Markierung bearbeitet
- Möchten Sie diesen Befehl trotzdem verwenden? Sie können jetzt „y“ eingeben, um es zu versuchen und zu aktivieren (keine Fragen, wenn Sie es erneut verwenden)
- „n“, um abzubrechen – versuchen Sie den Befehl nicht, und er bleibt deaktiviert. „SPC“, um den Befehl nur dieses eine Mal zu versuchen, ihn aber deaktiviert zu lassen
- „!“ um es zu versuchen und alle deaktivierten Befehle nur für diese Sitzung zu aktivieren
Drücken Sie die genannten Tasten, um fortzufahren
Verwalten von Fenstern
Durch die Verwaltung von Fenstern in Emacs können Sie effizienter mit Ihren Dateien arbeiten
Wechseln Sie beispielsweise vom Hauptpuffer zum Emacs-Tutorial, indem Sie STRG+h und dann t drücken
- Ihr Hauptpufferfenster ist jetzt das Emacs-Tutorial
- Wenn Sie zum Puffer zurückwechseln möchten, drücken Sie STRG+X und dann b
- Dies ist der Befehl „Puffer wechseln“
- Emacs fordert Sie auf, einen Puffernamen einzugeben, zu dem Sie wechseln möchten
- Beginnen Sie mit der Eingabe des Puffernamens und drücken Sie ENTER
- Dadurch wechseln Sie vom Emacs-Tutorial zu der von Ihnen angegebenen Datei
Modi aufrufen
Einen Hauptmodus aufrufen
Einer der Gründe, warum Emacs in der UNIX-Community so weit verbreitet ist, liegt in seiner Fähigkeit, verschiedene Modi anzunehmen
- Ein Modus kann die Funktionalität von Emacs erweitern
Je nach ausgewähltem Modus kann Emacs als Textverarbeitungsprogramm zum Schreiben von Textdateien verwendet werden oder für fortgeschrittene Aufgaben wie das Schreiben von Python-, C- oder Java-Code angepasst werden
- Sie können beispielsweise den Modus von Emacs ändern, damit er mit Versionskontrollsystemen funktioniert, Shell-Befehle ausführt oder Man-Pages liest
Es gibt zwei verschiedene Arten von Emacs-Modi
- Einer wird als „Hauptmodus“ bezeichnet
- Im Hauptmodus kann Emacs als integrierte Entwicklungsumgebung (IDE) für Programmier- oder Skriptsprachen verwendet werden
- In diesem Modus bietet das Programm spezielle Funktionen wie farbige Syntaxhervorhebung, Einrückung und Formatierung, sprachspezifische Menüoptionen oder automatische Schnittstellen zu Debuggern und Compilern
Zur Veranschaulichung können Sie mit Emacs eine „Hello World“-App in Python schreiben
Geben Sie in Ihrem Terminal und in Ihrem Stammverzeichnis die folgenden Befehle ein
cd ~ emacs hello.py
Emacs erkennt die Dateierweiterung und startet im Python-Modus
- Geben Sie im Hauptpuffer den folgenden Python-Code ein
print „hello world!\n“
Die Schlüsselwörter werden nun mit farbiger Syntaxhervorhebung angezeigt
- Beachten Sie auch, dass in der Statuszeile über dem Minipuffer der Modus angezeigt wird, in dem Sie sich gerade befinden
Das Hauptmenü enthält auch einen separaten Eintrag speziell für Python
Speichern Sie den Puffer mit STRG+X STRG+S
Um den Hauptmodus von Emacs aus zu ändern, drücken Sie META+X
- Der Minipuffer wartet auf Ihre Antwort
- Sie können dann einen anderen Modus eingeben
Hier sind einige Beispiele für Hauptmodi
- c-mode
- python-mode
- java-mode
- html-mode
- perl-mode
- shell-script-mode
- text-mode
Einen Minor-Modus aufrufen
Im Vergleich zu den Major-Modi bieten die „Minor-Modi“ spezifischere Funktionen
- Diese Funktionen können mit einem bestimmten Major-Modus verknüpft sein oder systemweite Auswirkungen haben, unabhängig vom Major-Modus
- Außerdem können im Gegensatz zu den Major-Modi mehrere Minor-Modi gleichzeitig aktiv sein
- Minor-Modi sind wie Schalter: Einige sind standardmäßig aktiviert, andere nicht
- Wenn ein Minor-Modus bereits aktiviert ist, wird er durch den Aufruf deaktiviert
- Ist er ausgeschaltet, wird er wieder eingeschaltet
Ein Beispiel für einen Nebenmodus ist die Option zum Einstellen der Ausrichtung, die in den vorherigen Beispielen verwendet wurde
Ein weiteres Beispiel für einen Nebenmodus ist der Auto-Fill-Modus
- Um diesen Modus in Ihrem Emacs-Editor aufzurufen, drücken Sie die Taste META+X und geben dann auto-fill-mode ein
In diesem Modus wird eine Textzeile umbrochen und in die nächste Zeile umgebrochen, wenn sie länger als 70 Zeichen ist
- Denken Sie daran, dass das Aufrufen eines Minor-Modus einem Kippschalter ähnelt
- Wenn Sie denselben Befehl erneut aufrufen, wird der Zeilenumbruch deaktiviert
Hier sind einige weitere Beispiele für Minor-Modi
- auto-save-mode: Schaltet die Eigenschaft des automatischen Speicherns um, das den Inhalt des Hauptpuffers regelmäßig im Hintergrund speichert
- line-number-mode: Schaltet die Anzeige der aktuellen Zeilennummer in der Statusleiste um
- linum-mode: Schaltet die Anzeige der Zeilennummern am linken Rand des Fensters um
- column-number-mode: Zeigt die aktuelle Position des Cursors in der Statusleiste an
- overwrite-mode: Dies entspricht dem Drücken der INS-Taste auf Ihrer Tastatur. Wenn diese Option aktiviert ist, wird der Text rechts vom Cursor während der Eingabe überschrieben
- menu-bar-mode: Hiermit kann das Hauptmenü ein- oder ausgeschaltet werden
Um Ihr Verständnis des Emacs-Editors zu fördern, finden Sie auf der GNU-Emacs-Webseite eine Fülle von Informationen, einschließlich Links zu anderen Ressourcen wie dem Emacs-Wiki
- Sie können auch das [GNU-Emacs-Handbuch] lesen