\startonderdeel co-nl-23

\projekt manual
\produkt context

\hoofdstuk[opmerkingen]{Opmerkingen}

\paragraaf{Haakjes en alinea's}
\index{problemen}
\index{fouten}

Vaak zijn fouten het gevolg van het vergeten van een of meer
haakjes. Een aantal commando's verwacht ook expliciet een
overgang naar een nieuwe alinea (\type {\par} of een lege
regel). Gebeurt dit niet dan kunnen meldingen in de trant
van \type {... end of file ...} verschijnen. Een ruime
layout en een \type {\par} in geval van twijfel, voorkomt
veel ellende. 

Ook wanneer lege regels om een of andere reden niet mogelijk
zijn, bijvoorbeeld in de definitie van macro's, kan
natuurlijk \type {\par} of, wanneer dat niet mogelijk is,
\type {\endgraf} worden gebruikt. 

Commando's als \type {\plaatstabel} verwachten als laatste
argument de tabel zelf. Eigenlijk verwacht het commando de
inhoud van een box. Normaal gesproken staat deze inhoud
tussen accoladen. Het commando \type {\starttabel} genereert
echter een \type {\bgroup} en opent zo de box. Het commando
\type {\stoptabel} sluit de box af. Als men in plaats van een 
tabel of figuur dus iets anders meegeeft, dan dient men te 
groeperen! 

Sommige commando's vangen dit op, bijvoorbeeld
\type {\roteer} en \type {\achtergrond}. Deze kan men dus
zonder problemen vlak voor \type {\starttabel} zetten. 

Door het ruim opzetten van de \ASCII||file voorkomt een hoop
fouten. Verder raden we aan een tekstverwerker te gebruiken
die op \TEX\ is afgestemd, en die bijvoorbeeld \TEX\
commando's en speciale karakters in kleur weergeeft. Zo'n
tekstverwerker biedt vaak ook een basale controle op het
gebruik van haakjes. 

\paragraaf{Ongewenste witruimte}
\index{witruimte}

De verschillende commando's kunnen inmiddels vrij goed
omgaan met witruimtes tussen paragrafen en tekstblokken. Zo
zal, als twee \type {\blanko}'s elkaar volgen, alleen de
grootste sprong gelden. Ook zullen een \type {\blanko} en
\type {\witruimte} zelden interfereren. Enkele gevallen van
interferentie zijn vooralsnog niet eenvoudig \citeer {weg te
programmeren}. 

Tussen de commando's \type {\hoofdstuk}, \type {\paragraaf}
enz. mogen bijvoorbeeld geen andere commando's voorkomen.
Plaats daarom een verwijzing naar de index altijd na de
laatste kop in een serie, bijvoorbeeld: 

\startvoorbeeld
\starttypen
\hoofdstuk{Iglo's}

\paragraaf{Vorstbestendigheid}

\subparagraaf{Modellen}

\index{vorstbestendigheid+iglo's}
\stoptypen
\stopvoorbeeld

\paragraaf{Gewenste witruimte}
\index{witruimte}

Als we een wat grotere letter (\type {\tf<<n>>}, \type
{\bf<<n>>}, \type {\sl<<n>>}\/ enz.) gebruiken in de {\em
lopende tekst}, dan kunnen de interlinie, witruimte en
blanko sprong worden aangepast met: 

\startvoorbeeld
\starttypen
\stelinterliniein
\stelblankoin
\stelwitruimtein
\stoptypen
\stopvoorbeeld

Er worden dus geen argumenten meegegeven. Wanhoop niet maar
probeer deze commando's rustig uit. 

Een echt paardenmiddel is de plain \TEX\ macro \type
{\leavevmode}. Als men geen of onvoldoende witruimte krijgt,
terwijl men dit wel verwacht, dan wil dit commando nog wel
eens helpen, maar we waarschuwen hier wel voor vervelende
neveneffecten. {\em Gebruik deze macro alleen in het
uiterste geval!} 

Verder is er de \CONTEXT\ macro \type {\dontleavehmode}
waarmee men soms ongewenste regelovergangen voorkomen. Dit is
typisch een voorbeeld van een macro die in andere macros 
wordt gebruikt. 

\paragraaf{Inspringen} 
\index{inspringen} 

Als we een roman zetten met ingesprongen marges, zal er
zelden wat mis gaan. Bij wat meer gecompliceerde documenten
is wat meer handwerk nodig. Hoewel \CONTEXT\ erg zijn best
doet inspringen goed te regelen, zal het soms nodig zijn de
commando's \type {\indentation} en \type {\noindentation} te
gebruiken. De auteur zelf weet natuurlijk het best waar een
nieuwe alinea begint. 

\paragraaf{Uitlijnen}
\index{uitlijnen}
\macro{\tex{indentation}}
\macro{\tex{noindentation}}

Als onverhoopt niet wordt ingesprongen, iets wat in een
aantal gevallen voorkomt als een alinea begint met een
commando\voetnoot {Dit zit in \TEX\ gebakken.}, dan moet het
commando in de betreffende alinea worden voorafgegaan door
\type {\indentation}. 

Hoewel \TEX\ gebruik maakt van zeer geavanceerde algoritmes
voor uitlijnen en afbreken, kan men soms te veel vragen. In
dat geval kan men meer rek toestaan tussen woorden door
\type {\emergencystretch} in te stellen. De onderstaande
instelling is meestal afdoende. 

\startvoorbeeld
\starttypen
\emergencystretch=\korpsgrootte 
\stoptypen
\stopvoorbeeld

Veel beter is het op document niveau de tolerantie in te 
stellen op \type {soepel} of \type {zeersoepel}: 

\starttypen
\steltolerantiein[soepel]
\stoptypen

\paragraaf{Instellingen}

Het verdient aanbeveling instellingen zo overzichtelijk
mogelijk in \ASCII\ vorm te geven. Overigens kan in de
meeste gevallen worden volstaan met de standaard
instellingen. Een door de auteur vaak gebruikte wijze van 
weergeven is:

\starttypen
\stelkopin
  [paragraaf]
  [tekst=\tfc,
   nummer=\tfc]

\stelhoofdtekstenin
  [hoofdstuk]
  []
\stoptypen

Het gaat er niet zozeer om dat de bovenstaande vorm wordt 
gekozen, maar eerder dat er systeem zit in de manier waarop 
commando's worden gehanteerd. 

Verder kan het gebruik van buffers de onderhoudbaarheid van 
een tekst vergroten en de kans op fouten verminderen: 

\starttypen
\startbuffer
\starttabel[|c|c|c|]
   ...
\stoptabel
\stopbuffer

\plaatstabel
  [hier][tab:snelheden]
  {De maximumsnelheden op de Nederlandse wegen.}
  {\haalbuffer}
\stoptypen

Alsmen de buffers namen geeft, kan men ze zelfs opnemen in 
een aparte file of bij elkaar plaatsen bovenaande file.

\paragraaf{Woeste meldingen}

Als de tekst in hoofd- en voetregels commando's bevat, dan
moet voor deze commando's soms \type {\geentest} worden
gezet. Dit is een gevolg van het feit dat getest wordt op
een trefwoord, zoals \type {datum} of \type {hoofdstuk}. 

\startvoorbeeld
\starttypen
\stelvoettekstenin
  [hoofdstuk]               
  [copyright: \geentest\onslogo -- \geentest{\huidigedatum}]
\stoptypen
\stopvoorbeeld 

Meestal is dit niet nodig bij \CONTEXT||commando's. Deze
constructie hoeft dan ook alleen te worden gebruikt als het
mis gaat. 

\paragraaf{Waarschuwing}

Sommige commando's moeten nog worden geperfectioneerd,
bijvoorbeeld de commando's voor het plaatsen van blokken
(figuren, tabellen enz.). In volgende versies kunnen dus
kleine verschillen optreden in het zetwerk.

\paragraaf{Spaties}

Soms worden ongewenst spaties tussengevoegd. Dit kan worden
voorkomen met het \TEX||commando \type {\ignorespaces}. Een
eerder geplaatste spatie kan vaak worden verwijderd met
\type {\unskip}. 

\stoponderdeel
