1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-12 09:28:24 +00:00
emacs/etc/tutorials/TUTORIAL.nl
2007-08-22 07:41:44 +00:00

1256 lines
53 KiB
Plaintext

Emacs-inleiding. De kopieervoorwaarden staan onderaan.
De meeste Emacs-commando's gebruiken de CONTROL-toets (soms CTRL of CTL
genaamd) en/of de META-toets (soms genaamd EDIT of ALT). In plaats van
steeds de volledige naam te noemen, gebruiken we de volgende afkortingen:
C-<ltr> betekent: houd de CONTROL-toets ingedrukt en tik de toets <ltr>
Dus C-f wordt: houd de CONTROL-toets ingedrukt en tik f.
M-<ltr> betekent: houd de META-, EDIT- of ALT-toets ingedrukt en tik
de toets <ltr>. Als er geen toets META, EDIT of ALT is, kun
je ook eerst de ESC-toets tikken, gevolgd door <ltr>. We
verwijzen naar de ESC-toets als <ESC>.
BELANGRIJK: om Emacs te verlaten, tik C-x C-c (twee tekens).
De tekens ">>" tegen de linkerkantlijn nodigen je uit om een bepaald
commando te proberen. Bijvoorbeeld:
<<Blank lines inserted around following line by help-with-tutorial>>
[Lege regels om didactische redenen. Hieronder gaat het verder.]
>> Tik nu C-v (volgend scherm) om naar het volgende scherm te gaan.
(Geef nu het commando door de CONTROL-toets ingedrukt te
houden terwijl je de v tikt.) Vanaf nu moet je dit steeds
herhalen als je klaar bent met het lezen van een scherm.
Merk op dat er een overlapping van twee regels is als je van een
scherm naar het volgende gaat; dat zorgt voor continuïteit bij het
lezen van de tekst.
Het eerste wat je moet weten, is hoe je je naar verschillende plaatsen
in de tekst kan bewegen. Je weet al hoe je een scherm vooruit moet
gaan: met C-v. Om een scherm terug te gaan, tik je M-v (houd de
META-toets ingedrukt en tik v, of tik <ESC> v als je geen META-, EDIT-
of ALT-toets hebt).
>> Probeer nu een paar keer M-v, steeds gevolgd door C-v.
* SAMENVATTING
--------------
De volgende commando's zijn handig om volledige schermen te bekijken:
C-v Ga een scherm vooruit
M-v Ga een scherm terug
C-l Maak het scherm schoon en teken alle tekst opnieuw,
waarbij de regel waarop de cursor staat, op het
midden van het scherm terecht komt. (C-l is
CONTROL-L, niet CONTROL-1.)
>> Kijk waar de cursor staat, en onthoud de tekst er omheen. Tik C-l.
Zoek de cursor en merk op dat hij nog steeds bij dezelfde tekst
staat.
Als je toetsenbord PageUp- en PageDn-toetsen heeft dan kun je deze ook
gebruiken om een scherm terug dan wel vooruit te gaan, maar het werken
met C-v en M-v is efficiënter.
* BASISCOMMANDO'S CURSORBEWEGINGEN
----------------------------------
Het is handig om je per scherm te bewegen, maar hoe beweeg je je nu
naar een specifieke plaats op het scherm?
Er is een aantal manieren waarop je dit kan doen. Je kan de
pijltjestoetsen gebruiken, maar het is efficiënter om je handen in de
standaardhouding te laten, en de commando's C-p, C-b, C-f en C-n te
gebruiken. Elk van deze commando's verplaatst de cursor precies een
regel of teken in een bepaalde richting op het scherm. Hier volgt een
figuur met de vier commando's en de richting waarin ze de cursor
bewegen:
vorige regel, C-p
:
:
achteruit, C-b .... huidige cursorpositie .... vooruit, C-f
:
:
volgende regel, C-n
>> Verplaats, met C-n of C-p, de cursor naar de middelste regel van de
figuur. Tik dan C-l om de hele figuur in het midden van het
centrum te plaatsen.
Met een beetje kennis van het Engels zijn deze commando's gemakkelijk
te onthouden: de p komt van "previous" (vorige), de n van "next"
(volgende), de b van "backward" (achteruit) en de f van "forward"
(vooruit). Dit zijn de basiscommando's om de cursor te bewegen, dus
je zult ze VOORTDUREND gebruiken: het is vooruitziend als je ze nu
leert te gebruiken.
>> Tik een paar keer C-n om de cursor op deze regel te krijgen.
>> Beweeg je binnen de regel met C-f (herhaaldelijk) en terug omhoog
met C-p. Let op wat C-p doet als de cursor midden in een regel
staat.
Elke regel eindigt met een Newline-teken (het Engelse "new line"
betekent "nieuwe regel"); dit teken scheidt elke regel van de
volgende. De laatste regel in een bestand zou eigenlijk ook met een
Newline moeten eindigen (maar dat is niet noodzakelijk voor Emacs).
>> Probeer C-b aan het begin van een regel. De cursor zal zich naar
het eind van de vorige regel bewegen, omdat je achteruit over het
Newline teken gaat.
Net als C-b kan ook C-f zich over Newline-tekens heen bewegen.
>> Tik nog een aantal keren het commando C-b, zodat je een gevoel
krijgt waar de cursor is. Tik dan enkele keren C-f om de cursor
terug naar het einde van de regel te bewegen. Een verder C-f
commando beweegt de cursor dan naar de volgende regel.
Wanneer je de cursor voorbij het begin of het einde van het scherm
beweegt, zal de tekst over het scherm heen schuiven. Dit heet
"scrollen", of "schuiven" in goed Nederlands. Door te scrollen zorgt
Emacs ervoor dat de cursor de gewenste beweging kan maken zonder dat
de cursor van het scherm af beweegt.
>> Probeer de cursor voorbij de onderkant van het scherm te bewegen
met C-n en zie wat er gebeurt.
Als de beweging per teken te langzaam gaat, kan je de cursor ook per
woord bewegen. M-f (META-f) beweegt de cursor een woord vooruit en
M-b een woord achteruit.
>> Tik enkele keren M-f en M-b.
Als je midden in een woord staat, beweegt M-f de cursor naar het eind
van het woord. Als je op een witte ruimte tussen twee woorden staat,
beweegt M-f de cursor naar het eind van het volgende woord. Het
commando M-b beweegt de cursor analoog de andere kant op.
>> Tik enkele keren M-f en M-b en daar tussendoor een paar maal C-f en
C-b, zodat je ziet wat M-f en M-b doen vanaf bepaalde plaatsen in
een woord en tussen twee woorden.
Merk op dat er een analogie bestaat tussen enerzijds C-f en C-b en
anderzijds M-f en M-b. Het is bij veel commando's zo dat META-tekens
gebruikt worden om iets te doen in eenheden van de taal (woorden,
zinnen, alinea's) terwijl CONTROL-tekens te maken hebben met dingen
die los staan van wat je aan het bewerken bent (tekens, regels, enz.).
Deze analogie gaat ook op voor regels en zinnen: C-a en C-e bewegen de
cursor naar het begin of eind van een regel, terwijl met M-a,
respectievelijk M-e, de cursor naar het begin, respectievelijk het
eind, van een zin gaat.
>> Tik enkele keren C-a, en dan een enkele keren C-e.
Tik een paar maal M-a, en dan enkele keren M-e.
Bemerk hoe herhaalde C-a commando's niets doen, terwijl herhaalde M-a
commando's de cursor steeds een zin achteruit bewegen. Alhoewel ze
niet volledig overeenkomen, is het gedrag van beide heel natuurlijk.
De plaats van de cursor in de tekst wordt "punt" genoemd (zonder
lidwoord, "point" in het Engels). Anders gezegd: de cursor laat op
het scherm de plek zien waar punt in de tekst staat.
Nu volgt een samenvatting van eenvoudige cursorbewegingen, met
inbegrip van de commando's die de cursor per woord of zin bewegen:
C-f Ga een teken vooruit
C-b Ga een teken achteruit
M-f Ga een woord vooruit
M-b Ga een woord achteruit
C-n Ga naar de volgende regel
C-p Ga naar de vorige regel
C-a Ga naar het begin van de regel
C-e Ga naar het eind van de regel
M-a Ga terug naar het begin van de zin
M-e Ga vooruit naar het eind van de zin
>> Probeer al deze commando's een paar keer als oefening. Deze
commando's worden het vaakst gebruikt.
Er zijn nog twee belangrijke cursorbewegingen: M-< (META kleiner-dan)
beweegt de cursor naar het begin van het bestand, en M-> (META
groter-dan) beweegt hem naar het eind.
Op de meeste toetsenborden zit de '<' boven de komma, zodat je de
Shift-toets (ook wel bekend als de hoofdlettertoets) moet gebruiken om
het '<'-teken in te tikken. Op deze toetsenborden moet je ook de
shift gebruiken om M-< in te tikken: zonder shift zou je M-, (META
komma) tikken.
>> Tik nu M-< om naar het begin van dit bestand te gaan.
Gebruik daarna C-v om hier weer terug te komen.
>> Tik nu M-> om naar het eind van het bestand te springen.
Gebruik daarna M-v om hier weer terug te komen.
Als je toetsenbord pijltjestoetsen heeft, kan je die ook gebruiken om
de cursor te verplaatsen. We raden je aan om C-b, C-f, C-n en C-p te
leren, om drie redenen. Ten eerste werken ze op alle toetsenborden,
ook die zonder pijltjestoetsen. Ten tweede zul je merken dat wanneer
je eenmaal wat ervaring hebt opgedaan in de omgang met Emacs, het
gebruik van de CONTROL-tekens sneller is dan werken met de
pijltjestoetsen (omdat je handen in de normale tikpositie kunnen
blijven). Ten derde, als je eenmaal gewend bent aan deze commando's
met CONTROL-tekens, kan je makkelijk andere gevorderde
cursorbewegingscommando's leren.
De meeste Emacs-commando's accepteren een numeriek argument. Voor de
meeste commando's is dit argument het aantal keren dat het commando
herhaald moet worden. Je geeft dit numerieke argument aan met C-u en
vervolgens de cijfers van het getal, vóór het commando. Als je
toetsenbord een META- (of EDIT- of ALT-) toets heeft, is er ook een
andere manier om het getal aan te geven: tik de cijfers terwijl je de
META toets ingedrukt houdt. We raden je aan de C-u manier te leren
omdat die beschikbaar is op elke terminal.
Bijvoorbeeld, C-u 8 C-f beweegt de cursor 8 plaatsen naar voren.
>> Probeer eens om met C-n of C-p en een numeriek argument de cursor
met slechts een commando naar een regel in de buurt van deze zin te
bewegen.
Voor de meeste commando's is het numerieke argument het aantal keren
dat het commando herhaald moet worden. Voor sommige commando's
betekent het echter iets anders. Verschillende commando's (die je
totnogtoe niet geleerd hebt) gebruiken het als een vlag -- de
aanwezigheid van een prefix-argument, ongeacht zijn waarde, maakt dat
het commando iets anders doet.
C-v en M-v vormen een andere uitzondering. Met een numeriek argument
verschuiven deze commando's de tekst het aangegeven aantal regels in
plaats van (bijna) een heel scherm. Bijvoorbeeld, C-u 4 C-v
verschuift de tekst 4 regels.
>> Probeer nu C-u 8 C-v.
Daarmee zou je tekst 8 regels opgeschoven moeten zijn. Als je terug
omlaag wil scrollen, kan je M-v een argument geven.
Als je een scherm met vensters gebruikt, zoals X Windows of
MS-Windows, zou je een grote rechthoek moeten zien aan de linkerkant
van het Emacs-venster. Deze rechthoek heet een schuifbalk
("scrollbar"). Je kan de tekst scrollen door met de muis in de
schuifbalk te klikken.
>> Klik met de middelste muisknop bovenaan het heldere gebied in de
schuifbalk. Dit zou de tekst moeten verschuiven naar een positie
die afhankelijk is van hoe hoog of laag je klikt.
>> Beweeg de muis op en neer terwijl je de middelste muisknop
ingedrukt houdt. Je zal zien dat de tekst met de muis mee heen en
weer scrollt.
* ALS EMACS HANGT
-----------------
Als Emacs niet meer op commando's reageert, kan je het veilig
onderbreken door C-g te tikken. Je kan C-g gebruiken om een commando
te stoppen als het te lang duurt om uit te voeren.
Je kan C-g ook gebruiken om een numeriek argument te verwijderen of om
het begin van een commando dat je niet wilt afmaken, te verwijderen.
>> Tik nu C-u 100 om een numeriek argument te maken met de waarde 100,
en tik dan C-g. Tik vervolgens C-f. Het zou de cursor maar één
positie mogen verplaatsen, omdat je het argument verwijderd hebt
met C-g.
Als je per ongeluk een <ESC> tikt, kan je dat ongedaan maken met het
commando C-g.
* UITGESCHAKELDE COMMANDO'S
---------------------------
Sommige Emacs-commando's zijn uitgeschakeld zodat beginnende
gebruikers ze niet per ongeluk kunnen uitvoeren.
Als je een van de uitgeschakelde commando's intikt, laat Emacs uitleg
zien over het commando dat je gegeven hebt, en vraagt of je het
werkelijk wil uitvoeren.
Wanneer je het commando echt wil uitvoeren, tik dan <SPC> (de
spatiebalk) als antwoord op de vraag. Normaal wil je het commando
niet uitvoeren en beantwoord je de vraag met "n" (van "no" of "nee").
>> Tik C-x C-l (een uitgeschakeld commando), en tik dan n als antwoord
op de vraag.
* VENSTERS
----------
Emacs kan meerdere vensters laten zien, elk venster met zijn eigen
tekst. We zullen later uitleggen hoe je met meerdere vensters om kan
gaan. Op dit moment willen we slechts uitleggen hoe je van extra
vensters af kunt komen en terug kan keren naar het werken met één
venster. Het is eenvoudig:
C-x 1 Een enkel venster (dat wil zeggen: verwijder alle
andere vensters).
Het commando is CONTROL-x gevolgd door het cijfer 1. C-x 1 vergroot
het venster waar de cursor in staat tot het hele scherm. Alle andere
vensters worden verwijderd.
>> Zet de cursor op deze regel en tik C-u 0 C-l.
>> Tik nu C-h k C-f.
Zie hoe dit venster kleiner is geworden, terwijl een nieuw venster
verschijnt om de documentatie van het C-f commando te laten zien.
>> Tik nu C-x 1 en zie het documentatievenster verdwijnen.
Dit commando is anders dan de commando's die je tot nu toe geleerd
hebt aangezien het uit twee tekens bestaat. Het begint met het teken
CONTROL-x. Er zijn een heleboel commando's die met CONTROL-x
beginnen. Veel van die commando's hebben te maken met vensters,
bestanden, buffers, en gelijkaardige dingen. Dergelijke commando's
bestaan uit twee, drie of vier tekens.
* TOEVOEGEN EN WEGHALEN
-----------------------
Als je tekst toe wil voegen, tik je die eenvoudigweg in. Tekens die
je kan zien, zoals A, 7, * en dergelijke, worden door Emacs als tekst
geïnterpreteerd en meteen aan de tekst toegevoegd. Tik <Return> (de
"volgende regel"-toets) om een Newline toe te voegen en dus een nieuwe
regel te beginnen.
Je kan het laatste teken dat je hebt ingetikt weghalen door <Delback>
te tikken. <Delback> is een toets op het toetsenbord -- dezelfde
toets die je normaal gesproken gebruikt, buiten Emacs, om het laatst
ingetikte teken te wissen. Het is meestal een grote toets, een paar
rijen boven de <Return>-toets, waar "Delete", "Del" of "Backspace" op
staat.
Als er op die grote toets "Backspace" staat, dan is dat degene die je
gebruikt voor <Delback>. Er kan op een andere plaats ook nog een
andere toets zijn waarop "Delete" staat, maar dat is niet <Delback>.
In het algemeen haalt <Delback> het teken weg dat juist voor de
cursorpositie staat.
>> Probeer dit nu: tik een paar letters en haal ze weer weg door een
paar keer op <Delback> te drukken. Maak je niet druk over het feit
dat dit bestand verandert; je zal niets veranderen aan de originele
versie van deze inleiding. Je zit slechts je eigen kopie te
wijzigen.
Als een regel tekst te lang wordt om helemaal op het scherm getoond te
worden, dan gaat hij verder op de volgende schermregel. Een backslash
("\") in de rechtermarge (of, als je een scherm met vensters gebruikt,
een kleine gebogen pijl) laat dan zien dat de regel op de volgende
schermregel verder gaat.
>> Voeg nu tekst toe totdat je de rechter kantlijn raakt, en blijf
toevoegen. Je zal zien dat er een vervolgregel verschijnt.
>> Tik weer enkele keren <Delback> om zoveel tekens weg te halen tot
de regel weer op een schermregel past. De vervolgregel zal
verdwijnen.
Je kan een Newline zoals elk ander teken verwijderen. Als je een
Newline verwijdert, voeg je de twee regels waar de Newline tussen
staat samen tot een enkele regel. Als de regel die het resultaat is
van deze operatie niet op een schermregel past, zal hij getoond worden
met een vervolgregel.
>> Beweeg de cursor naar het begin van een regel en tik <Delback>.
Dit voegt de huidige en vorige regel samen.
>> Tik <Return> om de Newline die je net verwijderd hebt weer toe te
voegen.
Je herinnert je dat je bij de meeste Emacs-commando's het aantal keren
op kan geven, dat ze herhaald moeten worden. Dit geldt ook voor
gewone tekens. Als je een gewoon teken herhaalt, wordt dat teken
herhaaldelijk toegevoegd.
>> Probeer dat nu: tik C-u 8 * om ******** toe te voegen.
Je hebt nu de eenvoudigste manier geleerd om iets in Emacs te tikken
en fouten te verbeteren. Je kan tekst ook per woord of regel
verwijderen. Hier volgt een samenvatting van de commando's om tekst
te verwijderen:
<Delback> Haal het teken weg dat voor de cursor staat
C-d Haal het teken weg dat achter de cursor staat
M-<Delback> Verwijder het woord dat voor de cursor staat
M-d Verwijder het woord dat achter de cursor staat
C-k Verwijder alles van de cursor tot het eind van de regel
M-k Verwijder alles van de cursor tot het eind van de zin
Merk op dat <Delback> en C-d, met M-<Delback> en M-d de analogie
verder trekken, die begon met C-f en M-f (waarbij we voor het gemak
even vergeten dat <Delback> niet echt een CONTROL-teken is). C-k en
M-k lijken enigzins op C-e en M-e in hun relatie tot regels en zinnen.
Je kunt ook op één uniforme manier een willekeurig deel van de tekst
verwijderen. Beweeg daartoe naar één kant van het gedeelte dat je
wilt verwijderen en tik C-@ of C-<SPC>. (<SPC> is de spatiebalk.)
Beweeg daarna naar de andere kant en tik C-w. Dat verwijdert alle
tekst tussen de twee posities.
>> Beweeg de cursor naar de J aan het begin van de vorige alinea.
>> Tik C-<SPC>. Emacs toont nu de mededeling "Mark set" ("Markering
geplaatst") onderaan het scherm.
>> Plaats de cursor op de n van "kant" op de tweede regel van de
alinea.
>> Tik C-w. Dit zal de tekst vanaf de J tot vlak voor de n
verwijderen.
Er is een verschil tussen iets weghalen en iets verwijderen: iets dat
je hebt verwijderd, kan je terugbrengen, maar iets dat je hebt
weggehaald niet. (In het Engels is het verschil tussen "killing" en
"deleting" duidelijker dan tussen de Nederlandse vertalingen
"verwijderen" en "weghalen".) Verwijderde tekst terughalen heet
"yanken". In het algemeen geldt dat de commando's die meer tekst dan
een enkel teken, Newline of spatie verwijderen, deze tekst bewaren
zodat hij geyankt kan worden, terwijl dat niet geldt voor commando's
die slechts een enkel teken weghalen.
>> Zet de cursor op het begin van een regel die niet leeg is.
Tik C-k om de tekst op die regel te verwijderen.
>> Tik C-k een tweede keer. Nu verwijdert dit commando het
Newline-teken.
Merk op hoe een enkel C-k commando de inhoud van een regel verwijdert,
een tweede C-k commando de regel zelf zodat alle volgende regels een
regel omhoog komen. Het numerieke argument is voor C-k bijzonder: het
aangegeven aantal regels zal worden verwijderd, inclusief de inhoud.
Dit is meer dan simpelweg herhaling: C-u 2 C-k verwijdert twee regels,
terwijl tweemaal C-k tikken dat niet doet.
Om de laatst verwijderde tekst terug te halen naar de plaats waar de
cursor nu op staat (te yanken), tik C-y.
>> Probeer het nu: tik C-y om de tekst te yanken.
Het is alsof je met C-y iets uit de prullenbak haalt wat je net had
verwijderd. Merk op dat verschillende C-k's achter elkaar alle regels
die verwijderd worden, bij elkaar bewaart zodat een enkele C-y die
regels in een keer terugbrengt.
>> Probeer het nu: tik C-k een paar keer.
Om de verwijderde tekst terug te halen:
>> Tik C-y. Beweeg de cursor enkele regels naar beneden en tik weer
C-y. Je ziet nu hoe je tekst kan kopiëren.
Wat moet je doen als je wat tekst terug wilt brengen, maar je intussen
al iets anders verwijderd hebt? C-y zou datgene terugbrengen wat je
het recentst hebt verwijderd. Gelukkig is de voorgaande tekst niet
verloren gegaan. Je kunt die tekst terughalen met M-y. Nadat je C-y
hebt getikt om de recentst weggegooide tekst terug te halen, vervangt
M-y die tekst met de tekst die je daarvoor had weggegooid. Je kunt
M-y herhalen om tekst terug te halen die je al langer geleden hebt
weggegooid. Als je de tekst te pakken hebt die je zocht, hoef je
niets te doen om die daar te houden. Je kan gewoon verder werken en
de teruggehaalde tekst met rust laten.
Als je M-y vaak genoeg tikt kom je terug waar je begon, bij de laatst
verwijderde tekst.
>> Verwijder een regel, beweeg de cursor wat, en verwijder nog een
regel. Tik C-y om de tweede regel die je verwijderde, terug te
halen. Tik nog een M-y en die regel wordt vervangen door de eerste
regel die je verwijderde. Tik nog enkele keren M-y en zie wat er
langs komt. Herhaal dit tot de tweede regel weer langs komt, en
dan nog een paar keer. Je kan ook experimenteren met positieve en
negatieve argumenten bij M-y.
* HERSTELLEN
------------
Als je de tekst veranderd hebt en je daar toch niet tevreden mee bent,
dan kan je de verandering ongedaan maken met het herstelcommando, C-x
u.
Normaal gesproken herstelt C-x u de veranderingen die het gevolg zijn
van een enkel commando; door herhaaldelijk C-x u te tikken, worden
steeds eerdere commando's hersteld.
Er zijn echter twee uitzonderingen: commando's die de tekst niet
wijzigen, zoals cursorbewegingen, worden overgeslagen, en commando's
die simpelweg het ingetikte teken aan de tekst toevoegen, worden
meestal gegroepeerd in groepjes van maximaal 20 tekens, zodat je
minder vaak het commando C-x u hoeft te tikken om teksttoevoegingen te
herstellen.
>> Gooi deze regel weg met C-k; met C-x u zou hij weer moeten
verschijnen.
C-_ is een alternatief voor C-x u. Het levert exact hetzelfde
resultaat op, maar is makkelijker om een paar keer achter elkaar te
tikken. Een nadeel van C-_ is dat op sommige toetsenborden het
intikken ervan niet gebruiksvriendelijk is. Dat is ook de reden voor
het alternatief, C-x u. Op sommige terminals kan je C-_ tikken door
"/" te tikken terwijl je de CONTROL-toets ingedrukt houdt.
Een numeriek argument bij C-_ of C-x u duidt het aantal herhalingen
aan.
* BESTANDEN
-----------
Om een tekst die je gemaakt of veranderd hebt op te slaan, moet je de
tekst in een bestand stoppen ("to save a file" in het Engels). Als je
dat niet doet, ben je die veranderingen kwijt op het moment dat je
Emacs verlaat. Je kan een bestand veranderen door het bestand te
"bezoeken". (Ook wel "vinden"; "finding" of "visiting" in het
Engels.)
Een bestand bezoeken betekent dat je de inhoud van dat bestand in
Emacs ziet. Het lijkt er dan op alsof je het bestand aan het
veranderen bent. Deze veranderingen zijn echter slechts tijdelijk
zolang je het bestand niet opslaat. Op deze manier kan je nooit per
ongeluk een half gewijzigd bestand op het systeem achterlaten. Zelfs
als je het bestand opslaat, zorgt Emacs ervoor dat het originele
bestand onder een gewijzigde naam nog steeds beschikbaar is, voor het
geval je later besluit dat de veranderingen toch niet zo goed waren.
Bij de onderkant van het scherm zie je een regel die begint en eindigt
met streepjes, met aan het begin "-1:-- TUTORIAL.nl" of iets
dergelijks. Dit deel van het scherm laat normaal de naam van het
bestand zien dat je op dat moment bezoekt. Op dit moment bezoek je
een bestand dat "TUTORIAL.nl" heet; het is je eigen kopie van de
Nederlandstalige Emacs-inleiding ("tutorial" in het Engels). Als je
in Emacs een bestand bezoekt dan staat de naam van het bestand altijd
op deze plaats.
Iets bijzonders aan het commando om een bestand te bezoeken, is dat je
aan moet geven welk bestand je wil. Dit heet dat het commando "een
argument van de gebruiker vraagt"; in dit geval de naam van het
bestand. Nadat je het commando
C-x C-f Bezoek bestand (met de f van "find file").
hebt getikt vraagt Emacs om de naam van het bestand. De naam die je
intikt verschijnt op de onderste regel van het scherm. Wanneer die
regel voor dit soort invoer gebruikt wordt, heet hij de minibuffer.
Je kan gewone Emacs commando's gebruiken om de bestandsnaam te
veranderen.
Tijdens het invoeren van de bestandsnaam (of om het even welke invoer
in de minibuffer) kan je het commando afbreken met C-g.
>> Tik C-x C-f gevolgd door C-g. Dit commando breekt de minibuffer af
en ook het C-x C-f commando dat van de minibuffer gebruik maakte.
Het resultaat is dat je geen bestand bezoekt.
Als je de naam van een bestand hebt ingevoerd, tik dan <Return> om het
commando af te sluiten. Hierna gaat het C-x C-f commando aan het werk
en haalt het bestand op dat je aangegeven hebt. Als het C-x C-f
commando daarmee klaar is, verdwijnt de minibuffer.
Na korte tijd verschijnt de inhoud van het bestand op het scherm en
kan je de inhoud wijzigen. Als je de wijzigingen op wilt slaan, tik
dan het commando
C-x C-s Sla bestand op (met de s van "save file").
Dit commando slaat de tekst zoals Emacs die nu heeft in het bestand
op. De eerste keer dat je dit doet, slaat Emacs het originele bestand
onder een andere naam op, zodat het niet verloren gaat. De nieuwe
naam bestaat uit de oude bestandsnaam gevolgd door een "~".
Als Emacs het bestand heeft opgeslagen, laat het de naam van het
bestand zien. Het is een goede gewoonte een bestand regelmatig op te
slaan zodat er niet teveel werk verloren gaat als het systeem hangt of
crasht.
>> Tik C-x C-s, om je kopie van deze inleiding op te slaan. Als het
goed is verschijnt "Wrote ...TUTORIAL.nl" op de onderste
schermregel.
OPMERKING: Op sommige systemen gebeurt er helemaal niets als je C-x
C-s tikt, en daarna ook niets meer. Dit komt door een eigenschap van
de machine waarop je werkt die te maken heeft met "flow control". Met
C-s stopt de "flow" en komt niets meer van wat je tikt bij Emacs
terecht. Om deze situatie te herstellen, tik C-q. Lees daarna het
hoofdstuk "Spontaneous Entry to Incremental Search" in het
Emacs-handboek over hoe je moet omgaan met deze situatie.
Je kan een bestaand bestand bezoeken om het te bekijken of het te
wijzigen. Je kan ook een bestand bezoeken dat nog niet bestaat. Dit
is de manier om met Emacs een nieuw bestand te maken: bezoek het
bestand, dat eerst leeg zal zijn, en voeg tekst toe. Zodra je de
tekst opslaat, wordt het bestand werkelijk gecreëerd, met de tekst als
inhoud. Vanaf dat moment ben je dus bezig met een bestaand bestand.
* BUFFERS
---------
Als je een tweede bestand bezoekt met C-x C-f, blijft het eerste
bestand gewoon in Emacs. Je kan naar dat bestand terug door het
gewoon nog een keer te bezoeken met C-x C-f. Op deze manier kan je
een behoorlijk aantal bestanden in Emacs krijgen.
>> Creëer een bestand dat "foo" heet door te tikken: C-x C-f foo
<Return>. Voeg hieraan wat tekst toe, wijzig hem, en sla "foo" op
door C-x C-s te tikken. Tik hierna C-x C-f TUTORIAL <Return> om
weer hier, in de inleiding, terug te komen.
Emacs bewaart intern de tekst van elk bestand in een ding dat een
"buffer" genoemd wordt. Als je een bestand bezoekt wordt er een
nieuwe buffer gemaakt. Om een lijst van de huidige buffers te zien,
tik
C-x C-b Laat de bufferlijst zien
>> Probeer C-x C-b nu.
Bemerk dat elke buffer een naam heeft en mogelijk ook een
bestandsnaam; dit is de naam van het bestand waarmee de buffer
overeenkomt. ALLE tekst die je in een Emacs venster ziet is altijd
onderdeel van een of andere buffer.
>> Tik C-x 1 om de bufferlijst te verwijderen.
Wanneer je met meerdere buffers werkt, dan is op elk moment slechts
één van die buffers "actueel". De actuele buffer is degene die je aan
het bewerken bent. Als je een andere buffer wilt bewerken, dan moet
je daarnaar "omschakelen". Als je wilt omschakelen naar een buffer
die overeenkomt met een bestand, dan kun je dit doen door dat bestand
opnieuw te bezoeken met C-x C-f. Er is ook een makkelijkere manier:
gebruik het commando C-x b. Dit commando vraagt je naar de naam van
de buffer.
>> Tik C-x b foo <Return> om terug te gaan naar de buffer "foo" die de
tekst van het bestand "foo" bevat. Tik vervolgens C-x b TUTORIAL
<Return> om terug te komen naar deze Emacs-inleiding.
Meestal is de naam van de buffer gelijk aan de naam van het bestand
(minus de naam van de directory). Dit klopt echter niet altijd. De
lijst met buffers die je maakt met C-x C-b laat je altijd de naam van
elke buffer zien.
ALLE tekst die je ziet in een venster van Emacs is altijd onderdeel
van een of andere buffer. Sommige buffers komen niet overeen met een
bestand. De buffer genaamd "*Buffer List*" heeft bijvoorbeeld geen
bijbehorend bestand. Deze buffer bevat de lijst met buffers die je
gemaakt hebt met C-x C-b. Ook de buffer "*Messages*" heeft geen
geassocieerd bestand; deze buffer bevat de mededelingen die Emacs je
op de onderste regel toonde.
>> Tik C-x b *Messages* <Return> om de buffer met mededelingen te
bekijken. Tik daarna weer C-x b TUTORIAL <Return> om terug te
keren naar deze buffer met de Emacs-inleiding
Als je de tekst van het ene bestand verandert en dan een ander bestand
bezoekt, wordt het eerste bestand niet opgeslagen. De wijzigingen
blijven in Emacs, in de buffer die bij het bestand hoort. Het creëren
of veranderen van de buffer van het tweede bestand heeft geen effect
op de eerste buffer. Dit is erg nuttig, maar betekent ook dat er een
eenvoudige manier nodig is om het eerste bestand te bewaren. Het zou
erg vervelend zijn om er eerst naar terug te moeten gaan met C-x C-f
om het dan te kunnen bewaren met C-x C-s. Dus hebben we het commando:
C-x s Sla een paar buffers op
C-x s vraagt voor elke buffer die veranderingen heeft die nog niet
opgeslagen zijn, of je de buffer wilt bewaren.
>> Voeg wat tekst toe en tik C-x s.
Emacs vraagt nu of je de buffer die TUTORIAL.nl heet wilt bewaren.
Beantwoord deze vraag positief door een "y" in te tikken (de y van
"yes", Engels voor "ja").
* UITGEBREIDE COMMANDO'S
------------------------
Er zijn veel meer Emacs commando's dan er op de toetsen van het
toetsenbord passen, zelfs als we hun aantal kunnen vergroten door de
CONTROL- of META-toets te gebruiken. Emacs lost dit probleem op met
het X commando (met de X van eXtensie of uitbreiding). Het X commando
komt voor in twee smaken:
C-x Tekenuitbreiding. Gevolgd door een teken.
M-x Commando-naam-uitbreiding. Wordt gevolgd door een naam.
Deze commando's zijn in het algemeen nuttig, maar worden minder
gebruikt dan de commando's die je tot nu toe al geleerd hebt. Je hebt
al enkele van deze commando's gezien: C-x C-f om een bestand te
bezoeken en C-x C-s om het te bewaren, bijvoorbeeld. Een ander
voorbeeld is het commando om Emacs te verlaten: dit is C-x C-c. (Maak
je geen zorgen over het verloren gaan van veranderingen die niet
opgeslagen zijn; C-x C-c vraagt of je veranderde buffers wilt bewaren
voordat Emacs helemaal eindigt.)
C-z is het commando om Emacs *tijdelijk* te verlaten, zodat je daarna
weer terug kan keren in dezelfde Emacs-sessie.
Op systemen die deze mogelijkheid bieden, zet C-z Emacs stil: je komt
weer terug in de shell, maar Emacs is nog aanwezig. In de meeste
shells kan je Emacs weer activeren met het "fg" commando, of met
"%emacs".
Op systemen die niet de mogelijkheid bieden om programma's stil te
zetten, creëert C-z een subshell onder Emacs om je zo in de
gelegenheid te stellen andere programma's uit te voeren en daarna weer
in Emacs terug te keren; Emacs wordt dus niet werkelijk verlaten. In
dit geval is het shellcommando "exit" de normale manier om de subshell
te verlaten en in Emacs terug te keren.
Het moment om C-x C-c te gebruiken is wanneer je uit gaat loggen. Het
is ook het juiste commando om Emacs te beëindigen wanneer Emacs
opgestart was door een mail-programma of iets dergelijks, aangezien
die misschien niet met een stilgezette Emacs om kunnen gaan. Normaal
gezien is het echter beter Emacs stil te zetten met C-z dan om Emacs
te verlaten, behalve als je uit wilt loggen natuurlijk.
Er bestaan vele C-x commando's. Hier is een lijst van degene die je
nu al kent:
C-x C-f Bezoek bestand
C-x C-s Sla bestand op
C-x s Sla een paar buffers op
C-x C-b Laat bufferlijst zien
C-x b Schakel naar een buffer
C-x C-c Verlaat Emacs
C-x 1 Een enkel venster
C-x u Herstel
Commando-naam-bevelen worden nog minder vaak gebruikt, of alleen onder
bepaalde omstandigheden. Een voorbeeld is het commando
replace-string, dat in de hele tekst een string vervangt door een
andere string ("to replace" betekent "vervangen"). Als je M-x tikt,
toont Emacs onderaan het scherm "M-x" en moet je de naam van het
commando intikken, in dit geval "replace-string". Als je gewoon
"repl s<TAB>" tikt maakt Emacs de naam zelf af. Beëindig het commando
met <Return>.
Het replace-string commando heeft twee argumenten nodig: de string die
vervangen moet worden en de string waarmee die vervangen moet worden.
Je sluit elk argument af met <Return>.
>> Plaats de cursor op de lege regel twee regels onder deze regel.
Tik dan M-x repl s<Return>gewijzigd<Return>veranderd<Return>.
Zie hoe deze regel daardoor gewijzigd is. Je hebt elk voorkomen
van het woord g-e-w-i-j-z-i-g-d vervangen door "veranderd"; te
beginnen op de plek waar de cursor staat.
* AUTOMATISCH BEWAREN
---------------------
Als je een bestand veranderd hebt maar het nog niet opgeslagen hebt,
zouden de veranderingen verloren kunnen gaan als het systeem zou
hangen of herstarten. Om je hiertegen te beschermen, slaat Emacs
regelmatig de veranderde tekst automatisch op. De naam van het
bestand waarin de tekst automatisch wordt opgeslagen begint en eindigt
met een #. Bijvoorbeeld, als je het bestand "hello.c" aan het
bewerken bent, wordt de tekst automatisch opgeslagen in een bestand
dat "#hello.c#" heet. Zodra je het bestand werkelijk opslaat, wordt
het automatisch opgeslagen bestand verwijderd.
Als de computer crasht, kan je de automatisch opgeslagen tekst
terugkrijgen door het bestand gewoon te bezoeken (het originele
bestand, niet het automatisch opgeslagen), gevolgd door M-x
recover-file<Return>. Als Emacs vraagt om bevestiging, antwoord dan
met yes<Return> en de automatisch opgeslagen informatie wordt
teruggehaald.
* ECHO-GEBIED
-------------
Als je een commando langzaam intikt, toont Emacs de tekens aan de
onderkant van het scherm in een deel dat het "echo-gebied" genoemd
wordt. Dit gebied omvat de onderste regel van het scherm.
* MODUS-REGEL
-------------
De regel direct boven het echo gebied heet de "modusregel". De
modusregel ziet er ongeveer zo uit:
-1:** TUTORIAL.nl 62% L763 (Fundamental)-----------------------
Deze regel geeft interessante informatie over Emacs en de tekst die je
aan het bewerken bent.
Je weet al wat de bestandsnaam betekent: het is de naam van het
bestand dat je bezoekt. NN% geeft je huidige positie in de tekst aan:
NN procent van de tekst bevindt zich boven het scherm. Als het
bestand vanaf het begin op het scherm staat, staat er "Top" in plaats
van " 0%". Als het laatste stuk tekst op het scherm staat, zal er
"Bot" staan (van "bottom", "onderkant" in het Nederlands). Als de
tekst zo klein is dat hij volledig op het scherm past staat "All" in
de modus-regel.
De L gevolgd door een getal geeft het nummer van de regel waarin punt
zich bevindt.
De sterretjes aan het begin betekenen dat je de tekst veranderd hebt.
Direct na het bezoeken of opslaan staan er gewoon streepjes.
In de modusregel staat tussen haakjes in welke modus je aan het werken
bent. De standaardmodus is de "Fundamental" modus, die je nu gebruikt
("fundamental" is "basis" in het Nederlands). Een dergelijke modus
heet een hoofdmodus ("major mode" in het Engels).
Emacs heeft verschillende hoofdmodi. Sommige daarvan zijn bedoeld
voor het bewerken van verschillende talen of soorten tekst, zoals
bijvoorbeeld Lisp modus, Text modus, etc. Op elk moment is er altijd
precies een modus actief, en de naam daarvan staat in de modusregel,
op de plaats waar nu "Fundamental" staat.
Elke hoofdmodus zorgt ervoor dat sommige commando's zich anders
gedragen. Zo bestaat er een commando om een commentaar in een
programma te tikken, en aangezien elke programmeertaal een ander idee
heeft over hoe commentaar eruit moet zien, moet elke hoofdmodus op een
andere manier het commentaar beginnen. Elke hoofdmodus is de naam van
een uitgebreid commando, en met dat commando schakel je om naar die
hoofdmodus. Zo is bijvoorbeeld M-x fundamental-mode het commando om
naar de basismodus om te schakelen.
Als je Nederlandse of Engelse tekst wil gaan bewerken, zoals
bijvoorbeeld dit bestand, kan je beter "Text mode" gebruiken, de modus
om tekst in een gewone taal te bewerken:
>> Tik M-x text-mode<Return>.
Wees gerust; geen van de commando's die je geleerd hebt zorgen voor
grondige veranderingen in Emacs. Een van de dingen die je kan merken,
is bijvoorbeeld dat M-f en M-b nu apostrofs als onderdeel van een
woord beschouwen. In de vorige modus (Fundamental) behandelen M-f en
M-b de apostrof als ruimte tussen twee woorden.
Het is gebruikelijk dat hoofdmodi dergelijke subtiele verschillen
hebben. De meeste commando's doen dus min of meer hetzelfde in elke
hoofdmodus.
Met het commando C-h m kan je de documentatie over de huidige
hoofdmodus lezen.
>> Gebruik C-u C-v een paar keer om deze zin in de buurt van de
bovenkant van het scherm te krijgen.
>> Tik C-h m om te zien hoe de tekstmodus verschilt van de basismodus.
>> Tik C-x 1 om de documentatie van het scherm te verwijderen.
Hoofdmodi heten zo omdat er ook bijmodi zijn. Bijmodi zijn geen
alternatieven voor hoofdmodi; het zijn slechts kleine aanpassingen
daarvan. Elke bijmodus kan aan- of uitgezet worden, onafhankelijk van
andere bijmodi en onafhankelijk van de hoofdmodus. Het is dus
mogelijk geen bijmodi, één bijmodus of een willekeurige combinatie van
bijmodi te gebruiken.
Een nuttige bijmodus voor het bewerken van tekst in een natuurlijke
taal, zoals het Nederlands, is Auto Fill modus ("auto fill" betekent
automatisch uitvullen). Wanneer deze modus aanstaat, breekt Emacs
automatisch een regel tussen twee woorden af als de regel te lang
wordt.
Je kan Auto Fill modus aanzetten met M-x auto-fill-mode<Return>. Als
deze modus al aanstaat, kan je hem uitzetten met M-x
auto-fill-mode<Return>. Als de modus uitstaat, zet dit commando de
modus aan; als ze aanstaat, zet dit commando de modus uit. We zeggen
dat het commando de modus "schakelt" ("to toggle" in het Engels).
>> Tik nu M-x auto-fill-mode<Return>. Tik nu vele malen "asdf " op
een regel zodat je kan zien dat de regel in tweeën gesplitst wordt.
Er moeten wel spaties tussen de woorden staan, omdat de Auto Fill
modus de regel alleen op spaties breekt.
De rechterkantlijn staat meestal op 70 tekens, maar die kan je
veranderen met het C-x f commando. Dit commando accepteert een
numeriek argument om de gewenste kantlijn te verkrijgen.
>> Tik C-x f met 20 als argument (C-u 20 C-x f).
Tik wat tekst en zie dat Emacs de regels afbreekt bij 20 tekens.
Zet de kantlijn nu terug op 70, dus met met C-u 70 C-x f.
Als je de tekst midden in een regel verandert vult Auto Fill modus de
regel niet opnieuw.
Om een alinea opnieuw te vullen, tik M-q (META-q) terwijl de cursor in
de alinea staat.
>> Plaats de cursor in de voorgaande alinea en tik M-q.
* ZOEKEN
--------
Emacs kan tekenreeksen ("strings") zoeken, zowel volgend op de
cursorpositie, als eraan voorafgaand. Het zoeken naar een string
verplaatst de cursor naar de volgende plaats waar de gezochte string
voorkomt.
Het zoekcommando van Emacs is anders dan de zoekcommando's van de
meeste tekstverwerkers; het zoekt incrementeel. Dit betekent dat het
zoeken gebeurt tijdens het intikken van de gezochte string.
Het commando om het voorwaarts zoeken te starten is C-s (met de "s"
van "to search", zoeken); C-r start het achterwaarts zoeken (met de
"r" van "reverse" of achteruit). MAAR WACHT! Probeer ze nu nog niet.
Als je C-s tikt verschijnt de string "I-search" in het echo-gebied.
Dit betekent dat Emacs bezig is met een "incremental search"
(incrementele zoekopdracht) en wacht op het intikken van de
zoekstring. <Return> beëindigt het zoeken.
>> Tik nu C-s om het zoeken te starten. Tik nu, LANGZAAM, één letter
per keer, het woord "cursor", met een pauze na elke letter zodat je
kan zien wat er met de cursor gebeurt. Je hebt nu eenmaal naar het
woord "cursor" gezocht.
>> Tik nogmaals C-s, om naar het volgende voorkomen van het woord
"cursor" te zoeken.
>> Tik nu viermaal <Delback> en let op de cursorbewegingen.
>> Tik <Return> om het zoeken te beëindigen.
Zag je wat er gebeurde? Tijdens incrementeel zoeken probeert Emacs
naar de eerste plek te gaan waar de string staat die je tot dan toe
getikt hebt. Om naar de volgende plek te gaan, tik je C-s nog een
keer. Als er geen volgende plek is gevonden, biept Emacs en vertelt
je dat de zoekopdracht niets gevonden heeft ("failing" in het Engels).
C-g zou het zoeken ook afbreken.
OPMERKING: Op sommige systemen gebeurt er helemaal niets als je C-s
tikt, en daarna ook niets meer. Dit komt door een eigenschap van de
machine waarop je werkt die te maken heeft met "flow control". Met
C-s stopt de "flow" en komt niets meer van wat je tikt bij Emacs
terecht. Om deze situatie te herstellen, tik C-q. Lees daarna het
hoofdstuk "Spontaneous Entry to Incremental Search" in het
Emacs-handboek over hoe je moet omgaan met deze situatie.
Als je tijdens incrementeel zoeken <Delback> tikt, zal je zien dat het
laatste teken dat je aan de zoekstring toegevoegd hebt, weggehaald
wordt en dat het zoeken teruggaat naar de voorgaande plaats. Als je
bijvoorbeeld begint met zoeken en je tikt een "c", dan ga je naar de
plaats waar de "c" het eerst voorkomt. Tik je vervolgens een "u", dan
gaat de cursor naar de plaats waar de string "cu" het eerst voorkomt.
Als je nu <Delback> tikt, dan wordt de "u" van de zoekstring
afgehaald, en gaat de cursor terug naar de plaats waar hij stond
voordat je de "u" intikte, namelijk daar waar "c" het eerst voorkwam.
Als je tijdens een zoekoperatie een CONTROL- of META-teken intikt, dan
wordt het zoeken beëindigd. Er zijn een paar uitzonderingen, namelijk
tekens die tijdens zoeken een speciale betekenis hebben, zoals C-s en
C-r.
Met C-s begin je te zoeken naar de plaats waar de zoekstring voor het
eerst voorkomt NA de huidige cursorpositie. Als je iets wilt zoeken
dat eerder in de tekst moet voorkomen, gebruik dan C-r in plaats van
C-s. Alles wat we nu weten over C-s geldt ook voor C-r, alleen is de
zoekrichting omgedraaid.
* MEERDERE VENSTERS
-------------------
Een van Emacs' aardige eigenschappen is dat je meerdere vensters op
het scherm kan laten zien.
>> Zet de cursor op deze regel en tik C-u 0 C-l.
>> Tik C-x 2 om het scherm in twee vensters op te splitsen.
Beide vensters laten deze inleiding zien; de cursor blijft in het
bovenste venster.
>> Tik C-M-v om de tekst in het onderste venster te verschuiven.
(Als je geen META-toets hebt, tik dan <ESC> C-v.)
>> Tik C-x o (met de o van "other"; "ander" in het Nederlands) om de
cursor naar het andere venster te verplaatsen.
>> Verschuif de tekst in het onderste venster, met C-v en M-v.
Zorg ervoor dat je deze inleiding in het bovenste venster leest.
>> Tik weer C-x o om de cursor weer in het bovenste venster te zetten.
De cursor staat weer precies op de plaats waar hij stond toen je
het venster verliet.
Je kan C-x o blijven gebruiken om van venster naar venster te gaan.
Elk venster heeft zijn eigen cursorpositie; de cursor is altijd enkel
zichtbaar in een daarvan. Alle normale commando's hebben betrekking
op het venster waarin de cursor staat. Dit venster is het
"geselecteerde venster" ("selected window" in het Engels).
Het C-M-v commando is erg nuttig wanneer je tekst aan het bewerken
bent in het ene venster, terwijl je het andere venster als referentie
gebruikt. Je kan de cursor dan altijd in het venster houden waarin je
bezig bent, terwijl je met C-M-v door de tekst in het andere venster
loopt.
C-M-v is een voorbeeld van een CONTROL-META teken. Als je een echte
META-toets hebt kan je C-M-v intikken door zowel CONTROL als META
ingedrukt te houden terwijl je v tikt. Het maakt niet uit in welke
volgorde je CONTROL en META indrukt; het gaat erom welke toetsen
ingedrukt zijn terwijl je tikt.
Als je geen echte META-toets hebt kan je <ESC> gebruiken; de volgorde
is dan wel belangrijk. Je moet dan eerst <ESC> tikken, gevolgd door
CONTROL-v; CONTROL-<ESC> v zal niet werken. Dit komt doordat <ESC>
zelf een teken is, terwijl CONTROL en META dat niet zijn.
>> Tik C-x 1 (in het bovenste venster) om het onderste venster te
laten verdwijnen.
(Als je C-x 1 tikt in het onderste venster laat je het bovenste
verdwijnen. C-x 1 betekent zoveel als "ik wil maar 1 venster, en wel
dat venster waar de cursor nu in staat.")
Je hoeft niet dezelfde buffer in beide vensters te hebben. Wanneer je
C-x C-f gebruikt om een bestand in één van de vensters te bezoeken,
zal het andere venster niet veranderen. Je kunt de vensters
onafhankelijk van elkaar gebruiken om bestanden te bezoeken.
Hier is nog een manier om twee venster te krijgen die elk een andere
tekst laten zien:
>> Tik C-x 4 C-f gevolgd door de naam van een van je bestanden,
gevolgd door <Return>. Het opgegeven bestand zal in het onderste
venster verschijnen, en de cursor zal in dat venster staan.
>> Tik C-x o om terug naar het bovenste venster te gaan, en C-x 1 om
het onderste venster te laten verdwijnen.
* RECURSIEVE BEWERKINGSNIVEAUS
------------------------------
Soms kom je in Emacs in een recursief bewerkingsniveau terecht
(Engels: "recursive editing level"). Dit is te zien in de modusregel
aan de vierkante haken die om de haakjes van de naam van de hoofdmodus
staan. Dan staat er bijvoorbeeld [(Fundamental)] in plaats van
(Fundamental).
Tik <ESC> <ESC> <ESC> Om uit een recursief bewerkingsniveau te komen.
Dit is een algemeen "ontsnappingscommando". Je kan het ook gebruiken
om extra vensters te verwijderen of om uit de minibuffer te komen.
>> Tik M-x om in een minibuffer te komen, en tik dan <ESC> <ESC> <ESC>
om er weer uit te komen.
C-g is niet bruikbaar om uit een recursief bewerkingsniveau te komen.
De reden hiervoor is dat C-g gebruikt wordt om commando's af te breken
BINNEN het recursieve bewerkingsniveau.
* MEER INFORMATIE
-----------------
We hebben geprobeerd je met deze inleiding precies genoeg informatie
te leveren om met Emacs te beginnen werken. De mogelijkheden van
Emacs zijn zo groot dat het onmogelijk is nu alles uit te leggen. Het
kan zijn dat je meer over Emacs wil leren omdat het zoveel nuttige
mogelijkheden heeft. Emacs heeft commando's om documentatie te laten
zien over Emacs commando's. Deze "helpcommando's" beginnen allemaal
met C-h: "het Hulpteken".
Om hulp te krijgen tik je C-h, gevolgd door een teken om aan te duiden
welke hulp je wilt. Als je het echt niet meer weet, tik C-h ? en
Emacs vertelt welke hulp het allemaal te bieden heeft. Als je C-h
hebt getikt maar van gedachten veranderd bent, tik je gewoon C-g om
het af te breken.
(In sommige installaties wordt de betekenis van C-h veranderd. Dat is
geen goed idee, zeker als die verandering op alle gebruikers invloed
heeft, en is een geldige reden om je beklag te doen bij de
systeembeheerder of de helpdesk. Als C-h intussen niet een bericht
onderaan het scherm laat zien over mogelijke hulp, probeer dan de F1
toets (functietoets 1) of gebruik M-x help <Return>.)
De eenvoudigste hulp is C-h c. Tik C-h, het teken "c" en een teken of
uitgebreid commando, en Emacs laat een zeer korte beschrijving van het
commando zien.
>> Tik C-h c C-p.
De beschrijving die getoond wordt, zou zoiets moeten zijn als:
C-p runs the command previous-line
(Nederlands: C-p voert het commando previous-line uit.)
Dit commando vertelt je "de naam van de functie". Functies worden
vooral gebruikt om Emacs uit te breiden of aan de wensen van de
gebruiker aan te passen. Aangezien functienamen gekozen zijn om aan
te geven wat de functie doet, zijn ze ook geschikt als heel korte
documentatie; genoeg om je te herinneren aan wat de commando's die je
al geleerd hebt betekenen.
Uitgebreide commando's zoals C-x C-s en (als je geen META-, EDIT- of
ALT-toets hebt) <ESC> v kunnen ook getikt worden na C-h c.
Om meer informatie over een commando te krijgen, tik C-h k in plaats
van C-h c.
>> Tik C-h k C-p.
Dit laat de documentatie van de functie, inclusief de naam van de
functie, in een apart venster zien. Als je klaar bent met lezen, tik
C-x 1 om van dat venster af te komen. Je hoeft dat natuurlijk niet
meteen te doen. Je kan ook eerst wat anders doen voordat je C-x 1
tikt.
Hier zijn nog wat nuttige mogelijkheden van C-h:
C-h f Beschrijf een functie. Je moet de naam van de functie
intikken.
>> Tik C-h f previous-line<Return>
Dit laat alle informatie zien die Emacs heeft over de functie die
het C-p commando implementeert.
Een vergelijkbaar commando C-h v toont de documentatie van variabelen
die je kunt instellen om het gedrag van Emacs naar wens aan te passen.
Het commando vraagt je om de naam van een variabele.
C-h a Commando Apropos. Tik een woord in en Emacs zal een
lijst van alle commando's laten zien waarin dat woord
voorkomt. Al deze commando's kunnen aangeroepen
worden met M-x. Bij sommige commando's staat met
welke tekens dit commando direct uitgevoerd kan
worden.
>> Tik C-h a file<Return>.
Dit laat in een ander venster alle M-x commando's zien met "file" in
hun naam. Je zal teken-commando's zien als C-x C-f naast de
overeenkomende commandonaam zoals find-file.
>> Tik C-M-v herhaaldelijk om de tekst in het hulpvenster te
verschuiven.
>> Tik C-x 1 om het hulpvenster te verwijderen.
C-h i Lees de online handleidingen (ook wel Info genoemd).
Dit commando zet je in een speciale buffer genaamd
"*info*" waar je online handleidingen kunt lezen van
software die op je computer is geïnstalleerd. Tik m
Emacs <Return> om de handleiding van Emacs te lezen.
Als je nog nooit Info hebt gebruikt dan kun je ?
tikken zodat Emacs je een rondleiding geeft langs de
mogelijkheden van het Info systeem. Wanneer je klaar
bent met deze Emacs-inleiding dan kun je de
Emacs-Info-handleiding gebruiken als je primaire bron
van informatie.
* MEER MOGELIJKHEDEN
--------------------
Je kunt meer over Emacs leren door haar handleiding te lezen. Deze is
zowel als boek als in elektronische vorm via Info beschikbaar (gebruik
het Help menu of tik <F10> h r). Kijk bijvoorbeeld eens naar
"completion", hetgeen minder tikwerk oplevert, of "dired" wat het
omgaan met bestanden vereenvoudigt.
"Completion" (of "afmaken", in het Nederlands) is een manier om
onnodig tikwerk te voorkomen. Als je bijvoorbeeld naar de
"*Messages*" buffer wilt omschakelen, dan kun je C-x b *M<Tab> tikken
en dan zal Emacs de rest van de buffernaam invullen voor zover dit
mogelijk is. Completion staat beschreven in de node "Completion" in
de Emacs-Info-handleiding.
"Dired" toont je een lijst van bestanden in een directory, waarmee je
gemakkelijk bestanden kunt bezoeken, van naam kunt veranderen, kunt
wissen, of andere acties op uit kunt voeren. Informatie over Dired
kun je vinden in de node "Dired" van de Emacs-Info-handleiding.
* CONCLUSIE
-----------
Denk eraan dat je met C-x C-c Emacs permanent verlaat. Om tijdelijk
een shell te krijgen en daarna weer in Emacs terug te komen, tik je
C-z.
De bedoeling van deze inleiding is dat ze begrijpelijk is voor alle
nieuwe Emacs-gebruikers. Als je dus iets onduidelijks bent
tegengekomen, blijf dan niet zitten en maak jezelf geen verwijten.
Doe je beklag!
* KOPIËREN
-----------
(De Engelse versie van) deze inleiding is voorafgegaan door een lange
reeks van Emacs-inleidingen, die begon met de inleiding die Stuart
Cracraft schreef voor de originele Emacs. Deze Nederlandse vertaling
is gemaakt door Pieter Schoenmakers <tiggr@ics.ele.tue.nl> op basis
van de GNU Emacs 20.2 TUTORIAL, en nagezien en verbeterd door Frederik
Fouvry en Lute Kamstra.
(Wat nu volgt is een vertaling naar het Nederlands van de condities
voor gebruik en verspreiding van deze inleiding. Deze vertaling is
niet gecontroleerd door een jurist. Er kunnen derhalve geen rechten
aan de vertaling worden ontleend, en de vertaling wordt gevolgd door
het Engelse origineel.)
Deze versie van de inleiding valt onder copyright, net als GNU Emacs.
Je mag deze inleiding verspreiden onder bepaalde voorwaarden:
Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004,
2005, 2006, 2007 Free Software Foundation, Inc.
Iedereen mag letterlijke kopieën van dit document, zowel ontvangen
als verspreiden, op elk medium, vooropgesteld dat de
copyrightvermelding en de toestemmingsmelding niet veranderd worden
en dat de verspreider aan de ontvanger dezelfde distributierechten
verleent als aan hem verleend worden door deze melding.
Toestemming wordt verleend om veranderde versies van dit document,
of delen daarvan, te verspreiden, onder bovenstaande voorwaarden,
vooropgesteld dat ze ook duidelijk vermelden wie als laatste
veranderingen aangebracht heeft.
De condities voor het kopiëren van Emacs zelf zijn ingewikkelder dan
dit, maar gebaseerd op dezelfde gedachte. Lees het bestand COPYING en
geef vervolgens kopieën van Emacs aan al je vrienden. Help bij het
uitroeien van softwarebeschermingspolitiek ("eigendom") door vrije
software te gebruiken, te schrijven en te delen!
(Engels origineel van de copyrightmelding en condities:
This version of the tutorial, like GNU Emacs, is copyrighted, and
comes with permission to distribute copies on certain conditions:
Copyright (C) 1985, 1996, 1997, 2001, 2002, 2003, 2004,
2005, 2006, 2007 Free Software Foundation, Inc.
Permission is granted to anyone to make or distribute verbatim
copies of this document as received, in any medium, provided that
the copyright notice and permission notice are preserved, and that
the distributor grants the recipient permission for further
redistribution as permitted by this notice.
Permission is granted to distribute modified versions of this
document, or of portions of it, under the above conditions,
provided also that they carry prominent notices stating who last
altered them.
The conditions for copying Emacs itself are more complex, but in the
same spirit. Please read the file COPYING and then do give copies of
GNU Emacs to your friends. Help stamp out software obstructionism
("ownership") by using, writing, and sharing free software!)
;;; Local Variables:
;;; coding: latin-1
;;; End:
;;; arch-tag: 3399e308-e605-4125-8fbb-b2fe91ac3149