mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-24 10:38:38 +00:00
1444 lines
62 KiB
Plaintext
1444 lines
62 KiB
Plaintext
|
Einf<EFBFBD>hrung in Emacs. (c) 1997, 1999 Free Software Foundation, Inc.
|
|||
|
|
|||
|
Emacs-Befehle beinhalten im allgemeinen die CONTROL-Taste (manchmal
|
|||
|
auch als CTRL, CTL oder STRG beschriftet) sowie die META-Taste (auch
|
|||
|
EDIT oder ALT genannt). Folgende Abk<62>rzungen werden verwendet:
|
|||
|
|
|||
|
C-<Zeichen> bedeutet, da<64> die CONTROL-Taste gedr<64>ckt sein mu<6D>,
|
|||
|
w<>hrend man das Zeichen <Zeichen> eingibt. Beispiel:
|
|||
|
C-f Halten Sie die CONTROL-Taste gedr<64>ckt und dr<64>cken
|
|||
|
Sie dann die f-Taste.
|
|||
|
M-<Zeichen> bedeutet, da<64> die META-Taste gedr<64>ckt sein mu<6D>,
|
|||
|
w<>hrend man das Zeichen <Zeichen> eingibt. Statt dessen
|
|||
|
kann man auch die ESC-Taste und anschlie<69>end <Zeichen>
|
|||
|
dr<64>cken (hintereinander, nicht gleichzeitig). Beispiel:
|
|||
|
M-f Halten Sie die META-Taste gedr<64>ckt und geben
|
|||
|
Sie den Buchstaben (klein) f ein.
|
|||
|
|
|||
|
`>>' am linken Rand ist ein Hinweis, einen Befehl auszuprobieren:
|
|||
|
<<Blank lines inserted here by startup of help-with-tutorial>>
|
|||
|
>> Dr<44>cken Sie C-v, um zur n<>chsten Bildschirmseite vorzubl<62>ttern.
|
|||
|
Ab jetzt sollten Sie das stets tun, wenn Sie eine Seite fertig
|
|||
|
gelesen haben.
|
|||
|
|
|||
|
Beachten Sie bitte, da<64> beim Bl<42>ttern die untersten zwei Zeilen der
|
|||
|
vorigen Bildschirmseite als die zwei obersten Zeilen der neuen Seite
|
|||
|
erscheinen, um eine gewisse Kontinuit<69>t w<>hrend des Lesens zu
|
|||
|
erm<EFBFBD>glichen.
|
|||
|
|
|||
|
Wichtig: Sie k<>nnen Emacs mit der Befehlsfolge C-x C-c beenden.
|
|||
|
|
|||
|
Im weiteren wird die ESC-Taste mit <ESC> bezeichnet.
|
|||
|
|
|||
|
[Falls die deutschen Umlaute nicht korrekt auf dem Bildschirm
|
|||
|
erscheinen, lesen Sie bitte den Abschnitt `MULE' kurz vor Ende dieser
|
|||
|
Einf<EFBFBD>hrung.]
|
|||
|
|
|||
|
Zun<EFBFBD>chst m<>ssen Sie wissen, wie man sich innerhalb eines Dokuments
|
|||
|
bewegen kann. Wie man eine Bildschirmseite vorw<72>rts bl<62>ttert, wissen
|
|||
|
Sie schon (C-v). Mit M-v bl<62>ttern Sie eine Bildschirmseite zur<75>ck
|
|||
|
(halten Sie die META-Taste gedr<64>ckt und geben Sie v ein, oder dr<64>cken
|
|||
|
Sie zuerst <ESC> und anschlie<69>end v).
|
|||
|
|
|||
|
>> Probieren Sie einige Male M-v und C-v aus.
|
|||
|
|
|||
|
[Auf den meisten Tastaturen bewirkt die PgUp-Taste (`page up', auch
|
|||
|
mit `Bild' und einem Aufw<66>rtspfeil beschriftet) dasselbe wie M-v bzw.
|
|||
|
die PgDn-Taste (`page down', `Bild' mit Abw<62>rtspfeil) dasselbe wie
|
|||
|
C-v.]
|
|||
|
|
|||
|
|
|||
|
* ZUSAMMENFASSUNG
|
|||
|
-----------------
|
|||
|
|
|||
|
Die folgenden Befehle sind n<>tzlich, um Text bildschirmweise zu
|
|||
|
betrachten:
|
|||
|
|
|||
|
C-v eine Seite vorw<72>rts bl<62>ttern
|
|||
|
M-v eine Seite zur<75>ck bl<62>ttern
|
|||
|
C-l l<>sche den Bildschirm und stelle den ganzen Text
|
|||
|
erneut dar, wobei der Text rund um den Cursor zur
|
|||
|
Mitte des Bildschirms bewegt wird.
|
|||
|
(`l' ist der Buchstabe `klein L', nicht die Ziffer 1.)
|
|||
|
|
|||
|
|
|||
|
>> Lokalisieren Sie den Cursor und merken sich den Text in dessen
|
|||
|
Umgebung. Dr<44>cken Sie C-l. Der Cursor ist jetzt ungef<65>hr in der
|
|||
|
(vertikalen) Bildschirmmitte, und er hat seine Position relativ zum
|
|||
|
Text nicht ge<67>ndert.
|
|||
|
|
|||
|
|
|||
|
* KONTROLLE DES CURSORS
|
|||
|
-----------------------
|
|||
|
|
|||
|
Text bildschirmweise anzuschauen ist sicherlich praktisch, aber wie
|
|||
|
kommt man zu einer bestimmten Position innerhalb des gerade
|
|||
|
dargestellten Textes?
|
|||
|
|
|||
|
Es gibt verschiedene M<>glichkeiten. Die Grundbefehle sind C-p, C-b,
|
|||
|
C-f und C-n. Dem folgenden Diagramm k<>nnen Sie entnehmen, welcher
|
|||
|
Befehl den Cursor wohin bewegt:
|
|||
|
|
|||
|
|
|||
|
vorige Zeile, C-p
|
|||
|
:
|
|||
|
:
|
|||
|
zur<75>ck, C-b .... momentane Cursor-Position .... vorw<72>rts, C-f
|
|||
|
:
|
|||
|
:
|
|||
|
n<>chste Zeile, C-n
|
|||
|
|
|||
|
|
|||
|
[Die Buchstaben p, b, f und n stehen f<>r die englischen Worte
|
|||
|
`previous', `backward', `forward' und `next'.]
|
|||
|
|
|||
|
>> Bewegen Sie den Cursor zur Zeile in der Mitte des Diagramms mittels
|
|||
|
C-n oder C-p. Geben Sie dann C-l ein, und das ganze Diagramm ist
|
|||
|
zentriert auf dem Bildschirm.
|
|||
|
|
|||
|
Normalerweise sind die vier Pfeiltasten mit den Cursor-Grundbefehlen
|
|||
|
belegt. Falls nicht, sollten Sie Ihre Terminalkonfiguration
|
|||
|
<EFBFBD>berpr<EFBFBD>fen. Wenn z.B. Ihr Terminalprogramm (mit dem Sie sich <20>ber
|
|||
|
eine Modem-Leitung in Ihrem Rechenzentrum oder Internet-Provider
|
|||
|
eingew<EFBFBD>hlt haben) ein vt100-Terminal emuliert, sollte die
|
|||
|
Umgebungsvariable `TERM=vt100' gesetzt sein. Unter dem X Window
|
|||
|
System sollten die Pfeiltasten immer richtig belegt sein.
|
|||
|
|
|||
|
Es ist von gro<72>er Wichtigkeit, sich mit obigen Cursor-Befehlen
|
|||
|
vertraut zu machen, da man sie st<73>ndig braucht (besonders wenn man mit
|
|||
|
Terminal-Emulationen arbeitet, welche die Pfeiltasten nicht
|
|||
|
unterst<EFBFBD>tzen).
|
|||
|
|
|||
|
>> Dr<44>cken Sie ein paarmal C-n, um den Cursor zu dieser Zeile zu
|
|||
|
bewegen.
|
|||
|
|
|||
|
>> Bewegen Sie den Cursor vorw<72>rts mittels C-f und nach oben mit C-p.
|
|||
|
Beobachten Sie, was C-p tut, wenn der Cursor sich in der
|
|||
|
Zeilenmitte befindet.
|
|||
|
|
|||
|
Jede Textzeile endet mit einem Zeilenvorschub-Zeichen (`newline'), das
|
|||
|
sie von der folgenden Zeile trennt.
|
|||
|
|
|||
|
>> Probieren Sie C-b am Anfang einer Zeile. Der Cursor sollte zum
|
|||
|
Ende der vorigen Zeile springen: C-b <20>berspringt
|
|||
|
Zeilenvorschub-Zeichen.
|
|||
|
|
|||
|
C-f <20>berspringt Zeilenvorschub-Zeichen analog zu C-b.
|
|||
|
|
|||
|
>> Dr<44>cken Sie noch ein paarmal C-b, um ein Gef<65>hl f<>r den Cursor zu
|
|||
|
bekommen. Bewegen sie anschlie<69>end den Cursor mittels C-f zum Ende
|
|||
|
der Zeile. Geben Sie jetzt noch einmal C-f ein, um zur n<>chsten
|
|||
|
Zeile zu springen.
|
|||
|
|
|||
|
>> Falls die Pfeiltasten funktionieren, k<>nnen Sie mit diesen das
|
|||
|
gleiche probieren und <20>ben.
|
|||
|
|
|||
|
Wenn Sie den Cursor entweder nach oben oder nach unten <20>ber den
|
|||
|
Bildschirmrand hinaus bewegen wollen, dann wird statt dessen Text in
|
|||
|
den Bildschirm hineingeschoben. Dies nennt man `scrolling'. Auf
|
|||
|
diese Weise verhindert Emacs, da<64> der Cursor je den sichtbaren Bereich
|
|||
|
verl<EFBFBD><EFBFBD>t.
|
|||
|
|
|||
|
>> Versuchen Sie den Cursor <20>ber den unteren Bildschirmrand hinaus zu
|
|||
|
bewegen und beobachten Sie, was geschieht.
|
|||
|
|
|||
|
Wenn zeichenweise Cursorbewegung zu langsam ist, dann kann man den
|
|||
|
Cursor wortweise bewegen. M-f (Meta-f) bewegt den Cursor ein Wort
|
|||
|
vor, und M-b ein Wort zur<75>ck.
|
|||
|
|
|||
|
>> Geben Sie ein paarmal M-f und M-b ein.
|
|||
|
|
|||
|
Befinden Sie sich in der Mitte eines Wortes, bewegt M-f den Cursor zum
|
|||
|
Ende des Wortes. Befinden Sie dagegen sich in einem Wortzwischenraum,
|
|||
|
bewegt M-f den Cursor zum Ende des n<>chsten Wortes. M-b arbeitet
|
|||
|
analog, aber in die entgegengesetzte Richtung.
|
|||
|
|
|||
|
>> Kombinieren Sie M-f und M-b mit den Befehlen C-f und C-b, um die
|
|||
|
Cursorbewegung von verschiedenen Positionen aus innerhalb und
|
|||
|
zwischen W<>rtern zu beobachten.
|
|||
|
|
|||
|
Beachten Sie die Parallele zwischen C-f und C-b einerseits und M-f und
|
|||
|
M-b andererseits. Sehr oft werden mit `Meta-' beginnende Befehle f<>r
|
|||
|
Operationen verwendet, die mit Sprache zu tun haben (W<>rter, S<>tze,
|
|||
|
Abs<EFBFBD>tze), w<>hrend Control-Befehle mit den Text-Basiseinheiten
|
|||
|
operieren, unabh<62>ngig davon, was Sie gerade editieren (Zeichen,
|
|||
|
Buchstaben, Zeilen etc).
|
|||
|
|
|||
|
Ein anderes Beispiel: C-a und C-e bewegt den Cursor zum Anfang
|
|||
|
bzw. zum Ende einer Zeile, wohingegen M-a und M-e den Cursor zum
|
|||
|
Anfang bzw. zum Ende eines Satzes springen l<><6C>t.
|
|||
|
|
|||
|
>> Probieren Sie ein paarmal C-a und C-e.
|
|||
|
Probieren Sie dann ein paarmal M-a und M-e.
|
|||
|
|
|||
|
Beachten Sie, da<64> ein wiederholtes Dr<44>cken von C-a nichts bewirkt,
|
|||
|
dagegen M-a den Cursor satzweise zur<75>cksetzt. Hier endet die
|
|||
|
Analogie, jedoch ist das Verhalten dieser Befehle leicht
|
|||
|
nachvollziehbar.
|
|||
|
|
|||
|
[Anmerkung 1: Im Deutschen kommt laut Duden nach einem Punkt nur ein
|
|||
|
Leerzeichen. Falls Sie aber Texte schreiben, die weiter verarbeitet
|
|||
|
werden (z.B. durch ein Textformatierprogramm wie TeX), dann sollten
|
|||
|
Sie sich angew<65>hnen, nach einem Satzende stets ZWEI Leerzeichen zu
|
|||
|
lassen. Dadurch erm<72>glichen Sie u.a., da<64> Emacs zwischen
|
|||
|
Abk<EFBFBD>rzungspunkten und dem Satzende unterscheiden kann, was f<>r
|
|||
|
Textsuche in wissenschaftlichen Texten oft vorteilhaft ist.]
|
|||
|
|
|||
|
[Anmerkung 2: Die Tasten `Home' (Pos1) und `End' (Ende) verhalten sich
|
|||
|
standardm<EFBFBD><EFBFBD>ig nicht wie C-a und C-e, wie wohl die meisten Benutzer
|
|||
|
annehmen w<>rden, sondern springen zum Anfang bzw. zum Ende des
|
|||
|
Dokuments! Lesen Sie in der Emacs-Dokumentation unter dem Stichwort
|
|||
|
`Rebinding Keys in Your Init File' nach, wie Sie die Tastaturbelegung
|
|||
|
<EFBFBD>ndern k<>nnen.]
|
|||
|
|
|||
|
Die aktuelle Position des Cursors wird im Englischen auch `point'
|
|||
|
(Punkt) genannt. Beachten Sie bitte, da<64> sich `point' stets
|
|||
|
*zwischen* zwei Zeichen befindet, n<>mlich genau vor dem
|
|||
|
Cursor-K<>stchen.
|
|||
|
|
|||
|
Hier ist eine Zusammenfassung von einfachen Bewegungsbefehlen f<>r den
|
|||
|
Cursor einschlie<69>lich der Wort- und Satzbewegungsbefehle:
|
|||
|
|
|||
|
C-f ein Zeichen vorw<72>rts (auch `Pfeil rechts'-Taste)
|
|||
|
C-b ein Zeichen zur<75>ck (auch `Pfeil links'-Taste)
|
|||
|
|
|||
|
M-f ein Wort vorw<72>rts
|
|||
|
M-b ein Wort zur<75>ck
|
|||
|
|
|||
|
C-n eine Zeile vorw<72>rts (auch `Pfeil hinunter'-Taste)
|
|||
|
C-p eine Zeile zur<75>ck (auch `Pfeil hinauf'-Taste)
|
|||
|
|
|||
|
C-a zum Zeilenanfang
|
|||
|
C-e zum Zeilenende
|
|||
|
|
|||
|
M-a zum Satzanfang
|
|||
|
M-e zum Satzende
|
|||
|
|
|||
|
>> Probieren Sie diese Befehle jetzt ein paarmal zur <20>bung.
|
|||
|
Es sind die meistverwendeten Befehle innerhalb Emacs.
|
|||
|
|
|||
|
Zwei weitere wichtige Befehle f<>r die Cursorbewegung sind M-< (Meta
|
|||
|
Kleiner-als) und M-> (Meta Gr<47><72>er-als), welche zum Anfang bzw. zum
|
|||
|
Ende des ganzen Textes springen.
|
|||
|
|
|||
|
Bei den meisten Terminal-Tastaturen befindet sich `<' <20>ber dem Komma,
|
|||
|
d.h. Sie m<>ssen zus<75>tzlich die Shift-Taste verwenden (der Umschalter
|
|||
|
ist auf deutschen Tastaturen normalerweise mit einem dicken
|
|||
|
Aufw<EFBFBD>rtspfeil markiert). Ohne Shift-Taste w<>rden Sie M-Komma
|
|||
|
eingeben.
|
|||
|
|
|||
|
[Standardm<64><6D>ig sind die Tasten `Pos1' und `Ende' mit M-< bzw. M->
|
|||
|
belegt.]
|
|||
|
|
|||
|
>> Testen Sie nun M-< (bzw. `Pos1'), um an den Anfang der Einf<6E>hrung
|
|||
|
zu gelangen. Verwenden Sie dann C-v, um wieder hierher zu kommen.
|
|||
|
|
|||
|
Ein weiteres, oft ben<65>tztes Konzept in Emacs ist die Markierung
|
|||
|
(`mark'). Der Grundbefehl dazu ist C-SPC (oder gleichwertig C-@); mit
|
|||
|
ihm kann eine Markierung gesetzt werden. Mit C-u C-SPC kommt man zu
|
|||
|
dieser Markierung zur<75>ck, falls man den Cursor inzwischen weiterbewegt
|
|||
|
hat. Viele Befehle, die gro<72>e Spr<70>nge in einem Text ausf<73>hren (so
|
|||
|
auch M-> und M-<) setzen eine Markierung implizit, was in der
|
|||
|
untersten Zeile (dem Echobereich, s.u.) als `Mark set' angezeigt wird.
|
|||
|
|
|||
|
>> Verwenden Sie jetzt M-> (bzw. `Ende'), um zum Ende der Einf<6E>hrung
|
|||
|
zu springen und ben<65>tzen Sie C-u C-SPC, um hierher zur<75>ckzukehren.
|
|||
|
|
|||
|
Markierungen werden in einem Ring gespeichert (d.h., die zuletzt in
|
|||
|
den Ring eingeh<65>ngte Markierung wird als erste zur<75>ckgeholt und wie
|
|||
|
bei einem Schl<68>sselbund am Ende wieder in den Ring eingef<65>gt). Mit
|
|||
|
C-u C-SPC k<>nnen Sie St<53>ck f<>r St<53>ck alle Markierungen im
|
|||
|
Markierungsring ansteuern.
|
|||
|
|
|||
|
>> Dr<44>cken Sie hier C-SPC, gehen Sie dann zu verschiedenen Positionen
|
|||
|
innerhalb dieses Dokuments und verwenden Sie C-SPC, um weitere
|
|||
|
Markierungen zu setzen. Geben Sie anschlie<69>end C-u C-SPC so oft
|
|||
|
ein, bis Sie wieder an dieser Position angelangt sind.
|
|||
|
|
|||
|
Die meisten Emacs-Befehle akzeptieren ein numerisches Argument, das in
|
|||
|
der Regel als Wiederholungsz<73>hler dient (d.h. wie oft der Befehl
|
|||
|
ausgef<EFBFBD>hrt werden soll). Eingegeben wird diese Zahl mit C-u, dann die
|
|||
|
Ziffern und dann der Befehl selbst. Alternativ k<>nnen Sie die
|
|||
|
META-Taste (bzw. EDIT- oder ALT-Taste) gedr<64>ckt halten und dann die
|
|||
|
Ziffern des Wiederholungsz<73>hlers eingeben. Wir empfehlen allerdings,
|
|||
|
die C-u-Methode zu lernen, da sie mit jedem Terminal funktioniert.
|
|||
|
|
|||
|
Beispiel: C-u 8 C-f bewegt den Cursor acht Zeichen vorw<72>rts.
|
|||
|
|
|||
|
>> Versuchen Sie, C-n oder C-p mit einem numerischen Argument zu
|
|||
|
verwenden und bewegen Sie den Cursor mit nur einem Befehl ungef<65>hr
|
|||
|
hierher.
|
|||
|
|
|||
|
Wie gesagt, die meisten Befehle verwenden das numerische Argument als
|
|||
|
Wiederholungsz<EFBFBD>hler. Bestimmte Befehle jedoch ben<65>tzen es f<>r andere
|
|||
|
Zwecke. C-v und M-v geh<65>ren dazu. Gibt man diesen Befehlen einen
|
|||
|
Parameter n, dann verschieben sie den Bildschirminhalt nicht um eine
|
|||
|
ganze Bildschirmseite, sondern um n Zeilen. Beispiel: C-u 4 C-v
|
|||
|
verschiebt den Bildschirminhalt um vier Zeilen.
|
|||
|
|
|||
|
>> Versuchen Sie jetzt C-u 8 C-v auszuf<75>hren.
|
|||
|
|
|||
|
Der Bildschirminhalt sollte jetzt um acht Zeilen nach oben verschoben
|
|||
|
sein. Wollen Sie ihn nach unten verschieben, dann geben Sie M-v mit
|
|||
|
einem numerischen Argument ein.
|
|||
|
|
|||
|
Wenn Sie X verwenden, dann befindet sich ein schmaler, langgezogener
|
|||
|
rechteckiger Bereich im Regelfall auf der linken Seite des
|
|||
|
Emacs-Fensters. Dieser Bereich wird Scrollbar genannt
|
|||
|
(`Verschiebungsbalken'). Sie k<>nnen Text verschieben, indem Sie mit
|
|||
|
der Maus auf den Scrollbar klicken.
|
|||
|
|
|||
|
>> Dr<44>cken Sie die mittlere Taste (oder die linke und rechte Taste
|
|||
|
gleichzeitig, falls Sie eine Zwei-Tasten-Maus verwenden) innerhalb
|
|||
|
des Scrollbar-Bereichs. Das sollte den Text zu einer Position
|
|||
|
verschieben, die davon abh<62>ngt, wie weit oben oder unten Sie
|
|||
|
geklickt haben.
|
|||
|
|
|||
|
>> Bewegen Sie nun die Maus auf und ab, w<>hrend Sie die mittlere Taste
|
|||
|
gedr<64>ckt halten. Sie werden sehen, da<64> der Text entsprechend der
|
|||
|
Mausbewegungen nach oben oder unter verschoben wird.
|
|||
|
|
|||
|
|
|||
|
* WENN EMACS NICHT MEHR REAGIERT
|
|||
|
--------------------------------
|
|||
|
|
|||
|
Wenn Emacs `h<>ngt', also auf keine Ihrer Eingaben reagiert, dr<64>cken
|
|||
|
Sie C-g. Sie k<>nnen C-g auch dazu ben<65>tzen, einen Befehl zu stoppen,
|
|||
|
der zu lange braucht.
|
|||
|
|
|||
|
Eine andere Anwendung ist, einen teilweise eingegebenen Befehl zu
|
|||
|
verwerfen, z.B. ein irrt<72>mlich eingetipptes numerisches Argument zu
|
|||
|
entfernen.
|
|||
|
|
|||
|
>> Geben Sie C-u 100 ein, um ein numerisches Argument 100 zu
|
|||
|
spezifizieren, und dr<64>cken Sie dann C-g. Wenn Sie jetzt C-f
|
|||
|
ausf<73>hren, dann bewegt sich der Cursor genau ein Zeichen vorw<72>rts,
|
|||
|
da Sie ja das numerische Argument mittels C-g gel<65>scht haben.
|
|||
|
|
|||
|
Wenn Sie aus Versehen <ESC> gedr<64>ckt haben, k<>nnen Sie dies ebenfalls
|
|||
|
mit C-g r<>ckg<6B>ngig machen.
|
|||
|
|
|||
|
|
|||
|
* DEAKTIVIERTE BEFEHLE
|
|||
|
----------------------
|
|||
|
|
|||
|
Ein paar Befehle von Emacs sind deaktiviert (`disabled'), damit
|
|||
|
Anf<EFBFBD>nger sie nicht unabsichtlich benutzen.
|
|||
|
|
|||
|
Wenn Sie einen solchen Befehl eingeben, dann gibt Emacs eine Meldung
|
|||
|
aus und fragt Sie, ob Sie ihn wirklich ausf<73>hren wollen.
|
|||
|
|
|||
|
Antworten Sie mit y (f<>r `yes') oder dr<64>cken Sie die Leertaste, wenn
|
|||
|
Sie den Befehl ausf<73>hren wollen, sonst mit n.
|
|||
|
|
|||
|
>> Geben Sie <ESC> : ein (<ESC> gefolgt von einem Doppelpunkt; das ist
|
|||
|
ein deaktivierter Befehl) und dr<64>cken Sie n als Antwort auf die
|
|||
|
Frage.
|
|||
|
|
|||
|
|
|||
|
* FENSTER
|
|||
|
---------
|
|||
|
|
|||
|
Emacs kann mehrere Fenster (`windows') haben, von denen jedes seinen
|
|||
|
eigenen Text darstellt. Sp<53>ter erkl<6B>ren wir, wie man mit Fenstern
|
|||
|
umgeht. Hier wollen wir nur erkl<6B>ren, wie man ein (vielleicht
|
|||
|
irrt<EFBFBD>mlich erzeugtes) Fenster wieder entfernt und zum normalen
|
|||
|
Ein-Fenster-Editieren zur<75>ckkommt. Der Befehl ist einfach:
|
|||
|
|
|||
|
C-x 1 Ein Fenster (d.h., schlie<69>e alle anderen Fenster)
|
|||
|
|
|||
|
Das ist C-x gefolgt von der Ziffer 1. C-x 1 expandiert das Fenster,
|
|||
|
in dem der Cursor sich befindet, soda<64> es den ganzen Bildschirm
|
|||
|
erfa<EFBFBD>t. Alle anderen Fenster werden gel<65>scht.
|
|||
|
|
|||
|
[Anmerkung: Emacs verwendet das Wort Fenster (`windows') in einem
|
|||
|
anderen Sinn, als Sie es vielleicht gew<65>hnt sind. Wenn Sie einen
|
|||
|
Textbildschirm vor sich haben, dann ist die Terminologie eindeutig.
|
|||
|
Wenn Sie allerdings eine graphische Oberfl<66>che benutzen, dann
|
|||
|
bezeichnet ein Emacs-Fenster einen Teilbereich des Fensters (von Ihrer
|
|||
|
graphischen Oberfl<66>che erzeugt), in dem Emacs l<>uft, in v<>lliger
|
|||
|
Analogie zum Textmodus. F<>r (graphische) Fenster im herk<72>mmlichen
|
|||
|
Sinn verwenden die Emacs-Entwickler den Ausdruck Rahmen (`frame').]
|
|||
|
|
|||
|
>> Bewegen Sie den Cursor zu dieser Zeile und geben Sie C-u 0 C-l ein.
|
|||
|
|
|||
|
>> Dr<44>cken Sie jetzt C-h k C-f.
|
|||
|
Beachten Sie, wie das Fenster schrumpft und ein neues dazukommt,
|
|||
|
welches die (englische) Dokumentation des C-f Befehls anzeigt.
|
|||
|
|
|||
|
>> Geben Sie jetzt C-x 1 ein. Das Dokumentationsfenster verschwindet
|
|||
|
wieder.
|
|||
|
|
|||
|
|
|||
|
* EINF<4E>GEN UND L<>SCHEN
|
|||
|
----------------------
|
|||
|
|
|||
|
Wenn Sie Text einf<6E>gen wollen, dann geben Sie ihn einfach ein.
|
|||
|
Sichtbare Zeichen, z.B. A, 7, * usw. werden als Text von Emacs sofort
|
|||
|
eingef<EFBFBD>gt. Dr<44>cken Sie <Return> (die Zeilenvorschubtaste, meistens
|
|||
|
mit `Enter' oder nur mit einem R<>ckw<6B>rts-Hakenpfeil beschriftet), um
|
|||
|
ein Zeilenvorschubzeichen einzuf<75>gen.
|
|||
|
|
|||
|
Sie k<>nnen das zuletzt eingegebene Zeichen l<>schen, indem Sie <Delete>
|
|||
|
dr<EFBFBD>cken. <Delete> ist einer Taste auf der Tastatur zugeordnet, die
|
|||
|
mit `Del' oder `Entf' beschriftet ist. In manchen F<>llen dient die
|
|||
|
Backspace-Taste (oft auch nur als R<>ckw<6B>rtspfeil beschriftet) als
|
|||
|
<Delete>, aber nicht immer!
|
|||
|
|
|||
|
Allgemein gesprochen l<>scht <Delete> das Zeichen unmittelbar vor der
|
|||
|
aktuellen Cursorposition.
|
|||
|
|
|||
|
[Beachten Sie, da<64> <Delete> ein logischer Befehlsname ist, der auf die
|
|||
|
jeweilige Tastatur abgebildet wird. Lesen Sie im Abschnitt `Rebinding
|
|||
|
Keys in Your Init File' des Emacs-Handbuches nach, wie Sie
|
|||
|
gegebenenfalls die Tastaturbelegung ver<65>ndern k<>nnen.]
|
|||
|
|
|||
|
>> Probieren Sie das jetzt aus: Geben Sie ein paar Zeichen ein und
|
|||
|
l<>schen Sie sie wieder mit <Delete>. Sie brauchen sich keine
|
|||
|
Sorgen zu machen, dieses Dokument zu ver<65>ndern: Was Sie hier lesen,
|
|||
|
ist nur eine (pers<72>nliche) Kopie des originalen Dokuments.
|
|||
|
|
|||
|
Wenn eine Textzeile zu lang wird f<>r eine Bildschirmzeile, dann wird
|
|||
|
sie auf einer zweiten Bildschirmzeile `fortgesetzt'. Ein
|
|||
|
`Backslash'-Zeichen (`\') am rechten Rand verdeutlicht das.
|
|||
|
|
|||
|
>> F<>gen Sie Text ein, bis Sie den rechten Rand erreicht haben. F<>gen
|
|||
|
Sie weiter Text ein. Beobachten Sie, wie eine Fortsetzungszeile
|
|||
|
erscheint.
|
|||
|
|
|||
|
>> Verwenden Sie <Delete> so oft, bis die Textzeile wieder auf eine
|
|||
|
Bildschirmzeile pa<70>t. Die Fortsetzungszeile verschwindet wieder.
|
|||
|
|
|||
|
Sie k<>nnen das Zeilenvorschubzeichen wie jedes andere Zeichen l<>schen:
|
|||
|
Die Zeilen vor und nach ihm werdan dann zu einer zusammengeh<65>ngt. Ist
|
|||
|
diese l<>nger als die Bildschirmbreite, erscheint eine
|
|||
|
Fortsetzungszeile.
|
|||
|
|
|||
|
>> Bewegen Sie den Cursor zum Anfang der Zeile und geben Sie <Delete>
|
|||
|
ein: Die momentane Zeile wird an die vorige angeh<65>ngt.
|
|||
|
|
|||
|
>> Geben Sie <Return> ein, um wieder ein Zeilenvorschubzeichen
|
|||
|
einzuf<75>gen.
|
|||
|
|
|||
|
Denken Sie daran, da<64> die meisten Emacs-Befehle mit einem
|
|||
|
Wiederholungsz<EFBFBD>hler aufgerufen werden k<>nnen. Tun Sie das mit einem
|
|||
|
Textzeichen, dann wird es entsprechend dem numerischen Parameter
|
|||
|
wiederholt.
|
|||
|
|
|||
|
>> Dr<44>cken Sie C-u 8 *, und es wird ******** eingef<65>gt.
|
|||
|
|
|||
|
Bis jetzt kennen Sie die Grundbefehle, um Text in Emacs einzugeben und
|
|||
|
Fehler zu korrigieren -- fast analog zu den Bewegungsbefehlen ist es
|
|||
|
m<EFBFBD>glich, ganze W<>rter, S<>tze oder Zeilen zu l<>schen:
|
|||
|
|
|||
|
<Delete> l<>sche ein Zeichen vor dem Cursor
|
|||
|
C-d l<>sche das Zeichen unter dem Cursor
|
|||
|
|
|||
|
M-<Delete> l<>sche bis zum (n<>chsten) Wortanfang unmittelbar
|
|||
|
vor dem Cursor
|
|||
|
M-d l<>sche bis zum (n<>chsten) Wortende nach
|
|||
|
(bzw. unter) dem Cursor
|
|||
|
|
|||
|
C-k l<>sche von momentaner Cursorposition bis zum Ende
|
|||
|
der Zeile
|
|||
|
M-k l<>sche bis zum n<>chsten Satzende nach
|
|||
|
(bzw. unter) dem Cursor
|
|||
|
|
|||
|
Beachten Sie bitte, da<64> <Delete> je nach Tastaturbelegung die Del-
|
|||
|
(Entf-) oder die Backspace- (R<>ckw<6B>rtspfeil-) Taste sein kann.
|
|||
|
|
|||
|
L<EFBFBD>schen Sie mehr als ein Zeichen auf einmal, dann speichert Emacs den
|
|||
|
gel<EFBFBD>schten Text, damit Sie ihn bei Bedarf wieder zur<75>ckholen k<>nnen.
|
|||
|
Einf<EFBFBD>gen von bereits gel<65>schtem Text wird im englischen Dokumentation
|
|||
|
von Emacs als `yanking' (w<>rtlich `herausrei<65>en') bezeichnet. Sie
|
|||
|
k<EFBFBD>nnen den gel<65>schten Text an einer beliebigen Stelle wieder
|
|||
|
einzuf<EFBFBD>gen. Solange Sie nichts neues l<>schen, steht Ihnen dieser
|
|||
|
gel<EFBFBD>schte Textteil immer wieder zu Verf<72>gung. Der Befehl dazu ist C-y
|
|||
|
(das Ypsilon steht f<>r `yank').
|
|||
|
|
|||
|
Emacs unterscheidet zwei Klassen von L<>schbefehlen (was man im
|
|||
|
Deutschen leider nicht gut wiedergeben kann): `killing' (umbringen)
|
|||
|
und `deleting' (l<>schen). Wenn man sich vorstellt, da<64> `yanking' den
|
|||
|
Begriff `von den Toten erwecken' darstellt, dann hat man ungef<65>hr eine
|
|||
|
Vorstellung von der Metapher -- Von einem `kill'-Befehl gel<65>schter
|
|||
|
Text wird gespeichert und kann bei Bedarf mit C-y zur<75>ckgeholt
|
|||
|
werden. Von einem `delete'-Befehl entfernter Text (in der Regel
|
|||
|
einzelne Zeichen, leere Zeilen und Zwischenr<6E>ume) wird nicht extra
|
|||
|
gespeichert.
|
|||
|
|
|||
|
>> Bringen Sie den Cursor an den Anfang einer nicht-leeren Zeile und
|
|||
|
geben Sie C-k ein, um die Zeile zu l<>schen.
|
|||
|
|
|||
|
>> Geben Sie C-k ein zweites Mal ein. Nun wird der Zeilenvorschub
|
|||
|
ebenfalls entfernt.
|
|||
|
|
|||
|
Das letzte Beispiel zeigt, da<64> ein einmaliges Ausf<73>hren von C-k den
|
|||
|
Zeileninhalt l<>scht, und da<64> ein nochmaliger C-k-Befehl die Zeile
|
|||
|
selbst l<>scht. Ein numerisches Argument f<>r C-k wird speziell
|
|||
|
behandelt: es l<>scht die angegebene Anzahl von Zeilen UND die
|
|||
|
Zeilenvorsch<EFBFBD>be: C-u 2 C-k l<>scht zwei Zeilen komplett; zweimal C-k
|
|||
|
l<EFBFBD>scht dagegen nur eine Zeile.
|
|||
|
|
|||
|
Wie schon erw<72>hnt, bringt C-y den zuletzt gel<65>schten (`gekillten')
|
|||
|
Text zur<75>ck.
|
|||
|
|
|||
|
>> Probieren Sie jetzt C-y, um diesen Effekt zu sehen.
|
|||
|
|
|||
|
F<EFBFBD>hren Sie C-k mehrmals hintereinander aus, dann wird der so
|
|||
|
gel<EFBFBD>schte Text auf einmal gespeichert; C-y bringt dann den gesamten
|
|||
|
Text zur<75>ck.
|
|||
|
|
|||
|
>> Dr<44>cken Sie mehrmals C-k.
|
|||
|
|
|||
|
Holen Sie jetzt den Text `von den Toten' zur<75>ck:
|
|||
|
|
|||
|
>> Dr<44>cken Sie C-y. Bewegen Sie dann den Cursor ein paar Zeilen nach
|
|||
|
unten und dr<64>cken Sie C-y erneut. Der eben eingef<65>gte Text wird
|
|||
|
noch einmal an anderer Stelle kopiert.
|
|||
|
|
|||
|
Wie k<>nnen Sie gel<65>schten Text wieder einf<6E>gen, wenn Sie in der
|
|||
|
Zwischenzeit noch etwas anderes `gekillt' haben? C-y w<>rde das
|
|||
|
zuletzt gel<65>schte Textst<73>ck zur<75>ckholen, was aber nicht das gew<65>nschte
|
|||
|
ist. Verwenden Sie nun M-y (unmittelbar nach der erstmaligen
|
|||
|
Ausf<EFBFBD>hrung von C-y), um den gerade mit C-y eingef<65>gten Textteil durch
|
|||
|
ein fr<66>her gel<65>schtes Textst<73>ck zu ersetzen. Durch wiederholtes
|
|||
|
Bet<EFBFBD>tigen von M-y kommen immer <20>ltere gel<65>schte Textteile zum
|
|||
|
Vorschein. Haben Sie das gew<65>nschte gefunden, dann brauchen Sie
|
|||
|
nichts weiter zu tun. Lassen Sie den eingef<65>gten Text so wie er ist
|
|||
|
und setzen Sie das Editieren fort.
|
|||
|
|
|||
|
Dr<EFBFBD>cken Sie M-y immer weiter, dann kommen Sie irgendwann wieder an den
|
|||
|
Anfangspunkt zur<75>ck (Emacs zeigt Ihnen dann wieder das zuletzt
|
|||
|
gel<EFBFBD>schte Textfragment), haben also den gesamten L<>schring
|
|||
|
durchgesehen.
|
|||
|
|
|||
|
>> L<>schen Sie eine Zeile, bewegen Sie den Cursor zu einer anderen
|
|||
|
Position und l<>schen Sie eine weitere Zeile.
|
|||
|
Dr<44>cken Sie dann C-y, um die zweite gel<65>schte Zeile zur<75>ckzuholen.
|
|||
|
Dr<44>cken Sie jetzt M-y, und die erste gel<65>schte Zeile erscheint
|
|||
|
statt der zweiten.
|
|||
|
F<>hren Sie nun ein paar weitere M-y-Befehle aus und beobachten Sie
|
|||
|
das Ergebnis. Wiederholen Sie das solange, bis die zweite Zeile
|
|||
|
wieder erscheint.
|
|||
|
Wenn Sie wollen, dann k<>nnen Sie M-y mit positiven oder negativen
|
|||
|
Argumenten aufrufen, um direkt zu einem bestimmten Eintrag im
|
|||
|
L<>schring zu kommen.
|
|||
|
|
|||
|
Unter dem X Window System besteht auch die M<>glichkeit, mit der linken
|
|||
|
Maustaste einen Textteil zu markieren (er erscheint dann normalerweise
|
|||
|
grau unterlegt). Der Befehl C-w l<>scht diesen markierten Textteil (in
|
|||
|
Emacs auch Region genannt) und f<>gt ihn in den L<>schring ein.
|
|||
|
|
|||
|
Dasselbe geht auch ohne Maus: bewegen Sie den Cursor zum Beginn des zu
|
|||
|
l<EFBFBD>schenden Textteils, dr<64>cken Sie C-SPC, um eine Markierung f<>r den
|
|||
|
Beginn einer Region zu setzen, gehen Sie dann zum Ende des zu
|
|||
|
l<EFBFBD>schenden Textes und dr<64>cken Sie C-w.
|
|||
|
|
|||
|
Der lange Name f<>r C-w ist kill-region (weiter unten wird erkl<6B>rt, wie
|
|||
|
man Befehle mit langen Namen ausf<73>hren kann).
|
|||
|
|
|||
|
|
|||
|
* UNDO
|
|||
|
------
|
|||
|
|
|||
|
Wenn Sie etwas am Text ge<67>ndert haben und nachtr<74>glich bemerken, da<64>
|
|||
|
das ein Fehler war, so k<>nnen Sie den Fehler mit dem Befehl C-x u
|
|||
|
ungeschehen machen (`undo').
|
|||
|
|
|||
|
Normalerweise macht C-x u das Verhalten von einem Befehl ungeschehen;
|
|||
|
f<EFBFBD>hren Sie C-x u mehrmals hintereinander aus, dann werden die
|
|||
|
jeweiligen vorigen Befehle widerrufen.
|
|||
|
|
|||
|
Es gibt jedoch zwei Ausnahmen: Befehle, die den Text nicht <20>ndern,
|
|||
|
werden nicht gez<65>hlt (z.B. Cursorbewegungen und Bl<42>ttern im Text).
|
|||
|
Und Befehle, die sich selbst einf<6E>gen (`self-inserting': Dr<44>cken Sie
|
|||
|
zum Beispiel die `u'-Taste, dann wird der Buchstabe u eingef<65>gt)
|
|||
|
werden in Gruppen von bis zu 20 Zeichen wiederhergestellt, um die
|
|||
|
Anzahl der notwendigen C-x u-Befehle zu reduzieren.
|
|||
|
|
|||
|
>> L<>schen Sie diese Zeilen mit C-k und dr<64>cken Sie anschlie<69>end
|
|||
|
mehrmals C-x u, und die Zeilen erscheinen wieder.
|
|||
|
|
|||
|
C-_ ist ein alternativer Undo-Befehl; er arbeitet genauso wie C-x u,
|
|||
|
ist jedoch einfacher zu tippen, wenn Sie den Befehl mehrmals
|
|||
|
hintereinander ausf<73>hren m<>chten. Der Nachteil von C-_ ist, da<64> bei
|
|||
|
manchen Tastaturen es nicht sofort einsichtig ist, wie man das
|
|||
|
eingibt.
|
|||
|
|
|||
|
Eine weitere Eingabem<65>glichkeit bei vielen Terminals ist C-/.
|
|||
|
|
|||
|
Ein numerisches Argument f<>r C-_, C-x u oder C-/ wird als
|
|||
|
Wiederholungsz<EFBFBD>hler interpretiert.
|
|||
|
|
|||
|
Der Unterschied zwischen der Undo-Funktion und dem oben erkl<6B>rten C-y
|
|||
|
ist, da<64> erstere gel<65>schten Text an exakt der gleichen Position wie
|
|||
|
vorher wiederherstellt, wohingegen C-y den gel<65>schten Text an der
|
|||
|
momentanen Cursorposition einf<6E>gt.
|
|||
|
|
|||
|
|
|||
|
* DATEIEN
|
|||
|
---------
|
|||
|
|
|||
|
Um editierten Text zu sichern, mu<6D> man ihn in einer Datei (`file')
|
|||
|
speichern (`save'). Wird Emacs beendet, ohne da<64> man vorher den Text
|
|||
|
gespeichert hat, dann ist der Text verloren.
|
|||
|
|
|||
|
Will man andererseits bereits gesicherten Text mit Emacs editieren, so
|
|||
|
mu<EFBFBD> die entsprechende Datei in Emacs geladen werden (im Englischen
|
|||
|
wird das als `finding' (finden) bzw. als `visiting' (besuchen)
|
|||
|
bezeichnet).
|
|||
|
|
|||
|
Eine Datei `finden' bedeutet, da<64> man den Inhalt dieser Datei mit
|
|||
|
Emacs bearbeitet -- es ist fast so, als ob man die Datei selbst
|
|||
|
editiert. Jedoch werden <20>nderungen an dieser Datei erst dann
|
|||
|
dauerhaft, wenn man sie speichert; auf diese Weise wird vermieden, da<64>
|
|||
|
Dateien in einem halb-ge<67>nderten Zustand im Betriebssystem bleiben.
|
|||
|
Es wird sogar die originale, unver<65>nderte Datei unter einem anderen
|
|||
|
Namen gesichert, falls Sie sp<73>ter entscheiden sollten, da<64> die
|
|||
|
<EFBFBD>nderungen ein Fehler sind.
|
|||
|
|
|||
|
Wenn Sie die untere Bildschirmkante genauer betrachten, dann werden
|
|||
|
Sie eine Zeile finden, die mit einem oder mehreren Bindestrichen
|
|||
|
beginnt und endet; sie enth<74>lt unter anderem die Zeichenkette
|
|||
|
`TUTORIAL.de'. An dieser Position befindet sich immer der Name der
|
|||
|
Datei, die Sie momentan bearbeiten (`visit'). Gerade in diesem
|
|||
|
Augenblick bearbeiten Sie eine Datei mit dem Namen `TUTORIAL.de'
|
|||
|
(genauer gesagt, Emacs hat eine identische Kopie geladen).
|
|||
|
|
|||
|
Die Befehle f<>r das Laden und Speichern von Dateien bestehen aus zwei
|
|||
|
Zeichen: Beide beginnen mit Control-x. Es gibt eine ganze Reihe von
|
|||
|
Kommandos, die mit C-x beginnen; viele von ihnen haben mit Dateien,
|
|||
|
Puffern (s.u.) und <20>hnlichem zu tun. All diese Befehle sind zwei,
|
|||
|
drei oder vier Zeichen lang -- Sie haben bereits C-x u kennengelernt.
|
|||
|
|
|||
|
Um eine Datei in Emacs laden zu k<>nnen, mu<6D> man dem Lade-Befehl den
|
|||
|
Namen der Datei mitteilen. Der Befehl `liest ein Argument vom
|
|||
|
Terminal' (in diesem Fall ist das der Name der Datei). Nachdem Sie
|
|||
|
|
|||
|
C-x C-f (lade Datei)
|
|||
|
|
|||
|
eingegeben haben, werden Sie von Emacs nach dem Dateinamen gefragt.
|
|||
|
Die Zeichen, die Sie eingeben, werden in der untersten Bildschirmzeile
|
|||
|
dargestellt, dem sogenannten Minipuffer (`minibuffer'). Sie k<>nnen
|
|||
|
ganz normale Emacs-Editierfunktionen verwenden, um den Dateinamen zu
|
|||
|
<EFBFBD>ndern.
|
|||
|
|
|||
|
Sie k<>nnen jederzeit die Eingabe (auch von anderen Befehlen, die den
|
|||
|
Minipuffer benutzen) mit C-g abbrechen.
|
|||
|
|
|||
|
>> Dr<44>cken Sie C-x C-f und dann C-g. Der letzte Befehl verwirft
|
|||
|
jegliche Eingabe in den Minipuffer und bricht au<61>erdem den
|
|||
|
Ladebefehl ab (Sie haben also keine Datei geladen).
|
|||
|
|
|||
|
Wenn Sie den Dateinamen fertig eingegeben haben, dr<64>cken Sie <Return>,
|
|||
|
um den Befehl abzuschlie<69>en; C-x C-f wird ausgef<65>hrt und l<>dt die von
|
|||
|
Ihnen ausgesuchte Datei. Der Minipuffer verschwindet wieder, sobald
|
|||
|
C-x C-f beendet ist.
|
|||
|
|
|||
|
Ein paar Augenblicke sp<73>ter erscheint der Dateiinhalt auf dem
|
|||
|
Bildschirm, und Sie k<>nnen den Text editieren. Wenn Sie Ihre
|
|||
|
<EFBFBD>nderungen permanent speichern wollen, dann dr<64>cken Sie
|
|||
|
|
|||
|
C-x C-s (sichere Datei)
|
|||
|
|
|||
|
und Emacs kopiert den Text in die Datei. Beim ersten Mal benennt
|
|||
|
Emacs die Originaldatei um, damit sie nicht verloren ist. Der neue
|
|||
|
Name besteht aus dem Originalnamen plus einer angeh<65>ngten Tilde `~'
|
|||
|
[unter einigen Betriebssystemen wird statt dessen die
|
|||
|
Namenserweiterung durch `.bak' ersetzt].
|
|||
|
|
|||
|
Emacs schreibt den Namen der gesicherten Datei in die unterste Zeile,
|
|||
|
sobald C-x C-s fertig ausgef<65>hrt ist. Sie sollten den editierten Text
|
|||
|
oft speichern, damit nicht allzuviel bei einem etwaigen Systemabsturz
|
|||
|
verloren geht.
|
|||
|
|
|||
|
>> Geben Sie C-x C-s ein, um Ihre Kopie der Einf<6E>hrung zu sichern.
|
|||
|
Die Ausgabe am unteren Bildschirmrand sollte `Wrote ...TUTORIAL.de'
|
|||
|
sein.
|
|||
|
|
|||
|
Anmerkung: Bei einigen Systemen scheint es, als ob das Ausf<73>hren von
|
|||
|
C-x C-s Emacs abst<73>rzen lie<69>e (Emacs reagiert mit keinen Meldungen
|
|||
|
mehr; der Bildschirm scheint eingefroren). Dieser Effekt tritt auf,
|
|||
|
wenn das Betriebssystem das Zeichen C-s abf<62>ngt (es wird f<>r `flow
|
|||
|
control' verwendet) und nicht an Emacs weiterreicht. Um den
|
|||
|
Bildschirm wieder zum Leben zu erwecken, geben Sie C-q ein, und lesen
|
|||
|
Sie dann den Abschnitt `Spontaneous Entry to Incremental Search' im
|
|||
|
Emacs-Handbuch, was man am besten tun kann. Das Emacs-Handbuch ist
|
|||
|
<EFBFBD>brigens auch online verf<72>gbar mittels C-h i, und zwar im Abschnitt
|
|||
|
`Emacs' (unter der Voraussetzung nat<61>rlich, da<64> die Info-Dateien von
|
|||
|
Emacs auch installiert wurden. Wenn nicht, beschweren Sie sich bei
|
|||
|
Ihrem System-Administrator).
|
|||
|
|
|||
|
[Eine erste Abhilfe zur Umschiffung des C-s-Problems schafft die
|
|||
|
Befehlsfolge `M-x save-buffer', welche exakt das gleiche wie C-x C-s
|
|||
|
bewirkt.]
|
|||
|
|
|||
|
Sie k<>nnen eine existierende Datei anschauen (`view') oder editieren.
|
|||
|
Sie k<>nnen aber auch eine Datei laden, die noch gar nicht existiert,
|
|||
|
um so eine neue Datei zu erzeugen: Sie <20>ffnen dazu die
|
|||
|
(nicht-existente) Datei, die nat<61>rlich leer ist, und beginnen dann
|
|||
|
einfach Text einzugeben. Wenn Sie jetzt die Datei speichern, erzeugt
|
|||
|
Emacs wirklich die Datei und kopiert den editierten Text in sie
|
|||
|
hinein.
|
|||
|
|
|||
|
|
|||
|
* PUFFER
|
|||
|
--------
|
|||
|
|
|||
|
Manche Editoren k<>nnen nicht mehr als eine Datei gleichzeitig
|
|||
|
bearbeiten. Wenn Sie jedoch eine zweite Datei in Emacs mit C-x C-f
|
|||
|
laden, dann bleibt die erste in Emacs. Sie k<>nnen zur ersten
|
|||
|
zur<EFBFBD>ckschalten, indem Sie noch einmal C-x C-f eingeben. Auf diese
|
|||
|
Weise lassen sich eine ganze Reihe von Dateien laden und bearbeiten.
|
|||
|
|
|||
|
>> Erzeugen Sie eine Datei mit dem Namen `foo', indem Sie
|
|||
|
|
|||
|
C-x C-f foo <Return>
|
|||
|
|
|||
|
eingeben. Tippen Sie etwas Text ein, editieren Sie ihn und
|
|||
|
speichern Sie ihn abschlie<69>end mit C-x C-s. Kehren Sie
|
|||
|
anschlie<69>end zu dieser Einf<6E>hrung zur<75>ck mit
|
|||
|
|
|||
|
C-x C-f TUTORIAL.de <Return>
|
|||
|
|
|||
|
Emacs speichert jeden Text, der aus einer Datei in Emacs geladen wird,
|
|||
|
in einem `Puffer'-Objekt. Um eine Liste der momentan existierenden
|
|||
|
Puffer zu sehen, geben Sie
|
|||
|
|
|||
|
C-x C-b (liste Puffer auf)
|
|||
|
|
|||
|
ein.
|
|||
|
|
|||
|
>> Probieren Sie jetzt C-x C-b.
|
|||
|
|
|||
|
Beachten Sie, da<64> jeder Puffer einen Namen hat und manche auch mit dem
|
|||
|
Namen einer Datei assoziiert sind, dessen Inhalt sie enthalten.
|
|||
|
Manche Puffer aber haben keinen zugeh<65>rige Datei, z.B. der mit dem
|
|||
|
Namen `*Buffer List*'. Er wurde von dem Befehl C-x C-b erzeugt, um
|
|||
|
die Pufferliste darzustellen. JEDER Text, den Sie innerhalb Emacs in
|
|||
|
einem Fenster sehen, ist immer ein Ausschnitt eines Puffers.
|
|||
|
|
|||
|
>> Geben Sie jetzt C-x 1 ein, um die Pufferliste wieder verschwinden
|
|||
|
zu lassen.
|
|||
|
|
|||
|
Wenn Sie <20>nderungen an einer Datei vornehmen und anschlie<69>end eine
|
|||
|
andere Datei laden, dann wird die erste nicht gespeichert. Die
|
|||
|
<EFBFBD>nderungen bleiben in Emacs, und zwar in dem zur ersten Datei
|
|||
|
geh<EFBFBD>rigen Puffer. Das ist sehr praktisch, bedeutet jedoch
|
|||
|
gleichzeitig, da<64> man einen Befehl braucht, um den Puffer der ersten
|
|||
|
Datei permanent abzuspeichern. Es w<>re <20>u<EFBFBD>erst umst<73>ndlich, m<><6D>te man
|
|||
|
jedesmal C-x C-f eingeben, um den Puffer dann mit C-x C-s
|
|||
|
abzuspeichern. Daher gibt es den Befehl
|
|||
|
|
|||
|
C-x s (sichere mehrere Puffer)
|
|||
|
|
|||
|
Dieser Befehl fragt Sie bei jedem Puffer, der <20>nderungen enth<74>lt, ob
|
|||
|
Sie ihn speichern wollen.
|
|||
|
|
|||
|
>> F<>gen Sie eine Textzeile ein und dr<64>cken Sie dann C-x s. Emacs
|
|||
|
fragt Sie jetzt, ob Sie einen Puffer mit dem Namen TUTORIAL.de
|
|||
|
speichern wollen. Bejahen Sie, indem Sie `y' dr<64>cken.
|
|||
|
|
|||
|
[Anmerkung: Sie ver<65>ndern nicht die Originaldatei, sondern eine
|
|||
|
pers<EFBFBD>nliche Kopie.]
|
|||
|
|
|||
|
|
|||
|
* WEITERE BEFEHLE
|
|||
|
-----------------
|
|||
|
|
|||
|
Es existieren viel mehr Emacs-Befehle als Tasten auf der Tastatur. Um
|
|||
|
sie trotzdem alle benutzen zu k<>nnen, gibt es zwei Erweiterungen:
|
|||
|
|
|||
|
C-x Zeichenerweiterung. Gefolgt von einem Zeichen.
|
|||
|
M-x Befehlserweiterung. Gefolgt von einem (langen) Namen.
|
|||
|
|
|||
|
[Das `x' steht f<>r das englische Wort `extension'.] Diese beiden
|
|||
|
Befehle sind prinzipiell sehr n<>tzlich, werden aber weniger oft
|
|||
|
ben<EFBFBD>tigt als die bisher vorgestellten. Sie haben bereits zwei Befehle
|
|||
|
aus der ersten Kategorie kennengelernt: C-x C-f, um eine Datei zu
|
|||
|
laden, und C-x C-s, um sie zu speichern. Ein weiteres Beispiel ist
|
|||
|
C-x C-c, um Emacs zu beenden -- Sie brauchen sich keine Gedanken zu
|
|||
|
machen, ob Sie beim Beenden von Emacs vielleicht vergessen haben,
|
|||
|
Daten oder Text zu sichern -- Emacs fragt bei jedem ge<67>ndertem Puffer
|
|||
|
(bzw. Datei), ob er gespeichert werden soll.
|
|||
|
|
|||
|
C-z ist der Befehl um Emacs *zeitweise* zu verlassen; es ist also
|
|||
|
m<EFBFBD>glich, sp<73>ter an der unterbrochenen Stelle nahtlos weiterzuarbeiten.
|
|||
|
|
|||
|
Auf den meisten Systemen wie Linux oder FreeBSD wird Emacs
|
|||
|
`suspendiert', wenn Sie C-z dr<64>cken, d.h., Sie kehren zur<75>ck zur
|
|||
|
Eingabezeile des Betriebssystems, ohne Emacs zu beenden. In der Regel
|
|||
|
k<EFBFBD>nnen Sie dann mittels des Befehls `fg' bzw. `%emacs' wieder zu Emacs
|
|||
|
umschalten. Bei X bewirkt C-z in der Regel, da<64> Emacs ikonofiziert
|
|||
|
wird, also als Ikone (`Icon') darauf wartet, mit einem Mausklick bei
|
|||
|
Bedarf wieder vergr<67><72>ert zu werden.
|
|||
|
|
|||
|
Bei Betriebssystemen bzw. Shells, die Suspension von Programmen nicht
|
|||
|
implementiert haben (z.B. MS-DOS), startet C-z einen
|
|||
|
System-Befehlsinterpreter innerhalb von Emacs (`subshell').
|
|||
|
Normalerweise m<>ssen Sie dann `exit' in die Befehlszeile schreiben, um
|
|||
|
zu Emacs zur<75>ckzukehren.
|
|||
|
|
|||
|
Der beste Zeitpunkt f<>r C-x C-c ist, wenn Sie sich ausloggen
|
|||
|
(bzw. Ihren Computer ausschalten); Sie sollten Emacs ebenfalls
|
|||
|
beenden, wenn Sie Emacs von einem anderen Programm aus aufgerufen
|
|||
|
haben (z.B. einem Programm, das E-mails liest), da solche Programme
|
|||
|
oft nicht wissen, wie sie mit Emacs im Suspend-Modus umgehen sollen.
|
|||
|
In allen anderen F<>llen ist es meistens g<>nstiger, C-z zu benutzen und
|
|||
|
Emacs nicht zu beenden, damit man im Bedarfsfalle sofort an der
|
|||
|
gleichen Stelle weiterarbeiten kann.
|
|||
|
|
|||
|
Hier ist eine Liste aller C-x-Befehle, die Sie bereits kennengelernt
|
|||
|
haben:
|
|||
|
|
|||
|
C-x C-f lade Datei
|
|||
|
C-x C-s sichere Datei
|
|||
|
C-x C-b zeige Pufferliste an
|
|||
|
C-x C-c beende Emacs
|
|||
|
C-x u widerrufen
|
|||
|
|
|||
|
Ein Beispiel f<>r einen Befehl mit langen Namen ist replace-string, der
|
|||
|
global (also in der ganzen Datei bzw. Puffer) eine Zeichenkette durch
|
|||
|
eine andere ersetzt. Wenn Sie M-x dr<64>cken, dann fragt Sie Emacs in
|
|||
|
der untersten Bildschirmzeile nach dem Namen des Befehls (in diesem
|
|||
|
Fall `replace-string'). Geben Sie jetzt `repl s<TAB>' ein und Emacs
|
|||
|
vervollst<EFBFBD>ndigt den Namen. Schlie<69>en Sie die Eingabe mit <Return> ab.
|
|||
|
[<TAB> bezeichnet die Tabulatortaste.]
|
|||
|
|
|||
|
>> Bewegen Sie den Cursor zu der leeren Zeile sechs Zeilen unter
|
|||
|
dieser. Geben Sie dann
|
|||
|
|
|||
|
M-x repl s<Return>Bildschirm<Return>Text<Return>
|
|||
|
|
|||
|
ein und kehren Sie mit C-u C-SPC an diese Position zur<75>ck.
|
|||
|
|
|||
|
Beachten Sie wie diese Bildschirmzeile jetzt aussieht: Sie haben
|
|||
|
den Wortteil B-i-l-d-s-c-h-i-r-m durch `Text' ersetzt (und zwar im
|
|||
|
ganzen Dokument beginnend von der Cursorposition).
|
|||
|
|
|||
|
>> Dr<44>cken Sie jetzt C-x u, um diese <20>nderungen auf einmal r<>ckg<6B>ngig
|
|||
|
zu machen.
|
|||
|
|
|||
|
|
|||
|
* AUTOMATISCHES SPEICHERN
|
|||
|
-------------------------
|
|||
|
|
|||
|
Haben Sie <20>nderungen an einem Dokument vorgenommen, sie jedoch nicht
|
|||
|
gespeichert, dann k<>nnen sie verloren gehen, falls der Computer
|
|||
|
abst<EFBFBD>rzt. Um Sie davor zu sch<63>tzen, sichert Emacs in bestimmten
|
|||
|
Zeitintervallen jede von Ihnen editierte Datei in sogenannten
|
|||
|
`auto-save'-Dateien. Sie sind daran zu erkennen, da<64> sie mit einem #
|
|||
|
beginnen und enden; z.B. ist `#hello.c#' der Name der Auto-save-Datei
|
|||
|
von `hello.c'. Wenn Sie Ihren Text auf normalem Wege speichern, wird
|
|||
|
die Auto-save-Datei gel<65>scht.
|
|||
|
|
|||
|
St<EFBFBD>rzt der Rechner einmal wirklich ab, so k<>nnen Sie die <20>nderungen,
|
|||
|
die beim letzten Auto-Save gespeichert worden sind, folgenderma<6D>en
|
|||
|
wiederherstellen: Laden Sie die Datei auf normalem Wege (die Datei,
|
|||
|
die Sie bearbeitet haben, nicht die Auto-save-Datei) und geben Sie
|
|||
|
dann `M-x recover-file<Return>' ein. Wenn Emacs Sie um Best<73>tigung
|
|||
|
fragt, antworten Sie mit `yes<Return>', um den Inhalt der
|
|||
|
Auto-save-Datei zu <20>bernehmen.
|
|||
|
|
|||
|
|
|||
|
* DER ECHO-BEREICH
|
|||
|
------------------
|
|||
|
|
|||
|
Geben Sie Befehle langsam ein, dann zeigt Ihnen Emacs Ihre eigene
|
|||
|
Eingabe am unteren Bildschirmrand im sogenannten Echo-Bereich (`echo
|
|||
|
area'). Der Echo-Bereich enth<74>lt die unterste Bildschirmzeile.
|
|||
|
|
|||
|
[Mini-Puffer und Echo-Bereich fallen normalerweise zusammen, sind aber
|
|||
|
nicht das gleiche, da innerhalb des Echo-Bereiches nichts eingegeben
|
|||
|
werden kann.]
|
|||
|
|
|||
|
|
|||
|
* DIE STATUSZEILE
|
|||
|
------------------
|
|||
|
|
|||
|
Die Bildschirmzeile unmittelbar <20>ber dem Echo-Bereich ist die
|
|||
|
Statuszeile (`mode line'). Sie schaut ungef<65>hr so aus:
|
|||
|
|
|||
|
-1:** TUTORIAL.de (Fundamental)--L865--58%----------------
|
|||
|
|
|||
|
Diese Zeile gibt n<>tzliche Hinweise <20>ber den momentanen Zustand von
|
|||
|
Emacs und den Text, den Sie gerade editieren.
|
|||
|
|
|||
|
Sie wissen bereits, was der Dateiname bedeutet. `--NN%--' zeigt die
|
|||
|
momentane Position innerhalb des Textes an: NN Prozent davon sind
|
|||
|
oberhalb des Bildschirms. Ist der Dateianfang zu sehen, dann
|
|||
|
erscheint `--Top--' anstelle von `--00%--'. Analog dazu erscheint
|
|||
|
`--Bot--' (f<>r das englische Wort `bottom'), wenn das Dateiende
|
|||
|
sichtbar ist. Wenn Sie einen Text betrachten, der komplett auf den
|
|||
|
Bildschirm pa<70>t, dann erscheint `--All--'.
|
|||
|
|
|||
|
Am Anfang der Zeile sehen Sie `-1:**'. Die Zeichen vor dem
|
|||
|
Doppelpunkt geben an, in welcher Kodierung der Text ist und welche
|
|||
|
Eingabemethode verwendet wird. Dazu mehr weiter unten im Abschnitt
|
|||
|
`MULE'.
|
|||
|
|
|||
|
[Anstelle des Doppelpunktes k<>nnen auch ein `\' und `/' stehen, falls
|
|||
|
Sie Dateien editieren, die der MS-DOS- bzw. der
|
|||
|
Macintosh-Textkonvention folgen: MS-DOS verwendet als
|
|||
|
Zeilenvorschubzeichen CR-LF (Carriage Return gefolgt von Linefeed),
|
|||
|
w<EFBFBD>hrend Macintosh nur CR benutzt. Emacs verwendet standardm<64><6D>ig LF.]
|
|||
|
|
|||
|
Die Sterne nach dem Doppelpunkt bedeuten, da<64> Sie <20>nderungen am Text
|
|||
|
vorgenommen haben. Wenn Sie gerade eine Datei in Emacs geladen oder
|
|||
|
gespeichert haben, dann erscheinen statt der Sterne zwei Bindestriche.
|
|||
|
Prozentzeichen nach dem Doppelpunkt stehen f<>r eine Datei, die nur
|
|||
|
gelesen, aber nicht editiert werden kann.
|
|||
|
|
|||
|
Der eingeklammerte Teil gibt an, in welchem Editiermodus Sie sich
|
|||
|
befinden. Der Standardmodus hei<65>t `Fundamental' (Sie verwenden ihn
|
|||
|
gerade); er ist ein Beispiel f<>r einen Hauptmodus (`major mode').
|
|||
|
|
|||
|
Emacs hat viele Hauptmodi implementiert. Manche davon werden f<>r
|
|||
|
verschiedene (Computer-)Sprachen und/oder Textarten verwendet,
|
|||
|
z.B. Lisp-Modus, Text-Modus usw. Es kann immer nur ein Hauptmodus
|
|||
|
aktiviert sein, und der Name befindet sich dort, wo jetzt gerade
|
|||
|
`Fundamental' steht.
|
|||
|
|
|||
|
Einige Befehle verhalten sich jeweils in verschiedenen Hauptmodi
|
|||
|
anders. Es gibt zum Beispiel einen Befehl, um einen Kommentar in den
|
|||
|
Quellcode eines Computerprogramm einzuf<75>gen -- die Tastenfolge daf<61>r
|
|||
|
ist zwar (in der Regel) die gleiche, doch wird ein Kommentar mit der
|
|||
|
f<EFBFBD>r die aktuelle Programmiersprache g<>ltigen Syntax eingef<65>gt
|
|||
|
(z.B. `// ...' f<>r ein Programm in C++ oder `; ...' f<>r Lisp). Um in
|
|||
|
einen Hauptmodus zu schalten, h<>ngen Sie einfach das englische Wort
|
|||
|
`-mode' an den (kleingeschriebenen) Namen des Modus an und f<>hren den
|
|||
|
Befehl mittels M-x aus. Beispiel: `M-x fundamental-mode' schaltet in
|
|||
|
den Fundamental-Modus. Weitere wichtige Modi sind c-mode, perl-mode,
|
|||
|
lisp-mode, text-mode u.a. Die meisten davon werden automatisch
|
|||
|
aktiviert, und zwar entsprechend der Namenserweiterung der zu ladenden
|
|||
|
Datei: So wird z.B. durch das Laden der Datei foo.c automatisch der
|
|||
|
C-Modus aktiviert.
|
|||
|
|
|||
|
Wenn Sie deutschen oder englischen Text bearbeiten, dann sollten Sie
|
|||
|
den Textmodus verwenden. [Falls Ihre Tastatur keine Umlaut-Tasten
|
|||
|
hat, m<>ssen Sie noch einen weiteren Nebenmodus aktivieren. Lesen Sie
|
|||
|
dazu den Abschnitt `MULE' weiter unten.]
|
|||
|
|
|||
|
>> Geben Sie `M-x text-mode<Return>' ein.
|
|||
|
|
|||
|
Sie brauchen keine Angst zu haben, da<64> sich die bisher dargestellte
|
|||
|
Tastaturbelegung stark <20>ndert. Beobachten Sie z.B. die Befehle M-f
|
|||
|
und M-b: Apostrophe werden nun als Teil eines Wortes betrachtet (wie
|
|||
|
man's leicht an diesem Beispiel ausprobieren kann), wohingegen im
|
|||
|
Fundamentalmodus Apostrophe als Worttrenner (`word-separator')
|
|||
|
behandelt werden.
|
|||
|
|
|||
|
Normalerweise ist das eben genannte Beispiel die Methode von
|
|||
|
Hauptmodi: Die meisten Befehle tun `das gleiche', arbeiten aber
|
|||
|
jeweils ein bi<62>chen anders.
|
|||
|
|
|||
|
Dokumentation zum derzeit aktuellen Hauptmodus bekommen Sie mit C-h m.
|
|||
|
|
|||
|
>> Dr<44>cken Sie C-u C-v ein- oder mehrmals, um diese Zeile in die N<>he
|
|||
|
des oberen Bildschirmrands zu bringen.
|
|||
|
>> Lesen Sie nun mittels C-h m die englischeDokumentation zum
|
|||
|
Textmodus.
|
|||
|
>> Entfernen Sie schlie<69>lich das Dokumentationsfenster mit C-x 1.
|
|||
|
|
|||
|
Neben den Hauptmodi gibt es auch Nebenmodi (`minor modes'). Nebenmodi
|
|||
|
sind keine Alternativen zu Hauptmodi, sondern stellen Erg<72>nzungen zur
|
|||
|
Verf<EFBFBD>gung, die (normalerweise) in allen Hauptmodi funktionieren
|
|||
|
(z.B. der <20>berschreibmodus: Zeichen werden nicht eingef<65>gt, sondern
|
|||
|
<EFBFBD>berschreiben den Text). Man kann Nebenmodi ein- und ausschalten
|
|||
|
unabh<EFBFBD>ngig von anderen Nebenmodi und Hauptmodi; mit anderen Worten,
|
|||
|
Sie k<>nnen zu Ihrem Hauptmodus, keinen, einen oder sogar mehrere
|
|||
|
Nebenmodi haben.
|
|||
|
|
|||
|
Ein Nebenmodus, welcher <20>u<EFBFBD>erst n<>tzlich ist, besonders f<>r das
|
|||
|
Editieren von Text, ist der automatische Zeilenumbruch (`Auto Fill
|
|||
|
mode'). Ist dieser Modus aktiviert, dann bricht Emacs die laufende
|
|||
|
Zeile selbstt<74>tig zwischen W<>rtern um, sobald sie zu lang wird.
|
|||
|
|
|||
|
Sie k<>nnen den Zeilenumbruchmodus einschalten mittels `M-x
|
|||
|
auto-fill-mode<Return>'. Wenn der Modus aktiviert ist, k<>nnen Sie ihn
|
|||
|
mit dem gleichen Befehl wieder ausschalten. Mit anderen Worten, der
|
|||
|
Befehl verh<72>lt sich wie ein Lichttaster, der bei Bet<65>tigung entweder
|
|||
|
das Licht ein- oder ausschaltet, je nachdem, ob das Licht vorher
|
|||
|
ausgeschaltet bzw. eingeschaltet war. Wir sagen, da<64> dieser Befehl
|
|||
|
den Modus umschaltet (`toggle').
|
|||
|
|
|||
|
>> Geben Sie nun M-x auto-fill-mode<Return> ein. F<>gen Sie
|
|||
|
anschlie<69>end eine Zeile ein, die aus lauter "asdf " besteht, und
|
|||
|
zwar so lange, bis die Zeile automatisch umgebrochen wird.
|
|||
|
Vergessen Sie nicht, Leerzeichen einzugeben, da nur dort ein
|
|||
|
Umbruch erfolgt.
|
|||
|
|
|||
|
Normalerweise ist die maximale Zeilenl<6E>nge 70 Zeichen (d.h., der linke
|
|||
|
Rand ist ganz links auf Position 1 und der rechte Rand auf
|
|||
|
Position 70), jedoch k<>nnen Sie das mit dem Befehl C-x f <20>ndern.
|
|||
|
Geben Sie den neuen (rechten) Rand als numerischen Parameter ein.
|
|||
|
|
|||
|
>> Geben Sie C-x mit dem Argument 20 ein (C-u 2 0 C-x f). Schreiben
|
|||
|
Sie nun etwas Text und beobachten Sie, wie Emacs die laufende Zeile
|
|||
|
an Position 20 umbricht. Setzen Sie anschlie<69>end den Rand wieder
|
|||
|
zur<75>ck auf 70 mit dem gleichen Befehl.
|
|||
|
|
|||
|
Machen Sie <20>nderungen in der Mitte eines Absatzes, dann reformatiert
|
|||
|
der Zeilenf<6E>llmodus nicht automatisch den Absatz.
|
|||
|
Verwenden Sie daf<61>r den Befehl M-q, wobei der Cursor innerhalb des
|
|||
|
Absatzes stehen mu<6D>.
|
|||
|
|
|||
|
>> Bewegen Sie den Cursor zur<75>ck zum letzten Absatz und dr<64>cken Sie
|
|||
|
M-q.
|
|||
|
|
|||
|
|
|||
|
* SUCHEN
|
|||
|
--------
|
|||
|
|
|||
|
Emacs kann Zeichenketten (`strings') entweder vorw<72>rts (`forward')
|
|||
|
oder r<>ckw<6B>rts (`backward') suchen. Gleichzeitig wird der Cursor an
|
|||
|
die n<>chste Stelle bewegt, wo diese Zeichenkette erscheint.
|
|||
|
|
|||
|
Hier unterscheidet sich Emacs von vielen anderen Editoren, da n<>mlich
|
|||
|
die Standard-Suchoperation inkrementelles Suchen ist, d.h., die Suche
|
|||
|
beginnt dann, wenn Sie die Zeichen eingeben.
|
|||
|
|
|||
|
Der Befehl f<>r Vorw<72>rtssuchen ist C-s, und C-r f<>r R<>ckw<6B>rtssuchen.
|
|||
|
ABER HALT! Probieren Sie bitte diese Befehle noch nicht.
|
|||
|
|
|||
|
Wenn Sie C-s eingeben, dann erscheint die Zeichenkette "I-search:" als
|
|||
|
Eingabeaufforderung im Echobereich. Das bedeutet, da<64> Emacs jetzt in
|
|||
|
einer inkrementellen Suche ist und darauf wartet, da<64> Sie den
|
|||
|
gew<EFBFBD>nschten Suchstring eingeben. <Return> beendet die Suche.
|
|||
|
|
|||
|
>> Geben Sie jetzt C-s ein, um einen Suchvorgang zu starten. Schreiben
|
|||
|
Sie LANGSAM, einen Buchstaben nach dem anderen, das Wort `Cursor',
|
|||
|
und warten Sie jeweils ab, was mit dem Cursor passiert. Sie haben
|
|||
|
jetzt das Wort `Cursor' einmal gefunden.
|
|||
|
>> Dr<44>cken Sie C-s noch einmal, um die n<>chste Stelle zu suchen, wo das
|
|||
|
Wort `Cursor' vorkommt.
|
|||
|
>> Dr<44>cken Sie nun <Delete> viermal und beobachten Sie, wie der Cursor
|
|||
|
zur<75>ckspringt.
|
|||
|
>> Beenden Sie die Suche mit <Return>.
|
|||
|
|
|||
|
Verstehen Sie, was gerade vorgegangen ist? Emacs versucht w<>hrend
|
|||
|
einer inkrementellen Suche zu der Stelle zu gehen, wo die Zeichenkette
|
|||
|
steht, die Sie bis jetzt eingegeben haben. Um die darauffolgende
|
|||
|
Position zu suchen, wo `Cursor' steht, gen<65>gt es, noch einmal C-s zu
|
|||
|
bet<EFBFBD>tigen. Wenn es keine n<>chste Position gibt, dann ert<72>nt ein
|
|||
|
kurzer Ton, und Emacs sagt Ihnen, da<64> die Suche im Augenblick
|
|||
|
fehlschl<EFBFBD>gt (`failing'). C-g beendet ebenfalls einen Suchvorgang.
|
|||
|
|
|||
|
Anmerkung: Wie weiter oben schon einmal erw<72>hnt, scheint es bei
|
|||
|
einigen Systemen, als ob das Ausf<73>hren von C-s Emacs abst<73>rzen l<><6C>t
|
|||
|
(Emacs reagiert mit keinen Meldungen mehr; der Bildschirm wirkt
|
|||
|
eingefroren). Dieser Effekt tritt auf, wenn das Betriebssystem das
|
|||
|
Zeichen C-s abf<62>ngt (es wird f<>r `flow control' verwendet) und nicht
|
|||
|
an Emacs weiterreicht. Um den Bildschirm wieder zum Leben zu
|
|||
|
erwecken, geben Sie C-q ein, und lesen Sie dann den Abschnitt
|
|||
|
`Spontaneous Entry to Incremental Search' im Emacs-Handbuch, was man
|
|||
|
am besten tun kann.
|
|||
|
|
|||
|
Wenn Sie sich mitten in einer inkrementellen Suche befinden und
|
|||
|
<Delete> dr<64>cken, dann wird das letzte Zeichen im Suchstring gel<65>scht,
|
|||
|
und der Cursor springt zur<75>ck auf die letzte Suchposition.
|
|||
|
Angenommen, Sie haben "c" eingegeben, um das erste Auftreten von "c"
|
|||
|
zu suchen. Geben Sie jetzt "u" ein, dann springt der Cursor zu dem
|
|||
|
ersten Auftreten der Zeichenkette "cu". Wenn Sie jetzt mit <Delete>
|
|||
|
das "u" vom Suchstring l<>schen, dann springt der Cursor zur<75>ck zum
|
|||
|
ersten "c". Dr<44>cken Sie dagegen ein paar mal C-s, um weitere
|
|||
|
"cu"-Zeichenketten zu finden, dann bewirkt <Delete>, da<64> Sie zum
|
|||
|
letzten Auftreten von "cu" zur<75>ckspringen, und erst wenn es kein
|
|||
|
weiteres "cu" mehr gibt, springt der Cursor zum ersten "c" zur<75>ck.
|
|||
|
|
|||
|
Die Suche wird ebenfalls beendet, wenn Sie ein Control- oder
|
|||
|
Meta-Zeichen eingeben (mit ein paar Ausnahmen -- Zeichen, die
|
|||
|
bei einer Suche speziell gehandhabt werden wie C-s oder C-r).
|
|||
|
|
|||
|
C-s versucht, die Zeichenkette NACH der aktuellen Cursorposition zu
|
|||
|
finden. Wollen Sie etwas davor suchen, m<>ssen Sie C-r verwenden. Das
|
|||
|
oben Gesagte gilt v<>llig analog, jedoch in die entgegengesetzte
|
|||
|
Suchrichtung.
|
|||
|
|
|||
|
|
|||
|
* MEHRFACHE FENSTER
|
|||
|
-------------------
|
|||
|
|
|||
|
Eine weitere, n<>tzliche F<>higkeit von Emacs ist die M<>glichkeit, mehr
|
|||
|
als ein Fenster zur gleichen Zeit auf dem Bildschirm darzustellen.
|
|||
|
|
|||
|
>> Bewegen Sie den Cursor zu dieser Zeile und geben Sie C-u 0 C-l ein.
|
|||
|
|
|||
|
>> Schreiben Sie nun C-x 2, um den Bildschirm in zwei Fenster zu
|
|||
|
teilen. Beide Fenster zeigen diese Einf<6E>hrung an, und der Cursor
|
|||
|
bleibt im oberen.
|
|||
|
|
|||
|
>> Verwenden Sie C-M-v, um im unteren Fenster zu bl<62>ttern (Sie k<>nnen
|
|||
|
statt dessen auch ESC C-v verwenden, falls Sie keine Meta-Taste
|
|||
|
haben; siehe auch weiter unten).
|
|||
|
|
|||
|
>> Mittels C-x o (das `o' steht f<>r das englische Wort `other', `das
|
|||
|
andere') k<>nnen Sie den Cursor in das untere Fenster bewegen.
|
|||
|
|
|||
|
>> Ben<65>tzen Sie C-v und M-v, um im unteren Fenster zu bl<62>ttern. Lesen
|
|||
|
Sie die Emacs-Einf<6E>hrung jedoch im oberen Fenster weiter.
|
|||
|
|
|||
|
>> Geben Sie C-x o nochmals ein, und der Cursor ist wieder im oberen
|
|||
|
Fenster, genau an der Stelle, wo er vorher war.
|
|||
|
|
|||
|
C-x o ist der Befehl, um zwischen (Emacs-)Fenstern hin- und
|
|||
|
herzuschalten. Jedes Fenster hat eine eigene Cursorposition, aber nur
|
|||
|
das aktuelle Fenster zeigt den Cursor an (unter X wird die
|
|||
|
nicht-aktuelle Cursorposition durch ein leeres Rechteck dargestellt).
|
|||
|
Alle normalen Editierbefehle betreffen das Fenster, in dem sich der
|
|||
|
Cursor befindet. Wir nennen dieses Fenster `selektiert' (`selected
|
|||
|
window').
|
|||
|
|
|||
|
Der Befehl M-C-v ist sehr n<>tzlich, wenn man Text in einem Fenster
|
|||
|
editiert und das andere Fenster als Referenz verwendet. Der Cursor
|
|||
|
bleibt stets im gleichen Arbeitsfenster, und mit M-C-v kann man bequem
|
|||
|
vorw<EFBFBD>rtsbl<EFBFBD>ttern.
|
|||
|
|
|||
|
M-C-v ist ein Beispiel eines CONTROL-META-Zeichens. Haben Sie eine
|
|||
|
META-Taste, dann kann man M-C-v erzeugen, indem man CTRL und META
|
|||
|
gleichzeitig niedergedr<64>ckt h<>lt, w<>hrend man v eintippt. Es ist
|
|||
|
egal, ob zuerst CTRL oder META niedergedr<64>ckt wird, da beide Tasten
|
|||
|
gleichberechtigt das jeweils einzugebende Zeichen modifizieren.
|
|||
|
|
|||
|
Haben Sie keine META-Taste, und Sie verwenden stattdessen ESC, dann
|
|||
|
ist die Reihenfolge nicht mehr egal: Sie m<>ssen zuerst ESC dr<64>cken,
|
|||
|
gefolgt von CTRL-v. CTRL-ESC v funktioniert nicht! Der Grund daf<61>r
|
|||
|
ist, da<64> ESC ein eigenes Zeichen ist und keine Modifizier-Taste wie
|
|||
|
META oder CTRL.
|
|||
|
|
|||
|
Der umgekehrte Befehl zu M-C-v ist M-C-S-v, um im anderen Fenster
|
|||
|
r<EFBFBD>ckw<EFBFBD>rts zu bl<62>ttern (d.h., Sie m<>ssen die Meta-Taste sowie die
|
|||
|
Control- und Shift-Taste zusammen mit `v' bet<65>tigen) -- jetzt werden
|
|||
|
Sie wahrscheinlich verstehen, warum manche Kritiker das Wort Emacs als
|
|||
|
Abk<EFBFBD>rzung von Escape-Meta-Alt-Control-Shift betrachten. Leider
|
|||
|
funktioniert diese Befehlsfolge normalerweise nur mit dem X Window
|
|||
|
System, da C-v von C-S-v auf den meisten Textterminals nicht
|
|||
|
unterschieden werden kann.
|
|||
|
|
|||
|
[Unter X kann man au<61>erdem in der Regel mit den bequemeren
|
|||
|
Tastenkombinationen META-`Bild mit Aufw<66>rtspfeil' bzw. META-`Bild mit
|
|||
|
Abw<EFBFBD>rtspfeil' ebenfalls im anderen Fenster r<>ck- bzw. vorw<72>rts
|
|||
|
bl<EFBFBD>ttern.]
|
|||
|
|
|||
|
>> Entfernen Sie mit C-x 1 (eingegeben im oberen Fenster) das untere
|
|||
|
Fenster.
|
|||
|
|
|||
|
(H<>tten Sie C-x 1 im unteren Fenster eingegeben, dann w<>re das obere
|
|||
|
Fenster geschlossen worden -- eine Eselsbr<62>cke f<>r C-x 1 ist `ich will
|
|||
|
nur das *eine* Fenster, in dem ich mich gerade befinde.')
|
|||
|
|
|||
|
Sie m<>ssen nicht den gleichen Puffer in beiden Fenstern darstellen.
|
|||
|
Wenn Sie C-x C-f verwenden, um in einem Fenster eine Datei zu laden,
|
|||
|
dann bleibt das andere Fenster unver<65>ndert. Sie k<>nnen in jedem
|
|||
|
Fenster eine andere Datei anzeigen lassen, unabh<62>ngig vom anderen
|
|||
|
Fenster.
|
|||
|
|
|||
|
Hier eine andere M<>glichkeit, in zwei Fenstern zwei verschiedene
|
|||
|
Texte darzustellen:
|
|||
|
|
|||
|
>> Geben Sie C-x 4 C-f ein, gefolgt vom Namen einer Ihrer Dateien.
|
|||
|
Schlie<69>en Sie ab mit <Return>. Beobachten Sie, wie die
|
|||
|
spezifizierte Datei im unteren Fenster erscheint. Der Cursor
|
|||
|
springt ebenfalls in das untere Fenster.
|
|||
|
|
|||
|
>> Bewegen Sie den Cursor mittels C-x o in das obere Fenster und geben
|
|||
|
Sie C-x 1 ein, um das untere Fenster zu schlie<69>en.
|
|||
|
|
|||
|
|
|||
|
* REKURSIVE EDITIER-EBENEN
|
|||
|
--------------------------
|
|||
|
|
|||
|
Manchmal kann es passieren, da<64> Sie in eine sogenannte rekursive
|
|||
|
Editier-Ebene geraten (`recursive editing level'). Sie k<>nnen das an
|
|||
|
den eckigen Klammern in der Statuszeile erkennen, welche den
|
|||
|
derzeitigen Hauptmodus zus<75>tzlich umschlie<69>en, z.B. [(Fundamental)]
|
|||
|
anstelle von (Fundamental).
|
|||
|
|
|||
|
Um eine rekursive Editier-Ebene zu verlassen, geben Sie ESC ESC ESC
|
|||
|
ein. Diese Tastenkombination ist ein allgemeiner
|
|||
|
Ich-will-hier-raus-Befehl. Sie k<>nnen ihn auch verwenden, um
|
|||
|
unerw<EFBFBD>nschte Fenster zu schlie<69>en und den Minipuffer zu verlassen.
|
|||
|
|
|||
|
>> Geben Sie M-x ein, um in den Minipuffer zu gelangen, und tippen Sie
|
|||
|
dann ESC ESC ESC, um ihn wieder zu verlassen.
|
|||
|
|
|||
|
Mit C-g kann man eine rekursive Editier-Ebene nicht verlassen, da C-g
|
|||
|
Befehle INNERHALB einer rekursiven Editier-Ebene stoppt.
|
|||
|
|
|||
|
Rekursive Editier-Ebenen sind hier in dieser Einf<6E>hrung nicht weiter
|
|||
|
dargestellt. Details finden Sie im Emacs-Handbuch beschrieben.
|
|||
|
|
|||
|
|
|||
|
* MULE
|
|||
|
------
|
|||
|
|
|||
|
Mule ist die Abk<62>rzung f<>r `Multi-lingual Enhancement to GNU Emacs'.
|
|||
|
Fr<EFBFBD>her wurde damit eine spezielle Emacs-Variante bezeichnet, die
|
|||
|
allerdings seit der Version 20 mit Emacs verschmolzen ist.
|
|||
|
|
|||
|
Emacs unterst<73>tzt eine gro<72>e Anzahl von internationalen Zeichens<6E>tzen,
|
|||
|
z.B. verschiedene europ<6F>ische Varianten des lateinischen Alphabets,
|
|||
|
Chinesisch, Russisch oder Thai, um nur einige zu nennen. In dieser
|
|||
|
Einf<EFBFBD>hrung wird jedoch nur auf den deutschen Zeichensatz sowie
|
|||
|
Eingabem<EFBFBD>glichkeiten f<>r Deutsch n<>her eingegangen.
|
|||
|
|
|||
|
Der Standard-Zeichensatz f<>r Deutsch ist Latin-1 (auch bekannt unter
|
|||
|
dem Namen ISO-8859-1). Wenn anstelle der deutschen Umlaute
|
|||
|
unansehnliche Konstrukte wie `\201<30>' dargestellt werden, dann ist
|
|||
|
die sogenannte Multibyte-Zeichenunterst<73>tzung deaktiviert (intern
|
|||
|
werden in Emacs nicht-ASCII Zeichens<6E>tze durch mehr als ein Byte
|
|||
|
repr<EFBFBD>sentiert). Durch den Befehl `M-x
|
|||
|
toggle-enable-multibyte-characters' wird die
|
|||
|
Multibyte-Zeichenunterst<73>tzung aktiviert.
|
|||
|
|
|||
|
Wenn anstelle der Umlaute `<60>', `<60>' oder `<60>' die Zeichen `d', `v' und
|
|||
|
`|' erscheinen (also `kleines D', `kleines V', und ein senkrechter
|
|||
|
Strich), dann wird das achte Bit von jedem Byte abgeschnitten, soda<64>
|
|||
|
nur ASCII-Zeichen dargestellt werden k<>nnen. In der Regel gibt es
|
|||
|
zwei Ursachen f<>r dieses Problem: Sie haben sich nicht `8-bit clean'
|
|||
|
(z.B. mittels `telnet -8 ...') eingeloggt oder Ihr
|
|||
|
Telekommunikationsprogramm ist nicht f<>r 8-bit konfiguriert.
|
|||
|
|
|||
|
>> Geben Sie C-x <Return> m ein. Die deutschen Umlaute (so sie von
|
|||
|
Ihrem Terminal darstellbar sind) verschwinden und werden durch
|
|||
|
Zahlenkonstrukte ersetzt. So wird zum Beispiel Umlaut a (`<60>')
|
|||
|
dargestellt als `\201<30>'.
|
|||
|
|
|||
|
>> Aktivieren Sie wieder die Multibyte-Zeichenunterst<73>tzung mittels
|
|||
|
C-x <Return> m.
|
|||
|
|
|||
|
Sehen Sie anstelle der Umlaute leere K<>stchen (unter X), dann sollten
|
|||
|
Sie mit C-x C-c Emacs beenden und folgenderma<6D>en neu starten:
|
|||
|
|
|||
|
emacs -fn fontset-standard
|
|||
|
|
|||
|
Bei einem Textterminal gibt es weiter die M<>glichkeit, die
|
|||
|
Befehlsfolge `M-x standard-display-european' auszuf<75>hren, wodurch
|
|||
|
Emacs die Multibyte-Zeichenunterst<73>tzung deaktiviert und direkt
|
|||
|
Latin-1-Zeichen darzustellen versucht. Sie k<>nnen auch probieren,
|
|||
|
Emacs mit der `--unibyte'-Option zu starten, was einen <20>hnlichen
|
|||
|
Effekt bewirkt.
|
|||
|
|
|||
|
Falls das alles nichts n<>tzt oder Sie Fragezeichen anstelle der
|
|||
|
Umlaute auf ihrem Textterminal sehen, sollten Sie sich an Ihren
|
|||
|
Systemadministrator wenden und sich beschweren, da<64> kein
|
|||
|
Latin-1-Zeichensatz installiert ist (was heutzutage eigentlich eine
|
|||
|
Selbstverst<EFBFBD>ndlichkeit sein sollte). Falls statt der Umlaute andere
|
|||
|
Zeichen auf ihrem Textterminal erscheinen (z.B. kyrillische
|
|||
|
Buchstaben), dann erkundigen Sie sich, wie sie auf Latin-1 umschalten
|
|||
|
k<EFBFBD>nnen.
|
|||
|
|
|||
|
Lesen Sie im Emacs-Handbuch nach unter dem Stichwort `International',
|
|||
|
welche weitere Optionen es bez<65>glich Zeichens<6E>tze gibt.
|
|||
|
|
|||
|
Es empfiehlt sich, Latin-1 als Standardkodierung zu aktivieren, wenn
|
|||
|
Sie prim<69>r Deutsch verwenden. Benutzen Sie zu diesem Zweck die
|
|||
|
Befehlsfolge
|
|||
|
|
|||
|
C-x <Return> l latin-1 <Return>
|
|||
|
|
|||
|
(C-x <Return> l f<>hrt die Funktion set-language-environment aus), um
|
|||
|
in einer laufenden Emacs-Sitzung auf Latin-1 umzuschalten. Dadurch
|
|||
|
wird erreicht, da<64> Emacs beim Laden einer Datei (und Speichern
|
|||
|
derselben) standardm<64><6D>ig die Latin-1-Zeichenkodierung verwendet. Sie
|
|||
|
k<EFBFBD>nnen an der Ziffer 1 unmittelbar vor dem Doppelpunkt links unten in
|
|||
|
der Statuszeile erkennen, da<64> Sie Latin-1 aktiviert haben. Beachten
|
|||
|
Sie allerdings, da<64> set-language-environment keinen Einflu<6C> auf die
|
|||
|
Kodierung bereits existierender Puffer hat! Haben Sie eine Datei mit
|
|||
|
deutschem Text in Latin-1-Kodierung irrt<72>mlicherweise in einer
|
|||
|
falschen Kodierung geladen, dann m<>ssen Sie diesen Puffer aus Emacs
|
|||
|
mit dem Befehl C-x k (kill-buffer) entfernen und die Datei erneut
|
|||
|
laden, nachdem Sie mit set-language-environment auf Latin-1
|
|||
|
umgeschaltet haben.
|
|||
|
|
|||
|
>> F<>hren Sie jetzt C-x <Return> l latin-1 <Return> aus und <20>ffnen Sie
|
|||
|
anschlie<69>end eine (neue) Datei mit dem Namen `bar' in einem anderen
|
|||
|
Fenster mittels C-x 4 C-f bar <Return>. In der Statuszeile des
|
|||
|
zweiten Fensters sehen Sie die Ziffer 1 unmittelbar vor dem
|
|||
|
Doppelpunkt.
|
|||
|
|
|||
|
>> Schlie<69>en Sie das soeben ge<67>ffnete Fenster mit C-x 1 wieder.
|
|||
|
|
|||
|
Wie k<>nnen Sie nun deutsche Umlaute eingeben? Es gibt prinzipiell
|
|||
|
zwei unterschiedliche F<>lle: Sie besitzen eine deutsche Tastatur mit
|
|||
|
Tasten f<>r die Umlaute oder Sie haben eine nicht-deutsche Tastatur.
|
|||
|
Im ersteren Fall sollten Sie die Eingabemethode `german' ausw<73>hlen,
|
|||
|
welche direkt die Umlaute auf die entsprechenden Tasten abbildet. Im
|
|||
|
letzteren Fall gibt es mehrere M<>glichkeiten, wovon zwei hier erkl<6B>rt
|
|||
|
werden sollen, n<>mlich `latin-1-prefix' und `latin-1-postfix'. Die
|
|||
|
Pr<EFBFBD>fix-Methode erwartet zuerst den Akzent und dann den Basisbuchstaben
|
|||
|
('a wird zu <20>, "s zu <20> etc.), w<>hrend bei der Postfix-Methode zuerst
|
|||
|
der Basisbuchstabe und dann der Akzent einzugeben ist (a" wird zu <20>,
|
|||
|
s/ wird zu <20> etc).
|
|||
|
|
|||
|
Aktiviert wird die jeweilige Eingabe mit dem Befehl
|
|||
|
|
|||
|
C-u C-\ Eingabemethode <Return>
|
|||
|
|
|||
|
(z.B. C-u C-\ german <Return>). Durch diese Befehlsfolge wird der
|
|||
|
sogenannte Quail-Nebenmodus aktiviert, was sich durch eine kleine
|
|||
|
Ver<EFBFBD>nderung in der Statuszeile zeigt: Durch zwei oder drei Zeichen
|
|||
|
unmittelbar vor der Pufferkodierung wird die aktuelle Eingabemethode
|
|||
|
angezeigt. Ist der Eingabemodus einmal gew<65>hlt, kann man mit C-\ ihn
|
|||
|
ein- und ausschalten.
|
|||
|
|
|||
|
>> Geben Sie C-u C-\ latin-1-postfix <Return> ein. Beobachten Sie,
|
|||
|
wie links unten in der Statuszeile die Anzeige von `1:**' auf
|
|||
|
`1<1:**' springt. Probieren Sie <20> einzugeben mittels a".
|
|||
|
|
|||
|
>> Deaktivieren Sie den Eingabemodus wieder mit C-\.
|
|||
|
|
|||
|
Folgende K<>rzel in der Statuszeile repr<70>sentieren die eben
|
|||
|
beschriebenen Eingabemethoden:
|
|||
|
|
|||
|
DE@ german
|
|||
|
1< latin-1-postfix
|
|||
|
1> latin-1-prefix
|
|||
|
|
|||
|
So bedeutet die Angabe `DE@1:**', da<64> Sie die Eingabemethode `german'
|
|||
|
in einem Puffer mit Latin-1-Kodierung verwenden, und da<64> die Datei
|
|||
|
bereits modifiziert wurde.
|
|||
|
|
|||
|
[Arbeitet Emacs in einem Terminal, werden noch zwei zus<75>tzliche
|
|||
|
Spalten zwischen Eingabemethode und Pufferkodierung eingef<65>gt, und
|
|||
|
zwar f<>r die Tastatur- und Bildschirmkodierung.]
|
|||
|
|
|||
|
|
|||
|
* WEITERE DOKUMENTATION VON EMACS
|
|||
|
---------------------------------
|
|||
|
|
|||
|
Wir haben uns bem<65>ht, in dieser Einf<6E>hrung genau soviel Information zu
|
|||
|
geben, da<64> Sie beginnen k<>nnen, mit Emacs zu arbeiten. Emacs ist
|
|||
|
jedoch so m<>chtig und umfangreich, da<64> es den Rahmen einer Einf<6E>hrung
|
|||
|
spr<EFBFBD>nge, an dieser Stelle mehr zu erkl<6B>ren. Um Sie im weiteren
|
|||
|
Lernverlauf zu unterst<73>tzen, stellt Emacs eine Reihe von
|
|||
|
Hilfe-Funktionen zu Verf<72>gung, die alle mit dem Pr<50>fix C-h (dem
|
|||
|
Hilfe-Zeichen, `Help character') beginnen.
|
|||
|
|
|||
|
Nach dem Dr<44>cken von C-h geben Sie ein weiteres Zeichen ein, um Emacs
|
|||
|
zu sagen, wor<6F>ber Sie mehr Informationen brauchen. Sollten Sie
|
|||
|
WIRKLICH verloren sein, geben Sie C-h ? ein, und Emacs sagt Ihnen,
|
|||
|
welche Art von Hilfe er Ihnen zu Verf<72>gung stellen kann. Haben Sie
|
|||
|
C-h versehentlich gedr<64>ckt, k<>nnen Sie mit C-g sofort abbrechen.
|
|||
|
|
|||
|
(Es kann vorkommen, da<64> bei manchen Computern bzw. Terminals C-h etwas
|
|||
|
anderes bedeutet. Da erfahrungsgem<65><6D> C-h eine der meistben<65>tigten
|
|||
|
Emacs-Befehle ist, haben Sie einen wirklichen Grund, sich in diesem
|
|||
|
Fall beim Systemadministrator zu beschweren. Alternativen zu C-h sind
|
|||
|
die F1-Taste und der lange Befehl M-x help <Return>.)
|
|||
|
|
|||
|
Die elementarste Hilfestellung gibt C-h c. Schreiben Sie C-h, dann
|
|||
|
das Zeichen c, und dann einen Befehl: Emacs zeigt daraufhin eine kurze
|
|||
|
Beschreibung des Befehls an.
|
|||
|
|
|||
|
>> Geben Sie C-h c C-p ein.
|
|||
|
Die Antwort darauf (im Echo-Bereich) sollte so <20>hnlich sein wie
|
|||
|
|
|||
|
C-p runs the command previous-line
|
|||
|
|
|||
|
Somit wissen Sie den `Namen der Funktion'. Funktionsnamen werden
|
|||
|
haupts<EFBFBD>chlich benutzt, um Emacs anzupassen bzw. zu erweitern. Aber da
|
|||
|
Namen in der Regel beschreiben, was die jeweilige Funktion tut, k<>nnen
|
|||
|
sie auch als sehr kurze Beschreibung dienen -- ausreichend, um Sie an
|
|||
|
Befehle zu erinnern, die Sie bereits gelernt haben.
|
|||
|
|
|||
|
Aus mehr als einem Zeichen bestehende Befehle, z.B. C-x C-s oder
|
|||
|
<ESC>v, sind ebenfalls erlaubt nach C-h c.
|
|||
|
|
|||
|
Um eine detaillierte Dokumentation eines Befehls zu erhalten,
|
|||
|
verwenden Sie C-h k anstelle von C-h c.
|
|||
|
|
|||
|
>> Geben Sie C-h k C-p ein.
|
|||
|
|
|||
|
Diese Befehlsfolge zeigt die komplette Dokumentation des Befehls an
|
|||
|
zusammen mit seinem Namen, und zwar in einem eigenem Fenster. Wenn
|
|||
|
Sie die Beschreibung gelesen haben, ben<65>tzen Sie am besten C-x 1, um
|
|||
|
das Hilfe-Fenster wieder zu schlie<69>en. Sie m<>ssen das nicht sofort
|
|||
|
tun -- Sie k<>nnen weiter Text editieren und das Fenster schlie<69>en,
|
|||
|
wenn Sie es nicht mehr brauchen.
|
|||
|
|
|||
|
Hier einige weitere n<>tzliche Optionen von C-h:
|
|||
|
|
|||
|
C-h f Beschreibt eine Funktion. Sie m<>ssen den Namen der
|
|||
|
Funktion eingeben.
|
|||
|
|
|||
|
>> Probieren Sie C-h f previous-line<Return>.
|
|||
|
Alle Information <20>ber den C-p-Befehl wird angezeigt.
|
|||
|
|
|||
|
Sie k<>nnen die Tabulator-Taste stets ben<65>tzen, um den Namen des
|
|||
|
jeweiligen Befehls zu vervollst<73>ndigen. Geben Sie z.B. `C-h f
|
|||
|
previous<TAB>' ein, dann werden alle Befehle angezeigt, deren Namen
|
|||
|
mit `previous-' beginnen. Erg<72>nzen Sie die Zeichenkette auf
|
|||
|
`previous-l' und dr<64>cken Sie dann <TAB>, bleibt nur noch der Befehl
|
|||
|
`previous-line' <20>brig, und Sie k<>nnen mit <Return> abschlie<69>en.
|
|||
|
|
|||
|
C-h a Ein Befehls-Apropos. Gibt man ein Schl<68>sselwort ein,
|
|||
|
dann zeigt Emacs alle Befehle, die dieses
|
|||
|
Schl<68>sselwort enthalten. Alle angezeigten Befehle
|
|||
|
k<>nnen mit M-x aufgerufen werden. F<>r einige
|
|||
|
Kommandos wird zus<75>tzlich eine Zeichensequenz
|
|||
|
(meistens bestehend aus einem oder zwei Zeichen)
|
|||
|
aufgelistet, welche den gleichen Befehl startet.
|
|||
|
|
|||
|
>> Geben Sie C-h a file<Return> ein.
|
|||
|
|
|||
|
Alle M-x-Befehle, die das Wort `file' in ihrem Namen enthalten, werden
|
|||
|
angezeigt. Beachten Sie, da<64> auch C-x C-f aufgelistet wird neben dem
|
|||
|
zugeh<EFBFBD>rigen langen Namen, find-file.
|
|||
|
|
|||
|
>> Bl<42>ttern Sie mit C-M-v, um sich die Liste der Funktionen anzusehen.
|
|||
|
|
|||
|
>> Schlie<69>en Sie das Hilfefenster mit C-x 1.
|
|||
|
|
|||
|
|
|||
|
* SCHLUSSBEMERKUNG
|
|||
|
------------------
|
|||
|
|
|||
|
Das Wichtigste: Emacs wird mit C-x C-c beendet und mit C-z tempor<6F>r
|
|||
|
unterbrochen.
|
|||
|
|
|||
|
Diese Einf<6E>hrung soll f<>r alle neuen Benutzer von Emacs verst<73>ndlich
|
|||
|
sein. Wenn daher etwas unklar sein sollte, dann hadern Sie nicht mit
|
|||
|
sich selbst. Schreiben Sie an die Free Software Foundation oder an
|
|||
|
den Autor und erl<72>utern Sie, was f<>r Sie unklar geblieben ist. Eine
|
|||
|
weitere Kontaktadresse ist die Mailing-Liste `de@li.org', in der
|
|||
|
Probleme mit der Adaption von GNU-Programmen an das Deutsche
|
|||
|
diskutiert werden.
|
|||
|
|
|||
|
|
|||
|
RECHTLICHES
|
|||
|
-----------
|
|||
|
|
|||
|
Die englische Version dieser Einf<6E>hrung hat eine lange Vorgeschichte.
|
|||
|
Stuart Cracraft hat f<>r die Urversion von Emacs das erste Tutorial
|
|||
|
geschrieben. <20>bersetzer ins Deutsche ist Werner Lemberg (wl@gnu.org).
|
|||
|
|
|||
|
Beachten Sie bitte, da<64> im Zweifelsfalle das englische Original dieser
|
|||
|
Urheberrechtsnotiz g<>ltig ist (zu finden in der Datei TUTORIAL).
|
|||
|
|
|||
|
Copyright (c) 1985, 1996, 1997 Free Software Foundation
|
|||
|
|
|||
|
Hiermit wird f<>r jedermann die Erlaubnis erteilt, w<>rtliche,
|
|||
|
unver<65>nderte Kopien dieses Dokumentes f<>r jegliches Medium zu
|
|||
|
erstellen, unter der Voraussetzung, da<64> die Copyright-Notiz sowie
|
|||
|
diese Erlaubnis beibehalten werden. Au<41>erdem mu<6D> der Verteiler
|
|||
|
dieses Dokuments den Empf<70>ngern die gleichen Rechte einr<6E>umen,
|
|||
|
welche durch diese Erlaubnis gegeben sind.
|
|||
|
|
|||
|
Zugleich wird die Erlaubnis erteilt, modifizierte Versionen dieses
|
|||
|
Dokuments, oder Teile davon, zu verteilen, und zwar zu den oben
|
|||
|
gegebenen Bedingungen unter der Voraussetzung, da<64> eindeutig zu
|
|||
|
erkennen ist, wer zuletzt dieses Dokument ver<65>ndert hat.
|
|||
|
|
|||
|
Die Vervielf<6C>ltigungsbedingungen f<>r Emacs selbst sind etwas
|
|||
|
komplexer, folgen aber in etwa den gleichen Richtlinien. Lesen Sie
|
|||
|
bitte die Datei COPYING und geben Sie Emacs an Ihre Freunde weiter!
|
|||
|
Helfen Sie mit, die Idee von freier Software zu propagieren, indem Sie
|
|||
|
freie Software verwenden, verteilen, oder sogar selber schreiben.
|
|||
|
|
|||
|
--- end of TUTORIAL.de ---
|
|||
|
|
|||
|
;;; Local Variables:
|
|||
|
;;; coding: latin-1
|
|||
|
;;; End:
|