| 
          
          
          
           Die folgende Kurzanleitung für den Gebrauch des (x)emacs beschreibt die
          wichtigsten Tastenkombinationen zur Bedienung des Editors, so wie sie zum Bearbeiten von
          Texten benötigt werden. Einige Spezialitäten zur Unterstützung des LaTeX-
          und TeX-Modus werden genauer erläutert. 
          »Der Emacs kann alles!« ist keine übertriebene Aussage. Bei entsprechender
          Konfiguration lässt er sich als Mail-und News-Reader, als grafisches Frontend
          für den Debugger gdb oder als Browser für die info-Seiten einsetzen.
          Außerdem kommt der Emacs mit einer kleinen Spielesammlung daher... 
             
            Abbildung 1: Startbildschirm des Xemacs 
          Hinweis: Alle nachfolgenden Tastenkombinationen funktionieren nur bei korrekter
          Konfiguration des Emacs. Standardmäßig verwendet der Nutzer root eine andere
          Konfiguration, die die wenigsten der nachfolgenden Möglichkeiten
          unterstützt. 
          
          Nachfolgende Tabelle enthält die verfügbaren Tastenkombinationen zum
          Speichern und Laden von Dateien, sowie zum Verlassen von Emacs. Anstelle mancher
          Tastenkombinationen können in der X-Variante auch die entsprechenden
          Menüeinträge verwendet werden: 
        
          
                | [Ctrl]+[X],[Ctrl]+[F] Datei [Enter] |  
                
                        |          | 
                        Datei laden. | 
                 
                | [Ctrl]+[X],[4],[F] Datei [Enter] |  
                
                        |          | 
                        Datei in neuem Fenster öffnen. | 
                 
                | [Ctrl]+[X],[I] Datei [Enter] |  
                
                        |          | 
                        Datei unter Cursor einfügen. | 
                 
                | [Ctrl]+[X],[Ctrl]+[S] |  
                
                        |          | 
                        Datei speichern. | 
                 
                | [Ctrl]+[X],[Ctrl]+[W] Datei [Enter] |  
                
                        |          | 
                        Datei als »Datei« speichern. | 
                 
                | [Ctrl]+[X],[S] |  
                
                        |          | 
                        Alle geöffneten Dateien speichern. | 
                 
                | [Ctrl]+[X],[Ctrl]+[C] |  
                
                        |          | 
                        (x)emacs beenden. | 
                 
                | [Ctrl]+[Z] |  
                
                        |          | 
                        (x)emacs unterbrechen, Fortsetzung mit %(x)emacs | 
                 
           
         
          
          
          Die angegebenen Tastaturkommandos betreffen den Vi-Modus! 
          
          
                | ^ |  
                
                        |          | 
                        Positioniert Cursor auf das erste Zeichen der aktuellen Zeile. | 
                 
                | 0 |  
                
                        |          | 
                        Positioniert Cursor auf die erste Spalte der aktuellen Zeile. | 
                 
                | $ |  
                
                        |          | 
                        Positioniert Cursor auf das letzte Zeichen der aktuellen Zeile. | 
                 
                | h |  
                
                        |          | 
                        Rückt den Cursor um ein Zeichen nach links. | 
                 
                | l |  
                
                        |          | 
                        Rückt den Cursor um ein Zeichen nach rechts. | 
                 
                | k |  
                
                        |          | 
                        Positioniert den Cursor um eine Zeile nach oben. | 
                 
                | j |  
                
                        |          | 
                        Positioniert den Cursor um eine Zeile nach unten. | 
                 
                | w |  
                
                        |          | 
                        Setzt den Cursor an den Anfang des nächsten Wortes. | 
                 
                | b |  
                
                        |          | 
                        Setzt den Cursor an den Anfang des vorhergehenden Wortes. | 
                 
                | e |  
                
                        |          | 
                        Setzt den Cursor an  das Ende des aktuellen Wortes. | 
                 
                | [Ctrl] n |  
                
                        |          | 
                        Setzt Cursor auf die gleiche Spalte auf der nächsten Zeile. | 
                 
                | [Ctrl] p |  
                
                        |          | 
                        Setzt Cursor auf die gleiche Spalte auf der vorhergehenden Zeile. | 
                 
                | nG |  
                
                        |          | 
                        Setzt Cursor auf die n-te Zeile des Dokuments. | 
                 
                | + |  
                
                        |          | 
                        Positioniert auf Textanfang der nächsten Zeile. | 
                 
                | - |  
                
                        |          | 
                        Positioniert auf Textanfang der vorhergehenden Zeile. | 
                 
                | H |  
                
                        |          | 
                        Setzt den Cursor auf erste Zeile des Bildschirms. | 
                 
                | M |  
                
                        |          | 
                        Setzt den Cursor auf mittlere Zeile des Bildschirms. | 
                 
                | L |  
                
                        |          | 
                        Setzt den Cursor auf letzte Zeile des Bildschirms. | 
                 
                | ( |  
                
                        |          | 
                        Setzt Cursor auf den Anfang des aktuellen Satzes. | 
                 
                | ) |  
                
                        |          | 
                        Setzt Cursor auf das Ende des aktuellen Satzes. | 
                 
                | { |  
                
                        |          | 
                        Setzt Cursor auf den Anfang des aktuellen Absatzes. | 
                 
                | } |  
                
                        |          | 
                        Setzt Cursor auf das Ende des aktuellen Absatzes. | 
                 
         
             
          
          
          Löschen von Text
          
          
                | [Ctrl]+[D] |  
                
                        |          | 
                        Löscht ein Zeichen des Wortes rechts ab Cursor. | 
                 
                | [Ctrl]+[=] |  
                
                        |          | 
                        Löscht ein Zeichen des Wortes links ab Cursor. | 
                 
                | [Ctrl]+[K] |  
                
                        |          | 
                        Löscht ab Cursor bis Zeilenende. | 
                 
                | [Ctrl]+[0],[Ctrl]+[K] |  
                
                        |          | 
                        Löscht vom Zeilenanfang bis Cursor. | 
                 
                | [Alt]+[M] |  
                
                        |          | 
                        Löscht den nächsten Absatz. | 
                 
                | [Alt]+[Z]xxx |  
                
                        |          | 
                        Löscht alle Zeichen von Cursorposition bis zum ersten Auftreten von
              xxx. | 
                 
                | [Ctrl]+[Y] |  
                
                        |          | 
                        Fügt zuletzt gelöschten Text ab Cursor ein. | 
                 
           
          
          Markieren von Text
          
          
                | [Ctrl]+[Leertaste] |  
                
                        |          | 
                        Setzt Markierung. | 
                 
                | [Ctrl]+[X][R],[S] Register [Enter] |  
                
                        |          | 
                        Speichert Text zwischen Markierung und Cursor im Register
              »Register«. | 
                 
                | [Ctrl]+[X][R],[I] Register [Enter] |  
                
                        |          | 
                      Fügt Inhalt des Registers »Register« ab Cursorposition ein. | 
                 
           
          
          Vertauschen von Text
          
          
                | [Ctrl]+[T] |  
                
                        |          | 
                        Vertauscht das Zeichen unter dem Cursor mit dem Zeichen links davon. | 
                 
                | [Alt]+[T] |  
                
                        |          | 
                        
                                Vertauscht zwei Wörter:
                                
                                - Steht der Cursor am Wortanfang, wird das Wort mit dem vorhergehenden
                                vertauscht.
 
                                - Steht der Cursor mitten im Wort, wird dieses mit dem nachfolgenden Wort
                                vertauscht.
 
                                 
                         | 
                 
                | [Ctrl]+[U] |  
                
                        |          | 
                        Letzte Vertauschung rückgängig machen. | 
                 
                | [Ctrl]+[X],[Ctrl]+[T] |  
                
                        |          | 
                        Vertauscht die aktuelle Zeile mit der nachfolgenden. | 
                 
           
          
          
          
          Suchen von Text
          
          
                | [Ctrl]+[S] |  
                
                        |          | 
                        Suche vorwärts, wiederholte Eingabe von [Ctrl]+[S] wechselt zum
              nächsten Muster.  | 
                 
                | [Ctrl]+[R] |  
                
                        |          | 
                        Suche rückwärts. | 
                 
                | [Alt]+[P] |  
                
                        |          | 
                        Wählt früher verwendeten Suchtext aus (vorherigen). | 
                 
                | [Alt]+[N] |  
                
                        |          | 
                        Wählt früher verwendeten Suchtext aus (nächsten). | 
                 
                | [Ctrl]+[G] |  
                
                        |          | 
                        Abbruch der Suche. | 
                 
                | [Ctrl]+[Alt]+[S] |  
                
                        |          | 
                        Suche nach Muster vorwärts (siehe nachfolgende Tabelle). | 
                 
                | [Ctrl]+[Alt]+[R] |  
                
                        |          | 
                        Suche nach Muster rückwärts (siehe nachfolgende Tabelle). | 
                 
           
          
          Suche mit Wildcards
          Ähnlich zum Mechanismus der Bash erlaubt der (x)emacs das Suchen nach Mustern mit
          bestimmten Jokerzeichen. Zum Beispiel findet [Ctrl]+[Alt]+[S] \]
          Taste ein Wort, das mit Taste beginnt. Einige Musterkombinationen
          sind in folgender Tabelle aufgeführt: 
            
          
          
                | \> |  
                
                        |          | 
                        Sucht am Wortanfang. | 
                 
                | \< |  
                
                        |          | 
                        Sucht am Wortende. | 
                 
                | ~ |  
                
                        |          | 
                        Sucht am Zeilenanfang. | 
                 
                | $ |  
                
                        |          | 
                        Sucht am Zeilenende. | 
                 
                | . |  
                
                        |          | 
                        Platzhalter für ein beliebiges Zeichen. | 
                 
                | .* |  
                
                        |          | 
                        Platzhalter für beliebig viele (auch Null) beliebige Zeichen. | 
                 
                | .+ |  
                
                        |          | 
                        Platzhalter für beliebig viele (nicht Null) beliebige Zeichen. | 
                 
                | .? |  
                
                        |          | 
                        Platzhalter für 0 oder ein beliebiges Zeichen. | 
                 
                | [abc] |  
                
                        |          | 
                        Platzhalter für eines der in Klammern eingeschlossenen Zeichen. | 
                 
                | [^abc] |  
                
                        |          | 
                        Platzhalter für alle Zeichen außer den in Klammern eingeschlossenen. | 
                 
                | \( |  
                
                        |          | 
                        Beginn einer Gruppe. | 
                 
                | \) |  
                
                        |          | 
                        Ende einer Gruppe. | 
                 
                | \Sonderzeichen |  
                
                        |          | 
                        Suche nach »Sonderzeichen« (das dem Slash folgende Zeichen verliert
                        seine Sonderbedeutung). | 
                 
           
          
          Ersetzen von Text
          Zum Suchen und Ersetzen von Text stehen zwei Kommandos zur Verfügung: 
          
            [ESC]+[%] sucht ein Muster und ersetzt es durch ein anderes, jede
            Ersetzung muss durch [Y] bestätigt bzw. durch [N]
            verworfen werden 
            [Alt] query-replace-r [Enter] arbeitet wie das obige Verfahren,
            erlaubt aber die Eingabe von Jokerzeichen im Suchmuster 
           
          
          Um die Beschreibung nicht unendlich auszudehnen (allein die Beschreibung der
          Emacs-Konfiguration mittels LISP umfasst mehrere hundert Seiten), soll hier nur eine
          Beschreibung ausgewählter Modi erfolgen. 
           
           
           
          Die Bearbeitungsmodi des emacs
          Der emacs unterstützt für verschiedene Texttypen spezielle Modi, die weitere
          spezifische Funktionalitäten (z.B das Syntax-Highlighting) definieren. 
          Einige Modi sind (anhand der Dateikennung kann der Emacs oft die entsprechenden Modi
          selbst erkennen): 
          
          
                | [Alt]+[X] fundamental-mode [Enter] |  
                
                        |          | 
                        Standardmodus. | 
                 
                | [Alt]+[X] indended-text-mode [Enter] |  
                
                        |          | 
                        Fließtextmodus. | 
                 
                | [Alt]+[X] tex-mode [Enter] |  
                
                        |          | 
                        TeX-Modus. | 
                 
                | [Alt]+[X] latex-mode [Enter] |  
                
                        |          | 
                        LaTeX-Modus. | 
                 
                | [Alt]+[X] c-mode [Enter] |  
                
                        |          | 
                        C-Modus. | 
                 
                | [Alt]+[X] tcl-mode [Enter] |  
                
                        |          | 
                        Tcl-Modus. | 
                 
                | [Alt]+[X] font-lock-mode [Enter] |  
                
                        |          | 
                        Aktivieren von Syntax-Highlighting. | 
                 
           
          
          TeX-und LaTeX-Modus
          Die wichtigsten zusätzlichen Funktionen sind: 
          
          
                | [Ctrl]+[C],[Ctrl]+[E] |  
                
                        |          | 
                        Erzeugt eine Umgebung »\begin{name} - \end{name}«; verlangt die Umgebung
              Optionen und Parameter, wird zur Angabe dieser aufgefordert. | 
                 
                 | [Ctrl]+[C],[}] |  
                
                        |          | 
                        Springt zur abschließenden Klammer der aktuellen Umgebung. | 
                 
                 | [Ctrl]+[J] |  
                
                        |          | 
                        Ende eines Absatzes, ein Syntaxtest für den Absatz wird
              durchgeführt. | 
                 
           
          
          Die Emulation anderer Editoren
          Alle bisher beschriebenen Kommandos arbeiten im "normalen" Modus. Der Emacs
          unterstützt ebenso die Emulation der Editoren EDT (Dec VMS Editor) und des Vi (in
          mehreren Varianten). 
          Um z.B. den Viper-Modus zu benutzen, gibt man im emacs Folgendes ein: 
          
          M-x (sprich: Meta-x) bedeutet dabei das gleichzeitige Drücken der
          Tasten [Alt][x]. 
          Abkürzungen
          Für immer wiederkehrenden (lange) Textpassagen kann eine Abkürzung definiert
          werden, die bei entsprechender Einstellung des Emacs dann automatisch zum vollen Text
          expandiert wird. Bevor wir ein Beispiel betrachten, seien die verschiedenen
          Möglichkeiten in Zusammenhang mit Abkürzungen aufgelistet: 
          
          
                | [Ctrl]+[X],[A],[G] Text [Enter] |  
                
                        |          | 
                        Definiert zum zuvor eingegebenen Text eine global gültige
              Abkürzung. | 
                 
                | [Ctrl]+[X],[A],[E] |  
                
                        |          | 
                        Manuelle Expansion einer Abkürzung. | 
                 
                | [Alt]+[X]  abbrev-mode [Enter] |  
                
                        |          | 
                        Aktiviert die automatische Expansion. | 
                 
                | [Alt]+[X]  edit-abbrevs [Enter] |  
                
                        |          | 
                        Abkürzungstabelle editieren. | 
                 
                | [Alt]+[X]  write-abbrev-file [Enter] |  
                
                        |          | 
                        Speichern der Abkürzungsdatei. | 
                 
                | [Alt]+[X]  read-abbrev-file [Enter] |  
                
                        |          | 
                        Laden der Abkürzungsdatei. | 
                 
                | [Ctrl]+[X],[Ctrl]+[S],[Ctrl]+[X],[B][Enter] |  
                
                        |          | 
                        Zuvor editierte Abkürzungsdatei emacs-intern speichern. | 
                 
           
          
          Beispiel zur Definition von Abkürzungen
          Um eine Abkürzung für den Text \subsection{ zu definieren geben
          wir diesen auf einer neuen Zeile ein und betätigen die Tastenkombination
          [Ctrl]+[X],[A],[I],[G]. 
          Durch Eingabe von sbc [Enter] definieren wir sbc als Abkürzung
          für \subsection{. 
          Ist die automatische Expansion aktiv ([Alt]+[X] abbrev-mode [Enter]),
          wird bei einer nachfolgenden Eingabe von sbc [Leertaste] der
          Text automatisch vervollständigt. 
          Der Text der Abkürzung sollte kein Bestandteil eines Wortes sein! 
          
          Emacs als Newsreader
          In der X-Variante muss nur der verwendete Newsserver eingetragen werden: 
          Options
              Customize
              Emacs
              Applications
              News
              Gnus
              Server.
             
          Alternativ lässt sich in der Datei ~/.emacs eine Zeile in der Art 
          
            
              | (setq nntp-address "news.irgendwo.de")  | 
             
           
          aufnehmen. 
          Aufruf der Kommandos
          Über die Tastenkombination 
          
          können alle Modi, Kommandos usw. erreicht werden. 
          Z.B. startet 
          
          den Kompilierungsvorgang. 
          Mit »[Alt]+[X],[Tab]« werden alle Möglichkeiten (einige hundert) aufgelistet. 
          
         |