summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/ntgclass/rapdoc.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/ntgclass/rapdoc.tex')
-rw-r--r--macros/latex/contrib/ntgclass/rapdoc.tex710
1 files changed, 710 insertions, 0 deletions
diff --git a/macros/latex/contrib/ntgclass/rapdoc.tex b/macros/latex/contrib/ntgclass/rapdoc.tex
new file mode 100644
index 0000000000..c241b5f665
--- /dev/null
+++ b/macros/latex/contrib/ntgclass/rapdoc.tex
@@ -0,0 +1,710 @@
+% \iffalse meta-comment
+%
+% % \iffalse meta-comment
+% %
+% % Copyright (C) 1990-2004 Nederlandstalige TeX Gebruikersgroep.
+% % All rights reserved.
+% %
+% % This file is part of the NTG document classes distribution
+% % ----------------------------------------------------------
+% %
+% % It may be distributed and/or modified under the
+% % conditions of the LaTeX Project Public License, either version 1.3
+% % of this license or (at your option) any later version.
+% % The latest version of this license is in
+% % http://www.latex-project.org/lppl.txt
+% % and version 1.3 or later is part of all distributions of LaTeX
+% % version 2003/12/01 or later.
+% %
+% % This work has the LPPL maintenance status "maintained".
+% %
+% % The Current Maintainer of this work is Johannes Braams.
+% %
+% % The list of all files belonging to the NTG document classes
+% % distribution is given in the file `manifest.txt.
+% %
+% % The list of derived (unpacked) files belonging to the distribution
+% % and covered by LPPL is defined by the unpacking scripts (with
+% % extension .ins) which are part of the distribution.
+% % \fi
+% \fi
+\documentclass[oldtoc,a4paper,10pt]{rapport3}
+\usepackage[dutch]{babel}
+
+
+\begin{document}
+\date{3 september 1989 / 3 juni 1994}
+\title{Documentstijlen RAPPORT$x$\\
+ Verantwoording}
+\author{Victor Eijkhout}
+\maketitle
+
+\begin{abstract}
+ Dit is de verantwoording voor de documentstijlen `Rapport$x$'. Deze
+ stijlen zijn bedoeld als een mogelijke vervanging van de stijl
+ `Report'. In dit verhaal zijn beschreven
+\begin{enumerate}
+\item de redenen waarom bepaalde veranderingen zijn aangebracht;
+\item de parameters en commando's die op de veranderingen betrekking
+ hebben; en
+\item de wijze waarop de veranderingen zijn ge"implementeerd.
+\end{enumerate}
+Tegelijk is dit document een uitprobeerobject voor de nieuwe
+stijlen\footnote{De hoeveelheid gebruikte \LaTeX-constructies is
+ derhalve aan de ruime kant. De lezer wordt vriendelijk gevraagd zich
+ hieraan niet te ergeren.}.
+\end{abstract}
+
+\tableofcontents
+\listoftables
+\listoffigures
+
+\part{Algemeen}
+
+\chapter{Verantwoording}
+
+De documentstijlen `Rapport$x$' zijn bedoeld als verbetering van de
+standaard \LaTeX-document\-stijl `report'. De meeste macros zijn
+derhalve modificaties van constructies uit `report.sty' of
+`latex.tex'. Ook zijn deze stijlen te beschouwen als opwerking van
+`Artikel1' en `Artikel2' (`Article'-compatibel) tot `Report'-status.
+
+Bij het ontwerpen van de opmaak heb ik het advies van Inge
+Eijkhout~\cite{Inge} dat ik kreeg bij het ontwerpen van de `Artikel1'
+stijl onverminderd kunnen gebruiken. Evenzo vermeld ik wederom de
+`Tekstwijzer'~\cite{Treebus} van Karel Treebus en John Miles'
+`Ontwerpen voor Desktop Publishing'~\cite{Miles}. Voor het ontwerp
+van het zogenaamde `voorwerk' ben ik te rade gegaan bij Stanley
+Morison~\cite{Morison}. Wat er fout is aan deze stijlen blijft
+natuurlijk voor mijn rekening komen.
+
+
+\section{Overzicht}
+
+De documentstijlen `Rapport1' en `Rapport2' zijn geheel compatibel met
+`report': er zijn geen commando's toegevoegd of weggelaten. De
+veranderingen ten opzichte van `report' betreffen enkel de opmaak. In
+het bijzonder is er gesleuteld aan:
+\begin{enumerate}
+\item witregels rond koppen van secties, subsecties en subsubsecties
+ (van nu af aan `sectiekoppen' genoemd),
+\item verdere veranderingen aan de opmaak van deze koppen,
+\item de hoeveelheid inspringing bij lijststructuren (gegenereerd met
+ het \LaTeX\ \verb.\@list. commando), in het bijzonder `itemize',
+ `enumerate', en (specifiek voor `report') `description', en
+\item verdere opmaak van lijststructuren,
+\item verdere opmaak van sectiekoppen, en
+\item de inhoudsopgave.
+\end{enumerate}
+Over het algemeen is het de bedoeling geweest een strakke opmaak te
+krijgen (de standaard stijlen van \LaTeX\ `zwemmen' over de pagina).
+
+
+
+\chapter{Exportkwaliteit documentstijlen}
+
+De documentstijlen `Rapport$x$' kunnen zowel gebruik maken van de
+stijloptie `Dutch' (auteur: Johannes Braams) als van `German' (auteur:
+Hubert Partl), als van elke andere optie die de door Partl in `German'
+gesuggereerde parametrisaties doorvoert. Deze opties zijn een
+reparatie voor het euvel dat de meeste taalspecifieke termen in de
+stijlen van de heer Lamport niet geparametriseerd zijn.
+
+In `Dutch' worden definities uit `Article' en dergelijke overreden
+door geparametriseerde versies\footnote{Een listige truc laat `Dutch'
+ achterhalen door welke stijl hij aangeroepen is; de `Artikel'
+ stijlen zijn een onbekende stijl voor `Dutch'}, die op verschillende
+talen ingesteld kunnen worden. Deze definities hadden natuurlijk al
+in de stijlen van heer Lamport geparametriseerd moeten zijn.
+
+
+De optie `German' is minder drastisch dan `Dutch': deze gaat ervan uit
+dat hij door geparametriseerde stijlbestanden opgeroepen wordt, en zet
+zelf alleen de parameters. De `Artikel' stijlen zijn geparametriseerd
+volgens de suggestie van Partl.
+
+\section{Kanttekeningen}
+De stijl `Dutch' parametriseert onder andere het commando `abstract'.
+Aangezien ik dit commando om opmaaktechnische redenen al herdefinieer,
+kan `Dutch' niet op `Artikel' losgelaten worden alsof het gewoon
+`Article' was. Momenteel is `Artikel' dus een `onbekende
+documentstijl' waar het `Dutch' betreft, en wordt er geen gebruik
+gemaakt van het feit dat een aantal definities zich ook in `Dutch'
+bevinden.
+
+\section{Een steek onder water}
+Hoewel het mij tegen de borst stuit het Engels een voorkeurspositie te
+geven onder de wereldtalen --~zeker in een voor het Nederlands
+bedoelde stijl~-- heb ik besloten de Engelse parameterwaarden uit
+`Dutch' als verstekwaarde in de `Artikel'-stijlen op te nemen. Een
+belangrijk argument hiervoor is dat dit de stijlen geheel gelijk maakt
+aan `Article' op commando\-nivo: zonder extra opties worden er Engelse
+teksten geleverd, en voor Nederlands of Duits in een optiebestand
+nodig.
+
+Een minstens zo belangrijk argument\footnote{mij door Nico Poppelier
+ aan de hand gedaan} hiervoor is dat de `Artikel'-stijlen zo een
+steek onder water naar Leslie Lamport vormen. Ze zeggen als het ware
+`\emph{Look here buster,} zo had het van begin af aan moeten zijn'.
+
+
+\part{Specifiek}
+
+\chapter{Mechanismen; veranderingen in Rapport1}
+
+In de nu volgende subsecties worden de veranderingen ten opzichte van
+de oude artikelstijl besproken in volgorde van oplopende
+moeilijkheidsgraad van implementatie. De algemene mechanismen worden
+besproken, alsmede hun concrete realisatie in~`Rapport1'.
+
+\section{Trivialiteiten}
+
+In de `report'-stijl staat `raggedbottom' aan voor enkelzijdige
+documenten. Dit moet uit. `Frenchspacing' dient altijd aan te staan.
+
+\subsection{Paginanummers}
+De gebruiker kan met \verb.\pagestyle{STIJL}. een stijl van kop- en
+voetregels opgeven. De `Article' stijl definieert `plain'
+(gecentreerde voetregels), en `headings' en `myheadings'
+(asymmetrische kopregels). Als een gebruiker een stijl specificeert,
+resulteert dat in de aanroep van een commando \verb.\ps@STIJL..
+
+Omdat ik paginanummers wil hebben die rechts staan voor enkelzijdige
+documenten, en links/rechts voor tweezijdige documenten heb ik het
+commando \verb.\ps@plain., de verstekwaarde, omgebouwd.
+
+
+\section{Makkelijke veranderingen: witregels}
+
+De \LaTeX\ artikelstijl wordt gekenmerkt door een overmaat aan
+witregels. Hierin is stevig gesnoeid.
+
+\subsection{Witregels rond koppen}
+
+De `report'-stijl maak zowel het wit boven als onder koppen rekbaar.
+Gevoegd bij het feit dat de `natuurlijke lengte' van dit wit al aan de
+ruime kant is, maakt dit het paginabeeld erg los. Witregels moeten
+kleiner worden, en mogen tussen kop en de eerste regel van de tekst
+niet rekbaar zijn. Verder verdient het aanbeveling de witruimte in
+termen van het regeltransport aan te geven.
+
+\subsubsection{Relevante concepten}
+Het wit onder en boven koppen wordt bepaald door parameters 4~en~5 van
+\verb.\@start.\-\verb.section., hetwelk commando in `art1$x$.sty'
+gebruikt wordt om de sectiekopcommando's te defini"eren. Parameter~4
+dient (in ons geval) het negatieve van de gewenste skip te
+specificeren.
+
+\subsubsection{Implementatie van de veranderingen}
+De volgende waarden voor de verticale witruimte zijn gebruikt
+\begin{table}[h]
+ \begin{center}
+ \begin{tabular}{|l|r|r|}
+ \hline
+ \emph{kop} & \emph{wit boven kop}&\emph{wit onder kop}\\
+ \hline
+ section & -2-1+.5 & .5\\
+ subsection & -1-.5+.25 & .25\\
+ subsubsection& -1-.5+.25 & .25\\
+ \hline
+ \end{tabular}
+ \end{center}
+ \caption{Hoeveelheid vertikaal wit in termen van
+ `normalbaselineskip'}
+\end{table}
+(in eerste instantie waren mij hogere waarden gesuggereerd, na
+inspectie bleken deze waarden beter te voldoen).
+
+De hoeveelheid wit boven koppen steekt niet zo nauw. Die eronder wel.
+In het bijzonder is het een merkwaardig idee het wit onder koppen
+rekbaar te hebben. De grootte van dit wit draagt aanzienlijk bij aan
+het ritme van de pagina.
+
+
+
+\noindent Opmerking: Aangezien alle skips in termen van de
+`baselineskip' gegeven worden, kunnen deze definities opgetild worden
+van het optiebestand naar het stijlbestand.
+
+
+\subsection{Witregels rond lijststructuren}
+
+Witregels rond de items van een lijststructuur maken het paginabeeld
+onrustiger, en zijn vaak niet functioneel: een `itemize'-structuur is
+meestal \'e\'en doorlopend betoog waarin witregels ongewenst zijn. Er
+valt iets voor te zeggen rondom `description'-structuren wel witregels
+toe te staan, aangezien de beschrijvende termen in feite een kopje
+vormen.
+
+De eerste tekstregel na een lijststructuur dient niet ingesprongen te
+worden, ongeacht of de gebruiker een regel open gelaten heeft achter
+de lijst (bij voorbeeld om zijn invoer overzichtelijker te maken).
+
+
+\subsubsection{Inventaris van relevante concepten}
+\LaTeX\ bestuurt witregels rond en in lijststructuren met de
+parameters uit figuur~1.
+
+\begin{figure}
+ \begin{center}
+ \begin{tabular}{ll}
+ topsep & ruimte boven een lijst\\
+ partopsep & extra als de lijst een nieuwe paragraaf opent\\
+ itemsep & ruimte tussen items\\
+ parsep & ruimte tussen paragrafen.\\
+ \end{tabular}
+ \end{center}
+ \caption{witregelparameters in lijsten.}
+\end{figure}
+
+
+\noindent Deze parameters worden gezet in `art1$x$.sty' in het
+commando
+\begin{verbatim}
+@list\romannumeral\the\@listdepth
+\end{verbatim}
+hetgeen ge`eval'd wordt in \verb.\@list..
+
+Spaties na een lijststructuur kunnen onderdrukt worden door
+\verb.\if@ignoretrue. toe te voegen aan `enditemize'
+en~`endenumerate'. Het is nog niet duidelijk of voorkomen kan worden
+dat er ingesprongen wordt als de gebruiker een lege regel ingeeft.
+
+
+\subsubsection{Implementatie van de veranderingen}
+Voor de gebruikte lijststructuren (met mogelijke uitzondering van
+`description') dienen al deze parameters nul te zijn.
+
+Opmerking: als voor de `labelwidth' en de `labelsep' een oplossing in
+termen van fontparameters gevonden wordt, kunnen de `listi' en
+dergelijke commando's opgetild worden van het stijloptiebestand naar
+het stijlbestand zelf.
+
+
+\subsection{Verdere witregels}
+Het wit rond lijststructuren wordt bestuurd door de locale `topsep',
+die we boven nul gemaakt hebben, en door de globale `topsep'. Voor
+een strakke opmaak is het wenselijk die nul te maken, echter hiermee
+verdwijnt ook het wit op een plaats waar dat wel wenselijk is: rond
+`verbatim' delen van het document. De oplossing zou kunnen zijn het
+invoegen van een `topsep' in het \verb.\verbatim. commando.
+
+De witregel tussen voetnoten wordt bestuurd door de `footnotesep'. Ik
+zou niet weten waarom die anders dan nul zou moeten zijn.
+
+
+\section{Ook niet moeilijk: fonts}
+
+Er moet wat met fonts gerommeld worden. Voornamelijk moeten ze
+kleiner, en het cursief moet vervangen worden door wat in Nederlandse
+terminologie `gecursiveerd' heet; wij \TeX ies kennen dit als
+`slanted'.
+
+\subsection{Fonts in sectiekoppen}
+
+De fonts gebruikt in tussenkopjes zijn proefondervindelijk tot stand
+gekomen, en waarschijnlijk nog aan mutatie onderhevig. De
+oorspronkelijk idee"en komen uit de `Sober'-stijl van Nico Poppelier.
+Daarna is het `italic' vervangen door `slanted'. Kwestie van smaak.
+Ik hou niet van de~\mbox{\emph{cmti}}. Verder is het klein kapitalen
+font als `\dots~en hopeloos ouderwets'~\cite{Inge} de laan
+uitgestuurd.
+
+\subsection{Theorems en het `emphasize' font}
+
+Om tekst te beklemtonen gebruikt \LaTeX\ het cursieve font
+\texttt{cmti}. Dit vin' ik niet mooi. Binnen de Nederlandse stijlen
+wordt er dus beklemtoond met \texttt{cmsl}. Ook in de `theorem'
+omgevingen is deze vervanging doorgevoerd.
+
+
+\section{Moeilijke veranderingen: eenheidsinspringing}
+
+Ten einde een strakke paginaopmaak te verkrijgen, verdient het
+aanbeveling het aantal (impliciete) kantlijnen tot een minimum te
+beperken. De radicaalste oplossing voor dit probleem bestaat uit
+
+\begin{enumerate}
+\item alle labels in lijststructuren tegen de linkerkantlijn aan te
+ plaatsen (dit is niet zo mooi als er ver ingesprongen wordt),
+\item voetnoten niet te laten inspringen (ingesprongen voetnoten zien
+ er alleen goed uit als ze meer dan \'e\'en regel lang zijn), en
+\item een eenheidsinspringing in te voeren voor
+ \begin{itemize}
+ \item alinea's,
+ \item teksten van koppen op alle nivo's, en
+ \item de ingesprongen tekst in lijststructuren.
+ \end{itemize}
+\end{enumerate}
+Laten we er voorlopig dus vanuit gaan dat er een parameter
+`unitindent' is. De berekening van deze grootheid komt verderop aan de
+orde.
+
+\subsection{Inspring bij lijststructuren}
+
+Labels voor items in een lijst defini"eren gemakkelijk een tweede
+kantlijn. Het kan dus gewenst zijn ze tegen de linkerkantlijn van de
+omringende tekst aan te plaatsen.
+
+\subsubsection{Inventaris van relevante concepten}
+Een lijst op het eerste nivo springt in over `leftmargini'. Het label
+wordt van de tekst gescheiden door `labelsep', en heeft breedte
+`labelwidth', tenzij de natuurlijke breedte groter is. De linkerkant
+van het label staat echter altijd op `labelwidth' plus `labelsep' van
+de ingesprongen kantlijn. De inhoud van het label wordt in de
+omringende box geplaatst door het commando `makelabel'.
+
+Al deze begrippen worden ingevuld in de commando's `list$x$'.
+
+\subsubsection{Implementatie van de veranderingen}
+Het zetten van parameters kan mooi in de `list$x$' commando's
+gebeuren:
+\begin{verbatim}
+\def\@listi{\leftmargin=\unitindent
+ \labelsep=\enspace
+ \labelwidth=\leftmargin
+ \advance\labelwidth by -\labelsep}}
+\end{verbatim}
+Als de `unitindent' door fontparameters bepaald wordt, hoeft deze
+definitie niet meer in het optiebestand te staan, maar kan naar de
+stijldefinitie opgetild worden.
+
+Het veranderen van de definitie van `makelabel' is lastiger: dit moet
+in het tweede argument van `list' gebeuren. We zullen dus `itemize' en
+`enumerate' moeten herdefini"eren met een nieuwe definitie van
+`makelabel'.
+
+Omdat de `unitindent' tamelijk groot uitvalt, heb ik ervoor gekozen
+labels op het eerste nivo rechts aan te lijnen (waardoor ze dus in
+bescheiden mate een nieuwe kantlijn definieren), andere labels lijnen
+links.
+
+
+
+\subsection{Inspring bij koppen}
+
+De plaatsing van de tekst van koppen (achter het sectienummer) is in
+\LaTeX\ ogenschijnlijk willekeurig, en draagt hiermee (zeker als twee
+koppen onder elkaar staan) bij tot een onrustig paginabeeld. Dit kan
+aanmerkelijk verbeterd worden door voor het sectienummer en de erop
+volgende spatie een eenheidsbreedte te nemen.
+
+\subsubsection{Inventaris van relevante concepten}
+In het commando \verb.\@sect. wordt een commando \verb.\@svsec.
+ge`edef't dat het sectie nummer afdrukt, gevolgd door
+`1~em'\footnote{Ter herinnering:
+ \begin{enumerate}
+ \item Er zijn 5 nivo's van sectiekoppen: `section', `subsection',
+ `subsubsection', `paragraph', en `subparagraph'.
+ \item De eerste 3 nivo's zijn genummerd.
+ \item De laatste twee nivo's geven een kop die in de tekst is
+ ingebed.
+ \end{enumerate}}\footnote{Aangezien de definitie van 'em' met het
+ gebruikte font meeverandert, geeft het gebruik van twee of drie
+ koppen onder elkaar een merkwaardig visueel effect.}.
+
+\subsubsection{Implementatie van de veranderingen}
+Er moet een nieuwe versie van \verb.\@sect. komen die een verbeterde
+\verb.\@svsec. bevat:
+\begin{verbatim}
+\edef\@svsec{\hbox to \unitindent
+ {\csname the#1\endcsname\hfil}}
+\end{verbatim}
+In plaats van `unitindent' kan als breedte ook een verdere
+parametrisatie met
+\begin{verbatim}
+\csname #1labelwidth\endcsname
+\end{verbatim}
+gekozen worden. De `unitindent' kan als volgt gegenereerd worden:
+\begin{verbatim}
+\newdimen\unitindent
+{\setbox0\hbox{\normalsize\bf 2.2.2\ }
+ \global\unitindent=\wd0}
+\parindent=\unitindent
+\leftmargini=\unitindent
+\end{verbatim}
+
+Dit is helaas nog niet voldoende. Als een gebruiker erg veel van
+secties en subsecties houdt, kunnen de nummers een grotere breedte dan
+die van `2.2.2' krijgen. Daarom wordt het label iedere keer bij een
+nieuw kopje opgemeten, en zonodig wordt de `unitindent' bijgesteld.
+Bij het afsluiten van het document wordt dan de definitieve waarde
+(die misschien de oude is, en misschien veel meer) naar het
+\texttt{.aux}-bestand geschreven. Dat wil zeggen: er wordt een
+toewijzing van die waarde aan de unitindent weggeschreven.
+
+Adders en voetangels te over: hiervoor moet het commando
+`enddocument' herschreven worden.
+
+
+
+\section{Verdere moeilijke veranderingen: de opmaak van
+ lange koppen. Zoals deze dus. Reeds. Antidisestablishmentarianism.
+ Hottentottententententoonstelling.}
+
+\LaTeX\ zet koppen als ingesprongen paragrafen. Het is echter niet
+gewoon dat een meerregelige kop zo behandeld wordt: beter is het vrije
+regelval te gebruiken en vooral woordafbreking (zelfs in samengestelde
+woorden) te verbieden.
+
+\subsection{Inventaris van relevante concepten}
+Binnen het commando \verb.\@sect. wordt de kop van de sectie gezet als
+\begin{verbatim}
+{\interlinepenalty\@M #8\par}
+\end{verbatim}
+
+\subsection{Implementatie van de veranderingen}
+Aan de zetcommando's voor de sectiekoppen dient een aanroep van
+`headstyle' toegevoegd te worden, waar
+\begin{verbatim}
+\def\headstyle{\nohyphenation \rightskip=0cm plus 3cm}
+\end{verbatim}
+of zoiets. Het commando `nohyphenation' kan op verschillende manieren
+bereikt worden, ik heb gekozen voor \verb+\hyphenpenalty=10000+, en
+idem zo voor de `exhyphenpenalty'.
+
+
+\section{Opties}
+
+De stijlen `Rapport1' en `Rapport3' hebben een door de gebruiker te
+kiezen optie. Hiermee kan de gebruiker de opmaak naar eigen
+goeddunken varieren. Misschien dat er nog wel meer van dat soort
+opties komen.
+
+
+\subsection{Hoe werken opties}
+Een door de gebruiker gespecificeerde stijloptie wordt soms
+gerealiseerd door een commando in het stijlbestand, en soms door een
+in te laden optiebestand. Het mechanisme dat dit bewerkstelligt is
+het volgende.
+
+Ergens bovenin het stijlbestand worden commando's \verb.\ds@OPTION.
+gedefinieerd. Als de gebruiker de betreffende optie meegegeven heeft,
+wordt dit commando uitgevoerd door \verb.\@options., dat ook ergens
+bovenin het stijlbestand staat. Voor die opties waarvoor geen
+\verb.\ds@OPTION. macro gedefinieerd is, wordt na de verwerking van
+het stijlbestand door \LaTeX\ een bestand \verb.OPTION.STY. geladen.
+
+\subsection{De `oldtoc' optie}
+Sommige mensen houden nogal van uitgepunte inhoudsopgaves. Ik niet,
+vandaar dat een inhoudsopgave analoog aan die van de `Tekstwijzer'
+standaard is. Met de optie `oldtoc' kan de oude \LaTeX\ inhoudsopgave
+verkregen worden.
+
+
+\subsection{Het `Voorwerk' optiebestand}
+Een essentieel verschil tussen `Rapport' en `Artikel' is dat de eerste
+een heus voorwerk heeft: een titelpagina, een afzonderlijke pagina
+voor de samenvatting, en losse pagina's voor de titels van de delen.
+Met in het achterhoofd een citaat van Stanley Morison~\cite{Morison}
+over de opbouw van de titelpagina:
+\begin{quotation}
+ Daar onderkast een noodzakelijk kwaad is, dat we in de hand moeten
+ houden als we het niet kunnen uitroeien, moet het gebruik daarvan
+ worden vermeden daar waar dat het minst logisch en het
+ onaantrekkelijkst is: in grote corpsen. De belangrijkste regel moet
+ uit kapitalen worden gezet~[\dots]. En wat er ook nog met de rest
+ van de pagina moge gebeuren, de naam van de schrijver moet, zoals
+ alle met nadruk gepresenteerde eigennamen, uit kapitalen worden
+ gezet.
+\end{quotation}
+heb ik de `Titlepage.sty' vervangen door een `Voorwerk' stijloptie,
+die titel en schrijversnaam in kapitalen zet.
+
+
+\section{De inhoudsopgave}
+
+\subsection{Beschrijving}
+\subsubsection{Inventaris van kwalen}
+Treebus vindt het zogenaamde `uitpunten' van een inhoudsopgave een
+minder geslaagd idee. Ook over het steeds verder inspringen van kopjes
+in de inhoudsopgave is hij niet te spreken. Laat dit nu precies zijn
+wat \LaTeX\ doet.
+
+Wat mij dan nog stoort zijn de grote verschillen in zetwijze van
+kopjes op verschillende nivo's.
+
+\subsubsection{Remedie}
+
+\paragraph{Kantlijnen}
+Alle nummers worden tegen de linker kantlijn getrokken, en de kopjes
+staan dan (allemaal) op `unitindent' van de linker kantlijn. Dit
+levert geen problemen op omdat er net zoveel nivo's nummering in
+kopjes als in de inhoudsopgave voorkomen.
+
+\paragraph{Fonts}
+Kopjes worden in drie verschillende fonts gezet om de hierarchie uit
+te doen komen. Ik heb gekozen voor `bf', `sl', en `rm' in
+`normalsize'. Er valt over te twisten of dit misschien gewoon de fonts
+van de koppen zelf moeten zijn.
+
+\paragraph{Verdere zetwijze}
+Er wordt vrije regelval gebruikt. Het paginanummer verschijnt direct
+achter het kopje (met een vaste hoeveelheid wit).
+
+\subsection{Implementatie}
+
+Ten eerste is er een commando \verb+\toc@font+ gekomen dat het font
+bepaalt waarmee een kop in de inhoudsopgave gaat verschijnen. Deze
+bepaling gebeurt in \verb+\@sect+, die daartoe verder is aangepast.
+
+Ten tweede is er, als vervanging van \verb+\@dottedtocline+, een
+commando \verb+\@regtocline+\\ dat de opmaak van de kop regelt. De
+merkwaardige sequentie
+\begin{verbatim}
+\@tempdima=\unitindent
+\end{verbatim}
+zorgt ervoor dat het nummer (dat in \verb+\@sect+ in een `numberline'
+gestopt is) op de goede breedte gezet wordt.
+
+De \verb+\l@TYPE+ commando's (waar `type' is `section' en dergelijke)
+zijn omgezet zodat ze \verb+\@regtocline+ gebruiken. Uitzondering:
+\verb+\l@part+. Daar kom ik nog wel een keer aan toe.
+
+
+
+\chapter{Veranderingen in Rapport2}
+
+In de documentstijl `Rapport2' is voor veel zaken een geheel andere
+keuze gemaakt dan in~`Rapport1'. Vaak betekende dit dat, gegeven de
+moeite die in `Rapport1' geinvesteerd was, slechts een paar parameters
+veranderd hoefden te worden. In enkele gevallen, echter, moest een
+geheel nieuwe aanpak gevolgd worden.
+
+\section{Variaties}
+
+De beide hier beschreven documentstijlen hebben als voornaamste
+verbetering ten opzichte van `report' een nadrukkelijk aanwezige
+tweede kantlijn. In `Rapport1' wordt deze kantlijn gebruikt door al
+het eenmaal ingesprongen materiaal. In~`Rapport2' wordt deze kantlijn
+minder radicaal gevolgd:
+\begin{itemize}
+\item`verbatim' omgevingen worden weer gewoon tegen de linkerkantlijn
+ geplaatst;
+\item de eerste kantlijn voor lijststructuren bedraagt de helft van de
+ paragraafinspinging; en
+\item de labelbreedte van voetnoten is hieraan gelijk gemaakt.
+\end{itemize}
+Alles bij elkaar wordt het gewicht van de pagina verder tegen de
+linkerkantlijn geplaatst.
+
+Van een andere kant bekeken is de tweede kantlijn (zeg dat die door de
+`parindent' bepaald wordt) in de stijl~`Rapport2' juist nadrukkelijker
+aanwezig:
+\begin{itemize}
+\item alle tussenkopjes springen in over de `parindent, en
+\item de eerste regel na een kopje springt ook in.
+\end{itemize}
+
+
+\section{Behandeling van koppen}
+\subsection{Sectie, subsectie, subsubsectie}
+\subsubsection{Elementaria}
+
+Het laten inspringen van koppen gaat door een positieve waarde voor de
+derde parameter van \verb.\@startsection. te specificeren. Door de
+vierde parameter positief te maken springt de eerste regel na de kop
+ook in.
+
+Omdat de tekst van de kopjes nu geen verdere kantlijn definieert hoeft
+er niet zo'n moeite gedaan te worden om die te plaatsen als
+in~`Rapport1'. Ik heb de normale \LaTeX-constructie van een vaste
+`skip' weer in ere hersteld; op drie-tiende `em' deze keer.
+
+\subsubsection{Complicaties}
+
+Om te voorkomen dat bij lange koppen de tekst alsnog een tweede
+kantlijn gaat defini"eren moest de \verb.\@hangfrom. die dit
+bewerkstelligt verwijderd worden. Bij volledig verwijderen, echter,
+zal de tweede regel van de kop tegen de linker kantlijn geplaatst
+worden. Ook niet de bedoeling.
+
+In de aanpak die ik gevolgd heb hangt de tekst nu aan de inspringing;
+het commando \verb.\@svsec. dat het nummer zet is gewoon in de tekst
+geplaatst.
+
+
+\subsection{Part}
+
+Het zou leuk zijn als de eerste regel na een `part'-kop ook insprong.
+Het al dan niet inspringen van deze regel wordt bestuurd door de
+schakelaar \verb.\@ifafterindent. waarop getest wordt in
+\verb.\@afterheading.. Normaal wordt inspringen voorkomen door deze
+schakelaar in `part' op onwaar te zetten.
+
+Het zal de perceptieve lezer duidelijk zijn wat ik gedaan heb om
+inspringen van de eerste regel na een `part' af te dwingen.
+
+\section{De inhoudsopgave}
+
+De inhoudsopgave wordt in `Rapport2' net zo gezet als in~`Rapport1',
+met het verschil dat de sectienummers nu niet links maar rechts
+lijnen. Dit in het kader van het beklemtonen van de tweede kantlijn.
+Hiertoe moest het commando `numberline' uit `LaTeX.tex' overgenomen en
+aangepast worden.
+
+Overigens is de tweede kantlijn in de inhoudsopgave verder naar rechts
+dan in de rest van het document. De inhoudsopgave dient dus liever
+niet op een tekstpagina te beginnen.
+
+Dat de tweede kantlijn verder naar rechts staat betekent overigens dat
+het woord `inhoudsopgave', dat als een sectiekop gezet wordt,
+voorafgegaan moet worden door een `skip' ter breedte van het verschil.
+
+
+\part{Veranderingen in Rapport3}
+
+Uitgaande van `Rapport1' was het kinderspel een stijl te maken die net
+zo strak links lijnend oogde, maar die bovendien geen
+alinea\-inspringing heeft en dit compenseert met een `parskip'.
+\begin{itemize}
+\item Er is gekozen voor een `parskip' ter grootte van de helft van de
+ `baselineskip'.
+\item De `topsep' in lijststructuren --~de witruimte boven en onder de
+ gehele lijst~-- is \emph{minus} de halve `parskip'; netto effect is
+ dat hier de helft van de witruimte komt die zich tussen alineas
+ bevindt.
+\item De grootte van de `unitindent' kon ongewijzigd blijven,
+ aangezien kopjes nog steeds op dezelfde wijze gezet worden.
+\item Het wit onder kopjes is op nul gezet. Dit betekent niet dat er
+ geen wit staat, want de `parskip' krijg je hoe dan ook kado.
+\end{itemize}
+Het geheel oogt wel aardig.
+
+
+\begin{thebibliography}{9}
+
+\bibitem{Inge}Inge Eijkhout, \emph{Gesprekken en correspondentie},
+ 1989.
+
+\bibitem{Leslie}Leslie Lamport, \emph{\LaTeX, a document preparation
+ system}, Addison-Wesley, 1986.
+
+\bibitem{Miles}John Miles, \emph{Ontwerpen voor Desktop
+ Publishing\footnote{De Nederlandse uitgave is goedkoper dan de
+ Engelse, maar doet een zware aanslag op je ogen, door het soort
+ zetfout dat in \TeX\ onmogelijk zou kunnen voorkomen.}, Alles
+ over layout en typografie op de personal computer}, Uitgeverij
+ Mingus, Baarn~1988.
+
+\bibitem{Morison}Stanley Morison, \emph{Grondbeginselen der
+ Typografie}, (vertaling uit het Engels door Huib van Krimpen)
+ Uitgeverij de Buitenkant, Amsterdam 1987.
+
+\bibitem{Treebus}Karel Treebus, \emph{Tekstwijzer, een gids voor het
+ grafisch verwerken van tekst}, SDU~uitgeverij, 1988.
+
+\end{thebibliography}
+
+
+%\vfill\eject
+%\tableofcontents
+
+
+\end{document}
+
+
+
+
+
+