diff options
Diffstat (limited to 'tex/context/base/main-001.tex')
-rw-r--r-- | tex/context/base/main-001.tex | 8023 |
1 files changed, 0 insertions, 8023 deletions
diff --git a/tex/context/base/main-001.tex b/tex/context/base/main-001.tex deleted file mode 100644 index 8d72cfc79..000000000 --- a/tex/context/base/main-001.tex +++ /dev/null @@ -1,8023 +0,0 @@ -%D \module -%D [ file=main-001, -%D version=1997.03.31, -%D title=\CONTEXT\ Core Macros, -%D subtitle=1A (to be split), -%D author=Hans Hagen, -%D date=\currentdate, -%D copyright={PRAGMA / Hans Hagen \& Ton Otten}] -%C -%C This module is part of the \CONTEXT\ macro||package and is -%C therefore copyrighted by \PRAGMA. See mreadme.pdf for -%C details. - -%D This module is still to be split and documented. - -\writestatus{loading}{Context Core Macros (1)} - -% kan elders ook worden gebruikt i.i.g ongeveer -% \v!tekst EN \c!tekst etc checken - -\unprotect - -\def\gobbleassigndimen#1\\{} - -\def\assigndimen#1#2% - {\afterassignment\gobbleassigndimen#1=#2\!!zeropoint\\} - -\protect - -\unprotect - -\startmessages dutch library: systems - title: systeem - 1: laden hulpfile uitgesteld (typemode) - 2: -- geladen - 3: probeer LaTeX eens - 4: commando -- is al gedefinieerd - 5: macro's uit module -- geladen - 6: geen macro's in module -- gevonden - 7: macro's uit module -- reeds geladen - 8: nieuwe versie hulpfile, tweede run nodig - 9: -- niet gevonden/geplaatst - 10: gebruik geen em in -- - 11: aanmaken basale hulpfile - 12: de hulpfile is niet gesorteerd, gebruik texutil - 13: markering -- gedefinieerd -- - 14: geforceerde paginaovergang in lijst voor -- - 15: wegschrijven buffer -- - 16: inlezen buffer -- - 17: verbatim inlezen buffer -- - 18: synoniem -- -- bestaat niet - 19: betekenissen (synoniemen) van -- geladen - 20: betekenissen (sorteren) van -- geladen - 21: de hulpfile is niet geladen - 22: gebruik een goede hulpfile - 23: -- gearrangeerd op -- - 24: Plaatsblokken - 25: Verwijzingen - 26: Registers - 27: Versie -\stopmessages - -\startmessages english library: systems - title: system - 1: loading utility-file postponed (typemode) - 2: -- loaded - 3: try LaTeX - 4: command -- is already defined - 5: macros of module -- loaded - 6: no macros found in module -- - 7: macros of module -- already loaded - 8: new version of utility file, second pass needed - 9: -- not found/processed - 10: don't use em in -- - 11: building simple util - 12: the utility-file is not sorted, use texutil - 13: mark -- defined -- - 14: forced newpage in list at -- - 15: saving buffer -- - 16: typesetting buffer -- - 17: typesetting verbatim buffer -- - 18: synonym -- -- does not exist - 19: meaning (synonyms) of -- loaded - 20: meaning (sorts) of -- loaded - 21: no utility data is loaded - 22: use a valid utilityfile - 23: -- arranged at -- - 24: Floatblocks - 25: References - 26: Registers - 27: Version -\stopmessages - -\startmessages german library: systems - title: system - 1: Laden der Hilfsdatei verschoben (tippenmodus) - 2: -- geladen - 3: Versuche LaTeX - 4: Befehl -- ist bereits definiert - 5: Makros aus Modul -- geladen - 6: Keine Makros in Modul -- gefunden - 7: Makros aus Modul -- bereits geladen - 8: Neue Version der Hilfsdatei, zweiter Durchlauf benoetigt - 9: -- nicht gefunden/verarbeitet - 10: Benutzte kein em in -- - 11: Erstelle einfache Hilfdatei - 12: Die Hilfdatei ist nicht sortiert, verwende texutil - 13: Beschriftung -- definiert -- - 14: Erzwungendes Seitenumbruch in Liste bei -- - 15: Speichere Buffer -- - 16: Setzte Buffer -- - 17: Setzte tippen-Buffer -- - 18: Synonym -- -- existiert nicht - 19: Bedeutung (synonyme) von -- geladen - 20: Bedeutung (sortieren) von -- geladen - 21: Die Hilfsdatei ist nicht geladen - 22: Benoetige gueltige Hilfsdateie - 23: -- angeordnet auf -- - 24: Fliessbloecke - 25: Referenzen - 26: Register - 27: Version -\stopmessages - -\startmessages czech library: systems - title: system - 1: nacteni pomocneho souboru odlozeno (typemode) - 2: -- nacteno - 3: zkuste LaTeX - 4: prikaz -- je jiz definovan - 5: makra z -- nactena - 6: zadna makra v -- nenalezena - 7: makra z -- jsou jiz nactena - 8: nova verze pomocneho souboru, je treba druheho behu - 9: -- nenalezeno/nezpracovano - 10: nepouzivejte em v -- - 11: vytvarim jednoduchy pomocny soubor - 12: pomosny soubor neni setriden, pouzijte texutil - 13: znacka -- definovana -- - 14: vynucena nova stranka v seznamu na -- - 15: uklada se buffer -- - 16: sazi se buffer -- - 17: sazi se doslovny (verbatim) buffer -- - 18: synonymum -- -- neexistuje - 19: vyznam (synonyma) -- nacten - 20: vyznam (trideni) -- nacten - 21: pomocny soubor necten - 22: pouzijte platny pomocny soubor - 23: -- upraveno na -- - 24: plovouci bloky - 25: reference - 26: registry - 27: verze -\stopmessages - -\startmessages italian library: systems - title: sistema - 1: caricamento dei file supplementari posticipato (typemode) - 2: -- caricato - 3: provare LaTeX - 4: comando -- già definito - 5: macro del modulo -- caricate - 6: nessuna macro trovata nel modulo -- - 7: macro del modulo -- già caricate - 8: nuova versione del file supplementare, seconda passata necessaria - 9: -- non trovato/elaborato - 10: non usare em in -- - 11: costruzione di un semplice supplemento - 12: file di supplemento non ordinato, usare texutil - 13: marcatura -- definita -- - 14: nuova pagina obbligata in lista a -- - 15: salvataggio del buffer -- - 16: composizione del buffer -- - 17: composizione verbatim del buffer -- - 18: sinonimo -- -- non esistente - 19: significato (sinonimi) di -- caricato - 20: significato (specie) di -- caricato - 21: nessuna informazione supplementare caricata - 22: usare un file supplementare valido - 23: -- sistemato a -- - 24: Oggetti mobili - 25: Riferimenti - 26: Registri - 27: Versione -\stopmessages - -\startmessages norwegian library: systems - title: system - 1: innlesning av hjelpefila utsatt (typemode) - 2: -- er lest inn - 3: forsøker LaTeX - 4: kommando -- er allerede definert - 5: makroene i modul -- er lest inn - 6: ingen makroer funnet i modul --- - 7: makroene i modul -- er allerede lest inn - 8: ny versjon av hjelpefil, andre gjennomkjøring nødvendig - 9: -- ikke funnet/behandlet - 10: ikke bruk em i -- - 11: lager enkel hjelpefil - 12: hjelpefila er ikke sortert, bruk texutil - 13: markering -- definert -- - 14: tvunget sideskift i liste ved -- - 15: lagrer Buffer -- - 16: tegnsetter buffer -- - 17: tegnsetter verbatim-buffer -- - 18: synonym -- -- eksisterer ikke - 19: betydning (synonymer) av -- er lest inn - 20: betydning (sorterer) av -- er lest inn - 21: hjelpefila er ikke lest inn - 22: bruk en gyldig hjelpefil - 23: -- arrangert på -- - 24: Flytblokker - 25: Referanser - 26: Registere - 27: Versjon -\stopmessages - -\startmessages romanian library: systems - title: sistem - 1: se incarca utilitarul-fisierul este amanat (typemode) - 2: -- s-a incarcat - 3: incercati LaTeX - 4: comanda -- este deja definita - 5: macro-urile din modulul -- s-au incarcat - 6: nu s-au gasit macro-uri in modulul -- - 7: macro-urile din modulul -- s-au incarcat deja - 8: o noua versiune de fisier utilitar, este necesara o noua trecere - 9: -- nu este gasit/procesat - 10: nu folositi em in -- - 11: se creeaza un utilitar simplu - 12: fisierul utilitar nu este sortat, folositi texutil - 13: marcajul -- definit -- - 14: s-a fortat trecere pa pagina noua in lista la -- - 15: buffer salvat -- - 16: buffer-ul -- s-a cules - 17: se culege buffer-ul verbatim -- - 18: sinonimul -- -- nu exista - 19: intelesul (sinonimele) pentru -- incarcat - 20: intelesul (ordinea) pentru -- incarcat - 21: nici o data utilitara nu este incarcata - 22: folositi un fisier utilitar valid - 23: -- aranjat la -- - 24: Blocuri - 25: Referinte - 26: Registri - 27: Versiune -\stopmessages - -\startmessages dutch library: floatblocks - title: plaatsblokken - 1: -- hernummerd / -- => -- - 2: -- bewaard - 3: -- verplaatst - 4: -- geplaatst - 5: volgorde aangepast - 6: maximaal -- boven - 7: maximaal -- onder - 8: minder dan -- regels - 9: volgorde verstoord - 10: -- begrensd - 11: geen blok opgegeven - 12: niet gedefinieerd -\stopmessages - -\startmessages english library: floatblocks - title: floatblocks - 1: -- renumbered / -- => -- - 2: -- saved - 3: -- moved - 4: -- placed - 5: order adapted - 6: n of top floats limited to -- - 7: n of bottom floats limited to -- - 8: less than -- lines - 9: order disturbed - 10: -- limited - 11: no block given - 12: undefined -\stopmessages - -\startmessages german library: floatblocks - title: Gleitobjektbloecke - 1: -- neu nummeriert / -- => -- - 2: -- gespeichert - 3: -- verschoben - 4: -- plaziert - 5: Reihenfolge angepasst - 6: Anz. der oberen Gleitobjekte beschraengt auf -- - 7: Anz. der unteren Gleitobjekte beschraengt auf -- - 8: weniger als -- zeilen - 9: Reigenfolge gestoert - 10: -- begrenzt - 11: kein Block gegeben - 12: undefiniert -\stopmessages - -\startmessages czech library: floatblocks - title: plovouciobjekty - 1: -- precislovano / -- => -- - 2: -- ulozeno - 3: -- presunuto - 4: -- umisteno - 5: poradi prizpusobeno - 6: pocet hornich plovoucich objektu je omezen na -- - 7: pocet spodnich plovoucich objektu je omezen na -- - 8: radku je mene nez -- - 9: poradi naruseno - 10: -- omezeno - 11: nedan zadny blok - 12: nedefinovano -\stopmessages - -\startmessages italian library: floatblocks - title: oggetti mobili - 1: -- rinumerato / -- => -- - 2: -- salavto - 3: -- mosso - 4: -- sistemato - 5: ordine aggiustato - 6: n di top floats limitato a -- - 7: n di bottom floats limitato a -- - 8: meno di -- righe - 9: ordine disturbato - 10: -- limitato - 11: nessun oggetto specificato - 12: non definito -\stopmessages - -\startmessages norwegian library: floatblocks - title: flytblokker - 1: -- renummerert / -- => -- - 2: -- lagret - 3: -- flyttet - 4: -- plassert - 5: rekkefølge tilpasset - 6: maksimalt -- flytblokker øverst - 7: maksimalt -- flytblokker nederst - 8: mindre enn -- linjer - 9: rekkefølge endret - 10: -- begrenset - 11: ingen blokk oppgitt - 12: udefinert -\stopmessages - -\startmessages romanian library: floatblocks - title: Blocuri - 1: -- renumerotat / -- => -- - 2: -- salvat - 3: -- mutat - 4: -- plasat - 5: ordinea adaptata - 6: nr. cadrelor de sus limitat la -- - 7: nr. blocurilor de jos limitat la -- - 8: mai putin de -- linii - 9: ordinea deranjata - 10: -- limitat - 11: nu este dat nici un bloc - 12: nedefinit -\stopmessages - -\startmessages dutch library: layouts - title: layout - 1: teksthoogte aangepast met -- op pagina -- - 2: -- maal uitgestelde tekst tussengevoegd - 3: -- maal tekst plaatsen uitstellen - 4: margeblokken actief - 5: margeblokken inactief - 6: subpagina reeks -- verwerkt (aantal --) - 7: beeldmerken berekenen - 8: achtergronden berekenen - 10: -- en -- tellen niet op tot 1.0 - 11: interlinie -- niet toegestaan in gridmode -\stopmessages - -\startmessages english library: layouts - title: layout - 1: textheight adapted with -- at page -- - 2: -- times postponed text placed - 3: -- times text postponed - 4: marginblocks active - 5: marginblocks inactive - 6: subpage set -- processed (size --) - 7: calculating logospace - 8: calculating backgrounds - 10: -- and -- don't add up to 1.0 - 11: spacing -- not permitted in gridmode -\stopmessages - -\startmessages german library: layouts - title: Layout - 1: Texthoehe angepasst mit -- auf Seite -- - 2: -- mal verschobener Text plaziert - 3: -- mal Text verschoben - 4: marginalbloecke aktiv - 5: marginalbloecke inaktiv - 6: Unterseitenfolge -- verarbeitet (Groesse --) - 7: berechne Platz des Logo - 8: berechne Hintergrund - 10: -- und -- ergeben zusammen nicht 1.0 - 11: Zwischenraum -- nicht im Grittermoduserlau -\stopmessages - -\startmessages czech library: layouts - title: layout - 1: vyska textu prizpusobena s -- na strane -- - 2: -- krat odlozeny text umisten - 3: -- krat text odlozen - 4: okrajove bloky aktivni - 5: okrajove bloky neaktivni - 6: sada stran -- zpracovana (velikost --) - 7: pocita se misto pro logo - 8: pocita se pozadi - 10: -- a -- nedava dohromady 1.0 - 11: svisla mezera -- neni povolena v pevnem radkovem rejstriku -\stopmessages - -\startmessages italian library: layouts - title: layout - 1: altezza del testo adattata con -- a pagina -- - 2: posizionato testo posticipato -- volte - 3: testo posticipato -- volte - 4: blocchi in margine attivi - 5: blocchi in margine inattivi - 6: gruppo di sottopagine -- elaborato (dimensione --) - 7: calcolo dello spazio per logo - 8: calcolo dello sfondo - 10: -- e -- non sommano a 1.0 - 11: spaziatura -- non permessa in modo griglia -\stopmessages - -\startmessages norwegian library: layouts - title: layout - 1: teksthøyde tilpasset med -- på side -- - 2: -- ganger forskjøvet tekst plassert - 3: -- ganger tekst forskjøvet - 4: margblokker aktive - 5: margblokker inaktive - 6: delside sett -- behandlet (størrelse --) - 7: beregner plass for logo - 8: beregner bakgrunn - 10: -- og -- er ikke 1.0 til sammen - 11: mellomrom -- ikke tillatt i gridmodus -\stopmessages - -\startmessages romanian library: layouts - title: aranjamente - 1: textheight adaptat cu -- la pagina -- - 2: textul amanat de -- ori a fost plasat - 3: textul amanat de -- ori - 4: blocuri marginale active - 5: blocuri marginale inactive - 6: setul -- de subpagini procesat (dimensiunea --) - 7: se calculeaza spatiul pentru logo - 8: se calculeaza fundalurile - 10: -- si -- nu se adauga pana la 1.0 - 11: spatierea -- nu este permisa in gridmode -\stopmessages - -% \CONTEXTtrue % Now we know that we can use ConTeXt commands. - -% \def\teststatus{stop} -% -% \def\doiftrue {\iftrue} -% \def\doiffalse {\iffalse} -% -% \def\setstatus#1#2% -% {\doifelse{\getvalue{#1\c!status}}{\v!start} -% {\let#2=\doiftrue} -% {\let#2=\doiffalse}} -% -% \setstatus{test}\iftest -% -% \iftest -% \message{JA} -% \else -% \message{NEE} -% \fi - -\def\convertexpanded#1#2#3% watch the double \v!ja expansion ! - {\ExpandFirstAfter\processaction - [\getvalue{#1\c!expansie}] - [ \v!ja=>{{\honorunexpanded\xdef\@@globalexpanded{#2}% - \xdef\@@globalexpanded{\@@globalexpanded}}% - \dodoglobal\convertcommand\@@globalexpanded\to#3}, - \v!commando=>{\dodoglobal\convertcommand #2\to#3}, - \s!default=>{\dodoglobal\convertargument#2\to#3}, - \s!unknown=>{\dodoglobal\convertargument#2\to#3}]} - -\def\herhaal {\dorepeat} -\def\herhaler {\repeater} -\def\herhaalmetcommando {\dorepeatwithcommand} - -% This permits things like ^\index{hans}^, where hans is -% duplicated in the text. - -\newif\ifduplicate - -\bgroup -\gdef\checkduplication% in line with Knuth - {\ifmmode - \def\next{^}% - \else - \let\next=\startduplication - \fi - \next} -\gdef\insideduplication% - {\ifmmode - \def\next{^}% - \else - \let\next=\egroup - \fi - \next} -\catcode`\^=\@@active -\gdef\enableduplication% - {\catcode`\^=\@@active - \let^=\checkduplication} -\gdef\disableduplication% - {\catcode`\^=\@@superscript} -\gdef\startduplication% - {\bgroup - \duplicatetrue - \let^=\insideduplication} -\egroup - -\def\verbatim#1% - {\convertargument#1\to\ascii\ascii} - -% mogelijke optimalisaties: -% -% \ifx ...\else ...\fi -% \ifvisible ... \fi - -% De opbouw van deze file -% -% Deze file bevat naast de verschillende Pragma-Macro's ook -% helpinformatie bij deze macro's en templates. Een blok -% helpinformatie wordt gekenmerkt door een %I. -% -% Een blok kan zijn opgedeeld in pagina's. In dat geval is -% %I vervangen door %P. De eerste regel van een blok bevat -% de titel van de informatie. -% -% Een template (voorgedefinieerde structuur) wordt gekenmerkt -% door %T. Ook hier bevat de eerste regel een titel, -% eventueel gevolgd door een mnemonic. -% -% Zowel de helpinformatie als de templates zijn in het -% programma TeXEdit oproepbaar. -% -% Het programma TeXEdit kan t.z.t. worden ingesteld met -% behulp van de onderstaande, door %S voorafgegane, -% setupcommando's. Vooralsnog is een en ander 'hard' in het -% programma geprogrammeerd. - -%S InputFile \input -%S InputFile \omgeving \environment -%S InputFile \projekt \project -%S InputFile \produkt \product -%S InputFile \onderdeel \component -%S -%S CheckStrings \start \stop -%S CheckStrings \begin \end -%S CheckStrings \begin \eind -%S -%S CheckChars { } -%S CheckChars [ ] -%S CheckChars ( ) -%S -%S CheckChar $ - -% Het <pagina>-karakter (FormFeed), wordt omgezet in \par - -\edef\oldlinefeed{\the\catcode`\^^L} - -\catcode`\^^L=\oldlinefeed - -\catcode`\^^L=\@@endofline - -% Maten -% -% De onderstaande instellingen worden gebruikt voor het -% vastleggen van de zetspiegel en marges. - -\voffset=0pt % setting this to -1in let's go metapost crazy -\hoffset=0pt % setting this to -1in let's go metapost crazy - -\newdimen\papierhoogte -\newdimen\papierbreedte - -\newdimen\printpapierhoogte -\newdimen\printpapierbreedte - -\newdimen\zethoogte -\newdimen\zetbreedte - -\newdimen\teksthoogte -\newdimen\tekstbreedte - -\newdimen\kopwit \kopwit=2cm -\newdimen\rugwit \rugwit=2cm - -\newdimen\hoofdhoogte \hoofdhoogte=2cm -\newdimen\voethoogte \voethoogte=2cm - -%\newdimen\kopkopwit \kopkopwit=0cm - -\newdimen\kopoffset \kopoffset=\!!zeropoint -\newdimen\rugoffset \rugoffset=\!!zeropoint - -\newdimen\linkermargebreedte \linkermargebreedte=3cm -\newdimen\rechtermargebreedte \rechtermargebreedte=\linkermargebreedte - -\newdimen\linkerrandbreedte \linkerrandbreedte=3cm -\newdimen\rechterrandbreedte \rechterrandbreedte=\linkerrandbreedte - -\newdimen\bovenhoogte \bovenhoogte=1cm -\newdimen\onderhoogte \onderhoogte=\bovenhoogte - -\def\margeafstand% - {\@@lymargeafstand} - -\def\randafstand% - {\@@lyrandafstand} - -\def\margebreedte% - {\@@lymarge} - -\def\randbreedte% - {\@@lyrand} - -\def\linkerrandafstand% - {\ifdim\!!zeropoint<\linkerrandbreedte - \@@lylinkerrandafstand - \else - \!!zeropoint - \fi} - -\def\rechterrandafstand% - {\ifdim\!!zeropoint<\rechterrandbreedte - \@@lyrechterrandafstand - \else - \!!zeropoint - \fi} - -\def\linkermargeafstand% - {\ifdim\!!zeropoint<\linkermargebreedte - \@@lylinkermargeafstand - \else - \!!zeropoint - \fi} - -\def\rechtermargeafstand% - {\ifdim\!!zeropoint<\rechtermargebreedte - \@@lyrechtermargeafstand - \else - \!!zeropoint - \fi} - -\def\bovenafstand% - {\ifdim\!!zeropoint<\bovenhoogte - \@@lybovenafstand - \else - \!!zeropoint - \fi} - -\def\hoofdafstand% - {\ifdim\!!zeropoint<\hoofdhoogte - \@@lyhoofdafstand - \else - \!!zeropoint - \fi} - -\def\voetafstand% - {\ifdim\!!zeropoint<\voethoogte - \@@lyvoetafstand - \else - \!!zeropoint - \fi} - -\def\onderafstand% - {\ifdim\!!zeropoint<\onderhoogte - \@@lyonderafstand - \else - \!!zeropoint - \fi} - -\newif\ifdubbelzijdig -\dubbelzijdigfalse - -\newif\ifenkelzijdig -\enkelzijdigtrue - -\def\doifsometextlineelse#1#2#3% ! omgekeerd ! - {\doifinsetelse{\getvalue{\??tk#1\v!tekst\c!status}}{\v!geen,\v!hoog} - {#3}{#2}} - -% NOG EENS NAGAAN WANNEER NU GLOBAL EN WANNEER NIET - -\def\calculatevsizes% global needed in \resetlayoutregel - {\redoglobal\teksthoogte=\zethoogte - \doifsometextlineelse{\v!hoofd} - {\redoglobal\advance\teksthoogte by -\hoofdhoogte - \redoglobal\advance\teksthoogte by -\hoofdafstand} - {}% - \doifsometextlineelse{\v!voet} - {\redoglobal\advance\teksthoogte by -\voethoogte - \redoglobal\advance\teksthoogte by -\voetafstand} - {}% - \resetglobal - \setvsize} - -\def\calculatereducedvsizes% - {\teksthoogte=\zethoogte - \doifsometextlineelse{\v!hoofd} - {\advance\teksthoogte by -\hoofdhoogte - \advance\teksthoogte by -\hoofdafstand} - {\hoofdhoogte=\!!zeropoint}% - \doifsometextlineelse{\v!voet} - {\advance\teksthoogte by -\voethoogte - \advance\teksthoogte by -\voetafstand} - {\voethoogte=\!!zeropoint}} - -\def\calculatehsizes% - {\tekstbreedte=\zetbreedte - \doifsomething{\@@lytekstbreedte} % may be set to \tekstbreedte - {\tekstbreedte=\@@lytekstbreedte} % which is tricky but ok - \sethsize} - -\def\sethsize% - {\global\hsize=\tekstbreedte} - -\def\setvsize% - {\ifdim\vsize=\teksthoogte - \else - \bgroup - \dimen0=-\vsize - \advance\dimen0 by \teksthoogte - \global\advance\vsize by \dimen0 - \ifdim\pagegoal<\maxdimen - \advance\dimen0 by \pagegoal - \global\pagegoal=\dimen0 - \fi - \egroup - \fi} - -% Algemeen -% -% De Pragma-macros zijn samengesteld met behulp van de -% commandos van PlainTeX- en enkele TugBoat routines. -% -% Voor de volledigheid zijn in de definitie steeds de -% {}-haakjes vermeld. Deze haakjes zijn niet altijd -% nodig, Als bijvoorbeeld een paragraaf bewerkt wordt, -% kunnen ze achterwege blijven. -% -% Instellingen worden opgegeven tussen []-haakjes, -% meestal direct na het commando. Instellingen mogen -% soms achterwege blijven. -% -% Een aantal veelgebruikte macro's zijn in TeXEdit op -% naam en/of door middel van een mnemonic oproepbaar. - -% De onderstaande macro voert commando's uit, afhankelijk van -% het karakter van het paginanummer. -% -% \doifonevenpaginaelse{then-commando}{else-commando} - -% NB \userpageno vervangen door \realpageno - -% \def\doifonevenpaginaelse#1#2% -% {\ifodd\realpageno#1\else#2\fi} -% -% \def\doifbothsidesoverruled#1\orsideone#2\orsidetwo#3\od% -% {\ifdubbelzijdig -% \ifodd\realpageno#2\relax\else#3\relax\fi -% \else -% #1\relax -% \fi} -% -% \def\doifbothsides#1\orsideone#2\orsidetwo#3\od% -% {\ifdubbelzijdig -% \ifenkelzijdig -% #1\relax -% \else -% \ifodd\realpageno#2\relax\else#3\relax\fi -% \fi -% \else -% #1\relax -% \fi} - -%D When we start at an even page, we need to swap the layout -%D differently. We cannot adapt the real page number, since -%D it is used in cross referencing. The next switch is set -%D when we start at an even page. - -\newif\ifshiftedrealpageno - -\def\doifonevenpaginaelse#1#2% - {\ifshiftedrealpageno - \ifodd\realpageno#2\else#1\fi - \else - \ifodd\realpageno#1\else#2\fi - \fi} - -\def\doifbothsidesoverruled#1\orsideone#2\orsidetwo#3\od% - {\ifdubbelzijdig - \doifonevenpaginaelse{#2}{#3}\relax - \else - #1\relax - \fi} - -\def\doifbothsides#1\orsideone#2\orsidetwo#3\od% - {\ifdubbelzijdig - \ifenkelzijdig - #1\relax - \else - \doifonevenpaginaelse{#2}{#3}\relax - \fi - \else - #1\relax - \fi} - -\def\dostartglobaldefs#1#2% - {\edef\!!stringa{\the\globaldefs}% - \ifnum\globaldefs#10 - \globaldefs=-\globaldefs - \fi - \advance\globaldefs by #21 - \setevalue{@gd@\the\globaldefs}{\!!stringa}} - -\def\dostopglobaldefs% - {\doifdefinedelse{@gd@\the\globaldefs} - {\globaldefs=\getvalue{@gd@\the\globaldefs}\relax} - {\globaldefs=0\relax}} - -\def\startlocal {\dostartglobaldefs>-} -\def\stoplocal {\dostopglobaldefs} -\def\startglobal {\dostartglobaldefs<+} -\def\stopglobal {\dostopglobaldefs} - -\ifx\stelpapierformaatin\undefined - \let\stelpapierformaatin\relax -\fi - -\def\dodefinieerpapierformaat[#1][#2]% - {\ifsecondargument - \getparameters - [\??pp#1] % geen \c!schaal, scheelt hash ruimte - [\c!breedte=\@@ppbreedte,\c!hoogte=\@@pphoogte, - \c!offset=\@@ppoffset,#2]% - \else - \getparameters[\??pp][#1]% - \stelpapierformaatin - \fi} - -\def\definieerpapierformaat% - {\dodoubleempty\dodefinieerpapierformaat} - -\definieerpapierformaat - [\c!breedte=210mm,\c!hoogte=297mm,\c!offset=0pt] - -\chardef\papermirror =0 -\chardef\printmirror =0 -\chardef\paperrotation =0 -\chardef\paperreverse =0 -\chardef\printrotation =0 -\chardef\printreverse =0 -\chardef\paperlandscape=0 -\chardef\printlandscape=0 - -\def\papierschaal{1} - -\newif\ifnegateprintbox - -\def\dostelpapierrichtingin#1#2#3#4#5% - {\global\chardef#2=0 - \global\chardef#5=0 - \gdef#3{0}% - \gdef#4{0}% - \global\negateprintboxfalse - \processallactionsinset - [#1] - [ \v!liggend=>\global\chardef#2=1, - \v!gespiegeld=>\global\chardef#5=1, - \v!geroteerd=>\gdef#3{90}\gdef#4{270}, - \v!negatief=>\global\negateprintboxtrue, - 90=>\gdef#3{90}\gdef#4{270}, - 180=>\gdef#3{180}\gdef#4{0}, - 270=>\gdef#3{270}\gdef#4{90}]} - -\ifx\calculatepaperoffsets\undefined - - \def\calculatepaperoffsets#1% - {\scratchdimen=\getvalue{\??pp#1\c!offset}% - \global\advance\papierbreedte by -2\scratchdimen - \global\advance\papierhoogte by -2\scratchdimen} - -\fi - -\def\dostelpapierformaatin[#1][#2]% - {\doifinstringelse{=}{#1} - {\getparameters[\??pp][#1]} - {\doifinstringelse{=}{#2} - {\getparameters[\??pp#1][#2]} - {\dodostelpapierformaatin[#1][#2]}}} - -\def\dodostelpapierformaatin[#1][#2]% - {\ifsecondargument - \xdef\herstelpapierformaat% - {\noexpand\stelpapierformaatin[#1][#2]}% - \dostelpapierrichtingin{#1}\paperlandscape\paperrotation\paperreverse\papermirror - \dostelpapierrichtingin{#2}\printlandscape\printrotation\printreverse\printmirror - \def\docommando##1% - {\doifsomething{##1}{\doifdefined{\??pp##1\c!breedte} - {\global\papierbreedte=\getvalue{\??pp##1\c!breedte}% - \global\papierhoogte=\getvalue{\??pp##1\c!hoogte}% - \calculatepaperoffsets{##1}% - \xdef\papierformaat{##1}}}}% - \processcommacommand[#1]\docommando - \doifdefinedelse{\??pp#1\c!schaal} - {\edef\papierschaal{\getvalue{\??pp#1\c!schaal}}} - {\edef\papierschaal{1}}% - \def\docommando##1% - {\doifsomething{##1}{\doifdefined{\??pp##1\c!breedte} - {\global\printpapierbreedte=\getvalue{\??pp##1\c!breedte}% - \global\printpapierhoogte=\getvalue{\??pp##1\c!hoogte}% - \xdef\printpapierformaat{##1}}}}% - \processcommacommand[#2]\docommando - \ifnum\paperlandscape>0 - \doglobal\swapdimens\papierbreedte\papierhoogte - \fi - \ifnum\printlandscape>0 - \doglobal\swapdimens\printpapierbreedte\printpapierhoogte - \fi - \ifdim\papierhoogte>\printpapierhoogte - \global\printpapierhoogte=\papierhoogte - \fi - \ifdim\papierbreedte>\printpapierbreedte - \global\printpapierbreedte=\papierbreedte - \fi - \calculatehsizes - \calculatevsizes - \global\newlogostrue - \global\newbackgroundtrue - \resetlayout - \else\iffirstargument - \stelpapierformaatin[#1][#2]% - \else\ifx\papierformaat\undefined\else - \herstelpapierformaat - \fi\fi\fi} - -\let\herstelpapierformaat\relax - -\def\stelpapierformaatin% - {\dodoubleempty\dostelpapierformaatin} - -\def\checkforems[#1]% - {\def\docommando##1% - {\beforesplitstring##1\at em\to\asciia - \doifnot{\asciia}{##1} - {\aftersplitstring\asciia\at=\to\asciia - \doifsomething{\asciia} - {\showmessage{\m!systems}{10}{##1}}}}% - \processcommalist[#1]\docommando} - -\def\resetlayout% - {\global\linkermargebreedte=\@@lylinkermarge - \global\rechtermargebreedte=\@@lyrechtermarge - \global\linkerrandbreedte=\@@lylinkerrand - \global\rechterrandbreedte=\@@lyrechterrand - \global\hoofdhoogte=\@@lyhoofd - \global\voethoogte=\@@lyvoet - \global\onderhoogte=\@@lyonder - \global\bovenhoogte=\@@lyboven - \global\rugwit=\@@lyrugwit - \global\kopwit=\@@lykopwit - \doifelse{\@@lygrid}{\v!ja} - {\gridsnappingtrue} - {\gridsnappingfalse}% - \ifgridsnapping - \widowpenalty=0 % is gewoon beter - \clubpenalty =0 % zeker bij grids - \else - \widowpenalty=\defaultwidowpenalty - \clubpenalty=\defaultclubpenalty - \fi - \stelwitruimtein - \stelblankoin - \doifelse{\@@lybreedte}{\v!midden} - {\global\zetbreedte=\papierbreedte - \global\advance\zetbreedte by -\rugwit - \scratchdimen=\@@lysnijwit\relax - \ifdim\scratchdimen=\!!zeropoint - \scratchdimen=\rugwit - \fi - \global\advance\zetbreedte by -\scratchdimen} - {\doifelse{\@@lybreedte}{\v!passend} - {\global\zetbreedte=\papierbreedte - \global\advance\zetbreedte by -\rugwit - \scratchdimen=\rugwit - \advance\scratchdimen by -\linkerrandbreedte - \advance\scratchdimen by -\linkerrandafstand -% \advance\scratchdimen by -\paginascheiding - \advance\scratchdimen by -\linkermargebreedte - \advance\scratchdimen by -\linkermargeafstand - \ifdim\scratchdimen<\!!zeropoint - \scratchdimen=\!!zeropoint - \fi - \global\advance\zetbreedte by -\rechtermargeafstand - \global\advance\zetbreedte by -\rechtermargebreedte -% \global\advance\zetbreedte by -\paginascheiding - \global\advance\zetbreedte by -\rechterrandafstand - \global\advance\zetbreedte by -\rechterrandbreedte - \global\advance\zetbreedte by -\scratchdimen} - {\global\zetbreedte=\@@lybreedte}}% - \doifelse{\@@lyregels}{} - {\doifelse{\@@lyhoogte}{\v!midden} - {\global\zethoogte=\papierhoogte - \global\advance\zethoogte by -\kopwit - \scratchdimen=\@@lybodemwit\relax - \ifdim\scratchdimen=\!!zeropoint - \scratchdimen=\kopwit - \fi - \global\advance\zethoogte by -\scratchdimen} - {\doifelse{\@@lyhoogte}{\v!passend} - {\global\zethoogte=\papierhoogte - \global\advance\zethoogte by -\kopwit - \scratchdimen=\kopwit - \advance\scratchdimen by -\bovenhoogte - \advance\scratchdimen by -\bovenafstand - \ifdim\scratchdimen<\!!zeropoint - \scratchdimen=\!!zeropoint - \fi - \global\advance\zethoogte by -\onderafstand - \global\advance\zethoogte by -\onderhoogte - \global\advance\zethoogte by -\scratchdimen} - {\global\zethoogte=\@@lyhoogte}}} - {\global\zethoogte=\@@lyregels\lineheight - \global\advance\zethoogte by \hoofdhoogte - \global\advance\zethoogte by \voethoogte}% - \rugoffset=\@@lyrugoffset - \kopoffset=\@@lykopoffset - \calculatehsizes - \calculatevsizes - \global\newlogostrue - \global\newbackgroundtrue} - -\def\checklayout% - {\doifsomething{\@@lyregels} - {\ifdim\zethoogte=\@@lyregels\lineheight \else \resetlayout \fi}} - -\appendtoks \checklayout \to \everystarttext - -\newif\ifdoublesidedprint - -\def\presetcenterpagebox% in \stellayoutin !!!!!!!!!!!!!!!! - {\doublesidedprintfalse - \ExpandFirstAfter\processallactionsinset - [\@@lyplaats] - [ \v!midden=>{\stelpapierformaatin[\c!links=\hss,\c!rechts=\hss,\c!boven=\vss,\c!onder=\vss]}, - \v!links=>{\stelpapierformaatin[\c!links=,\c!rechts=\hss]}, - \v!rechts=>{\stelpapierformaatin[\c!links=\hss,\c!rechts=]}, - \v!onder=>{\stelpapierformaatin[\c!boven=\vss,\c!onder=]}, - \v!boven=>{\stelpapierformaatin[\c!boven=,\c!onder=\vss]},% - \v!dubbelzijdig=>\doublesidedprinttrue, - \v!enkelzijdig=>\doublesidedprintfalse]} - -\def\complexstellayoutin[#1]% - {\ConvertToConstant\doifnot{#1}{\v!reset} - {\getparameters[\??ly][#1]% - \checkforems[#1]}% - \resetlayout - \presetcenterpagebox} - -\definecomplexorsimpleempty\stellayoutin - -\let\@@zahoogte=\!!zeropoint - -\def\dopushpagedimensions% - {\xdef\oldteksthoogte{\the\teksthoogte}% - \xdef\oldvoethoogte{\the\voethoogte}% - \global\let\@@zahoogte=\@@zahoogte} - -\def\dopoppagedimensions% - {\global\teksthoogte=\oldteksthoogte - \global\voethoogte=\oldvoethoogte - \resetlayout - \global\let\pushpagedimensions=\dopushpagedimensions - \global\let\poppagedimensions=\relax} - -\let\poppagedimensions=\relax -\let\pushpagedimensions=\dopushpagedimensions - -% Elke \csname ... \endcsname wordt ook aangemaakt, dus ook -% in een test met \doifdefined. Bij veel bladzijden kan dit -% te veel macro's kosten. Vandaar de set \adaptedpages. Het -% kost tijd, maar scheelt macro's. - -\def\adaptedpages{} - -\def\adaptpagedimensions% - {\rawdoifinsetelse{\realfolio}{\adaptedpages} - {\getvalue{\??za\realfolio}% - \letbeundefined{\??za\realfolio}} - {}} - -\def\checkpagedimensions% - {\poppagedimensions - \adaptpagedimensions} - -\def\reportpagedimensions% - {\ifx\poppagedimensions\relax - \else - \spatie\@@zahoogte\spatie- - \fi - \realfolio} - -\def\dodopaslayoutaan[#1]% - {\getparameters[\??za][\c!hoogte=,\c!regels=,#1]% - \pushpagedimensions - \doifelsenothing{\@@zaregels} - {\showmessage{\m!layouts}{1}{\@@zahoogte,\realfolio}} - {\showmessage{\m!layouts}{1}{\@@zaregels\space\v!regels,\realfolio}% - \def\@@zahoogte{\@@zaregels\openlineheight}}% - \doifelse{\@@zahoogte}{\v!max} - {\balancedimensions{\teksthoogte}{\voethoogte}{\voethoogte}} - {\balancedimensions{\teksthoogte}{\voethoogte}{\@@zahoogte}}% - \ifdim\voethoogte<\!!zeropoint - \global\advance\teksthoogte by \voethoogte - \global\voethoogte=\!!zeropoint - \global\xdef\@@zahoogte{\@@lyvoet\spatie(\v!max)}% - \fi - \setvsize - \global\pagegoal=\vsize % nog corrigeren voor insertions ? - \global\newlogostrue - \global\newbackgroundtrue - \global\let\pushpagedimensions=\relax - \global\let\poppagedimensions=\dopoppagedimensions} - -\def\dopaslayoutaan[#1][#2]% - {\doifelsenothing{#2} - {\dodopaslayoutaan[#1]} - {\def\docommando##1% - {\addtocommalist{##1}\adaptedpages - \setgvalue{\??za##1}{\dodopaslayoutaan[#2]}}% - \processcommalist[#1]\docommando - \adaptpagedimensions}} - -\def\paslayoutaan% - {\dodoubleempty\dopaslayoutaan} - -\newif\ifmargeblokken - -\def\dostelmargeblokkenin[#1]% - {\getparameters[\??mb][#1]% - \doifelse{\@@mbstatus}{\v!start}% - {\showmessage{\m!layouts}{4}{}% - \margeblokkentrue - \let\somenextfloat=\dosomenextfloat - \let\startmargeblok=\dostartmargeblok - \let\stopmargeblok=\dostopmargeblok}% - {\showmessage{\m!layouts}{5}{}% - \margeblokkenfalse - \def\somenextfloat[##1]% - {\someelsefloat[##1,\v!hier]}% - \let\startmargeblok=\dontstartmargeblok - \let\stopmargeblok=\dontstopmargeblok}} - -\def\stelmargeblokkenin% - {\dosingleargument\dostelmargeblokkenin} - -\newbox\marginbox - -\def\dosomenextfloat[#1]% - {\global\setbox\marginbox=\vbox - {\hsize\@@mbbreedte - \unvcopy\marginbox - \ifvoid\marginbox\else\expandafter\@@mbtussen\fi - \box\floatbox\filbreak}% - \ifdim\ht\marginbox>\teksthoogte - \dosavefloatinfo - \else - \doinsertfloatinfo - \fi} - -\newbox\preparedmarginbox - -\def\reshapemargin% - {\ifdim\ht\preparedmarginbox>\!!zeropoint - \beginofshapebox - \unvbox\preparedmarginbox - \endofshapebox - \reshapebox - {\box\shapebox}% - \setbox\preparedmarginbox=\vbox to \teksthoogte - {\@@mbboven - \flushshapebox - \@@mbonder}% - \fi} - - -\def\plaatsrechtermargeblok% - {\hskip\rechtermargebreedte} - -\def\plaatslinkermargeblok% - {\hskip\linkermargebreedte} - -\def\checkmargeblokken% - {\setbox\preparedmarginbox=\vbox - {\forgetall - \splittopskip\topskip - \ifvoid\marginbox\else - \ifdim\ht\marginbox>\teksthoogte - \vsplit\marginbox to \teksthoogte - \else - \unvbox\marginbox - \fi - \fi}% - \reshapemargin - \setbox\preparedmarginbox=\vbox - {\@@mbvoor\box\preparedmarginbox\@@mbna}% - \def\rightmarginbox% - {\def\plaatsrechtermargeblok% - {\setbox\preparedmarginbox=\hbox to \rechtermargebreedte - {\@@mblinks\box\preparedmarginbox\@@mbrechts}% - \vsmashbox\preparedmarginbox - \box\preparedmarginbox}}% - \def\leftmarginbox% - {\def\plaatslinkermargeblok% - {\setbox\preparedmarginbox=\hbox to \linkermargebreedte - {\@@mbrechts\box\preparedmarginbox\@@mblinks}% - \vsmashbox\preparedmarginbox - \box\preparedmarginbox}}% - \processaction - [\@@mbplaats] - [ \v!inmarge=>\doifbothsidesoverruled - \rightmarginbox - \orsideone - \rightmarginbox - \orsidetwo - \leftmarginbox - \od, - \v!midden=>\doifbothsidesoverruled - \rightmarginbox - \orsideone - \leftmarginbox - \orsidetwo - \rightmarginbox - \od, - \v!links=>\leftmarginbox, - \v!rechts=>\rightmarginbox, - \s!unknown=>\setbox\preparedmarginbox=\hbox{}]} - -\def\dostartmargeblok% % 2 maal \vbox ivm \unvbox elders - {\global\setbox\marginbox=\vtop\bgroup\vbox\bgroup - \hsize\@@mbbreedte - \ifvoid\marginbox\else - \unvbox\marginbox - \@@mbtussen - \fi - \steluitlijnenin[\@@mbuitlijnen]% - \dostartattributes\??mb\c!letter\c!kleur{}% - \begstrut\ignorespaces} - -\def\dostopmargeblok% - {\unskip\endstrut - \dostopattributes - \egroup - \egroup} - -\def\dontstartmargeblok% - {\@@mbvoor - \bgroup - \dostartattributes\??mb\c!letter\c!kleur{}} - -\def\dontstopmargeblok% - {\dostopattributes - \egroup - \@@mbna} - -\newcounter\nofpostponedblocks - -\newif\ifinuitstellen - -\newevery\everytopofpage\relax - -\appendtoks\the\everytopofpage\to\everystarttext -\appendtoks\global\everytopofpage{}\to\everystoptext - -\def\douitstellen% PAS OP 2X MAIN-001 - {\the\everytopofpage - \ifinuitstellen\else\ifcase\nofpostponedblocks\else % The \nof-test is -\bgroup % needed -\black % else problems inside split verbatim -\restoreglobalbodyfont % else problems inside split verbatim - \global\pagetotal\!!zeropoint % recently added - \global\inuitstellentrue % definitely needed - \dorecurse{\nofpostponedblocks} % else we can loose - {\haalbuffer[buf-\recurselevel]} % or disorder floats - \doflushfloats % new but potential dangerous % and that is something - \doglobal\newcounter\nofpostponedblocks % we don't want, do we? - \global\inuitstellenfalse % Anyhow, 'uitstellen' -\egroup - \fi\fi} % is still suboptimal. - -\setvalue{\e!start\e!uitstellen}% - {\doglobal\increment\nofpostponedblocks - \showmessage{\m!layouts}{3}{\nofpostponedblocks}% - \dostartbuffer[buf-\nofpostponedblocks] - [\e!start\e!uitstellen][\e!stop\e!uitstellen]} - -% \gotonextsubpage : voor de pagebody -% \subpaginanummer : alleen in de voet/kopregels -% \aantalsubpaginas : alleen in de voet/kopregels - -% \firstsubpage : eerste \realpageno, voor interne doeleinden -% \prevsubpage : vorige \realpageno, voor interne doeleinden -% \nextsubpage : volgende \realpageno, voor interne doeleinden -% \lastsubpage : laatste \realpageno, voor interne doeleinden -% \nofsubpages : laatste subpage (in berekeningen) -% \subpageno : huidige subpage (in berekeningen) - -\newif\ifsubpaging -\newif\ifshowingsubpage - -\definieernummer - [\s!subpage] - -\stelnummerin - [\s!subpage] - [\c!wijze=\@@snwijze] - -\def\resetsubpaginanummer% - {\resetnummer[\s!subpage]% - \global\subpageno=\ruwenummer[\s!subpage]} - -\def\dostelsubpaginanummerin[#1]% - {\doifelse{#1}{\v!reset} - {\resetsubpaginanummer} % \resetnummer[\s!subpage] - {\getparameters[\??sn][#1]% - \processaction - [\@@snstatus] - [ \v!stop=>\ifsubpaging - \else - \subpagingfalse - \fi - \showingsubpagefalse, - \v!start=>\subpagingtrue - \showingsubpagetrue, - \v!geen=>\subpagingtrue - \showingsubpagefalse]}} - -\def\aantalsubpaginas% - {\ifshowingsubpage - \nofsubpages - \else - 0% - \fi} - -\def\subpaginanummer% - {\ifshowingsubpage - \the\subpageno - \else - 0% - \fi} - -\def\stelsubpaginanummerin% - {\dosingleargument\dostelsubpaginanummerin} - -\def\newnofsubpages {0} -\def\nofsubpages {0} -\def\firstsubpage {1} -\def\prevsubpage {1} -\def\nextsubpage {1} -\def\lastsubpage {1} - -\def\nextpage {1} -\def\prevpage {1} - -\definetwopasslist{\s!subpage} - -\def\savenofsubpages% - {\ifsubpaging - \showmessage{\m!layouts}{6}{\newnofsubpages,\the\subpageno}% - \immediatewriteutilitycommand% - {\twopassentry% - {\s!subpage}% - {\newnofsubpages}% - {\the\subpageno}}% - \fi} - -\def\setsubpagenumbers% - {\iftwopassdatafound - \bgroup - \xdef\nofsubpages{\twopassdata}% - \xdef\firstsubpage{\realfolio}% - \advance\realpageno by \nofsubpages - \advance\realpageno by -1 - \xdef\lastsubpage{\realfolio}% - \egroup - \else - \xdef\nofsubpages{0}% - \fi} - -\def\gotonextsubpage% overlapt behoorlijk met realpage macro - {\global\let\checksubpages=\relax - \ifsubpaging - \edef\oldsubpage{\the\subpageno}% - \verhoognummer[\s!subpage]% - \global\subpageno=\ruwenummer[\s!subpage]\relax - \ifnum\subpageno=1 - \gettwopassdata{\s!subpage}% - \setsubpagenumbers - \ifnum\oldsubpage>0 - \showmessage{\m!layouts}{6}{\newnofsubpages,\oldsubpage}% - \edef\next% - {\writeutilitycommand% - {\twopassentry% - {\s!subpage}% - {\newnofsubpages}% - {\oldsubpage}}}% - \next - \fi - \doglobal\increment\newnofsubpages\relax - \fi - \setglobalsystemreference\rt!page{\v!eerstesubpagina}\firstsubpage - \setglobalsystemreference\rt!page{\v!laatstesubpagina}\lastsubpage - \bgroup - \ifnum\realpageno=\firstsubpage\relax - \global\let\prevsubpage=\firstsubpage - \setglobalsystemreference\rt!page{\v!sub\v!achteruit}\lastsubpage - \else - \xdef\prevsubpage{\realfolio}% - \doglobal\decrement\prevsubpage - \setglobalsystemreference\rt!page{\v!sub\v!achteruit}\prevsubpage - \fi - \setglobalsystemreference\rt!page{\v!vorigesubpagina}\prevsubpage - \ifnum\realpageno=\lastsubpage\relax - \global\let\nextsubpage=\lastsubpage - \setglobalsystemreference\rt!page{\v!sub\v!vooruit}\firstsubpage - \else - \xdef\nextsubpage{\realfolio}% - \doglobal\increment\nextsubpage - \setglobalsystemreference\rt!page{\v!sub\v!vooruit}\nextsubpage - \fi - \setglobalsystemreference\rt!page{\v!volgendesubpagina}\nextsubpage - \egroup - \fi} - -\def\checksubpages% - {\getfromtwopassdata{\s!subpage}{1}% - \setsubpagenumbers - \global\let\checksubpages=\relax} - -% Omdat \gotonextrealpage gebruik maakt van de hulpfile, -% moet het initialiseren van \realpageno plaatsvinden in -% een later stadium, namelijk zodra referenties worden -% gebruikt (anders gaat het mis op nog niet gedefinieerde -% lijstcommando's e.d.). De eerst aanroep vindt dan ook -% plaats vlak nadat de hulpfile voor de eerste maal is -% ingelezen. - -\countdef\realpageno = 0 \realpageno = 1 -\countdef\userpageno = 1 \userpageno = 1 -\countdef\subpageno = 2 \subpageno = 0 % !! -\countdef\arrangeno = 3 \arrangeno = 0 % !! - -% we don't want conflicts when \pageno is used by other -% packages, like CWEB, so we redefine \pageno - -\newcount\pageno \pageno = 1 - -\def\setuserpageno#1% - {\global\userpageno=#1\relax - \global\pageno=\userpageno} - -\def\realfolio {\the\realpageno} -\def\folio {\the\userpageno} -\def\firstpage {1} -\def\lastpage {1} -\def\currentpage {\the\realpageno} - -\def\gotonextrealpage% - {\global\advance\realpageno by 1 - \ifnum\realpageno>\lastpage - \xdef\lastpage{\realfolio}% - \fi - \setglobalsystemreference\rt!page{\v!eerstepagina}\firstpage - \setglobalsystemreference\rt!page{\v!laatstepagina}\lastpage - \bgroup - \ifnum\realpageno>1 - \advance\realpageno by -1 - \xdef\prevpage{\realfolio}% - \setglobalsystemreference\rt!page{\v!achteruit}\prevpage - \else - \global\let\prevpage=\firstpage - \setglobalsystemreference\rt!page{\v!achteruit}\lastpage - \fi - \setglobalsystemreference\rt!page{\v!vorigepagina}\prevpage - \egroup - \bgroup - \ifnum\realpageno<\lastpage\relax - \advance\realpageno by 1 - \xdef\nextpage{\realfolio}% - \setglobalsystemreference\rt!page{\v!pagina}\nextpage - \setglobalsystemreference\rt!page{\v!vooruit}\nextpage - \bgroup - \xdef\nextnextpage{\realfolio}% - \ifodd\realpageno - \setglobalsystemreference\rt!page{\v!volgendeonevenpagina}\nextnextpage - \else - \setglobalsystemreference\rt!page{\v!volgendeevenpagina}\nextnextpage - \fi - \advance\realpageno by 1 - \xdef\nextnextpage{\realfolio}% - \ifnum\realpageno>\lastpage\relax - %\ifodd\realpageno - % \setglobalsystemreference\rt!page{\v!volgendeonevenpagina}\lastpage - %\else - % \setglobalsystemreference\rt!page{\v!volgendeevenpagina}\lastpage - %\fi - \else - \ifodd\realpageno - \setglobalsystemreference\rt!page{\v!volgendeonevenpagina}\nextnextpage - \else - \setglobalsystemreference\rt!page{\v!volgendeevenpagina}\nextnextpage - \fi - \fi - \egroup - \else - \global\let\nextpage=\lastpage - \setglobalsystemreference\rt!page{\v!pagina}\firstpage - \setglobalsystemreference\rt!page{\v!vooruit}\firstpage - \setglobalsystemreference\rt!page{\v!volgendeonevenpagina}\lastpage - \setglobalsystemreference\rt!page{\v!volgendeevenpagina}\lastpage - \fi - \setglobalsystemreference\rt!page{\v!volgendepagina}\realfolio - \egroup} - -\def\checkrealpage% - {\global\realpageno=0 - \gotonextrealpage - \global\let\checkrealpage=\relax} - -\def\savenofpages% - {\advance\realpageno by -1 - \savecurrentvalue\lastpage{\realfolio}}% - -\def\totaalaantalpaginas% - {\lastpage} - -\def\initializepaper% - {\iflocation - \dosetuppaper - {\papierformaat} - {\the\papierbreedte} - {\the\papierhoogte}% - \else - \dosetuppaper - {\printpapierformaat} - {\the\printpapierbreedte} - {\the\printpapierhoogte}% - \fi} - -\def\myshipout#1% - {\voorpagina % voor de pagebody dus ! - \dontshowcomposition - \ifarrangingpages - \actualarrange - {\thisisrealpage{\realfolio}#1}% - \else - \actualshipout - {\thisisrealpage{\realfolio}#1}% - \fi - \gotonextrealpage - \napagina} - -\newbox\postponedcontent - -\def\flushatshipout% - {\dowithnextbox - {\global\setbox\postponedcontent=\hbox to \!!zeropoint - {%\hskip-\maxdimen % niet hier, gaat mis in acrobat (clipt) - \box\postponedcontent\box\nextbox}% - \global\ht\postponedcontent=\!!zeropoint - \global\dp\postponedcontent=\!!zeropoint - \global\wd\postponedcontent=\!!zeropoint}% - \hbox} - -% \starttypen -% \def\pagestoshipout{1,3,5} -% \stoptypen - -\newcounter\shippedoutpages -\let\pagestoshipout\empty % {1,3,6} -\chardef\whichpagetoshipout=0 % 0=all 1=odd 2=even - -\def\actualshipout#1% - {\doglobal\increment\shippedoutpages - \ifx\pagestoshipout\empty - \ifcase\whichpagetoshipout\relax - \donetrue - \or % 1 - \ifodd\shippedoutpages\relax\donetrue\else\donefalse\fi - \or % 2 - \ifodd\shippedoutpages\relax\donefalse\else\donetrue\fi - \else - \donetrue - \fi - \else - \ExpandBothAfter\doifinsetelse{\shippedoutpages}{\pagestoshipout} - \donetrue\donefalse - \fi - \ifdone - \shipout\vbox - {\forgetall - \offinterlineskip - \mindermeldingen - \vskip-1in - \hskip-1in - \hbox - {\setbox0=\hbox{#1}% just in case there are objects there - \setbox\scratchbox=\hbox - {\the\everyshipout - \ifnum\realpageno=\lastpage\relax - \the\everylastshipout - \global\everylastshipout\emptytoks - \fi}% - \smashbox\scratchbox - \box\scratchbox - \box\postponedcontent % evt ver naar links ! - \box0}}% - \else - \message - {[\ifarrangingpages arranged \fi page - \ifarrangingpages\the\arrangeno\else\the\realpageno\fi\normalspace - not flushed]}% - \setbox0=\hbox{#1}% - \deadcycles=0 - \fi} - -\def\actualarrange#1% - {\setbox0=\hbox{\thisisrealpage{\realfolio}#1}% - \pusharrangedpage0 - \deadcycles=0 } - -\def\goleftonpage% - {\hskip-\linkermargeafstand - \hskip-\linkermargebreedte - %\hskip-\paginascheiding - \hskip-\linkerrandafstand - \hskip-\linkerrandbreedte} - -\def\doswapmargins% - {\let\doswapmargins=\relax % to prevent local swapping - \swapmacros\@@lylinkermargeafstand\@@lyrechtermargeafstand - \swapmacros\@@lylinkerrandafstand\@@lyrechterrandafstand - \swapdimens\linkermargebreedte\rechtermargebreedte - \swapdimens\linkerrandbreedte\rechterrandbreedte} - -\def\doifmarginswapelse#1#2% - {\doifbothsides#1\orsideone#1\orsidetwo#2\od} - -\def\swapmargins% - {\doifmarginswapelse{}{\doswapmargins}} - -% Output routines -% -% \dopagecontents#1#2 : tekst, floats en footnotes -% \dopagebody#1#2 : hoofd, \pagecontents, voet -% \dooutput : outputroutine -% -% \ifinpagebody - -\def\doejectpage#1% - {\bgroup % de \ifdim is nodig omdat - \par % anders een eventuele - \ifdim\pagetotal>\pagegoal\else % laatste regel boven de - %\normalvfill % baseline te staan terwijl - \normalvfil % baseline te staan terwijl - \fi % de vorige bladzijden op - #1% % de baseline staan - \egroup} - -% ^^ NOG NETTER MAKEN, TEGELIJK MET MULTI COLUMNS EN ACHTERGRONDEN! - -\def\ejectpage% - {\doejectpage\eject} - -\def\superejectpage% - {\doejectpage\supereject} - -\def\ejectinsert% - {\flushfootnotes - \bgroup - \noftopfloats=\!!thousand - \nofbotfloats=0 - \doflushfloats - \egroup} - -% De volgende macro's worden gedefinieerd in de module -% colo-ini. Om resetten bij twee maal laden te voorkomen -% checken we wel even. Anders krijgen we een mark-build-up. - -\newif\ifinpagebody - -\doifundefined{pushcolor} {\def\pushcolor{}} -\doifundefined{popcolor} {\def\popcolor{}} -\doifundefined{startcolorpage} {\def\startcolorpage{}} -\doifundefined{stopcolorpage} {\def\stopcolorpage{}} - -% bewaren tvb documentatie -% -% \hbox to \hsize -% {\en -% \switchnaarkorps[5pt]% -% \emergencystretch2em -% \dimen0=\baselineskip -% \baselineskip=\dimen0 plus 1pt -% \hsize=.2\hsize -% \vsize=2\hsize -% \ruledvbox to \vsize{\input tufte \par}\hss -% \ruledvbox to \vsize{\input tufte \par\kern-\prevdepth}\hss -% \ruledvbox to \vsize{\input tufte \par\kern0pt}\hss -% \ruledvbox to \vsize{\input tufte \par\vfill}\hss -% \ruledvbox to \vsize{\input tufte \par\kern-\prevdepth\vfill}} -% -% \hbox to \hsize -% {\en -% \switchnaarkorps[5pt]% -% \emergencystretch2em -% \dimen0=\baselineskip -% \baselineskip=\dimen0 plus 1pt -% \hsize=.18\hsize -% \vsize=2.5\hsize -% \setbox0=\vbox{\input tufte\relax}% -% \ruledvbox to \vsize{\unvcopy0}\hss -% \ruledvbox to \vsize{\unvcopy0\kern-\dp0}\hss -% \ruledvbox to \vsize{\unvcopy0\kern0pt}\hss -% \ruledvbox to \vsize{\unvcopy0\vfill}\hss -% \ruledvbox to \vsize{\unvcopy0\kern-\dp0\vfill}} - -\def\dopagecontents#1#2% \box<n> \unvbox<n> - {\bgroup % niet breedte zetten, kan fractie zijn! - \forgetall - \boxmaxdepth=\maxdepth - \setbox0=\vbox \ifbottomnotes to \teksthoogte \fi - {\edef\currentpagedepth{\the\dp#2}% still to be derived from #1 - \dotopinsertions - #1#2% \fuzzysnappedbox{#1}{#2}% goes wrong - \pushcolor - \ifgridsnapping - \vskip-\currentpagedepth - \vskip\openstrutdepth % \dp\strutbox - \prevdepth\openstrutdepth % \dp\strutbox - \dobotinsertions - \vfil - \else\ifr@ggedbottom - \vskip-\currentpagedepth - \vskip\openstrutdepth % \dp\strutbox - \prevdepth\openstrutdepth % \dp\strutbox - \dobotinsertions - \vfil - \else\ifb@selinebottom - \kern-\currentpagedepth - \kern\maxdepth - \dobotinsertions - \fi\fi\fi - \ifdim\ht\footins>\!!zeropoint % beter dan \ifvoid\footins\else - \kern\skip\footins - \kern\ht\footins - \fi}% -\ifbottomnotes - \ifgridsnapping - \getnoflines\teksthoogte - \advance\noflines by -1 - \scratchdimen=\noflines\lineheight - \advance\scratchdimen by \topskip - \else - \scratchdimen=\ht0 - \fi -\else - \scratchdimen=\!!zeropoint -\fi - \setbox2=\hbox - {\ifvoid\savedfootins \else - \setbox\footins=\box\savedfootins - \fi - \lower\scratchdimen\vbox{\placefootnotes}}% - \smashbox2 -\ifbottomnotes - \ht0=\!!zeropoint -\fi -%% \setbox0= % todo, there must be a faster way to kill funny depths - \vbox to \teksthoogte - {\box0\box2\ifbottomnotes\else\vfill\fi}% -%% \dp0=\!!zeropoint \box0 % new - \egroup} - -\def\dodummypageskip#1% - {\getvalue{\s!dummy\c!commando#1}} - -\setvalue{\s!dummy\c!commando\v!links}% - {\hskip\linkerrandbreedte} - -\setvalue{\s!dummy\c!commando\v!rechts}% - {\hskip\rechterrandbreedte} - -\setvalue{\s!dummy\c!commando\v!boven}% - {\vskip\bovenhoogte} % \vbox to \bovenhoogte{\vss}} - -\setvalue{\s!dummy\c!commando\v!onder}% - {\vskip\onderhoogte} % \vbox to \onderhoogte{\vss}} - -\def\plaatslinkerrandblok {\dodummypageskip\v!links} -\def\plaatsrechterrandblok {\dodummypageskip\v!rechts} - -\def\plaatsboventekstblok {\dodummypageskip\v!boven} -\def\plaatsondertekstblok {\dodummypageskip\v!onder} - -% kan tzt nog eens als: -% -% \newtoks\everyboventekstblok -% -%\def\plaatsboventekstblok% -% {\vbox to \bovenhoogte -% {\the\everyboventekstblok} -% -% \def\doplaatsboventekstblok#1% -% {\vbox to \bovenhoogte -% {\@@tkboventekstvoor#1\@@tkboventekstna\kern\!!zeropoint}% -% \vskip-\bovenhoogte} -% -% \appendtoks\interactiemenus[\v!boven]\to\everyboventekstblok -% -% kan vaker, is namelijk sneller als commalist - -\newtoks\afterpage \newtoks\aftereverypage -\newtoks\beforepage \newtoks\beforeeverypage - -\newif\ifshowgrid \showgridfalse - -\def\toongrid% - {\tracegridsnappingtrue - \showgridtrue} - -\def\doplaatstekstblok#1#2% - {\bgroup - \setbox0=\hbox to \zetbreedte - {\hss % new - \vbox to \teksthoogte % can be < \makeupwidth - {\offinterlineskip % so don't change this - \tekstbreedte=\zetbreedte % - \doifsomething{\@@lytekstbreedte} % - {\tekstbreedte=\@@lytekstbreedte}% - \hsize=\tekstbreedte % local variant of \sethsize - \boxmaxdepth\maxdepth % - \noindent % the contents can be < \hsize - \dopagecontents#1#2}% - \hss}% new -\ifsomebackgroundfound\v!tekst % sneller - \setbox0=\hbox\localframed - [\??ma\v!tekst] - [\c!strut=\v!nee,\c!offset=\v!overlay, - \c!breedte=\zetbreedte,\c!hoogte=\teksthoogte] - {\dp0=\!!zeropoint\box0}% -\fi - \ht0=\teksthoogte - \wd0=\zetbreedte - \dp0=\!!zeropoint % new, maybe a reason for small shifts - \ifshowgrid - \setgridbox2\zetbreedte\teksthoogte - \hbox{\color[red]{\box2}\hskip-\zetbreedte\box0}% - \else - \box0 - \fi - \egroup} - -\def\getmainbox#1#2% - {\setbox0=\vbox - {\offinterlineskip % na \paginaletter ! - \calculatereducedvsizes - \calculatehsizes - \swapmargins - \vskip\hoofdhoogte - \vskip\hoofdafstand - \hbox - {\bgroup - \swapmargins - \goleftonpage - \plaatslinkerrandblok - \hskip\linkerrandafstand - %\showpageseparation - \plaatslinkermargeblok - \hskip\linkermargeafstand - \egroup - \doplaatstekstblok#1#2% - \bgroup - \hskip\rechtermargeafstand - \plaatstestinfo - \plaatsrechtermargeblok - %\showpageseparation - \hskip\rechterrandafstand - \plaatsrechterrandblok - \egroup}% - \vfill} - \smashbox0 - \box0} - -\def\centerpagebox#1% - {\printpapierbreedte=\papierschaal\printpapierbreedte - \printpapierhoogte =\papierschaal\printpapierhoogte - \setbox#1=\vbox to \printpapierhoogte - {\@@ppboven - \hbox to \printpapierbreedte - {\ifdoublesidedprint - \doifbothsides - \@@pplinks\box#1\@@pprechts - \orsideone - \@@pplinks\box#1\@@pprechts - \orsidetwo - \@@pprechts\box#1\@@pplinks - \od - \else - \@@pplinks\box#1\@@pprechts - \fi}% - \par - \@@pponder}} - -\def\offsetprintbox#1% - {\dimen0=\wd#1\dimen2=\ht#1\dimen4=\dp#1% - \setbox#1=\vbox - {\forgetall - \offinterlineskip - \vskip\kopoffset - \doifbothsides - \hskip\rugoffset - \orsideone - \hskip\rugoffset - \orsidetwo - \hskip-\rugoffset - \od - \box#1}% - \wd#1=\dimen0\ht#1=\dimen2\dp#1=\dimen4} - -\def\replicatebox#1#2#3% - {\setbox#1=\vbox - {\forgetall - \offinterlineskip - \dorecurse{#3} - {\hbox{\dorecurse{#2}{\copy#1\hskip\@@lydx}\unskip}% - \vskip\@@lydy} - \unskip}} - -\def\replicatepagebox#1% - {\ifnum\@@lynx>0 \ifnum\@@lyny>0 - \replicatebox{#1}{\@@lynx}{\@@lyny}% - \fi\fi} - -\def\rotatepagebodybox#1#2#3% - {\ifnum#2#3>0 - \setbox#1=\vbox - {\edef\somerotation% - {\ifdubbelzijdig\ifodd\realpageno#2\else#3\fi\else#2\fi}% - \dorotatebox\somerotation\hbox{\box#1}}% - \fi} - -\def\rotatepaperbox#1% - {\rotatepagebodybox{#1}\paperrotation\paperreverse} - -\def\rotateprintbox#1% - {\rotatepagebodybox{#1}\printrotation\printreverse} - -\def\mirrorpagebodybox#1#2% - {\ifcase#2\or - \setbox#1=\vbox - {\domirrorbox\vbox{\box#1}}% - \fi} - -\def\mirrorpaperbox#1% - {\mirrorpagebodybox{#1}\papermirror} - -\def\mirrorprintbox#1% - {\mirrorpagebodybox{#1}\printmirror} - -\def\scalepagebox#1% - {\ifdim\@@lyschaal pt=1pt \else - \setbox#1=\vbox - {\schaal[\c!sx=\@@lyschaal,\c!sy=\@@lyschaal]{\box#1}}% - \papierbreedte=\@@lyschaal\papierbreedte - \papierhoogte =\@@lyschaal\papierhoogte - \fi} - -\def\negateprintbox#1% - {\ifnegateprintbox - \negatecolorbox{#1}% - \fi} - -\def\buildpagebox#1% - {\setbox#1=\vbox to \papierhoogte - {\hsize\papierbreedte - \vskip\kopwit - \doifbothsides - \hskip\rugwit - \orsideone - \hskip\rugwit - \orsidetwo - \hskip\papierbreedte - \hskip-\rugwit - \hskip-\zetbreedte - \od - \box#1}% - \dp#1=\!!zeropoint} - -\def\pagecutmarksymbol% - {\the\realpageno}% - -\def\addpagecutmarks#1% - {\doif{\@@lymarkering}{\v!aan} - {\let\cutmarksymbol=\pagecutmarksymbol - \makecutbox{#1}}} - -\def\addpagecolormarks#1% - {\doif{\@@lymarkering}{\v!kleur} - {\let\cutmarksymbol=\pagecutmarksymbol - \makecutbox{#1}% - \ifnum\horizontalcutmarks>1 \chardef\colormarkoffset=4 \fi - \ifnum\verticalcutmarks >1 \chardef\colormarkoffset=4 \fi - \colormarkbox{#1}}} - -\newif\ifpagebodyornaments \pagebodyornamentstrue -\newif\ifarrangingpages \arrangingpagesfalse - -\let\poparrangedpages=\relax -\let\pusharrangedpage=\relax - -\def\reportarrangedpage#1% - {\showmessage - {\m!systems}{23} - {\the\realpageno.\the\pageno\ifnum\subpageno>0 .\the\subpageno\fi,#1}} - -\def\buildpagebody#1#2% - {\vbox - {\beginrestorecatcodes - \forgetall % igv problemen, check: \boxmaxdepth\maxdimen -\ifnewbackground\enablemode[\systemmodeprefix\v!achtergrond]\fi - \boxmaxdepth\maxdimen % new - \mindermeldingen - \setbox0=\vbox - {\offinterlineskip - \ifpagebodyornaments - \getbackgroundbox - \getlogobox - \bgroup % else footnotes get inconsistent font/baseline - \doconvertfont{\@@lyletter}{}% - \offinterlineskip - \gettextboxes - \egroup - \fi - \getmainbox#1#2}% including footnotes - \buildpagebox0 - \ifpagebodyornaments - \addpagebackground0 - \fi - \ifarrangingpages \else - \addpagecutmarks0 - \replicatepagebox0 - \scalepagebox0 - \mirrorpaperbox0 - \rotatepaperbox0 - \addpagecolormarks0 - \centerpagebox0 -\addprintbackground0 - \mirrorprintbox0 - \rotateprintbox0 - \offsetprintbox0 - \negateprintbox0 - \fi - \box0 - \endrestorecatcodes}} - -\def\addprintbackground#1% - {\ifsomebackgroundfound\v!papier - \setbox#1=\vbox\localframed - [\??ma\v!papier]% - [\c!offset=\v!overlay,\c!strut=\v!nee, - \c!breedte=\printpapierbreedte,\c!hoogte=\printpapierhoogte]% - {\noindent\box#1}% - \fi} - -\def\finishpagebox#1% - {\ifarrangingpages - \addpagecutmarks#1% - \addpagecolormarks#1% - \centerpagebox#1% - \mirrorprintbox#1% - \rotateprintbox#1% - \offsetprintbox#1% - \negateprintbox#1% - \fi} - -% TBV testdoeleinden: - -\def\dotoonprint[#1][#2][#3]% - {\framed - [\c!offset=\v!overlay, - \c!strut=\v!nee] - {\forgetall - \mindermeldingen - \globaldefs=-1 - \dimen0=\pagegoal - \definieerpapierformaat[X][\c!breedte=4em, \c!hoogte=6em]% - \definieerpapierformaat[Y][\c!breedte=12em,\c!hoogte=14em]% - \stelpapierformaatin[#1,X][#2,Y]% - \stellayoutin[#3]% - \setbox0=\vbox - {\framed - [\c!offset=\v!overlay,\c!strut=\v!nee, - \c!breedte=\papierbreedte,\c!hoogte=\papierhoogte] - {\ss ABC\par DEF}}% - \dubbelzijdigfalse - \def\cutmarklength{.5em}% - \addpagecutmarks0% - \replicatepagebox0% - \scalepagebox0% - \mirrorpaperbox0% - \rotatepaperbox0% - \centerpagebox0% - \mirrorprintbox0% - \rotateprintbox0% - \offsetprintbox0% - \pagegoal=\dimen0 - \box0}} - -\def\toonprint% - {\dotripleempty\dotoonprint} - -% \switchnaarkorps[8pt] -% -% \startcombinatie[4*4] -% {\toonprint} {\strut} -% {\toonprint[][][plaats=midden]} {\type{plaats=midden}} -% {\toonprint[][][plaats=midden,markering=aan]} {\type{markering=aan}\break -% \type{plaats=midden}} -% {\toonprint[][][plaats=midden,markering=aan,nx=2]} {\type{markering=aan}\break -% \type{plaats=midden}\break -% \type{nx=2}} -% {\toonprint[][][plaats=links]} {\type{plaats=links}} -% {\toonprint[][][plaats=rechts]} {\type{plaats=rechts}} -% {\toonprint[][][plaats={links,onder}]} {\type{plaats={links,onder}}} -% {\toonprint[][][plaats={rechts,onder}]} {\type{plaats={rechts,onder}}} -% {\toonprint[][][nx=2,ny=1]} {\type{nx=2,ny=1}} -% {\toonprint[][][nx=1,ny=2]} {\type{nx=1,ny=2}} -% {\toonprint[][][nx=2,ny=2]} {\type{nx=2,ny=2}} -% {\toonprint[][][nx=2,ny=2,plaats=midden]} {\type{nx=2,ny=2}\break -% \type{plaats=midden}} -% {\toonprint[][][rugoffset=3pt]} {\type{rugoffset=.5cm}} -% {\toonprint[][][kopoffset=3pt]} {\type{kopoffset=.5cm}} -% {\toonprint[][][schaal=1.5]} {\type{schaal=1.5}} -% {\toonprint[][][schaal=0.8]} {\type{schaal=0.8}} -% \stopcombinatie -% -% \startcombinatie[3*4] -% {\toonprint[liggend][][plaats=midden]} {\type{liggend}} -% {\toonprint[][liggend][plaats=midden]} {\strut\break\type{liggend}} -% {\toonprint[liggend][liggend][plaats=midden]} {\type{liggend}\break\type{liggend}} -% {\toonprint[90][][plaats=midden]} {\type{90}} -% {\toonprint[][90][plaats=midden]} {\strut\break\type{90}} -% {\toonprint[90][90][plaats=midden]} {\type{90}\break\type{90}} -% {\toonprint[180][][plaats=midden]} {\type{180}} -% {\toonprint[][180][plaats=midden]} {\strut\break\type{180}} -% {\toonprint[180][180][plaats=midden]} {\type{180}\break\type{180}} -% {\toonprint[gespiegeld][][plaats=midden]} {\type{gespiegeld}} -% {\toonprint[][gespiegeld][plaats=midden]} {\strut\break\type{gespiegeld}} -% {\toonprint[gespiegeld][gespiegeld][plaats=midden]} {\type{gespiegeld}\break\type{gespiegeld}} -% \stopcombinatie - -\chardef\normalpagebox=255 - -\appendtoks \restoreglobalbodyfont \to \everypagebody -\appendtoks \restorecolumnsettings \to \everypagebody - -\def\dopagebody#1#2% - {\getallmarks - \the\everypagebody - \startcolorpage - \gotonextsubpage % nog eens: als in pagina (tbv standaard opmaak) - \dontshowboxes % dan hier blokkeren en verderop resetten - \naastpagina - \checkreferences - \checkmargeblokken - \dotoks\beforeeverypage - \flushtoks\beforepage - \inpagebodytrue\buildpagebody#1#2% - \flushtoks\afterpage - \dotoks\aftereverypage - \resetpagina - \updatelistreferences - \resetlayoutregels % mischien in shipout - \stopcolorpage} - -\def\beforefinaloutput% - {} - -\def\afterfinaloutput% - {\forgetall - \vskip\!!zeropoint\relax - \ifvoid\normalpagebox - \else - \unvbox\normalpagebox - \penalty\outputpenalty - \fi - \ifnum\outputpenalty>-\@MM\relax - \else - \dosupereject - \fi - \inpagebodytrue % needed for enabling \blanko ! - \dosetbothinserts - \setvsize % this is needed for interacting components, like floats and multicolumns - \adaptfuzzypagegoal} % watch this hack! - -\def\setpagecounters% - {\setuserpageno{\ruwenummer[\s!page]}% - \doifelse{\@@snstatus}{\v!stop} - {\global\subpageno=0} - {\global\subpageno=\ruwenummer[\s!subpage]}} - -\newtoks\pageboundsettings - -\prependtoks \initializepaper \to \pageboundsettings - -\def\dofinaloutput#1#2% - {\beforefinaloutput - \the\everybeforeshipout - \ifspecialbasedsettings - \myshipout{\hbox{\hbox to \!!zeropoint{\the\pageboundsettings}\hbox{\dopagebody#1#2\setpagecounters}}}% - \else - \the\pageboundsettings - \myshipout{\hbox{\dopagebody#1#2\setpagecounters}}% - \fi - \the\everyaftershipout - \afterfinaloutput - \popcolor} % ... and here ... - -\def\donofinaloutput#1#2% - {\beforefinaloutput - \the\everybeforeshipout - \setpagecounters - \message{[-\the\realpageno]}% - \setbox0=\hbox - {\the\everyshipout - \dopagebody#1#2}% - \deadcycles=0 - \gotonextrealpage - \the\everyaftershipout - \afterfinaloutput - \popcolor} % ... and here - -\let\checkpageversion=\relax - -\def\finaloutput#1#2% - {\checkpageversion - \ifverwerken - \ifgeselecteerd - \dofinaloutput#1#2% - \else - \donofinaloutput#1#2% - \fi - \else - \ifgeselecteerd - \donofinaloutput#1#2% - \else - \dofinaloutput#1#2% - \fi - \fi - \resetselectiepagina - \verhoogpaginanummer - \checkpagedimensions - \ifnum\outputpenalty>-\@MM\relax - \else - \dosupereject - \fi - \douitstellen} - -\def\dooutput% - {\finaloutput\unvbox\normalpagebox} - -\maxdeadcycles=1000 - -\output={\dooutput} - -\newbox\leftlogos -\newbox\rightlogos - -\newif\ifnewlogos - -% \logostatus -% -% 0 = niet plaatsen > 0 -% 1 = direkt plaatsen > 1 -% 2 = berekenen en plaatsen > 1 -% 3 = een pagina berekenen en plaatsen > 2 - -\def\logostatus{0} - -\def\gedefinieerdebeeldmerken{} -\def\teplaatsenbeeldmerken{} - -\def\dodefinieerbeeldmerk[#1][#2][#3][#4]% - {\addtocommalist{#1}\gedefinieerdebeeldmerken - \setvalue{\??lo#2#3}{#1}% - \getparameters[\??lo#2#3][#4]% - \gdef\logostatus{2}} - -\def\definieerbeeldmerk% - {\doquadrupleargument\dodefinieerbeeldmerk} - -\def\complexplaatsbeeldmerken[#1]% - {\xdef\teplaatsenbeeldmerken{#1}% - \gdef\logostatus{3}} - -\def\simpleplaatsbeeldmerken% - {\global\let\teplaatsenbeeldmerken=\gedefinieerdebeeldmerken - \gdef\logostatus{3}} - -\definecomplexorsimple\plaatsbeeldmerken - -\def\doplaatsbeeldmerken#1#2% - {\bgroup - \setbox0=\vbox - {\hbox - {\ifnum\logostatus=3 - \def\docommando##1% - {\ExpandBothAfter\doifinset{\getvalue{\??lo#1##1}}{\teplaatsenbeeldmerken} - {#2{\hbox{\getvalue{\??lo#1##1\c!commando}}}}}% - \else - \def\docommando##1% - {\doifvalue{\??lo#1##1\c!status}{\v!start} - {#2{\hbox{\getvalue{\??lo#1##1\c!commando}}}}}% - \fi - \def\dodocommando##1##2##3##4##5##6% - {\hskip\linkerrandafstand - %\hskip\pageseparation - \hbox to \linkermargebreedte{\docommando{##2}\hss}% - \hskip\linkermargeafstand - \hbox to \zetbreedte{\docommando{##3}\hss\docommando{##4}}% - \hskip\rechtermargeafstand - \hbox to \rechtermargebreedte{\hss\docommando{##5}}% - %\hskip\pageseparation - \hskip\rechterrandafstand - \hbox to \rechterrandbreedte{\hss\docommando{##6}}}% - \normalbaselines - \hsmash - {\hbox to \zetbreedte{\hss\docommando\c!midden\hss}}% - \hsmash - {\doifbothsides - \hskip-\rugwit - \orsideone - \hskip-\rugwit - \orsidetwo - \hskip-\papierbreedte - \hskip+\rugwit - \hskip+\zetbreedte - \od - \hbox to \papierbreedte{\docommando\v!pagina\hss}}% - \swapmargins - \goleftonpage - \doifbothsidesoverruled - \dodocommando - {\v!linkerrand}{\v!linkermarge}{\v!links} - {\v!rechts}{\v!rechtermarge}{\v!rechterrand}% - \orsideone - \dodocommando - {\v!linkerrand}{\v!linkermarge}{\v!links} - {\v!rechts}{\v!rechtermarge}{\v!rechterrand}% - \orsidetwo - \dodocommando - {\v!rechterrand}{\v!rechtermarge}{\v!rechts} - {\v!links}{\v!linkermarge}{\v!linkerrand}% - \od}}% - \getboxheight\dimen0\of\box0\relax - \vskip-\dimen0 - \box0 - \egroup} - -\def\setlogobox#1#2% - {\global\setbox#1=\vbox to \papierhoogte - {\offinterlineskip - \mindermeldingen - \calculatereducedvsizes - #2\relax - \vskip-\kopwit - \doplaatsbeeldmerken\v!boven\vsmash - \vskip\kopwit - \doplaatsbeeldmerken\v!hoofd\vsmash - \vskip\hoofdhoogte - \vskip\hoofdafstand - \doplaatsbeeldmerken\v!tekst\vsmash % evt \vbox - \vskip\teksthoogte - \vskip\voetafstand - \vskip\voethoogte - \doplaatsbeeldmerken\v!voet\vbox - \vfilll - \doplaatsbeeldmerken\v!onder\vbox% - \vskip\kopwit} - \smashbox#1} - -\def\setlogoboxes% - {\showmessage{\m!layouts}{7}{}% - \setlogobox\leftlogos\relax - \ifdubbelzijdig - \setlogobox\rightlogos\doswapmargins - \fi} - -\def\getlogobox% - {\ifnum\logostatus>0 - \ifnum\logostatus=3 - \setlogoboxes - \gdef\logostatus{2}% - \else\ifnum\logostatus=2 - \setlogoboxes - \gdef\logostatus{1}% - \else\ifnewlogos - \gdef\logostatus{2}% - \setlogoboxes - \gdef\logostatus{1}% - \global\newlogosfalse - \fi\fi\fi - \doifmarginswapelse - {\copy\leftlogos} - {\copy\rightlogos}% - \fi} - -% Het gebruik van \skip's spaart \dimen's. - -\newskip\xpositie -\newskip\ypositie - -\newskip\xafmeting -\newskip\yafmeting - -\newskip\xoffset -\newskip\yoffset - -\newbox\positiebox - -\def\startpositioneren% - {\bgroup - \xpositie=\!!zeropoint - \ypositie=\!!zeropoint - \xafmeting=\!!zeropoint - \yafmeting=\!!zeropoint - \xoffset=\!!zeropoint - \yoffset=\!!zeropoint - \hfuzz=30cm - \vfuzz=30cm - \setbox\positiebox=\hbox\bgroup} - -\def\stoppositioneren% - {\doifnot{\@@psoffset}{\v!ja} - {\global\xoffset=\!!zeropoint - \global\yoffset=\!!zeropoint}% - \global\advance\xafmeting by \xoffset - \global\advance\yafmeting by \yoffset - \egroup - \vbox to \yafmeting - {\vskip\yoffset - \hbox to \xafmeting - {\hskip\xoffset - \box\positiebox - \hfill}% - \vfill}% - \egroup} - -\def\resetpositioneren% - {\getparameters[\??ps] - [\c!status=\v!start, - \c!eenheid=\s!cm, - \c!factor=1, - \c!xfactor=\@@psfactor, - \c!yfactor=\@@psfactor, - \c!schaal=1, - \c!xschaal=\@@psschaal, - \c!yschaal=\@@psschaal, - \c!xstap=\v!absoluut, - \c!ystap=\v!absoluut, - \c!xoffset=\!!zeropoint, - \c!yoffset=\!!zeropoint]} - -\resetpositioneren - -\def\stelpositionerenin% - {\resetpositioneren - \dodoubleargument\getparameters[\??ps]}% - -% \def\positioneer(#1,#2)#3% \nextbox -% {\setbox0=\hbox{#3}% -% \def\berekenpositioneren##1##2##3##4##5##6##7##8##9% -% {\skip0=##1\@@pseenheid\relax -% \skip0=##8\skip0\relax -% \skip0=##9\skip0\relax -% \doifelse{##2}{\v!relatief}% -% {\advance\skip0 by ##3\relax -% \advance\skip0 by ##4\relax -% \def##4{\!!zeropoint}}% -% {\advance\skip0 by ##4\relax}% -% ##3=\skip0\relax -% \doifnot{\@@psstatus}{\v!overlay} -% {\skip2=##5\relax -% \advance\skip2 by ##3\relax -% \ifdim##3<-##7\relax\global##7=-##3\relax\fi -% \ifdim\skip2>##6\relax\global##6=\skip2\relax\fi}}% -% \berekenpositioneren{#1}{\@@psxstap}{\xpositie} -% {\@@psxoffset}{\wd0}{\xafmeting}{\xoffset} -% {\@@psxschaal}{\@@psxfactor}% -% \skip4=\ht0 \advance\skip4 by \dp0 -% \berekenpositioneren{#2}{\@@psystap}{\ypositie} -% {\@@psyoffset}{\skip4}{\yafmeting}{\yoffset} -% {\@@psyschaal}{\@@psyfactor}% -% \vbox to \!!zeropoint % kan beter. -% {\vskip\ypositie -% \hbox to \!!zeropoint -% {\hskip\xpositie -% \box0 -% \hskip-\xpositie}% -% \vskip-\ypositie}% -% \ignorespaces} - -\def\berekenpositioneren#1#2#3#4#5#6#7#8#9% - {\setdimensionwithunit\scratchskip{#1}\@@pseenheid % \scratchskip=#1\@@pseenheid - \scratchskip=#8\scratchskip - \scratchskip=#9\scratchskip - \advance\scratchskip by #4\relax - \doif{#2}{\v!relatief}% - {\advance\scratchskip by #3% - \let#4\!!zeropoint}% - #3=\scratchskip\relax - \doifnot{\@@psstatus}{\v!overlay} - {\scratchskip=#5\relax - \advance\scratchskip by #3\relax - \ifdim#3<-#7\relax\global#7=-#3\relax\fi - \ifdim\scratchskip>#6\relax\global#6=\scratchskip\relax\fi}} - -\def\positioneer% - {\dosingleempty\dopositioneer} - -\def\dopositioneer[#1]#2(#3,#4)% - {\dowithnextbox - {\bgroup - \getparameters[\??ps][#1]% - \dontcomplain - \berekenpositioneren{#3}{\@@psxstap}{\xpositie} - {\@@psxoffset}{\wd\nextbox}{\xafmeting}{\xoffset} - {\@@psxschaal}{\@@psxfactor}% - \scratchdimen=\ht\nextbox \advance\scratchdimen by \dp\nextbox - \berekenpositioneren{#4}{\@@psystap}{\ypositie} - {\@@psyoffset}{\scratchdimen}{\yafmeting}{\yoffset} - {\@@psyschaal}{\@@psyfactor}% - \vbox to \!!zeropoint % kan beter. - {\vskip\ypositie - \hbox to \!!zeropoint - {\hskip\xpositie - \box\nextbox - \hskip-\xpositie}% - \vskip-\ypositie}% - \xdef\dopoppositioneer% - {\xpositie=\the\xpositie - \ypositie=\the\ypositie - \noexpand\def\noexpand\@@psxoffset{\@@psxoffset}% - \noexpand\def\noexpand\@@psyoffset{\@@psyoffset}}% - \egroup - \dopoppositioneer - \ignorespaces} - \hbox} - -\newif\ifbinnenkolommen -\newif\if@@klbalanceren -\newif\if@@kluitlijnen - -\binnenkolommenfalse - -\def\stelkolommenin% - {\dodoubleargument\dostelkolommenin} - -\def\stelkolommenin[#1]% - {\getparameters[\??kl][#1]% - \nofcolumns=\@@kln\relax - \processaction - [\@@kllijn] - [ \v!aan=>\let\betweencolumns=\linebetweencolumns, - \v!uit=>\let\betweencolumns=\spacebetweencolumns, - \s!default=>\let\betweencolumns=\spacebetweencolumns, - \s!unknown=>\let\betweencolumns=\@@kllijn]} - -\def\linebetweencolumns% - {\bgroup - \startcolorpage - \ifdim\@@klafstand>\!!zeropoint - \dimen0=\@@klafstand - \else - \dimen0=\linewidth - \fi - \advance\dimen0 by -\linewidth - \hskip.5\dimen0 - \vrule - \!!width\linewidth - \ifb@selinebottom\!!depth\strutdepth\fi - \hskip.5\dimen0\relax - \stopcolorpage - \egroup} - -\def\spacebetweencolumns% - {\hskip\@@klafstand} - -\presetlocalframed[\??kl] - -\def\backgroundfinishcolumnbox% - {\doifinsetelse{\@@kloffset}{\v!geen,\v!overlay} - {\let\@@kloffset\!!zeropoint} - {\scratchdimen=\@@kloffset - \advance\scratchdimen by -\@@kllijndikte - \edef\@@kloffset{\the\scratchdimen}}% - \localframed - [\??kl] - [\c!strut=\v!nee, - \c!breedte=\v!passend, - \c!hoogte=\v!passend, - \c!uitlijnen=]} - -\let\restorecolumnsettings\relax - -\def\complexstartkolommen[#1]% %% \startkolommen - {\bgroup - \let\stopkolommen=\egroup - \ifbinnenkolommen - \else - \stelkolommenin[#1]% - \ifnum\@@kln>1\relax - \witruimte - \begingroup - \doif{\@@kloptie}{\v!achtergrond} - {\let\finishcolumnbox = \backgroundfinishcolumnbox - \def\columntextoffset{\@@kloffset}}% - \ifx\@@klcommando\empty\else - \let\postprocesscolumnline\@@klcommando - \fi - \doifelsenothing{\@@klhoogte} - {\heightencolumnsfalse} - {\heightencolumnstrue}% - \doifelse{\@@klrichting}{\v!rechts} - {\reversecolumnsfalse} - {\reversecolumnstrue}% - \doifelse{\@@klbalanceren}{\v!ja} - {\balancecolumnstrue} - {\balancecolumnsfalse}% - \processaction % ook nog: laatsteuitlijnen - [\@@kluitlijnen] - [ \v!ja=>\stretchcolumnstrue - \inheritcolumnsfalse, - \v!nee=>\stretchcolumnsfalse - \inheritcolumnsfalse, - \v!tekst=>\stretchcolumnsfalse - \inheritcolumnstrue]% - \nofcolumns=\@@kln - % - % probably more is needed, and how about nesting save's - % - \savecurrentblanko - \savecurrentwitruimte - \def\restorecolumnsettings% - {\boxmaxdepth\maxdimen % done elsewhere - \restorecurrentblanko - \restorecurrentwitruimte}% - % - \edef\fixedcolumnheight{\@@klhoogte}% -\edef\minbalancetoplines{\@@klnboven}% - \steltolerantiein[\@@kltolerantie]% %% \startkolommen - \stelblankoin[\@@klblanko]% - \ifdim\tussenwit>\!!zeropoint - \stelwitruimtein[\@@klblanko]% - \fi - \def\stopkolommen% - {\endmulticolumns - \global\binnenkolommenfalse - \endgroup - \egroup}% - \global\binnenkolommentrue - \beginmulticolumns - \fi - \fi} - -\definecomplexorsimpleempty\startkolommen - -%\def\kolom% -% {\ifbinnenkolommen -% \ejectcolumn -% \fi} - -\def\preferredejectcolumn% - {\goodbreak} - -% \def\forcedejectcolumn% -% {\vfil -% \penalty-200 -% \prevdepth=-1000pt % signals top of column to \blanko -% \vfilneg} - -\def\forcedejectcolumn% - {\par % todo: since - {\testrulewidth\!!zeropoint\ruledvskip\teksthoogte} % we misuse a - \penalty-200 % side effect - \vskip-\teksthoogte - \prevdepth=-1000pt} % signals top of column to \blanko - -\def\kolom% - {\dosingleempty\dokolom} - -\def\dokolom[#1]% - {\ifbinnenkolommen - \iffirstargument - \processaction - [#1] - [ \v!ja=>\forcedejectcolumn, - \v!voorkeur=>\preferredejectcolumn]% - \else - \preferredejectcolumn - \fi - \fi} - -%D Undocumented and still under development. - -\def\startsimplecolumns% - {\dosingleempty\dostartsimplecolumns} - -\def\dostartsimplecolumns[#1]% - {\bgroup - \getparameters[\??kl][\c!breedte=\hsize,\c!afstand=1.5\korpsgrootte,\c!n=2,#1]% - \setrigidcolumnhsize\@@klbreedte\@@klafstand\@@kln - \setbox\scratchbox=\vbox\bgroup - \forgetall} % \blanko[\v!blokkeer] - -\def\stopsimplecolumns% - {\removebottomthings - \egroup - \rigidcolumnbalance\scratchbox - \egroup} - -\def\dotoonkader[#1][#2]% - {\ifsecondargument - \stelachtergrondenin - [#1][#2] - [\c!achtergrond=, - \c!kader=\v!aan, - \c!hoek=\v!recht, - \c!kaderoffset=\!!zeropoint, - \c!kaderdiepte=\!!zeropoint, - \c!kaderkleur=] - \else\iffirstargument - \toonkader - [\v!hoofd,\v!tekst,\v!voet] - [#1] - \else - \toonkader - [\v!hoofd,\v!tekst,\v!voet] - [\v!linkerrand,\v!linkermarge, - \v!tekst, - \v!rechtermarge,\v!rechterrand] - \fi\fi - \stelachtergrondenin - [\c!status=\v!herhaal]} - -\def\toonkader{\dodoubleempty\dotoonkader} - -\def\tooninstellingA#1#2% - {#1&\PtToCm{\the#2}&\the#2&\tttf\string#2\cr} - -\def\tooninstellingB#1#2#3% - {#1&#3&\tttf\string#3\cr} - -\def\tooninstellingC#1#2% \relax is really needed here ! - {#1&\dimen0=#2\PtToCm{\the\dimen0}&\dimen0=#2\relax\the\dimen0&\tttf\string#2\cr} - -%\startinterface english - -\def\tooninstellingen% fallback - {\noindent - \vbox - {\forgetall - \mindermeldingen - \switchtobodyfont[\v!klein] - \tabskip\!!zeropoint - \halign - {\strut##\quad\hss&##\quad\hss&##\quad\hss&##\hss\cr - \tooninstellingA{paperheight} \paperheight - \tooninstellingA{paperwidth} \paperwidth - \tooninstellingA{printpaperheight} \printpaperheight - \tooninstellingA{printpaperwidth} \printpaperwidth - \noalign{\blanko} - \tooninstellingA{topspace} \topspace - \tooninstellingA{backspace} \backspace - \tooninstellingA{height} \makeupheight - \tooninstellingA{width} \makeupwidth - \noalign{\blanko} - \tooninstellingA{top} \topheight - \tooninstellingC{topdistance} \topdistance - \tooninstellingA{header} \headerheight - \tooninstellingC{headerdistance} \headerdistance - \tooninstellingA{textheight} \textheight - \tooninstellingC{footerdistance} \footerdistance - \tooninstellingA{footer} \footerheight - \tooninstellingC{bottomdistance} \bottomdistance - \tooninstellingA{bottom} \bottomheight - \noalign{\blanko} - \tooninstellingA{leftedge} \leftedgewidth - \tooninstellingC{leftedgedistance} \leftedgedistance - \tooninstellingA{leftmargin} \leftmarginwidth - \tooninstellingC{leftmargindistance} \leftmargindistance - \tooninstellingA{textwidth} \textwidth - \tooninstellingC{rightmargindistance}\rightmargindistance - \tooninstellingA{rightmargin} \rightmarginwidth - \tooninstellingC{rightedgedistance} \rightedgedistance - \tooninstellingA{rightedge} \rightedgewidth - \noalign{\blanko} - \tooninstellingB{bodyfontsize} \the \globalbodyfontsize - \noalign{\blanko} - \tooninstellingB{line} \relax \normallineheight - \tooninstellingB{height} \relax \strutheightfactor - \tooninstellingB{depth} \relax \strutdepthfactor - \tooninstellingB{topskip} \relax \topskipfactor - \tooninstellingB{maxdepth} \relax \maxdepthfactor}}} - -%\stopinterface - -\startinterface dutch - -\def\tooninstellingen% - {\noindent - \vbox - {\forgetall - \mindermeldingen - \switchtobodyfont[\v!klein] - \tabskip\!!zeropoint - \halign - {\strut##\quad\hss&##\quad\hss&##\quad\hss&##\hss\cr - \tooninstellingA{papierhoogte} \papierhoogte - \tooninstellingA{papierbreedte} \papierbreedte - \tooninstellingA{printpapierhoogte} \printpapierhoogte - \tooninstellingA{printpapierbreedte} \printpapierbreedte - \noalign{\blanko} - \tooninstellingA{kopwit} \kopwit - \tooninstellingA{rugwit} \rugwit - \tooninstellingA{hoogte} \zethoogte - \tooninstellingA{breedte} \zetbreedte - \noalign{\blanko} - \tooninstellingA{boven} \bovenhoogte - \tooninstellingC{bovenafstand} \bovenafstand - \tooninstellingA{hoofd} \hoofdhoogte - \tooninstellingC{hoofdafstand} \hoofdafstand - \tooninstellingA{teksthoogte} \teksthoogte - \tooninstellingC{voetafstand} \voetafstand - \tooninstellingA{voet} \voethoogte - \tooninstellingC{onderafstand} \onderafstand - \tooninstellingA{onder} \onderhoogte - \noalign{\blanko} - \tooninstellingA{linkerrand} \linkerrandbreedte - \tooninstellingC{linkerrandafstand} \linkerrandafstand - \tooninstellingA{linkermarge} \linkermargebreedte - \tooninstellingC{linkermargeafstand} \linkermargeafstand - \tooninstellingA{tekstbreedte} \tekstbreedte - \tooninstellingC{rechtermargeafstand}\rechtermargeafstand - \tooninstellingA{rechtermarge} \rechtermargebreedte - \tooninstellingC{rechterrandafstand} \rechterrandafstand - \tooninstellingA{rechterrand} \rechterrandbreedte - \noalign{\blanko} - \tooninstellingB{korps} \the \globalbodyfontsize - \noalign{\blanko} - \tooninstellingB{regel} \relax \normallineheight - \tooninstellingB{hoogte} \relax \strutheightfactor - \tooninstellingB{diepte} \relax \strutdepthfactor - \tooninstellingB{boven} \relax \topskipfactor - \tooninstellingB{onder} \relax \maxdepthfactor}}} - -\stopinterface - -\startinterface german - -\def\tooninstellingen% - {\noindent - \vbox - {\forgetall - \mindermeldingen - \switchtobodyfont[\v!klein] - \tabskip\!!zeropoint - \halign - {\strut##\quad\hss&##\quad\hss&##\quad\hss&##\hss\cr - \tooninstellingA{papierhoehe} \papierhoehe - \tooninstellingA{papierbreite} \papierbreite - \tooninstellingA{printpapierhoehe} \printpapierhoehe - \tooninstellingA{printpapierbreite} \printpapierbreite - \noalign{\blanko} - \tooninstellingA{kopfweite} \kopfweite - \tooninstellingA{rumpfweite} \rumpfweite - \tooninstellingA{hoehe} \satzhoehe - \tooninstellingA{breite} \satzbreite - \noalign{\blanko} - \tooninstellingA{oben} \hoeheoben - \tooninstellingC{abstandoben} \abstandoben - \tooninstellingA{kopfzeile} \kopfzeilenhoehe - \tooninstellingC{kopfzeilenabstand} \kopfzeilenabstand - \tooninstellingA{texthoehe} \texthoehe - \tooninstellingC{fusszeileabstand} \fusszeileabstand - \tooninstellingA{fusszeilen} \fusszeilenhoehe - \tooninstellingC{abstandunten} \abstandunten - \tooninstellingA{hoeheunten} \hoeheunten - \noalign{\blanko} - \tooninstellingA{linkerrand} \breitelinkerrand - \tooninstellingC{abstandlinkerrand} \abstandlinkerrand - \tooninstellingA{linkemarginal} \linkemarginalbreite - \tooninstellingC{linkemarginalafstand} \linkemarginalafstand - \tooninstellingA{textbreite} \textbreite - \tooninstellingC{rechtemarginalafstand}\rechtemarginalafstand - \tooninstellingA{rechtemarginal} \rechtemarginalbreite - \tooninstellingC{abstandrechterrand} \abstandrechterrand - \tooninstellingA{rechterrand} \breiterechterrand - \noalign{\blanko} - \tooninstellingB{fliesstext} \the \globalbodyfontsize - \noalign{\blanko} - \tooninstellingB{linie} \relax \normallineheight - \tooninstellingB{hoehe} \relax \strutheightfactor - \tooninstellingB{tiefe} \relax \strutdepthfactor - \tooninstellingB{topskip} \relax \topskipfactor - \tooninstellingB{maxdepth} \relax \maxdepthfactor}}} - -\stopinterface - -\startinterface czech - -\def\tooninstellingen% - {\noindent - \vbox - {\forgetall - \mindermeldingen - \switchtobodyfont[\v!klein] - \tabskip\!!zeropoint - \halign - {\strut##\quad\hss&##\quad\hss&##\quad\hss&##\hss\cr - \tooninstellingA{vyskapapiru} \vyskapapiru - \tooninstellingA{sirkapapiru} \sirkapapiru - \tooninstellingA{vyskatiskpapiru} \vyskatiskpapiru - \tooninstellingA{sirkatiskpapiru} \sirkatiskpapiru - \tooninstellingA{hornimezera} \hornimezera - \tooninstellingA{spodnimezera} \spodnimezera - \tooninstellingA{vyska} \vyskasazby - \tooninstellingA{breite} \sirkasazby - \tooninstellingA{vyskatextu} \vyskatextu - \tooninstellingA{sirkatextu} \sirkatextu - \tooninstellingA{horejsek} \vyskahorejsku - \tooninstellingC{vzdalenosthorejsku} \vzdalenosthorejsku - \tooninstellingA{zahlavi} \vyskazahlavi - \tooninstellingC{vzdalenostzahlavi} \vzdalenostzahlavi - \tooninstellingC{fusszeileabstand} \vzdalenostupati - \tooninstellingA{upati} \vyskaupati - \tooninstellingC{vzdalenostspodku} \vzdalenostspodku - \tooninstellingA{spodek} \vyakaspodku - \tooninstellingA{levyokraj} \sirkalevehookraje - \tooninstellingC{vzdalenostlevehookraje}\vzdalenostlevehookraje - \tooninstellingA{levamarginalie} \sirkalevemarginalie - \tooninstellingC{vzdalenostlevemarginalie}\vzdalenostlevemarginalie - \tooninstellingC{vzdalenostpravemarginalie}\vzdalenostpravemarginalie - \tooninstellingA{pravamarginalie} \sirkapravemarginalie - \tooninstellingC{vzdalenostpravehookraje}\vzdalenostpravehookraje - \tooninstellingA{pravyokraj} \sirkapravehookraje - \noalign{\blanko} - \tooninstellingB{zakladnivelikost} \the \globalbodyfontsize - \noalign{\blanko} - \tooninstellingB{linka} \relax \normallineheight - \tooninstellingB{vyska} \relax \strutheightfactor - \tooninstellingB{hloubka} \relax \strutdepthfactor - \tooninstellingB{topskip} \relax \topskipfactor - \tooninstellingB{maxdepth} \relax \maxdepthfactor}}} - -\stopinterface - -\startinterface romanian - -\def\tooninstellingen% - {\noindent - \vbox - {\forgetall - \mindermeldingen - \switchtobodyfont[\v!klein] - \tabskip\!!zeropoint - \halign - {\strut##\quad\hss&##\quad\hss&##\quad\hss&##\hss\cr - \tooninstellingA{paperheight} \paperheight - \tooninstellingA{paperwidth} \paperwidth - \tooninstellingA{printpaperheight} \printpaperheight - \tooninstellingA{printpaperwidth} \printpaperwidth - \noalign{\blanko} - \tooninstellingA{topspace} \topspace - \tooninstellingA{backspace} \backspace - \tooninstellingA{height} \makeupheight - \tooninstellingA{width} \makeupwidth - \noalign{\blanko} - \tooninstellingA{top} \topheight - \tooninstellingC{topdistance} \topdistance - \tooninstellingA{header} \headerheight - \tooninstellingC{headerdistance} \headerdistance - \tooninstellingA{textheight} \textheight - \tooninstellingC{footerdistance} \footerdistance - \tooninstellingA{footer} \footerheight - \tooninstellingC{bottomdistance} \bottomdistance - \tooninstellingA{bottom} \bottomheight - \noalign{\blanko} - \tooninstellingA{leftedge} \leftedgewidth - \tooninstellingC{leftedgedistance} \leftedgedistance - \tooninstellingA{leftmargin} \leftmarginwidth - \tooninstellingC{leftmargindistance} \leftmargindistance - \tooninstellingA{textwidth} \textwidth - \tooninstellingC{rightmargindistance}\rightmargindistance - \tooninstellingA{rightmargin} \rightmarginwidth - \tooninstellingC{rightedgedistance} \rightedgedistance - \tooninstellingA{rightedge} \rightedgewidth - \noalign{\blanko} - \tooninstellingB{bodyfontsize} \the \globalbodyfontsize - \noalign{\blanko} - \tooninstellingB{line} \relax \normallineheight - \tooninstellingB{height} \relax \strutheightfactor - \tooninstellingB{depth} \relax \strutdepthfactor - \tooninstellingB{topskip} \relax \topskipfactor - \tooninstellingB{maxdepth} \relax \maxdepthfactor}}} - -\stopinterface - -\def\toonlayout% interfereert lelijk met een \typefile er na - {\bgroup - \pagina - \toonkader - \stellayoutin[\c!markering=\v!aan] - \dorecurse{4}{\tooninstellingen\pagina} - \egroup} - -\newif\iflowinmargin - -\def\stelinmargein% - {\dodoubleempty\dostelinmargein} - -\def\dostelinmargein[#1][#2]% - {\ifsecondargument - \doifundefinedelse{\??im#1\c!offset} - {\presetlocalframed - [\??im#1]% - \getparameters - [\??im#1] - [\c!kader=\v!uit, - \c!offset=\v!overlay, - \c!regel=1, - \c!scheider=, - \c!breedte=\v!ruim, - \c!afstand=\!!zeropoint, - \c!letter=\@@imletter, - \c!kleur=\@@imkleur, - \c!plaats=\@@implaats, - \c!uitlijnen=\@@imuitlijnen, - \c!voor=\@@imvoor, - \c!na=\@@imna, - #2]} - {\getparameters[\??im#1][#2]}% - \else - \getparameters[\??im][#1]% - \fi} - -\let\margetekstafstand = \!!zeropoint -\def\margetekstregels {1} -\def\margetekstnummer {0} -\let\margetekstscheider = \empty - -\def\margestrutheight{\ht\strutbox} - -\def\maakmargetekstblok#1#2#3#4#5#6% - {#4\relax - \bgroup - \forgetall % added, else problems with 'center' and nested itemize - \mindermeldingen - \hsize#1\relax - \ifnum\margetekstnummer=0 - \def\margetekstnummer{#2}% - \fi -\doifnumberelse{\margetekstnummer} - {\ifnum\margetekstnummer>25 % to be translated - \writestatus{\m!systems}{potential margin stack overflow (\margetekstnummer)}% - \fi} - {}% - \processaction - [\getvalue{\??im\margetekstnummer\c!uitlijnen}] - [ \v!ja=>\setvalue{\??im\margetekstnummer\c!uitlijnen}{#2}, - \v!nee=>\setvalue{\??im\margetekstnummer\c!uitlijnen}{\v!normaal}, - \v!binnen=>\setvalue{\??im\margetekstnummer\c!uitlijnen}{#2}, - \v!buiten=>\setvalue{\??im\margetekstnummer\c!uitlijnen}{#3}, - \v!links=>\setvalue{\??im\margetekstnummer\c!uitlijnen}{\v!links}, - \v!midden=>\setvalue{\??im\margetekstnummer\c!uitlijnen}{\v!midden}, - \v!rechts=>\setvalue{\??im\margetekstnummer\c!uitlijnen}{\v!rechts}, - \s!default=>\setvalue{\??im\margetekstnummer\c!uitlijnen}{#2}]% - \setbox0=\vbox\localframed - [\??im\margetekstnummer] - [\c!strut=\v!nee] - {\decrement\margetekstregels - \@@imvoor - \doattributes - {\??im\margetekstnummer}\c!letter\c!kleur - {\dorecurse{\margetekstregels}{\strut\\}% - \xdef\margestrutheight{\the\ht\strutbox}% - \begstrut#6\endstrut\endgraf}% - \@@imna}% - \ht0=\ht\strutbox - \box0 - \egroup - #5\relax} - -\def\plaatsmargetekstscheider% - {\ifnum\margincontent>0 - \bgroup - \dimen0=\margetekstregels\lineheight - \advance\dimen0 by -\lineheight - \lower\dimen0\hbox{\margetekstscheider}% - \egroup - \fi} - -\def\linkermargetekstblok#1% - {\maakmargetekstblok - {\linkermargebreedte} - {\v!links}{\v!rechts} - {\llap{\plaatsmargetekstscheider}}{\hskip\margetekstafstand} - {#1}} - -\def\rechtermargetekstblok#1% - {\maakmargetekstblok - {\rechtermargebreedte} - {\v!rechts}{\v!links} - {\hskip\margetekstafstand}{\rlap{\plaatsmargetekstscheider}} - {#1}} - -\def\doplacemargintext#1#2#3% - {\strut - \setbox0=\hbox{#1}% - \dimen0=\ht0 - \advance\dimen0 by \dp0 - \ifdim\dimen0>\marginheight - \global\marginheight=\dimen0 - \fi - \setbox0=\hbox - {#2{\hskip#3\strut - \iflowinmargin\else - \dimen0=\dp\strutbox - \advance\dimen0 by \margestrutheight - \advance\dimen0 by -\ht\strutbox - \raise\dimen0 - \fi - \box0}}% - \ht0=\!!zeropoint - \dp0=\!!zeropoint - \gdef\margestrutheight{\the\ht\strutbox}% - %\vadjust{\box0}} % fails in high math lines, let it be - %\hbox{\lower\dp\strutbox\box0}} % alas, wrong lapping, therefore useless - \dopositionmarginbox0} - -%D This approach permits us to implement a better mechanism -%D later. - -\ifx\dopositionmarginbox\undefined - \def\dopositionmarginbox#1{\vadjust{\box#1}} -\fi - -\def\doinlinker#1% - {\doplacemargintext - {\linkermargetekstblok{#1}\hskip\linkermargeafstand} - \llap\!!zeropoint} - -\def\doinrechter#1% - {\doplacemargintext - {\hskip\rechtermargeafstand\rechtermargetekstblok{#1}} - \rlap\hsize} - -\newcounter \nofmarginnotes -\newif \iftrackingmarginnotes -\newif \ifrightmargin % documenteren - -\definetwopasslist{\s!margin} - -\def\domarginreference% - {\doglobal\increment\nofmarginnotes\relax - \edef\writemarref% - {\writeutilitycommand% - {\twopassentry% - {\s!margin}% - {\nofmarginnotes}% - {\noexpand\realfolio}}}% - \writemarref} - -\def\dodoinmargenormal#1#2#3#4% - {\iffirstsidefloatparagraph\geenwitruimte\fi % zo laat mogelijk - \ifodd#1\relax - \rightmargintrue - #3{#4}% - \else - \rightmarginfalse - #2{#4}% - \fi} - -\def\doinmargenormal#1#2#3% - {\bgroup - \iftrackingmarginnotes - \gettwopassdata{\s!margin}% - \iftwopassdatafound - \dodoinmargenormal\twopassdata#1#2{#3}% - \else - \dodoinmargenormal\realfolio#1#2{#3}% - \fi - \domarginreference - \else - \dodoinmargenormal\realfolio#1#2{#3}% - \fi - \egroup} - -\def\doinmargereverse#1#2#3% - {\dodoinmargenormal\realfolio#2#1{#3}} - -\def\doinmarge[#1][#2][#3][#4][#5]#6% - {\doifcommonelse{+,-,\v!laag}{#4} - {\dodoinmarge[#1][#2][#3][#4][#5]{#6}} - {\dodoinmarge[#1][#2][#3][][#4]{#6}}% - \ignorespaces} - -\def\dodoinmarge[#1][#2][#3][#4][#5]#6% - {\ignorespaces - \doifinsetelse{\v!laag}{#4} - {\lowinmargintrue} - {\lowinmarginfalse}% - \processaction - [#1] - [ \v!links=>#2{#6}, - \v!rechts=>#3{#6}, - \s!unknown=>\ifdubbelzijdig - \doifcommonelse{+,-}{#4} - {\doinmargereverse#2#3{#6}} - {\doinmargenormal#2#3{#6}}% - \else - #2{#6}% - \fi]% - \rawpagereference{\s!mar}{#5}% - \ignorespaces} - -\def\inlinker% - {\indentation\doquintupleempty\doinmarge - [\v!links][\doinlinker][\doinrechter]} - -\def\inrechter% - {\indentation\doquintupleempty\doinmarge - [\v!rechts][\doinlinker][\doinrechter]} - -\def\inmarge% - {\doquintupleempty\doinmarge - [\@@implaats][\doinlinker][\doinrechter]} - -\def\inanderemarge% - {\doquintupleempty\doinmarge - [\@@implaats][\doinrechter][\doinlinker]} - -\newcounter\margincontent - -\def\flushmargincontent% [#1][#2]#3% hier plaats 'globaal' (geen 1,2 enz) - {\doinmarge[\@@implaats][\doinlinker][\doinrechter]} % [#1][#2]{#3}} - -\newdimen\marginheight - -\let\restoreinterlinepenalty=\relax - -\def\flushmargincontents% - {\restoreinterlinepenalty % here? - \ifnum\margincontent>0 % called quite often, so we - \expandafter\doflushmargincontents % speed up the \fi scan by - \fi} % using a \do.. - -% \def\doflushmargincontents% % links + rechts -% {\bgroup -% \forgetall -% \global\marginheight\!!zeropoint -% \dorecurse{\margincontent} -% {\bgroup -% \edef\margetekstafstand {\getvalue{\??im\recurselevel\c!afstand}}% -% \edef\margetekstregels {\getvalue{\??im\recurselevel\c!regel}}% -% \edef\margetekstscheider{\getvalue{\??im\recurselevel\c!scheider}}% -% \let\margetekstnummer=\recurselevel -% \getvalue{\??im\recurselevel}% -% \global\setvalue{\??im\recurselevel}{}% -% \egroup}% -% \ifdim\marginheight>\lineheight % This is something real dirty! -% \advance\marginheight by \pagetotal -% \advance\marginheight by \lineheight % a sort of bonus -% \ifdim\marginheight>\pagegoal -% \xdef\restoreinterlinepenalty% -% {\global\let\restoreinterlinepenalty\relax -% \global\interlinepenalty=\the\interlinepenalty}% -% \global\interlinepenalty=10000 -% \fi -% \else % We need the above because interlinepenalties overrule vadjusted \nobreaks. -% %\vadjust -% % {\forgetall -% % \global\advance\marginheight by \lineheight -% % \global\divide\marginheight by \lineheight -% % \dorecurse{\number\marginheight} -% % {\nobreak\vskip\lineheight}% -% % \kern-\number\marginheight\lineheight}% -% \vadjust{\nobreak}% -% \fi -% \doglobal\newcounter\margincontent -% \egroup} - -\def\doflushmargincontents% % links + rechts - {\bgroup - \forgetall - \global\marginheight\!!zeropoint - \dorecurse{\margincontent} - {\bgroup - \edef\margetekstafstand {\getvalue{\??im\recurselevel\c!afstand}}% - \edef\margetekstregels {\getvalue{\??im\recurselevel\c!regel}}% - \edef\margetekstscheider{\getvalue{\??im\recurselevel\c!scheider}}% - \let\margetekstnummer=\recurselevel - \getvalue{\??im\recurselevel}% - \global\setvalue{\??im\recurselevel}{}% - \egroup}% -\ifbinnenkolommen - \donetrue % how fuzzy -\else\ifdim\marginheight>\lineheight\relax - \donetrue % how dirty -\else - \donefalse % how needed -\fi\fi -\ifdone - \advance\marginheight by \pagetotal - \advance\marginheight by \lineheight % a sort of bonus - \ifdim\marginheight>\pagegoal - \xdef\restoreinterlinepenalty% - {\global\let\restoreinterlinepenalty\relax - \global\interlinepenalty=\the\interlinepenalty}% - \global\interlinepenalty=10000 - \fi - \else % We need the above because interlinepenalties overrule vadjusted \nobreaks. - %\vadjust - % {\forgetall - % \global\advance\marginheight by \lineheight - % \global\divide\marginheight by \lineheight - % \dorecurse{\number\marginheight} - % {\nobreak\vskip\lineheight}% - % \kern-\number\marginheight\lineheight}% - \vadjust{\nobreak}% - \fi - \doglobal\newcounter\margincontent - \egroup} - -% Some day: \definieermarkering[\v!margetitel] - -\def\docomplexmargewoord#1#2#3% - {\@EA\setgvalue\@EA{\@EA\??im\@EA\margincontent\@EA}\@EA - {\@EA\stelinmargein\@EA[\margincontent][]% see next macro - \flushmargincontent[#1][#2]{#3}}} - -\def\complexmargewoord[#1][#2]#3% - {\doglobal\increment\margincontent - \stelinmargein[\margincontent][]% see next macro - \ifsecondargument - \doifnumberelse{#1} - {\docomplexmargewoord{#2}{#1}{#3}} - {\docomplexmargewoord{#1}{#2}{#3}}% - \else - \doifnumberelse{#1} - {\docomplexmargewoord{}{#1}{#3}} - {\docomplexmargewoord{#1}{}{#3}}% - \fi} - -\def\margewoordpositie[#1]#2% - {\ifnum#1>\margincontent - \xdef\margincontent{#1}% - \fi - \stelinmargein[#1][]% when at outer level, saves local settings - \setgvalue{\??im#1}% - {\stelinmargein[#1][]% needed when par start outside group - \flushmargincontent[][]{#2}}} - -\def\margewoord% - {\dodoubleempty\complexmargewoord} - -\def\margetitel% - {\margewoord} - -\def\margetekst% - {\margewoord} - -\def\oplinker#1% - {\strut - \vadjust - {\mindermeldingen - \setbox0=\vtop{\forgetall\strut#1}% - \getboxheight\dimen0\of\box0 - \vskip-\dimen0\ - \box0}} - -%D \macros -%D {inleftside,inleftmargin,inrightmargin,inrightside} -%D -%D The fast and clean way of putting things in the margin is -%D using \type{\rlap} or \type{\llap}. Unfortunately these -%D macro's don't handle indentation, left and right skips. We -%D therefore embed them in some macro's that (force and) -%D remove the indentation and restore it afterwards. - -\def\inleftmargin#1% - {\pushindentation - \llap{#1\hskip\leftskip\hskip\linkermargeafstand}% - \popindentation - \ignorespaces} - -\def\inrightmargin#1% - {\pushindentation - \rlap{\hskip\hsize\hskip-\rightskip\hskip\rechtermargeafstand#1}% - \popindentation - \ignorespaces} - -\def\inleftside#1% - {\inleftmargin - {#1\relax - \hskip\linkermargebreedte - %\hskip\pageseparation - \hskip\linkerrandafstand}} - -\def\inrightside#1% - {\inrightmargin - {\hskip\rechtermargebreedte - \hskip\rechterrandafstand - %\hskip\pageseparation - #1}} - -%D We want to keep things efficient and therefore only handle -%D situations like: -%D -%D \startbuffer -%D \inleftside {fine} some text \par -%D \strut \inleftmargin {fine} some text \par -%D \noindent \inrightmargin {fine} some text \par -%D \noindent \strut \inrightside {fine} some text \par -%D \stopbuffer -%D -%D \typebuffer -%D -%D which looks like: -%D -%D \bgroup -%D \haalbuffer -%D \parindent 30pt -%D \haalbuffer -%D \egroup - -%D \macros -%D {pushindentation,popindentation} -%D -%D The pushing and popping is done by: - -\newbox\indentationboxA -\newbox\indentationboxB - -\def\pushindentation% - {\bgroup - \ifhmode - \unskip - \setbox\indentationboxA=\lastbox % get \strut if present - \unskip - \setbox\indentationboxB=\lastbox % get \indent generated box - \unskip - \else - \hskip\!!zeropoint % switch to horizontal mode - \unskip - \setbox\indentationboxA=\lastbox % get \indent generated box - \setbox\indentationboxB=\box\voidb@x - \fi} - -\def\popindentation% - {\box\indentationboxB\box\indentationboxA % put back the boxes - \egroup} - -%D The only complication lays in \type{\strut}. In \PLAIN\ -%D \TEX\ a \type{\strut} is defined as: -%D -%D \starttypen -%D \def\strut% -%D {\relax\ifmmode\copy\strutbox\else\unhcopy\strutbox\fi} -%D \stoptypen -%D -%D But what is a \type{\strut}? Normally it's a rule of width -%D zero, but when made visual, it's a rule and a negative skip. -%D The mechanism for putting things in the margins described -%D here cannot handle this situation very well. One -%D characteristic of \type{\strut} is that the \type{\unhcopy} -%D results in entering horizontal mode, which in return leads -%D to some indentation. -%D -%D To serve our purpose a bit better, the macro \type{\strut} -%D can be redefined as: -%D -%D \starttypen -%D \def\strut% -%D {\relax\ifmmode\else\hskip0pt\fi\copy\strutbox} -%D \stoptypen -%D -%D Or more compatible: -%D -%D \starttypen -%D \def\strut% -%D {\relax\ifmmode -%D \copy\strutbox -%D \else -%D \bgroup\setbox\strutbox=\normalhbox{\box\strutbox}\unhcopy\strutbox\egroup -%D \fi} -%D \stoptypen -%D -%D In \CONTEXT\ however we save some processing time by putting -%D an extra \type{\hbox} around the \type{\strutbox}. - -% dit zijn voorlopig lokale commando's - -\def\woordinlinker {\inleftmargin} % vervallen -\def\woordinrechter{\inrechtermarge} % vervallen - -\def\woordinmarge% - {\doquintupleempty\doinmarge - [\@@implaats][\woordinlinker][\woordinrechter]} - -% Standaard is \count0 in Plain TeX de paginateller. Omwille -% van de afhandeling van lokaal nummeren, definieren we -% echter een eigen nummer. - -\definieernummer - [\s!page] - [\c!conversie=\@@nmconversie, - \c!wijze=\@@nmwijze, - \c!status=\@@nmstatus, - \c!start=1] - -% \@@pnstatus global, but \@@nmstatus local and only start/stop - -\global\let\@@pnstatus\@@pnstatus - -%\def\dostelpaginanummerin[#1]% -% {\getparameters -% [\??pn] -% [%\c!status=\v!start, -% \c!nummer=, -% #1]% -% \global\let\@@pnstatus\@@pnstatus -% \doifsomething{\@@pnnummer} -% {\setnummer[\s!page]{\@@pnnummer}% -% \setuserpageno{\ruwenummer[\s!page]}}} - -\def\dostelpaginanummerin[#1]% - {\getparameters[\??pn][\c!nummer=,#1]% - \global\let\@@pnstatus\@@pnstatus - \doifsomething{\@@pnnummer} - {\setnummer[\s!page]{\@@pnnummer}% - \setuserpageno{\ruwenummer[\s!page]}}% - % this makes starting at an even page possible - \ifnum\realpageno=1 \ifodd\pageno \else - \global\shiftedrealpagenotrue - \fi \fi} - -\def\stelpaginanummerin% - {\dosingleargument\dostelpaginanummerin} - -\def\verlaagpaginanummer% - {\doifinset{\@@pnstatus}{\v!start,\v!leeg,\v!geen} - {\verlaagnummer[\s!page]% - \setuserpageno{\ruwenummer[\s!page]}}} - -\def\verhoogpaginanummer% - {\doifinset{\@@pnstatus}{\v!start,\v!leeg,\v!geen} - {\verhoognummer[\s!page]% - \setuserpageno{\ruwenummer[\s!page]}}% - \doifinset{\@@pnstatus}{\v!handhaaf,\v!leeg} - {\global\let\@@pnstatus\v!start}} - -\def\checkpagecounter% - {\checknummer{\s!page}} - -\newif\ifpaginageblokkeerd -\paginageblokkeerdfalse - -\def\testpagina[#1][#2]% - {\ifpaginageblokkeerd \else - \ifdim\pagetotal<\pagegoal - \dimen0=\lineheight - \multiply\dimen0 by #1\relax - \advance\dimen0 by \pagetotal - \ifdim\lastskip<\parskip - \advance\dimen0 by \parskip - \fi - \advance\dimen0 by #2\relax - \ifdim\dimen0>.99\pagegoal - \penalty-\!!tenthousand\relax - \fi - \else - \goodbreak - \fi - \fi} - -\let\resetcurrentsectionmarks=\relax - -% was: \resetsectionmarks[\firstsection], zie \handelpaginaaf - -\def\insertdummypage% - {\ejectinsert % beter - \hardespatie - \vfill - \ejectpage} - -\def\docomplexpagina[#1]% - {\flushfootnotes - \bgroup - \processallactionsinset - [#1] - [ \v!reset=>\global\paginageblokkeerdfalse, - \v!blokkeer=>\global\paginageblokkeerdtrue, - \v!ja=>\ifpaginageblokkeerd\else - \ejectinsert - \ejectpage - \ifbinnenkolommen - \ejectpage % anders soms geen overgang - \fi - \fi, - \v!opmaak=>\ifpaginageblokkeerd\else - \eject - \fi, - \v!blanko=>\pagebodyornamentsfalse, - \v!nee=>\ifpaginageblokkeerd\else - \dosomebreak\nobreak - \fi, - \v!voorkeur=>{\ifpaginageblokkeerd\else - \ifbinnenkolommen - \dosomebreak\goodbreak - \else - \testpagina[3][\!!zeropoint]% - \fi - \fi}, - \v!grotevoorkeur=>{\ifpaginageblokkeerd\else - \ifbinnenkolommen - \dosomebreak\goodbreak - \else - \testpagina[5][\!!zeropoint]% - \fi - \fi}, - \v!leeg=>{\ejectinsert - \ejectpage - \doifnotvalue{\??tk\v!hoofd\v!tekst\c!status}{\v!stop} - {\stelhoofdin[\c!status=\v!leeg]}% - \doifnotvalue{\??tk\v!voet\v!tekst\c!status}{\v!stop} - {\stelvoetin[\c!status=\v!leeg]}% - \insertdummypage}, - \v!links=>{\ejectinsert - \superejectpage - \doifbothsidesoverruled - \orsideone - \resetcurrentsectionmarks - \insertdummypage - \orsidetwo - \od}, - \v!rechts=>{\ejectinsert - \superejectpage - \doifbothsidesoverruled - \orsideone - \orsidetwo - \resetcurrentsectionmarks - \insertdummypage - \od}, - \v!even=>\pagina - \doifonevenpaginaelse - {\resetcurrentsectionmarks\insertdummypage}{}, - \v!oneven=>\pagina - \doifonevenpaginaelse - {}{\resetcurrentsectionmarks\insertdummypage}, - \v!viertal=>{\ifdubbelzijdig - \!!counta=\realpageno - \!!countb=\realpageno - \divide\!!counta by 4 - \divide\!!countb by 2 - \ifnum\!!counta=\!!countb - \else - \pagina - \pagina[\v!leeg]% - \pagina[\v!leeg]% - \fi - \fi}, - \v!laatste=>{\ejectinsert - \superejectpage - \doifbothsidesoverruled - \naastpagina - \orsideone - \orsidetwo - %\ifodd\realpageno \else % kan weer weg - \geenhoofdenvoetregels - \insertdummypage - %\fi - \od - \filluparrangedpages}, - \s!unknown=>\doifinstringelse{+}{#1} - {\ejectinsert\ejectpage - \dorecurse{#1}{\insertdummypage}} - {\doifnumberelse{#1} - {\ejectinsert\ejectpage - \doloop - {\ifnum\userpageno<#1\relax - \insertdummypage - \else - \exitloop - \fi}} - {}}]% - \egroup} - -\def\complexpagina[#1]% - {\expanded{\docomplexpagina[#1]}} - -\def\simplepagina% - {\docomplexpagina[\v!ja]} - -\definecomplexorsimple\pagina - -\def\resetpagina% - {\global\paginageblokkeerdfalse} - -% \getpagestatus -% \ifrightpage als odd/enkelzijdig - -\newif\ifrightpage \rightpagetrue - -\newcounter \nofpagesets - -\definetwopasslist{\s!page} - -\def\dopagesetreference% - {\doglobal\increment\nofpagesets\relax - \edef\writepagref% - {\writeutilitycommand - {\twopassentry - {\s!page}% - {\nofpagesets}% - {\noexpand\realfolio}}}% - \writepagref} - -\def\getpagestatus% hierboven gebruiken - {\ifdubbelzijdig - \gettwopassdata{\s!page}% - \iftwopassdatafound \else - \let\twopassdata=\realpageno - \fi - \ifodd\twopassdata - \global\rightpagetrue - \else - \global\rightpagefalse - \fi - \dopagesetreference - \else - \global\rightpagetrue - \fi} - - -% De onderstaande macro's lijken op het eerste gezicht vrij -% ingewikkeld en omslachtig. Dit is het gevolg van een -% dubbel optioneel zijn van argumenten: zowel het eerste als -% de twee laatste argumenten zijn optioneel. Dit is mede het -% gevolg van een uitbreiding naar marges en randen, waarbij -% upward-compatibiliteit zwaar heeft gewogen. - -\def\dostellayouttekstin[#1][#2][#3]% - {\ifthirdargument - \getparameters[\??tk#1#2][#3]% - \else - \getparameters[\??tk#1\v!tekst][#2]% - \fi - \calculatevsizes} - -\def\stelbovenin {\dotripleempty\dostellayouttekstin[\v!boven]} -\def\stelhoofdin {\dotripleempty\dostellayouttekstin[\v!hoofd]} -\def\steltekstin {\dotripleempty\dostellayouttekstin[\v!tekst]} -\def\stelvoetin {\dotripleempty\dostellayouttekstin[\v!voet]} -\def\stelonderin {\dotripleempty\dostellayouttekstin[\v!onder]} - -\letvalue{\??tk\v!boven\v!tekst\c!status}=\v!normaal -\letvalue{\??tk\v!hoofd\v!tekst\c!status}=\v!normaal -\letvalue{\??tk\v!tekst\v!tekst\c!status}=\v!normaal -\letvalue{\??tk\v!voet \v!tekst\c!status}=\v!normaal -\letvalue{\??tk\v!onder\v!tekst\c!status}=\v!normaal - -\def\geenhoofdenvoetregels% - {\stelhoofdin[\c!status=\v!leeg]% - \stelvoetin[\c!status=\v!leeg]} - -\def\geenbovenenonderregels% - {\stelbovenin[\c!status=\v!leeg]% - \stelonderin[\c!status=\v!leeg]} - -% THIS: !!! - -\def\dolimitateteksten#1#2% - {\doifelsevaluenothing{#1}{#2}{\limitatetext{#2}{\getvalue{#1}}{...}}} - -\def\doteksten#1#2#3#4#5#6% - {\bgroup - %\showcomposition % I need to test first - \convertargument#6\to\ascii - \doifsomething{\ascii} - {\doattributes{#1#2}#3#4% - {\doifvalue{#1\v!tekst\c!strut}{\v!ja}{\setstrut\strut}% here! - \doifdefinedelse{\??mk\ascii\c!koppeling} % brrr - {\dolimitateteksten{#1#2#5}{\haalmarkering[\ascii][\v!eerste]}} - {\ConvertConstantAfter\doifelse{\v!paginanummer}{#6} - {\@@plaatspaginanummer} - {\ConvertConstantAfter\doifelse{\v!datum}{#6} - {\currentdate} % #6{}{}{} -> {} needed for lookahead macros, like \uniqueMPgraphic - {\opeenregel\dolimitateteksten{#1#2#5}{#6{}{}{}}}}}}}% - \egroup} - -\def\dodoteksten#1#2#3#4#5#6% - {\doifonevenpaginaelse - {\doteksten{#1}{#2}#3{#4}} % #3 => provides three arguments - {\doteksten{#1}{#2}#5{#6}}} % #5 => provides three arguments - -\def\dodododoteksten[#1][#2][#3][#4][#5][#6]% - {\ifsixthargument - \setvalue{\??tk#1#2\c!linkertekst}% - {\dodoteksten{\??tk#1}{#2} - {\c!linkerletter \c!linkerkleur \c!linkerbreedte }{#3} - {\c!rechterletter\c!rechterkleur\c!rechterbreedte}{#6}}% - \setvalue{\??tk#1#2\c!rechtertekst}% - {\dodoteksten{\??tk#1}{#2} - {\c!rechterletter\c!rechterkleur\c!rechterbreedte}{#4} - {\c!linkerletter \c!linkerkleur \c!linkerbreedte }{#5}}% - \else\iffifthargument - \setvalue{\??tk#1\v!tekst\c!linkertekst}% - {\dodoteksten{\??tk#1}{\v!tekst} - {\c!linkerletter \c!linkerkleur \c!linkerbreedte }{#2} - {\c!rechterletter\c!rechterkleur\c!rechterbreedte}{#5}}% - \setvalue{\??tk#1\v!tekst\c!rechtertekst}% - {\dodoteksten{\??tk#1}{\v!tekst} - {\c!rechterletter\c!rechterkleur\c!rechterbreedte}{#3} - {\c!linkerletter \c!linkerkleur \c!linkerbreedte }{#4}}% - \else\iffourthargument - \setvalue{\??tk#1#2\c!linkertekst}% - {\dodoteksten{\??tk#1}{#2} - {\c!linkerletter\c!linkerkleur\c!linkerbreedte}{#3} - {\c!linkerletter\c!linkerkleur\c!linkerbreedte}{#3}}% - \setvalue{\??tk#1#2\c!rechtertekst}% - {\dodoteksten{\??tk#1}{#2} - {\c!rechterletter\c!rechterkleur\c!rechterbreedte}{#4} - {\c!rechterletter\c!rechterkleur\c!rechterbreedte}{#4}}% - \else\ifthirdargument - \setvalue{\??tk#1\v!tekst\c!linkertekst}% - {\dodoteksten{\??tk#1}{\v!tekst} - {\c!linkerletter\c!linkerkleur\c!linkerbreedte}{#2} - {\c!linkerletter\c!linkerkleur\c!linkerbreedte}{#2}}% - \setvalue{\??tk#1\v!tekst\c!rechtertekst}% - {\dodoteksten{\??tk#1}{\v!tekst} - {\c!rechterletter\c!rechterkleur\c!rechterbreedte}{#3} - {\c!rechterletter\c!rechterkleur\c!rechterbreedte}{#3}}% - \else\ifsecondargument % new - \setvalue{\??tk#1\v!tekst\c!linkertekst}{}% - \setvalue{\??tk#1\v!tekst\c!rechtertekst}{}% - \setvalue{\??tk#1\v!tekst\c!middentekst}% - {\doteksten{\??tk#1}{\v!tekst}\c!letter\c!kleur\c!breedte{#2}}% - \else - \dosixtupleempty\dodododoteksten[#1][\v!tekst][][][][]% - \dosixtupleempty\dodododoteksten[#1][\v!marge][][][][]% - \dosixtupleempty\dodododoteksten[#1][\v!rand] [][][][]% - \fi\fi\fi\fi\fi} - -\def\stelboventekstenin {\dosixtupleempty\dodododoteksten[\v!boven]} -\def\stelhoofdtekstenin {\dosixtupleempty\dodododoteksten[\v!hoofd]} -\def\stelteksttekstenin {\dosixtupleempty\dodododoteksten[\v!tekst]} -\def\stelvoettekstenin {\dosixtupleempty\dodododoteksten[\v!voet]} -\def\stelondertekstenin {\dosixtupleempty\dodododoteksten[\v!onder]} - -\def\@@nmpre#1{\setbox0=\hbox{#1}\ifdim\wd0=\!!zeropoint\else\unhbox0\tfskip\fi} -\def\@@nmpos#1{\setbox0=\hbox{#1}\ifdim\wd0=\!!zeropoint\else\tfskip\unhbox0\fi} - -\def\dodoplaatsteksten#1#2#3#4#5#6% \hsize toegevoegd - {\hbox % \hss's niet meer wijzigen - {\hbox to \linkerrandbreedte - {\hsize\linkerrandbreedte - \hss\getvalue{\??tk#1\v!rand#2}}% - \hskip\linkerrandafstand - %\hskip\pageseparation - \hbox to \linkermargebreedte - {\hsize\linkermargebreedte - \hsmash{\hbox to \linkermargebreedte - {\hss\getvalue{\??tk#1\v!marge#2}}}% - \hsmash{\hbox to \linkermargebreedte - {\hss#5{\??tk#1\v!marge\c!margetekst}}}% - \hss}% let op: \smashed - \hskip\linkermargeafstand - \hbox to \zetbreedte - {\hsize\zetbreedte - \hsmash{\hbox to \zetbreedte - {\@@nmpre{#5{\??tk#1\v!tekst\c!kantlijntekst}}% - \getvalue{\??tk#1\v!tekst#2}\hss}}% - \hsmash{\hbox to \zetbreedte - {\hss\getvalue{\??tk#1\v!tekst#3}\hss}}% - \hsmash{\hbox to \zetbreedte - {\hss\getvalue{\??tk#1\v!tekst#4}% - \@@nmpos{#6{\??tk#1\v!tekst\c!kantlijntekst}}}}% - \hss}% - \hskip\rechtermargeafstand - \hbox to \rechtermargebreedte - {\hsize\rechtermargebreedte - \hsmash{\hbox to \rechtermargebreedte - {\getvalue{\??tk#1\v!marge#4}\hss}}% - \hsmash{\hbox to \rechtermargebreedte - {#6{\??tk#1\v!marge\c!margetekst}\hss}}% - \hss}% let op: \smashed - %\hskip\pageseparation - \hskip\rechterrandafstand - \hbox to \rechterrandbreedte - {\hsize\rechterrandbreedte - \getvalue{\??tk#1\v!rand#4}\hss}}} - -\def\doplaatslayoutregel#1#2% - {\ifdim#2>\!!zeropoint\relax % prevents pagenumbers when zero height - \goleftonpage - \hbox - {\setbox0=\vbox to #2 - {\forgetall - \vsize#2 - \normalbaselines - \def\\{ \ignorespaces}% - \def\crlf{ \ignorespaces}% - \getvalue{\??tk#1\v!tekst\c!voor}% - \doifbothsidesoverruled - \dodoplaatsteksten#1\c!linkertekst\c!middentekst\c!rechtertekst - \gobbleoneargument\getvalue - \orsideone - \dodoplaatsteksten#1\c!linkertekst\c!middentekst\c!rechtertekst - \gobbleoneargument\getvalue - \orsidetwo - \dodoplaatsteksten#1\c!rechtertekst\c!middentekst\c!linkertekst - \getvalue\gobbleoneargument - \od - \getvalue{\??tk#1\v!tekst\c!na}% - \kern\!!zeropoint}% keep the \dp, beware of \vtops, never change this! - \dp0=\!!zeropoint - \box0}% - \fi} - -% \stelhoofdin[status=normaal] \titel{NORMAAL} \dorecurse{8}{\input tufte} \pagina -% \stelhoofdin[status=hoog] \titel{HOOG} \dorecurse{8}{\input tufte} \pagina -% \stelhoofdin[status=leeg] \titel{LEEG} \dorecurse{8}{\input tufte} \pagina -% \stelhoofdin[status=geen] \titel{GEEN} \dorecurse{8}{\input tufte} \pagina -% \stelhoofdin[status=stop] \titel{STOP} \dorecurse{8}{\input tufte} \pagina - -\def\definieertekst% - {\dosixtupleempty\dodefinieertekst} - -\def\dodefinieertekst[#1][#2][#3][#4][#5][#6]% - {\ifsixthargument - \setvalue{\??tk#2#1}{\dosixtupleempty\dodododoteksten[#2][#3][#4][#5][#6]}% - \else\iffourthargument - \setvalue{\??tk#2#1}{\dosixtupleempty\dodododoteksten[#2][#3][#4]}% - \else - \setvalue{\??tk#2#1}{\dosixtupleempty\dodododoteksten[#2][#3]}% - \fi\fi} - -% \definieertekst[hoofdstuk][voet][paginanummer] -% \stelkopin[hoofdstuk][hoofd=hoog,voet=hoofdstuk] -% \stelhoofdtekstenin[paginanummer] -% \stelvoettekstenin[links][rechts] -% \hoofdstuk{eerste} \dorecurse{20}{\input tufte \relax} -% \hoofdstuk{tweede} \dorecurse{20}{\input tufte \relax} - -% todo: commalist aflopen {empty,next} {first,empty} - -\def\plaatslayoutregel#1#2% % handelt o.b.v. tekst - {\ExpandFirstAfter\processaction - [\getvalue{\??tk#1\v!tekst\c!status}] - [ \v!geen=>, - \v!hoog=>, % is reset later on - \v!start=>\setgvalue{\??tk#1\v!tekst\c!status}{\v!normaal}% - \doplaatslayoutregel{#1}{#2}, - \v!stop=>\vskip#2\relax, - \v!leeg=>\setgvalue{\??tk#1\v!tekst\c!status}{\v!normaal}% - \vskip#2\relax, - \v!geenmarkering=>\bgroup - \setgvalue{\??tk#1\v!tekst\c!status}{\v!normaal}% - \let\dohaalmarkering=\nohaalmarkering - \doplaatslayoutregel{#1}{#2}% - \egroup, - \v!normaal=>\doplaatslayoutregel{#1}{#2}, - \s!default=>\doplaatslayoutregel{#1}{#2}, - \s!unknown=>\bgroup % new - \setgvalue{\??tk#1\v!tekst\c!status}{\v!normaal}% - \getvalue{\??tk#1\commalistelement}% - \doplaatslayoutregel{#1}{#2}% - \egroup]} - -\def\resetlayoutregel#1% - {\doifvalue{\??tk#1\v!tekst\c!status}{\v!hoog} - {\setgvalue{\??tk#1\v!tekst\c!status}{\v!normaal}% ! global - \doglobal\calculatevsizes - \global\newlogostrue - \global\newbackgroundtrue}} - -\def\resetlayoutregels% - {\resetlayoutregel\v!boven - \resetlayoutregel\v!hoofd - \resetlayoutregel\v!tekst - \resetlayoutregel\v!voet - \resetlayoutregel\v!onder} - -\def\plaatsbovenregel {\plaatslayoutregel\v!boven\bovenhoogte} -\def\plaatshoofdregel {\plaatslayoutregel\v!hoofd\hoofdhoogte} -\def\plaatstekstregel {\plaatslayoutregel\v!tekst\teksthoogte} -\def\plaatsvoetregel {\plaatslayoutregel\v!voet\voethoogte} -\def\plaatsonderregel {\plaatslayoutregel\v!onder\onderhoogte} - -\def\gettextboxes% elders weghalen - {\bgroup - \setbox0=\vbox - {\mindermeldingen - \calculatereducedvsizes - \swapmargins - \forgetall - \offinterlineskip - \vskip-\bovenhoogte - \vskip-\bovenafstand - \plaatsbovenregel - \vskip-\bovenhoogte - \plaatsboventekstblok - \vskip\bovenafstand - \plaatshoofdregel - \vskip\hoofdafstand - \placepositionanchors - \vskip-\teksthoogte - \plaatstekstregel - \vskip\voetafstand - \plaatsvoetregel - \vskip\onderafstand - \plaatsonderregel - \vskip-\onderhoogte - \plaatsondertekstblok - \plaatsversieaanduiding - \vfilll}% - \smashbox0 - \box0 - \egroup} - -\ifx\undefined\placepositionanchors - \def\placepositionanchors{\vskip\teksthoogte} -\fi - -\def\@@nmin {} % kan vervallen (upward compatibility) -\def\@@nmplaats {} % mag {plaats, in} zijn - -\newcounter\@@pagenumberlocation - -\def\do@@plaatspaginanummer#1% - {\ifnum#1=\@@pagenumberlocation\@@plaatspaginanummer\fi} - -\def\dodosetpagenumberlocation#1% tricky because of ...texts - {\increment\@@pagenumberlocation - \ifx\@@nmplaats\empty\else - \def\dododosetpagenumberlocation##1% - {\donetrue - \setevalue{\??tk#1##1}% - {\noexpand\do@@plaatspaginanummer{\@@pagenumberlocation}}}% - \donefalse - \ExpandFirstAfter\processallactionsinset - [\@@nmplaats] - [ \v!midden=>\dododosetpagenumberlocation{\v!tekst\c!middentekst}, - \v!links=>\dododosetpagenumberlocation{\v!tekst\c!linkertekst}, - \v!rechts=>\dododosetpagenumberlocation{\v!tekst\c!rechtertekst}, - \v!inlinker=>\dododosetpagenumberlocation{\v!marge\c!linkertekst}, - \v!inrechter=>\dododosetpagenumberlocation{\v!marge\c!rechtertekst}, - \v!inmarge=>\dododosetpagenumberlocation{\v!marge\ifdubbelzijdig - \c!margetekst\else\c!rechtertekst\fi}, - \v!marge=>\dododosetpagenumberlocation{\v!marge\ifdubbelzijdig - \c!margetekst\else\c!rechtertekst\fi}, - \v!opmarge=>\dododosetpagenumberlocation{\v!tekst\c!kantlijntekst}, - \v!kantlijn=>\dododosetpagenumberlocation{\v!tekst\c!kantlijntekst}]% - \ifdone \else - \dododosetpagenumberlocation{\v!tekst\c!middentekst}% default - \fi - \fi} - -\def\dosetpagenumberlocation% - {\ExpandBothAfter\doifinsetelse{\v!hoofd}{\@@nmplaats,\@@nmin} - {\dodosetpagenumberlocation\v!hoofd} - {\dodosetpagenumberlocation\v!voet}} - -\def\dostelnummeringin[#1]% - {\getparameters[\??nm][#1]% - \preparepaginaprefix{\??nm}% - \enkelzijdigfalse - \dubbelzijdigfalse - \ExpandFirstAfter\processallactionsinset - [\@@nmvariant] - [ \v!enkelzijdig=>\enkelzijdigtrue, - \v!dubbelzijdig=>\dubbelzijdigtrue]% - \ifdubbelzijdig - \trackingmarginnotestrue - \else - \trackingmarginnotesfalse - \fi - \dosetpagenumberlocation - \global\newbackgroundtrue - \global\newlogostrue} - -\def\stelnummeringin% - {\dosingleempty\dostelnummeringin} - -% listig: hangt af van \@@kolijst - -% erg fout -% -% \def\preparepaginaprefix#1% -% {\def\dopreparepaginaprefix##1% -% {\doifvalue{#1##1\c!nummer}{\v!ja} -% {\setvalue{#1\getvalue{\??by##1}\c!nummer}{\v!ja}}}% -% \processcommacommand[\@@kolijst]\dopreparepaginaprefix} -% -% nog fouter -% -% \def\preparepaginaprefix#1% -% {\def\dopreparepaginaprefix##1% -% {\doifelsevalue{#1##1\v!nummer}{\v!ja} % v -% {\setvalue{#1\getvalue{\??by##1}\v!nummer}{\v!ja}} % v -% {\setvalue{#1\getvalue{\??by##1}\v!nummer}{\v!nee}}}% % v -% \processcommacommand[\@@kolijst]\dopreparepaginaprefix} -% -% best, beware, chapter (yes) can be followed by title (no) - -\def\preparepaginaprefix#1% - {\def\dopreparepaginaprefix##1% - {\setvalue{#1\getvalue{\??by##1}\v!nummer}{\v!nee}}% %v - \processcommacommand[\@@kolijst]\dopreparepaginaprefix - \def\dopreparepaginaprefix##1% - {\doifvalue{#1##1\v!nummer}{\v!ja} %v - {\setvalue{#1\getvalue{\??by##1}\v!nummer}{\v!ja}}}% - \processcommacommand[\@@kolijst]\dopreparepaginaprefix} - -\def\dopaginaprefix#1#2% - {\let\normaluchar\uchar\let\uchar\relax % ugly but needed - \doifelsevalue{#1#2\v!nummer}{\v!ja} % \v! and no \c! - {\@EA\beforesplitstring\@EA{\postprefix}\at:\to\preprefix - \@EA\aftersplitstring\@EA{\postprefix}\at:\to\postprefix - \let\uchar\normaluchar % ugly but needed - \doifsomething{\preprefix} - {\doifnot{\preprefix}{0}{\preprefix\@@nmnummerscheider}}}% - {\@EA\aftersplitstring\@EA{\postprefix}\at:\to\postprefix - \let\uchar\normaluchar}} % ugly but needed - -\def\paginaprefix#1[#2::#3::#4]% kan wat sneller ####1:0: - {\bgroup - \edef\postprefix{#3}% - \def\donexttrackcommando##1% - {\dopaginaprefix{#1}{##1}% - \donexttracklevel{##1}}% - \donexttrackcommando\firstsection - \egroup} - -\unexpanded\def\@@plaatspaginanummer% called in empty tests - %{\doif{\@@pnstatus}{\v!start} - {\doif{\@@nmstatus\@@pnstatus}{\v!start\v!start} - {{\@@nmcommando{\doattributes\??nm\c!letter\c!kleur{\completepagenumber}}}}} - -\def\@@plaatspaginascheider% still used ? - %{\doif{\@@pnstatus}{\v!start}% - {\doif{\@@nmstatus\@@pnstatus}{\v!start\v!start} - {\@@nmtekstscheider}} - -\def\userfolio% naast realfolio - {\nummer[\s!page]} - -\def\pagenumber% - {\userfolio} - -\def\pageprefixes% - {\def\donexttrackcommando##1% - {\doifvalue{\??nm##1\v!nummer}{\v!ja} % v - {\ifnum\countervalue{\??se##1}>0\relax - \getvalue{##1\c!nummer}\@@nmnummerscheider - \fi}% - \doifsomething{\@@nmtekst} - {\@@nmtekst\@@nmnummerscheider}% - \donexttracklevel{##1}}% - \donexttrackcommando{\firstsection}} - -\unexpanded\def\completepagenumber% - {\doif{\@@nmstatus\@@pnstatus}{\v!start\v!start} - {\@@nmlinks\labeltexts{\v!paginanummer}{\pageprefixes\pagenumber}\@@nmrechts}} - -\let\volledigepaginanummer\completepagenumber - -\unexpanded\def\plaatspaginanummer% - {\doif{\@@nmstatus\@@pnstatus}{\v!start\v!start} - {\labeltexts{\v!paginanummer}{\pagenumber}}} - -\def\translatednumber[#1::#2::#3]% - {#3} - -% hier nog uti blokkeren - -% don't change this / test case: -% -% \setupbackgrounds[state=repeat] -% \setupbackgrounds[text][text][background=whatever] -% \couplepage[chapter][before={\defineoverlay[whatever][ON]}] -% \setuphead[chapter][before={\pagetype[chapter]}] -% \chapter{First} \page test \chapter{second} \page test - -\newif\ifgeselecteerd -\geselecteerdtrue - -\newif\ifselecteren -\selecterenfalse - -\newif\ifverwerken -\verwerkentrue - -\def\selectie{} -\def\paginasoort{} - -\let\naastpagina=\relax -\let\napagina=\relax -\let\voorpagina=\relax - -\def\dovoorpagina% - {\doifsomething{\paginasoort} - {\def\dododopagina##1% - {\global\let\voorpagina=\relax - \getvalue{\??pg##1\c!voor}}% - \processcommacommand[\paginasoort]\dododopagina}} - -\def\dododonapagina#1% - {\global\let\napagina=\relax - \gdef\paginasoort{}% - \getvalue{\??pg#1\c!na}} - -\def\donapagina% - {\doifsomething{\paginasoort} - {\def\dodopagina##1% - {\doifelsevalue{\??pg##1\c!optie}{\v!dubbelzijdig} - {\doifbothsidesoverruled - \dododonapagina{##1}% - \orsideone - \dododonapagina{##1}% - \orsidetwo - \od}% - {\dododonapagina{##1}}}% - \processcommacommand[\paginasoort]\dodopagina}} - -\def\dosoortpagina[#1]% - {\doglobal\addtocommalist{#1}\paginasoort - \ifselecteren - \ExpandBothAfter\doifcommon{#1}{\selectie} - {\global\geselecteerdtrue}% - \fi - \gdef\voorpagina{\dovoorpagina}% - \gdef\napagina{\donapagina}} - -\def\soortpagina% - {\dosingleargument\dosoortpagina} - -\def\dokoppelpagina[#1][#2]% - {\getparameters - [\??pg] - [\c!voor=, - \c!na=, - \c!optie=, - #2]% - \def\docommando##1% - {\getparameters - [\??pg##1] - [\c!voor=\@@pgvoor, - \c!na=\@@pgna, - \c!optie=\@@pgoptie]}% - \processcommalist[#1]\docommando}% - -\def\koppelpagina% - {\dodoubleargument\dokoppelpagina} - -\def\doverwerkpagina[#1][#2]% - {\processaction - [#2] - [ \v!ja=>\global\verwerkentrue, - \v!nee=>\global\verwerkenfalse]% - \gdef\selectie{#1}% - \global\selecterentrue - \global\geselecteerdfalse} - -\def\verwerkpagina% - {\dodoubleargument\doverwerkpagina} - -\def\resetselectiepagina% - {\ifselecteren - \doifbothsidesoverruled - \global\geselecteerdfalse - \orsideone - \orsidetwo - \global\geselecteerdfalse - \od - \fi} - -\newif\iflocation - -\def\ifinteractief{\iflocation} - -\def\previoussectionformat{} -\def\currentsectionformat{} - -\let\updatelistreferences=\relax -\def\updatedlistreferences{} - -\def\setsectionlistreference#1#2% - {\ifnum\countervalue{\??se\previoussection{#1}}>0\relax - \xdef\previoussectionformat{\@@longformatnumber{\previoussection{#1}}}% - \else - \xdef\previoussectionformat{}% - \fi - \xdef\currentsectionformat{\@@longformatnumber{#1}}} - -\def\startlistreferences#1% - {\thisissomeinternal{\s!lst}{#1\currentsectionformat}% - \setxvalue{\s!lst:#1}{\realfolio}% to be sure - \setxvalue{\s!lst:#1\currentsectionformat}{\realfolio}% - \setxvalue{\e!vorigelokale#1}{\s!lst:#1\previoussectionformat}% - \setxvalue{\e!huidigelokale#1}{\s!lst:#1\currentsectionformat}% - \doifelse{\currentsectionformat}{} - {\setglobalcrossreference - {\e!vorige#1}{}{\realfolio}{}} -% - {\setglobalsystemreference\rt!list - {\e!vorige#1}{\getvalue{\e!vorigelokale#1}}}% -% -% {\definereference[\e!vorige#1][\getvalue{\e!vorigelokale#1}]% -% - \def\stoplistreferences{\dostoplistreferences}} - -\def\dostoplistreferences#1% - {\iflijstgeplaatst - \addtocommalist{#1}\updatedlistreferences % nog global (\doglobal) - \global\let\updatedlistreferences=\updatedlistreferences % een noodverbandje - \gdef\updatelistreferences% - {\def\docommando####1% -% - {\setglobalsystemreference\rt!list - {\e!vorige####1}{\getvalue{\e!huidigelokale####1}}}% -% -% {\definereference[\e!vorige####1][\getvalue{\e!huidigelokale####1}]% -% - \processcommacommand[\updatedlistreferences]\docommando - \global\let\updatelistreferences=\relax - \global\let\updatedlistreferences=\empty}% - \fi} - -\def\stoplistreferences% - {\gobbleoneargument} - -% de rest - -\newcount\prefixteller - -\def\referenceprefix{} - -% \def\showlocation #1{#1} -% \def\showcontrastlocation#1#2#3{#3} -% \def\showcoloredlocation #1#2{#2} - -\unexpanded\def\referencepagenumber[#1]% - {\paginaprefix\??rf[#1]\translatednumber[#1]} - -\newif\ifinregels -\newif\ifregelnummersinmarge - -\def\stelregelsin% - {\dodoubleargument\getparameters[\??rg]} - -\def\startregels% - {\@@rgvoor - \witruimte - %\pagina[\v!voorkeur]} gaat mis na koppen, nieuw: later \nobreak - \begingroup - \def\@@rgstepyes{\parindent\!!zeropoint}% - \def\@@rgstepno{\parindent\!!zeropoint}% - \edef\@@rgparindent{\the\parindent}% - \gdef\@@rglinesteptoggle{1}% - \processaction - [\@@rginspringen] - [ \v!ja=>\def\@@rgstepyes{\parindent\@@rgparindent}% - \def\@@rgstepno {\parindent\@@rgparindent}, - \v!oneven=>\def\@@rgstepyes{\parindent\!!zeropoint }% - \def\@@rgstepno {\parindent\@@rgparindent}, - \v!even=>\def\@@rgstepno {\parindent\!!zeropoint }% - \def\@@rgstepyes{\parindent\@@rgparindent}]% - \inregelstrue - \stelwitruimtein[\v!geen]% - \obeylines - \let\checkindentation=\relax - \@@rgstepno - \ignorespaces - \gdef\afterfirstobeyedline% tzt two pass, net als opsomming - {\gdef\afterfirstobeyedline% - {\nobreak - \global\let\afterfirstobeyedline\relax}}% - \def\obeyedline% - {\par - \afterfirstobeyedline - \ifdim\lastskip>\!!zeropoint - \gdef\@@rglinesteptoggle{0}% - \else - \doglobal\increment\@@rglinesteptoggle - \fi - \ifodd\@@rglinesteptoggle\relax - \@@rgstepyes - \else - \@@rgstepno - \fi - \futurelet\next\dobetweenthelines}% - \GotoPar} - -% \def\dobetweenthelines% -% {\convertcommand \next \to\!!stringa % very ugly and fuzzy -% \convertargument\obeyedline\to\!!stringb % but needed anyway -% \ifx\!!stringa\!!stringb % but alas, it fails -% \@@rgtussen % hopelessly in non -% \fi} % etex - -\def\dobetweenthelines% - {\doifmeaningelse{\next}{\obeyedline}{\@@rgtussen}{}} - -\def\stopregels% - {\endgroup - \@@rgna} - -\newcount\linenumber -\newcount\linestepper -\newif\ifinregelnummeren - -% het gebruik van \setlocalreference scheelt een hash entry - -\def\dodoshowlinenumber% for use elsewhere, to be extended - {\doschrijfregelnummer - \global\advance\linenumber by 1\relax}% - -\def\regelweergave% - {\convertnumber\@@rnconversie\linenumber}% - -\def\dostelregelnummerenin[#1]% - {\getparameters - [\??rn] - [\c!start=1, - \c!stap=1, - #1]% - \global\linenumber=1\relax} - -\def\stelregelnummerenin% - {\dosingleargument\dostelregelnummerenin} - -\def\dostartnummerenLINE% % !! \everypar !! - {\EveryPar{\schrijfregelnummer}} - -\def\dostopnummerenLINE% - {\egroup} - -\def\dodoschrijfregelnummer% - {\setbox0=\hbox{\regelweergave}% - \vsmashbox0 - \ifregelnummersinmarge - \llap{\hbox{\box0\hskip\linkermargeafstand}}% - \else - \llap{\hbox to \@@rnbreedte{\box0\hss}}% - \fi} - -\def\complexstartregelnummeren[#1]% - {\doifnotinset{\v!verder}{#1} - {\global\linenumber=1\relax}% - \doifinsetelse{\@@rnplaats}{\v!inmarge,\v!marge} - {\regelnummersinmargetrue} - {\regelnummersinmargefalse}% - \ifregelnummersinmarge\else - \advance\leftskip by \@@rnbreedte\relax - \fi - \ifinregels - \let\dostartnummeren=\dostartnummerenLINE - \let\stopregelnummeren=\dostopnummerenLINE - \def\schrijfregelnummer% - {\doschrijfregelnummer - \global\advance\linenumber by 1\relax}% - \else - \let\dostartnummeren=\dostartnummerenPAR - \let\stopregelnummeren=\dostopnummerenPAR - \def\schrijfregelnummer% - {\global\advance\linenumber by -1\relax - \doschrijfregelnummer}% - \fi - \dostartnummeren} - -\def\startregelnummeren% - {\bgroup - \inregelnummerentrue - \complexorsimpleempty\startregelnummeren} - -\def\doschrijfregelnummer% - {\ifnum\linenumber<\@@rnstart\relax - \else - \!!counta=\linenumber - \divide\!!counta by \@@rnstap\relax - \multiply\!!counta by \@@rnstap\relax - \ifnum\!!counta=\linenumber - \doattributes\??rn\c!letter\c!kleur{\dodoschrijfregelnummer}% - \fi - \fi} - -\def\eenregel[#1]% - {\regelreferentie0[#1]\ignorespaces} - -\def\startregel[#1]% - {\regelreferentie1[#1]\ignorespaces} - -\def\stopregel[#1]% - {\unskip\regelreferentie2[#1]} - -% \def\inregellabel#1% -% {\doifinstringelse{--}{#1} -% {\labeltext{\v!regels}} -% {\labeltext{\v!regel}}} -% -% \def\inregel#1[#2]% -% {\doifelsenothing{#1} -% {\in{\inregellabel{\currenttextreference}}[\@@rnprefix#2]} -% {\in{#1}[\@@rnprefix#2]}} -% -% double labels: - -\def\inregel#1[#2]% - {\doifelsenothing{#1} - {\doifinstringelse{--}{\currenttextreference} - {\in{\leftlabeltext\v!regels}{\rightlabeltext\v!regels}[\@@rnprefix#2]} - {\in{\leftlabeltext\v!regel }{\rightlabeltext\v!regel }[\@@rnprefix#2]}} - {\in{#1}[\@@rnprefix#2]}} - -\def\dostartnummerenPAR% - {\beginofshapebox - \doglobal\newcounter\linereference} - -% localcrossref heroverwegen - -\def\setlinereference#1#2#3#4% - {\setxvalue{lrf:#1}{\noexpand\dogetlinereference{#2}{#3}{#4}}} - -\def\getlinereference#1% - {\getvalue{lrf:#1}} - -\def\dogetlinereference#1#2#3% - {\edef\linereferencename{#1}% - \edef\linereferenceline{#2}% - \edef\linereferenceplus{#3}} - -% 1 xxx xxx xxx xxx xxx xxx xxx -% 2 xxx yyy yyy yyy yyy yyy yyy <= start y -% 3 yyy yyy yyy yyy yyy yyy yyy -% 4 yyy yyy yyy yyy yyy xxx xxx <= stop y -% 5 xxx xxx xxx xxx xxx xxx xxx - -%\def\regelreferentie#1[#2]% -% {\bgroup -% \dimen0=\dp\strutbox -% \doif{\@@rnrefereren}{\v!aan} -% {\doglobal\increment\linereference -% % start 1=>(n=y,l=0,p=1) -% % stop 2=>(n=y,l=0,p=2) -% \setxvalue{lrf:n:\linereference}{\@@rnprefix#2}% -% \setxvalue{lrf:l:\linereference}{0}% -% \setxvalue{lrf:p:\linereference}{#1}% -% \advance\dimen0 by \linereference sp}% -% \prewordbreak -% \vrule \!!width \!!zeropoint \!!depth \dimen0 \!!height \!!zeropoint -% \prewordbreak -% \egroup} - -\def\regelreferentie#1[#2]% - {\bgroup - \dimen0=\dp\strutbox - \doif{\@@rnrefereren}{\v!aan} - {\doglobal\increment\linereference - % start 1=>(n=y,l=0,p=1) - % stop 2=>(n=y,l=0,p=2) - \setlinereference{\linereference}{\@@rnprefix#2}{0}{#1}% - \advance\dimen0 by \linereference sp}% - \prewordbreak - \vrule \!!width \!!zeropoint \!!depth \dimen0 \!!height \!!zeropoint - \prewordbreak - \egroup} - -\def\dostopnummerenPAR% dp's -> openstrutdepth - {\endofshapebox - \checkreferences - \linestepper=0 - \reshapebox{\global\advance\linestepper by 1\relax}% - \global\advance\linenumber by \linestepper - \doifelse{\@@rnrefereren}{\v!aan} - {\reshapebox % We are going back! - {\global\advance\linenumber by -1 - \dimen0=\dp\shapebox - \advance\dimen0 by -\dp\strutbox - \ifdim\dimen0>\!!zeropoint\relax - % 1=>4 | 2=>4 1=>2 - % start 1=>(n=y,l=2,p=1) - % stop 2=>(n=y,l=4,p=2) - \dostepwiserecurse{1}{\number\dimen0}{1} - {\getlinereference\recurselevel - \setlinereference\recurselevel - {\linereferencename}{\the\linenumber}{\linereferenceplus}}% - \fi}% - \global\advance\linenumber by \linestepper - \ifnum\linereference>0 % anders vreemde loop in paragraphs+recurse - \dorecurse{\linereference} - {\getlinereference\recurselevel - \ifnum\linereferenceplus=2 % stop - % ref y: text = 4 / Kan dit buiten referentie mechanisme om? - \expanded{\setlocalcrossreference - {\referenceprefix\linereferencename}{}{}{\linereferenceline}}% - \fi}% - \dorecurse{\linereference} - {\getlinereference\recurselevel - \ifnum\linereferenceplus<2 % start / lone - \ifnum\linereferenceplus=1 % start - \getreferenceelements{\linereferencename}% text = 4 - \ifnum\linereferenceline<0\currenttextreference\relax % 0 prevents error - \edef\linereferenceline{\linereferenceline--\currenttextreference}% - \fi - \fi - \expanded{\setlocalcrossreference - {\referenceprefix\linereferencename}{}{}{\linereferenceline}}% - \fi}% - \global\let\scratchline=\linenumber % We are going back! - \reshapebox - {\doglobal\decrement\scratchline - \hbox - {\dorecurse{\linereference} - {\getlinereference\recurselevel - \getreferenceelements{\linereferencename}% - \beforesplitstring\currenttextreference--\at--\to\firstline - \ifnum\firstline=\scratchline\relax - % beter een rawtextreference - \textreference[\linereferencename]{\currenttextreference}% - \expanded{\setlocalcrossreference - {\referenceprefix\linereferencename}{}{}{0}}% ==done - \fi}% - \dimen0=\dp\shapebox - \advance\dimen0 by -\dp\strutbox - \ifdim\dimen0>\!!zeropoint\relax - \dp\shapebox=\dp\strutbox - \fi - \schrijfregelnummer\box\shapebox}}% no \strut ! - \else - \reshapebox{\hbox{\schrijfregelnummer\box\shapebox}}% no \strut ! - \fi} - {\reshapebox{\global\advance\linenumber by -1}% - \global\advance\linenumber by \linestepper - \reshapebox{\hbox{\schrijfregelnummer\box\shapebox}}}% no \strut ! - \global\advance\linenumber by \linestepper - \flushshapebox - \egroup} - -\def\crlf% - {\ifhmode\unskip\else\strut\fi\ifcase\raggedstatus\hfil\fi\break} - -\def\opeenregel% - {\def\crlf{\ifhmode\unskip\fi\space}\let\\\crlf} - -\newcount\internalparagraphnumber - -\def\stelparagraafnummerenin% - {\dosingleempty\dostelparagraafnummerenin} - -\def\dostelparagraafnummerenin[#1]% - {\getparameters - [\??ph][#1]% - \processaction - [\@@phstatus] - [\v!start=>\let\showparagraphnumber\doshowparagraphnumberA, - \v!stop=>\let\showparagraphnumber\relax, - \v!regel=>\let\showparagraphnumber\doshowparagraphnumberB, - \v!reset=>\global\internalparagraphnumber=0 - \let\showparagraphnumber\doshowparagraphnumberA]} - -\def\dodoshowparagraphnumber% - {\global\advance\internalparagraphnumber 1 - \inleftmargin % \tf normalizes em - {\tf{\doattributes\??ph\c!letter\c!kleur{\the\internalparagraphnumber}}% - \kern\@@phafstand}} - -\def\doshowparagraphnumberA% - {\ifprocessingverbatim - \iflinepar\dodoshowparagraphnumber\fi - \else - \dodoshowparagraphnumber - \fi} - -\def\doshowparagraphnumberB% - {\ifinregelnummeren - \doshowparagraphnumberA - \fi} - -\newbox\opmaak - -\def\setopmaaklayout[#1]% - {\stelvoetin [\c!status=\getvalue{\??do#1\c!voetstatus}]% - \stelhoofdin[\c!status=\getvalue{\??do#1\c!hoofdstatus}]% - \steltekstin[\c!status=\getvalue{\??do#1\c!tekststatus}]% - \stelonderin[\c!status=\getvalue{\??do#1\c!onderstatus}]% - \stelbovenin[\c!status=\getvalue{\??do#1\c!bovenstatus}]} - -\def\dododostartopmaak[#1]% - {\doifvaluesomething{\??do#1\c!pagina} - {\ExpandFirstAfter\pagina[\getvalue{\??do#1\c!pagina}]}% - \soortpagina[#1]% - \setopmaaklayout[#1]% - \getvalue{\??do#1\c!commandos}% - \global\setbox\opmaak=\vbox to \getvalue{\??do#1\c!hoogte}% - \bgroup - \forgetall - \hsize=\getvalue{\??do#1\c!breedte}% - \getvalue{\??do#1\c!boven}} - -\def\dododostopopmaak[#1]% - {\getvalue{\??do#1\c!onder}% - \egroup} - -\def\doshipoutopmaak[#1]% - {\bgroup - \getvalue{\??do#1\c!voor}% - \box\opmaak - \setopmaaklayout[#1]% - \pagina - \getvalue{\??do#1\c!na}% - \ifdubbelzijdig - \ifodd\realpageno\else - \processaction - [\getvalue{\??do#1\c!dubbelzijdig}] - [ \v!ja=>\null\pagina\verlaagpaginanummer, - \v!leeg=>\pagebodyornamentsfalse - \null\pagina\verlaagpaginanummer]% - \fi - \fi - \verlaagpaginanummer - \egroup} - -\def\doflushopmaak[#1]% - {\ifverwerken - \ifgeselecteerd - \doshipoutopmaak[#1]% - \fi - \else - \ifgeselecteerd - \else - \doshipoutopmaak[#1]% - \fi - \fi - \ifselecteren - \global\geselecteerdfalse - \fi} - -\def\dodostartopmaak[#1][#2]% - {\begingroup - \stelopmaakin[#1][#2]% - \dododostartopmaak[#1]} - -%\def\dodostopopmaak[#1]% -% {\dododostopopmaak[#1]% -% \doflushopmaak[#1]% -% \endgroup} - -\def\dodostopopmaak[#1]% - {\dododostopopmaak[#1]% - \doflushopmaak[#1]% - \endgroup - \calculatehsizes - \calculatevsizes} - -\def\dostartopmaak[#1][#2]% - {\iffirstargument - \dodostartopmaak[#1][#2]% - \def\stopopmaak% - {\dodostopopmaak[#1]}% - \else - \pagina - \stelhoofdin[\c!status=\v!leeg] - \stelvoetin[\c!status=\v!leeg] - \vbox to \teksthoogte % nog een topskip optie - \bgroup - \def\stopopmaak% - {\egroup - \eject}% - \fi} - -\def\startopmaak% - {\dodoubleempty\dostartopmaak} - -\def\dodefinieeropmaak[#1][#2]% - {\getparameters - [\??do#1]% - [\c!breedte=\zetbreedte, - \c!hoogte=\teksthoogte, - \c!voffset=\!!zeropoint, - \c!hoffset=\!!zeropoint, - \c!commandos=, - \c!pagina=\v!rechts, - \c!dubbelzijdig=\v!leeg, - \c!voor=, - \c!boven=\vss, - \c!onder=\vss, - \c!na=, - \c!onderstatus=\v!normaal, - \c!bovenstatus=\v!normaal, - \c!tekststatus=\v!normaal, - \c!hoofdstatus=\v!stop, - \c!voetstatus=\v!stop, - #2]% - \setvalue{\e!start#1\e!opmaak}% - {\dodoubleempty\dodostartopmaak[#1]}% - \setvalue{\e!stop#1\e!opmaak}% - {\dodostopopmaak[#1]}} - -\def\definieeropmaak% - {\dodoubleargument\dodefinieeropmaak} - -\def\dostelopmaakin[#1]% - {\getparameters[\??do#1]} - -\def\stelopmaakin% - {\dodoubleargument\dostelopmaakin} - -\def\stelplaatsblokkenin% - {\dodoubleargument\getparameters[\??bk]} - -\def\stelblokkopjesin% - {\dodoubleargument\getparameters[\??kj]}% - -\def\dostelplaatsblokin[#1][#2]% - {\getparameters[\??fl#1][#2]} - -\def\stelplaatsblokin% - {\dodoubleargument\dostelplaatsblokin} - -\def\dostelblokkopjein[#1][#2]% - {\getparameters[\??kj#1][#2]} - -\def\stelblokkopjein% - {\dodoubleargument\dostelblokkopjein} - -\def\doleegblok#1% - {\localframed - [\??fl#1][\c!kader=\v!aan]% - {\getmessage{\m!floatblocks}{12}}} - -\def\docomplexplaatsblok[#1][#2][#3]#4% - {\flushfootnotes - \ifmargeblokken - \doifinset{\v!marge}{#2} - {\bgroup - \everypar{\egroup\the\everypar}% - \hsize=\@@mbbreedte}% - \fi - \global\insidefloattrue - \dowithnextboxcontent - {\postponefootnotes} % new - {\docompletefloat - {#1}{#3}{#1}{#2}{#1}{#4} - {\box\nextbox}}% - \vbox} - -\def\docomplexstarttekstblok[#1][#2][#3]% - {\flushfootnotes - \flushsidefloats % hoort eigenlijk niet hier - \docomplexplaatsblok[#1][\v!tekst,#2,\v!links][#3]} - -\def\docomplexreserveerblok[#1][#2][#3][#4]#5% - {\getvalue{\e!plaats#1}[#3][#4]{#5}{\localframed[\??fl#1][#2]{#1}}} - -\def\docomplexstartreserveertekstblok[#1][#2][#3][#4]% - {\flushsidefloats % hoort eigenlijk niet hier - \docomplexreserveerblok[#1][#2][\v!tekst,#3,\v!links][#4]} - -\def\dodefinieerplaatsblok[#1][#2]% #1=naam #2=meervoud - {\presetlocalframed[\??fl#1]% - \stelplaatsblokin - [#1] - [\c!breedte=15\korpsgrootte, - \c!hoogte=10\korpsgrootte, - \c!kader=\@@bkkader, - \c!straal=\@@bkstraal, - \c!hoek=\@@bkhoek, - \c!plaats=\@@bkplaats, - \c!achtergrond=\@@bkachtergrond, - \c!achtergrondraster=\@@bkachtergrondraster, - \c!achtergrondkleur=\@@bkachtergrondkleur, - \c!achtergrondoffset=\@@bkachtergrondoffset, - \c!bovenkader=\@@bkbovenkader, - \c!onderkader=\@@bkonderkader, - \c!linkerkader=\@@bklinkerkader, - \c!rechterkader=\@@bkrechterkader, - \c!kaderoffset=\@@bkkaderoffset, - \c!paginaovergangen=]% - \stelblokkopjein - [#1] - [\c!plaats=\@@kjplaats, - %\c!voor=\@@kjvoor, - \c!tussen=\@@kjtussen, - %\c!na=\@@kjna, - \c!breedte=\@@kjbreedte, - \c!kopletter=\@@kjkopletter, - \c!letter=\@@kjletter, - \c!kleur=\@@kjkleur, - \c!uitlijnen=\@@kjuitlijnen, - \c!nummer=\@@kjnummer, - \c!wijze=\@@kjwijze, - \c!blokwijze=\@@kjblokwijze, - \c!sectienummer=\@@kjsectienummer, - \c!conversie=\@@kjconversie]% - \doorlabelen - [#1] - [\c!tekst=#1, - \c!plaats=\v!intekst, - \c!wijze=\getvalue{\??kj#1\c!wijze}, - \c!blokwijze=\getvalue{\??kj#1\c!blokwijze}, - \c!sectienummer=\getvalue{\??kj#1\c!sectienummer}, - \c!conversie=\getvalue{\??kj#1\c!conversie}]% - \presetlabeltext[#1=\Word{#1}~]% - \presetheadtext[#2=\Word{#2}]% - \definieerlijst[#1]% - \setvalue{\e!plaats\e!lijstmet#2}% - {\dodoubleempty\doplaatslijst[#1]}% - \setvalue{\e!volledige\e!lijstmet#2}% - {\dotripleempty\dodovolledigelijst[#1][#2]}% - \setvalue{\e!plaats#1}% - {\dotripleempty\docomplexplaatsblok[#1]}% - \setvalue{\e!reserveer#1}% - {\doquadrupleempty\docomplexreserveerblok[#1]}% - \setvalue{\e!start#1\e!tekst}% - {\dotripleempty\docomplexstarttekstblok[#1]}% - \setvalue{\e!stop#1\e!tekst}% - {\dostoptextfloat}% - \setvalue{\e!start\e!reserveer#1\e!tekst}% - {\doquadrupleempty\docomplexstartreserveertekstblok[#1]}% - \setvalue{\e!stop\e!reserveer#1\e!tekst}% - {\dostoptextfloat}% - \setvalue{\e!lege#1}% - {\doleegblok{#1}}% - \setvalue{\e!leeg#1}% - {\doleegblok{#1}}} - -\def\definieerplaatsblok% - {\dodoubleargument\dodefinieerplaatsblok} - -% De onderstaande macro's ondersteunen het zetten van tekst -% rond figuren. De macro's zijn ontworpen door Daniel Comenetz -% en gepubliceerd in TUGBoat Volume 14 (1993), No. 1: Anchored -% Figures at Either Margin. De macro's zijn slechts op enkele -% punten door mij aangepast. - -% afhankelijke variabelen -% -% \overgap vervangen door \floatsidetopskip -% \sidegap vervangen door \floatsideskip -% \undergap vervangen door \floatsidebottomskip -% -% \prskp vervangen door \tussenwit - -% toegevoegde macro's/aanroepen -% -% \logsidefloat : loginformatie -% \flushsidefloats : nodig voor koppen - -% recente wijzigingen: -% -% namen aangepast: \float... enz. i.p.v. \pic - -% Pas op: \EveryPar{\EveryPar{}\margetitel{whatever}} -% \plaatsfiguur[links]{}{} moet goed gaan. In dat geval -% begint de tekst terecht wat lager. - -\newdimen\sidefloatheight % includes the topskip -\newdimen\sidefloatwidth -\newdimen\sidefloathsize -\newdimen\sidefloatvsize \def\nofloatvsize{-1pt } - -\newbox\floatbottom - -\newif\ifrightfloat -\newif\ifmarginfloat -\newif\ifroomforfloat -\newif\iffloatshort -\newif\iffloatflag -\newif\iffloatrighteqo -\newif\iffloatlefteqo - -\let\floatrighteqo=\eqno -\let\floatleftleqo=\leqno - -% Watch it even more! In inner, gaat't mis omdat daar -% pagetotal enz niet zijn aangepast. Inner kan overigens niet -% betrouwbaar worden getest! - -% NOT TOEVOEGEN: \the\everytrace - -\everypar ={\flushfootnotes - \ifinner\else\checksidefloat\fi - \checkindentation - \showparagraphnumber % here ? - \flushmargincontents - \flushcomments} -\neverypar ={} -\everydisplay={\flushfootnotes - \adjustsidefloatdisplaylines} - -\def\flushsidefloats% - {\par - \!!heighta=\sidefloatvsize - \advance\!!heighta by -\pagetotal - \ifdim\!!heighta>\!!zeropoint - \witruimte % nog checken op interferentie - \kern\!!heighta - \fi - \global\sidefloatvsize=\nofloatvsize - \global\floatflagfalse} - -\def\forgetsidefloats% - {\global\sidefloatvsize=\nofloatvsize - \global\floatflagfalse} - -\def\flushsidefloatsafterpar% - {\xdef\oldpagetotal{\the\pagetotal}% - \gdef\checksidefloat% - {\dochecksidefloat - \ifdim\oldpagetotal=\pagetotal \else - \xdef\checksidefloat{\dochecksidefloat}% - \flushsidefloats - \fi}} - -\let\logsidefloat=\relax - -\def\pushpenalties% - {\widowpenalty=1 - \clubpenalty=2 - \brokenpenalty=1 - \let\pushpenalties=\relax - \edef\poppenalties% - {\widowpenalty=\the\widowpenalty - \clubpenalty=\the\clubpenalty - \brokenpenalty=\the\brokenpenalty}} - -\let\poppenalties=\relax - -\def\restorepenalties% - {\ifnum\outputpenalty=\!!tenthousand\relax - \else - \penalty\outputpenalty - \fi} - -\def\sidefloatoutput% - {\iffloatshort - \unvbox\normalpagebox - \setbox\floatbottom=\lastbox - \ifdim\wd\floatbottom>\sidefloathsize - \penalty-201 - \box\floatbottom - \else - \ifvoid\floatbottom - \else - \restoreleftindent - \ifdim\wd\floatbottom<\sidefloathsize - \parskip=\!!zeropoint - %\noindent - \vadjust{\penalty-1}% - \iffloatlefteqo - \global\floatlefteqofalse - \else - \global\advance\sidefloathsize by -\wd\floatbottom - \iffloatrighteqo - \global\floatrighteqofalse - \else - \global\divide\sidefloathsize by 2 - \fi - \hskip\sidefloathsize - \fi - \fi - \box\floatbottom - \restorepenalties - \fi - \fi - \global\holdinginserts=0 - \global\floatshortfalse - \else - \finaloutput\unvbox\normalpagebox - \global\sidefloatvsize=\nofloatvsize - \poppenalties - \fi} - -\def\restoreleftindent% - {\ifrightfloat - \else - \parskip=\!!zeropoint - \noindent - \vadjust{\penalty-1}% - \hskip\sidefloatwidth - \fi} - -\def\eqno% - {\iffloatshort - \global\floatrighteqotrue - \fi - \floatrighteqo} - -\def\leftmarginfloat#1% - {\global\rightfloatfalse\marginfloattrue\putsidefloat{#1}} - -\def\rightmarginfloat#1% - {\global\rightfloattrue\marginfloattrue\putsidefloat{#1}} - -\def\leftfloat#1% - {\global\rightfloatfalse\marginfloatfalse\putsidefloat{#1}} - -\def\rightfloat#1% - {\global\rightfloattrue\marginfloatfalse\putsidefloat{#1}} - -\def\putsidefloat#1% - {\par - \witruimte - \previoussidefloat - \stallsidefloat -% \setbox\floatbox=\hbox{\vbox % pretty ugly, will be rewritten -% {\vskip\ifmarginfloat-\sidefloattopskip\else\sidefloattopoffset\fi#1}} - \setbox\floatbox=\hbox - {\vbox{\vskip\ifmarginfloat-\fi\sidefloattopoffset#1}}% - \measuresidefloat - \ifroomforfloat - \setsidefloat - \else - \tosssidefloat - \measuresidefloat - \stallsidefloat - \setsidefloat - \fi} - -\def\progresssidefloat% - {\!!heighta=\sidefloatvsize - \iffloatflag - \advance\!!heighta by -\dimen3 - \global\floatflagfalse - \else - \advance\!!heighta by -\pagetotal - \fi} - -\def\tosssidefloat% - {\vfill\eject} - -\def\measuresidefloat% - {\global\floatflagtrue - \dimen3=\pagetotal - \ifmarginfloat - \global\sidefloatwidth=\!!zeropoint - \else - \global\sidefloatwidth=\wd\floatbox - \global\advance\sidefloatwidth by \floatsideskip - \fi - \global\sidefloathsize=\hsize - \global\advance\sidefloathsize by -\sidefloatwidth - \global\sidefloatheight=\ht\floatbox -\global\advance\sidefloatheight by \dp\floatbox - \global\advance\sidefloatheight by \sidefloattopskip - \global\sidefloatvsize=\sidefloatheight - \global\advance\sidefloatvsize by \dimen3 - \dimen0=\sidefloatvsize -% \advance\dimen0 by -\baselineskip -%\ifgridsnapping -% \advance\dimen0 by .5\openlineheight % \vsize slightly too large -%\fi - \ifdim\dimen0>.99\pagegoal \relax - \roomforfloatfalse - \else - \dimen0=\pagegoal - \advance\dimen0 by -\sidefloatvsize - \ifdim\dimen0<\sidefloatbottomskip - \global\advance\sidefloatvsize by \dimen0 - \global\floatshorttrue - \pushpenalties - \global\holdinginserts=1 - \else - \global\advance\sidefloatvsize by \sidefloatbottomskip - \global\floatshortfalse - \fi - \roomforfloattrue - \fi} - -\def\setsidefloat% - {\vbox{\strut}\vskip-\lineheight - \kern\sidefloattopskip - \edef\presidefloatdepth{\the\prevdepth}% - \nointerlineskip - \bgroup - \everypar={}% - \parskip=\!!zeropoint - \logsidefloat - \ifrightfloat - \hfill - \ifmarginfloat - \rlap{\hskip\rechtermargeafstand\hskip\rightskip\unhbox\floatbox}% - \else - \unhbox\floatbox - \fi - \else - \noindent - \ifmarginfloat - \llap{\unhbox\floatbox\hskip\leftskip\hskip\linkermargeafstand}% - \else - \unhbox\floatbox - \fi - \hfill - \fi - \egroup - \par - \kern-\sidefloatheight - \penalty10001 - \normalbaselines - \prevdepth=\presidefloatdepth - %\noindent - \resetsidefloatparagraph - \ignorespaces} - -\newcount\sidefloatparagraph - -\def\iffirstsidefloatparagraph% - {\ifnum\sidefloatparagraph=1\relax} - -\def\setsidefloatparagraph% - {\global\advance\sidefloatparagraph by 1\relax} - -\def\resetsidefloatparagraph% - {\global\sidefloatparagraph=0\relax} - -\def\dochecksidefloat% - {\progresssidefloat - \ifdim\!!heighta>\!!zeropoint - \advance\!!heighta by \sidefloatbottomskip - \!!counta=\!!heighta - \divide\!!counta by \baselineskip - \ifnum\!!counta>0 - \ifrightfloat - \hangindent=-\sidefloatwidth - \else - \hangindent=\sidefloatwidth - \fi - \hangafter=-\!!counta - \fi - \setsidefloatparagraph - \else - \resetsidefloatparagraph - \fi - \parskip=\tussenwit} - -\def\checksidefloat% - {\dochecksidefloat} - -\def\doadjustsidefloatdisplaylines% - {\par - \vskip-\parskip - \noindent - \ignorespaces} - -\def\adjustsidefloatdisplaylines% - {\aftergroup\doadjustsidefloatdisplaylines} - -\def\previoussidefloat% - {\progresssidefloat - \ifdim\!!heighta>\!!zeropoint \relax - \iffloatshort - \global\floatshortfalse - \tosssidefloat - \else - \kern\!!heighta - \fi - \fi} - -\def\stallsidefloat% - {\!!counta=\pageshrink - \divide\!!counta by \baselineskip - \advance\!!counta by 1 - \parskip=\!!zeropoint - \dorecurse{\!!counta}{\line{}} - \kern-\!!counta\baselineskip - \penalty0\relax} - -% De onderstaande macro's zijn verantwoordelijk voor het plaatsen -% van floats. De macro's moeten nog worden aangepast en -% uitgebreid: -% -% - nofloatpermitted : top, bot en mid counters en geen topins -% als reeds midfloat of botfloat -% -% - links, rechts, midden als niet hangend - -\newif\ifsomefloatwaiting \somefloatwaitingfalse -\newif\ifroomforfloat \roomforfloattrue -\newif\ifnofloatpermitted \nofloatpermittedfalse -\newif\iffloatsonpage \floatsonpagefalse - -\newcount\totalnoffloats \totalnoffloats=0 -\newcount\savednoffloats \savednoffloats=0 -\newcount\noffloatinserts \noffloatinserts=0 - -\newbox\floatlist - -\newinsert\botins - -\skip\botins=\!!zeropoint -\count\botins=\!!thousand -\dimen\botins=\maxdimen - -\newdimen\topinserted -\topinserted=\!!zeropoint - -\newdimen\botinserted -\botinserted=\!!zeropoint - -\newif\ifflushingfloats -\flushingfloatsfalse - -\newbox\floattext - -\newdimen\floattextwidth -\newdimen\floattextheight - -\newbox\floatbox - -\newdimen\floatwidth -\newdimen\floatheight - -% Er wordt bij \v!altijd als dat nodig is hernummerd. -% Daarbij wordt gebruik gemaakt van de opgeslagen nummers en -% volgorde. - -\definetwopasslist{\s!float} - -\def\dofloatreference% - {\doglobal\increment\numberedfloat - \edef\dodofloatreference% - {\writeutilitycommand% - {\twopassentry% - {\s!float}% - {\numberedfloat}% - {\hetnummer}}}% - \dodofloatreference} - -\def\redofloatorder#1% - {\doglobal\increment\nofplacedfloats\relax - \gettwopassdata{\s!float}% - \iftwopassdatafound - \doifnot{\hetnummer}{\twopassdata} - {\edef\oldhetnummer{\hetnummer}% - \xdef\hetnummer{\twopassdata}% - \showmessage - {\m!floatblocks}{1} - {\nofplacedfloats,#1 \oldhetnummer,\hetnummer}}% - \fi} - -% In \dofloatinfomessage wordt {{ }} gebruikt omdat anders -% binnen \startuitstellen...\stopuitstellen geen goede -% melding in de marge volgt: \ifinner is dan namelijk true. - -\def\dofloatinfomessage#1#2#3% - {\bgroup - \showmessage{\m!floatblocks}{#2}{#3}% - \@EA\floatinfo\@EA#1\@EA{\currentmessagetext}% - \egroup} - -\def\dosavefloatinfo% - {\dofloatinfomessage{>}{2}{\the\totalnoffloats}} - -\def\dofloatflushedinfo% - {\bgroup - \!!counta=\totalnoffloats - \advance\!!counta by -\savednoffloats - \dofloatinfomessage{<}{3}{\the\!!counta}% - \egroup} - -\def\doinsertfloatinfo% - {\dofloatinfomessage{<}{4}{\the\totalnoffloats}} - -% ook voetnoten saven - -\def\dosavefloat% - {\global\setbox\floatlist=\vbox - {\nointerlineskip - \box\floatbox - \unvbox\floatlist}% - \global\advance\savednoffloats by 1 - \global\somefloatwaitingtrue - \dosavefloatinfo - \nonoindentation} - -\def\doresavefloat% - {\global\setbox\floatlist=\vbox - {\nointerlineskip - \unvbox\floatlist - \box\floatbox}% - \global\advance\savednoffloats by 1 - \global\somefloatwaitingtrue} - -\def\doreversesavefloat% - {\global\setbox\floatlist=\vbox - {\nointerlineskip - \unvbox\floatlist - \box\floatbox}% - \global\advance\savednoffloats by 1 - \global\somefloatwaitingtrue - \dosavefloatinfo} - -\def\checkwaitingfloats#1% - {\ifsomefloatwaiting - \doifinsetelse{\v!altijd}{#1} - {\showmessage{\m!floatblocks}{5}{}} - {\doflushfloats}% - \fi} - -\def\doflushfloats% - {\global\floatsonpagefalse - \global\flushingfloatstrue - \ifsomefloatwaiting - \par - \ifvmode\prevdepth=\maxdimen\fi % prevents whitespace - \dodoflushfloats - \fi - \global\savednoffloats=0 - \global\somefloatwaitingfalse - \global\flushingfloatsfalse} - -\def\dodoflushfloats% moet nog beter: als precies passend, niet onder baseline - {\ifsomefloatwaiting - \bgroup % \box\floatbox can be in use! - \dogetfloat - %\forgetall % NJET! - \witruimte - \blanko[\@@bkvoorwit] - \flushfloatbox - %\ifnum\savednoffloats>1 % REMOVED - %\else - \blanko[\@@bknawit] - %\fi - \egroup - \dofloatflushedinfo - \expandafter\dodoflushfloats - \fi} - -\newbox\globalscratchbox - -\def\dogetfloat% - {\ifsomefloatwaiting - \global\setbox\floatlist=\vbox - {\unvbox\floatlist - \global\setbox\globalscratchbox=\lastbox}% - \setbox\floatbox=\box\globalscratchbox % local ! - \global\advance\savednoffloats by -1\relax - \ifnum\savednoffloats=0 - \global\somefloatwaitingfalse - \fi - \else - \global\savednoffloats=0 - \global\setbox\floatbox=\box\voidb@x - \fi} - -\def\dotopfloat% - {\ifdim\topinserted=\!!zeropoint\relax - \topofinserttrue - \else - \topofinsertfalse - \fi - \global\advance\topinserted by \ht\floatbox - \global\advance\topinserted by \dp\floatbox - \global\advance\topinserted by \floatbottomskip - \insert\topins - {\forgetall - \iftopofinsert - \kern-\lineskip\par\prevdepth=\maxdimen - \else - %\blanko[-\@@bknawit,\@@bkvoorwit]% inserts can't look back - \betweenfloatblanko - \fi - \flushfloatbox - \blanko[\@@bknawit]}% - \doinsertfloatinfo} - -% The number of topinserts also influences the float order, -% in this respect that when a moved float does not fit, but a -% next one does, it is indeed placed. Take for instance a -% sequence of 20 floats, large and small, where a large one -% migrates and the next smaller one is inserted. - -\def\dodosettopinserts% - {\ifnum\noffloatinserts<\noftopfloats - \dogetfloat - \ifdim\topinserted=\!!zeropoint\relax - \topofinserttrue - \else - \topofinsertfalse - \fi - \global\advance\topinserted by \ht\floatbox - \global\advance\topinserted by \dp\floatbox - \global\advance\topinserted by \floatbottomskip\relax - \ifdim\topinserted<\teksthoogte\relax - \xdef\totaltopinserted{\the\topinserted}% - \insert\topins - {\forgetall - \iftopofinsert - \kern-\lineskip\par\prevdepth=\maxdimen - \else - %\blanko[-\@@bknawit,\@@bkvoorwit]% inserts can't look back - \betweenfloatblanko - \fi - \flushfloatbox - \blanko[\@@bknawit]}% - \ifsomefloatwaiting - \advance\noffloatinserts by 1 - \else - \noffloatinserts=\noftopfloats\relax - \fi - \dofloatflushedinfo - \else - \doresavefloat - \noffloatinserts=\noftopfloats\relax - \fi - \else - \ifsomefloatwaiting - \showmessage{\m!floatblocks}{6}{\the\noftopfloats}% - \fi - \let\dodosettopinserts=\relax - \fi - \dodosettopinserts} - -\def\dosettopinserts% - {\bgroup - \ifsomefloatwaiting - \noffloatinserts=0 - \let\totaltopinserted=\!!zeropoint - \dodosettopinserts - \ifnum\@@bknonder=0 - \ifnum\@@bknregels>0 - \ifdim\totaltopinserted>\!!zeropoint\relax - \dimen0=\lineheight - \dimen0=\@@bknregels\dimen0 - \advance\dimen0 by \totaltopinserted\relax - \ifdim\dimen0>\teksthoogte - \showmessage{\m!floatblocks}{8}{\@@bknregels}% - \vfilll\eject - \fi - \fi - \fi - \fi - \fi - \egroup} - -\def\dodosetbotinserts% - {\ifnum\noffloatinserts<\nofbotfloats\relax - \dogetfloat - \global\advance\botinserted by \ht\floatbox\relax - \global\advance\botinserted by \dp\floatbox\relax - \global\advance\botinserted by \floattopskip\relax - \ifdim\botinserted<\pagegoal\relax - \insert\botins - {\forgetall - \blanko[\@@bkvoorwit]% - \flushfloatbox}% - \ifsomefloatwaiting - \advance\noffloatinserts by 1 - \else - \noffloatinserts=\nofbotfloats - \fi - \dofloatflushedinfo - \else - \doresavefloat - \noffloatinserts=\nofbotfloats\relax - \fi - \global\nofloatpermittedtrue % vgl topfloats s! - \else - \ifsomefloatwaiting - \showmessage{\m!floatblocks}{7}{\the\nofbotfloats}% - \fi - \let\dodosetbotinserts=\relax - \fi - \dodosetbotinserts} - -\def\dosetbotinserts% - {\bgroup - \ifsomefloatwaiting - \noffloatinserts=0 - \dodosetbotinserts - \fi - \egroup} - -\def\dobotfloat% - {\global\advance\botinserted by \ht\floatbox - \global\advance\botinserted by \dp\floatbox - \global\advance\botinserted by \floattopskip - \insert\botins - {\forgetall - \blanko[\@@bkvoorwit]% - \flushfloatbox}% - %\global\nofloatpermittedtrue - \doinsertfloatinfo} - -\def\dosetbothinserts% - {\ifflushingfloats - \global\topinserted=\!!zeropoint\relax - \global\botinserted=\!!zeropoint\relax - \else - \global\topinserted=\!!zeropoint\relax - \dosettopinserts - \global\botinserted=\topinserted\relax - \dosetbotinserts - \fi} - -\def\dotopinsertions% - {\ifvoid\topins\else - \ifgridsnapping - %\topsnaptogrid{\box\topins} - \box\topins % already snapped - \else - \unvbox\topins - \fi - \fi - \global\topinserted=\!!zeropoint\relax} - -\def\dobotinsertions% - {\ifvoid\botins\else - \ifgridsnapping - \snaptogrid\hbox{\box\botins} - \else - \unvbox\botins - \fi - \fi - \global\botinserted=\!!zeropoint\relax - \global\nofloatpermittedfalse} - -\newif\iftopofinsert -\newif\iftestfloatbox %\testfloatboxtrue - -%\def\flushfloatbox% nog verder doorvoeren en meer info in marge -% {\iftestfloatbox -% \ruledhbox{\box\floatbox}% -% \else -% \box\floatbox -% \fi} - -% \testfloatboxtrue -% -% testfloatbox gaat mis, niet in midden, dus elders - -\def\flushfloatbox% nog verder doorvoeren en meer info in marge - {\snaptogrid\hbox{\iftestfloatbox\ruledhbox\fi{\copy\floatbox}}} - -% beter de laatste skip buiten de \insert uitvoeren, -% bovendien bij volle flush onder baseline. - -\def\betweenfloatblanko% assumes that \@@bknawit is present - {\bgroup - \setbox0=\vbox{\strut\blanko[\@@bkvoorwit]\strut}% - \setbox2=\vbox{\strut\blanko[\@@bknawit]\strut}% - \ifdim\ht0>\ht2 - \blanko[-\@@bknawit,\@@bkvoorwit] - \fi - \egroup} - -\def\doroomfloat% - {\ifnofloatpermitted - \global\roomforfloatfalse - \else - \dimen0=\pagetotal - \advance\dimen0 by \ht\floatbox - \advance\dimen0 by \dp\floatbox - \advance\dimen0 by \floattopskip - \advance\dimen0 by -\pageshrink % toegevoegd -%\ifgridsnapping -% \advance\dimen0 by .5\openlineheight % \vsize slightly too large -%\fi - \ifdim\dimen0>\pagegoal - \global\roomforfloatfalse - \else - \global\roomforfloattrue - \fi - \fi} - -\def\doexecfloat% spacing between two successive must be better - {\baselinecorrection - \witruimte - \blanko[\@@bkvoorwit]% - \flushfloatbox - \blanko[\@@bknawit]% - \doinsertfloatinfo - \doif{\@@bkspringvolgendein}{\v!nee}{\noindentation}} % new - -\def\somefixdfloat[#1]% - {\doroomfloat - \ifroomforfloat\else - \goodbreak - \fi - \showmessage{\m!floatblocks}{9}{}% - \doexecfloat} - -\def\somesidefloat[#1]% links, rechts NOG TESTEN EN AANPASSEN - {\ifbinnenkolommen - \someelsefloat[\v!hier]% - \else - \checkwaitingfloats{#1}% - \def\logsidefloat% - {\doinsertfloatinfo}% - \setbox\floatbox=\vbox{\box\floatbox}% - \wd\floatbox=\floatwidth - \processfirstactioninset - [#1] - [ \v!links=>\leftfloat{\box\floatbox}, - \v!rechts=>\rightfloat{\box\floatbox}, - \v!inlinker=>\leftmarginfloat{\box\floatbox}, - \v!inrechter=>\rightmarginfloat{\box\floatbox}, - \v!inmarge=>{\doinmargenormal\leftmarginfloat - \rightmarginfloat{\box\floatbox}}]% - \doifinset{\v!lang}{#1} - {\flushsidefloatsafterpar}% - \fi} - -\def\sometextfloat[#1]% lang, links, rechts, hoog, midden, laag, offset - {\checkwaitingfloats{#1}% - \def\dostoptextfloat{\dodostoptextfloat[#1]}% - \global\floattextwidth=\hsize - \global\floatwidth=\wd\floatbox - \global\floatheight=\ht\floatbox % forget about the depth - \global\advance\floattextwidth by -\floatwidth - \global\advance\floattextwidth by -\@@bkmarge\relax % was \tfskipsize - \doifinsetelse{\v!lang}{#1} - {\floattextheight=\pagegoal - \advance\floattextheight by -\pagetotal - \advance\floattextheight by -\bigskipamount % lelijk - \ifdim\floattextheight>\teksthoogte - \floattextheight=\teksthoogte - \fi - \boxmaxdepth=\!!zeropoint\relax % toegevoegd - \ifdim\floattextheight<\floatheight - \floattextheight=\floatheight - \fi - \setbox\floattext=\vbox to \floattextheight} - {\setbox\floattext=\vbox}% - \bgroup -\forgetall\stelblankoin\stelwitruimtein % new, also needed for footnotes - \blanko[\v!blokkeer] - \hsize\floattextwidth - \ignorespaces} - -\def\dodostoptextfloat[#1]% - {\egroup - \doifnotinset{\v!lang}{#1}% - {\ifdim\ht\floattext<\floatheight - \floattextheight=\floatheight - \else - \floattextheight=\ht\floattext - \fi}% - \setbox\floatbox=\vbox to \floattextheight - {\hsize\floatwidth - \doifinsetelse{\v!beide}{#1}% - {\doifinsetelse{\v!laag}{#1} - {\vfill\box\floatbox} - {\doifinsetelse{\v!midden}{#1} - {\vfill\box\floatbox\vfill} - {\box\floatbox\vfill}}} - {\box\floatbox\vfill}}% - \setbox\floattext=\vbox to \floattextheight - {\hsize\floattextwidth - \doifinsetelse{\v!laag}{#1} - {\vfill - \box\floattext - \doifinset{\c!offset}{#1}{\witruimte\blanko}} - {\doifinsetelse{\v!midden}{#1} - {\vfill - \box\floattext - \vfill} - {\doifinset{\v!offset}{#1}{\witruimte\blanko}% - \box\floattext - \vfill}}}% - \doifinsetelse{\v!rechts}{#1}% - {\setbox\floatbox=\hbox to \hsize - {\box\floattext - \hfill - \box\floatbox}} - {\setbox\floatbox=\hbox to \hsize - {\box\floatbox - \hfill - \box\floattext}}% - \baselinecorrection - \witruimte - \blanko[\@@bkvoorwit]% - \doifnotinset{\v!lang}{#1}% - {\dp\floatbox=\openstrutdepth}% dp\strutbox}% % toegevoegd - \box\floatbox - \blanko[\@@bknawit]% - \doinsertfloatinfo} - -\def\somefacefloat[#1]% links, rechts, midden, hoog, midden, laag - {\checkwaitingfloats{#1}% - \startnaast\box\floatbox\stopnaast - \doinsertfloatinfo} - -\def\somepagefloat[#1]% links, rechts, midden, hoog, midden, laag - {\checkwaitingfloats{#1}% - \vbox to \teksthoogte - {\doifnotinset{\v!hoog}{#1}{\vfill}% - \box\floatbox - \doifnotinset{\v!laag}{#1}{\vfill}}% - \doinsertfloatinfo - \pagina} % toegevoegd - -\def\someelsefloat[#1]% - {\doifinsetelse{\v!hier}{#1} - {\doifinsetelse{\v!altijd}{#1} - {\pagina[\v!voorkeur]% - \doroomfloat - \ifroomforfloat - \doexecfloat - \else - \showmessage{\m!floatblocks}{9}{}% - \doreversesavefloat - \fi} - {\ifsomefloatwaiting - \dosavefloat - \else - \pagina[\v!voorkeur]% - \doroomfloat - \ifroomforfloat - \doexecfloat - \else - \dosavefloat - \fi - \fi}} - {\doifinsetelse{\v!altijd}{#1} - {\doroomfloat - \ifroomforfloat - \processallactionsinset - [#1] - [ \v!boven=>\dotopfloat, - \v!onder=>\dobotfloat, - \s!default=>\doexecfloat]% - \else - \showmessage{\m!floatblocks}{9}{}% - \doreversesavefloat - \fi} - {\doroomfloat - \ifroomforfloat - \processallactionsinset - [#1] - [ \v!boven=>\dotopfloat, - \v!onder=>\dobotfloat, - \s!default=>\doexecfloat]% - \else - \dosavefloat - \fi}}} - -% De onderstaande macro wordt gebruikt bij de macros -% voor het plaatsen van tabellen en figuren (klopt niet -% meer). -% -% \dofloat {plaats} {label1} {label2} {kader} -% -% \docompletefloat {nummer} {referentie} {lijst} -% {plaats} {label1} {label2} {inhoud} -% -% \box\floatbox inhoud+referentie -% -% \do???float#1 #1 = boxnummer -% -% \ifinsidefloat wordt \true gezet voor \docompletefloat en \false -% na float plaatsen; kan worden gebruikt om in -% andere commando's witruimte te onderdrukken - -\newdimen\floattopskip \floattopskip=12pt -\newdimen\floatbottomskip \floatbottomskip=12pt -\newdimen\floatsideskip \floatsideskip=12pt - -\newdimen\sidefloattopskip \sidefloattopskip=\floattopskip -\newdimen\sidefloatbottomskip \sidefloatbottomskip=\floatbottomskip -\def\sidefloattopoffset {\openstrutdepth} % {\dp\strutbox} - -\newcount\noftopfloats \noftopfloats=2 -\newcount\nofbotfloats \nofbotfloats=0 - -\def\calculatefloatskips% - {{\def\calculatefloatskips##1##2% - {\doifelsenothing{##2} - {\global##1=\!!zeropoint} - {\doifelse{##2}{\v!geen} - {\global##1=\!!zeropoint} - {\setbox0=\vbox{\witruimte\@EA\blanko\@EA[##2]}% - \global##1=\ht0}}}% - \calculatefloatskips\floattopskip\@@bkvoorwit - \calculatefloatskips\floatbottomskip\@@bknawit - \calculatefloatskips\sidefloattopskip\@@bkzijvoorwit - \calculatefloatskips\sidefloatbottomskip\@@bkzijnawit - \def\sidefloattopoffset{\openstrutdepth}% {\dp\strutbox}% - \global\floatsideskip=\@@bkmarge\relax - \global\noftopfloats=\@@bknboven\relax - \global\nofbotfloats=\@@bknonder\relax}} - -\newif\ifinsidefloat - -\def\floatcaptionsuffix{} % an optional suffix -\def\floatcaptionnumber{} % a logical counter - -\def\dosetfloatcaption#1#2#3% - {\def\dofloattekst% - {{\doattributes{\??kj#1}\c!letter\c!kleur{#3}}}% - \doifelsevalue{\??kj#1\c!nummer}{\v!ja} - {\def\dofloatnummer% - {{\xdef\floatcaptionnumber{#1}% - \hbox{\doattributes{\??kj#1}\c!kopletter\c!kopkleur - {\strut#2\floatcaptionsuffix}}}% - \ConvertToConstant\doifnot{#3}{} - {\tfskip - \emergencystretch=.5em}}} - {\let\dofloatnummer=\empty}} - -\def\putborderedfloat#1\in#2\\% - {\setbox#2=\vbox - {\localframed - [\??fl#1] - [\c!breedte=\@@bkbreedte, - \c!hoogte=\@@bkhoogte, - \c!plaats=\v!normaal, - \c!offset=\@@bkoffset]% - {\box\floatbox}}} - -\newbox\captionbox - -\def\putcompletecaption#1#2#3#4% - {\noindent - \xdef\floatcaptionnumber{#1}% - \doattributes{\??kj#1}\c!letter\c!kleur - {\doifvalue{\??kj#1\c!nummer}{\v!ja} - {\hbox{\doattributes{\??kj#1}\c!kopletter\c!kopkleur{\strut#2\floatcaptionsuffix}}% - \ConvertToConstant\doifnot{#3}{} - {\ifcase#4\relax - \tfskip\emergencystretch=.5em - \else - \ifx\@@kjkjtussen\empty\else\unskip\@@kjkjtussen\fi - \fi}}% - \begstrut#3\endstrut\endgraf}} - -% \def\dosetpagfloat#1#2#3#4% \copy wegwerken -% {\bgroup -% \forgetall -% \postponefootnotes -% \mindermeldingen -% %\showcomposition -% \putborderedfloat#4\in4\\% -% \def\locatefloat% -% {\doregelplaats\@@flflplaats}% -% \ConvertToConstant\doifelse{#3}{\v!geen} -% {\global\setbox\floatbox=\vbox % pas op als wd groter dan hsize -% {\ifbinnenkolommen\ifdim\wd4>\hsize -% \let\locatefloat\relax -% \fi\fi -% \locatefloat{\copy4}}} % we need \wd4 later -% {\setbox2=\hbox -% {\footnotesenabledfalse\putcompletecaption{#4}{#2}{#3}{0}}% -% \doifinsetelse{\@@kjkjplaats}{\v!hoog,\v!midden,\v!laag} -% {\dimen0=\hsize -% \advance\dimen0 by -\wd4\relax -% \advance\dimen0 by -\@@bkmarge\relax % \was tfskipsize\relax -% \ifdim\wd2>\dimen0\relax -% \dimen2=1.3\dimen0\relax -% \ifdim\wd2<\dimen2\relax -% \dimen0=0.8\dimen0\relax -% \fi -% \fi -% \setbox2=\vbox -% {\forgetall -% \hsize=\dimen0\relax -% \raggedright -% \putcompletecaption{#4}{#2}{#3}{1}}} -% {\doifelse{\@@kjkjbreedte}{\v!max} -% {\dosetraggedvbox{\@@kjkjuitlijnen}% -% \setbox2=\raggedbox -% {\hsize\wd4\relax -% \putcompletecaption{#4}{#2}{#3}{0}}} -% {\ifdim\wd2>\wd4\relax -% \doifelse{\@@kjkjbreedte}{\v!passend} -% {\ifdim\wd4<15\korpsgrootte\relax -% \dimen0=15\korpsgrootte\relax -% \else -% \dimen0=\wd4\relax -% \fi -% \ifdim\wd4>\hsize -% \setbox0=\vbox -% {\forgetall -% \hsize=1.0\wd4 -% \footnotesenabledfalse -% \putcompletecaption{#4}{#2}{#3}{0}}% -% \ifdim\ht0>\lineheight\relax -% \setbox2=\vbox -% {\forgetall -% \hsize=0.9\wd4 -% \putcompletecaption{#4}{#2}{#3}{0}}% -% \else -% %\setbox2=\vbox % was 0, bug -% % {\forgetall -% % \hsize=1.0\wd4 -% % \putcompletecaption{#4}{#2}{#3}{0}}% -% \setbox2=\hbox{\putcompletecaption{#4}{#2}{#3}{0}}% -% \fi -% \else -% \setbox0=\vbox -% {\forgetall -% \dimen2=1.5\dimen0\relax -% \ifdim\dimen2<\hsize -% \hsize=\dimen2\relax -% \fi -% \footnotesenabledfalse -% \putcompletecaption{#4}{#2}{#3}{0}}% -% \ifdim\ht0>\lineheight\relax -% \setbox2=\vbox -% {\forgetall -% \dimen2=1.2\dimen0\relax -% \ifdim\dimen2<\hsize -% \hsize=\dimen2\relax -% \fi -% \putcompletecaption{#4}{#2}{#3}{0}}% -% \else -% %\setbox2=\vbox % was 0, bug -% % {\forgetall -% % \dimen2=1.5\dimen0\relax -% % \ifdim\dimen2<\hsize -% % \hsize=\dimen2\relax -% % \fi -% % \putcompletecaption{#4}{#2}{#3}{0}}% -% \setbox2=\hbox{\putcompletecaption{#4}{#2}{#3}{0}}% -% \fi -% \fi} -% {\dosetraggedvbox{\@@kjkjuitlijnen}% -% \setbox2=\raggedbox -% {\hsize\@@kjkjbreedte -% \putcompletecaption{#4}{#2}{#3}{0}}}% -% \else -% % \setbox2=\hbox % we want footnotes ! -% % {\putcompletecaption{#4}{#2}{#3}{0}}% -% \raggedcenter % default -% \dosetraggedvbox{\@@kjkjuitlijnen}% -% \setbox2=\raggedbox -% {\hsize\wd4 -% \putcompletecaption{#4}{#2}{#3}{0}}% -% \fi}}% -% \global\setbox\floatbox=\vbox -% {\forgetall -% \processaction -% [\@@kjkjplaats] -% [ \v!boven=>\locatefloat{\copy2}% -% \endgraf\@@kjkjtussen -% \locatefloat{\copy4}, -% \v!onder=>\locatefloat{\copy4}% -% \endgraf\@@kjkjtussen -% \locatefloat{\copy2}, -% \v!hoog=>\locatefloat -% {\doifelse{\@@flflplaats}{\v!links} -% {\copy4 -% \tfskip -% \vbox to\ht4{\@@kjkjtussen\copy2\vfill}} -% {\vbox to\ht4{\@@kjkjtussen\copy2\vfill}% -% \tfskip -% \copy4}}, -% \v!laag=>\locatefloat -% {\doifelse{\@@flflplaats}{\v!links} -% {\copy4 -% \tfskip -% \vbox to\ht4 -% {\vfill\copy2\@@kjkjtussen}} -% {\vbox to\ht4 -% {\vfill\copy2\@@kjkjtussen}% -% \tfskip -% \copy4}}, -% \v!midden=>\locatefloat -% {\doifelse{\@@flflplaats}{\v!links} -% {\copy4 -% \tfskip -% \vbox to\ht4{\vfill\copy2\vfill}} -% {\vbox to\ht4{\vfill\copy2\vfill}% -% \tfskip -% \copy4}}, -% \v!geen=>\locatefloat{\copy4}]}}% -% % extended: -% \postcenterfloatbox{\wd4}% -% %\ifdim\wd4>\hsize -% % \global\setbox\floatbox= -% % \hbox to \ifbinnenkolommen\wd4\else\hsize\fi -% % {\hss\box\floatbox\hss}% -% %\fi -% \egroup} - -% new - -\newbox\tempfloatbox -\newbox\tempcaptionbox - -%\stelblokkopjesin[\c!breedte=5cm] -%\stelblokkopjesin[\c!uitlijnen=\v!links] -%\stelblokkopjesin[\c!uitlijnen=\v!rechts] - -\def\dosetpagfloat#1#2#3#4% \copy wegwerken - {\bgroup - \forgetall - \postponefootnotes - \mindermeldingen - \putborderedfloat#4\in\tempfloatbox\\% - \def\locatefloat% - {\doregelplaats\@@flflplaats}% - \ConvertToConstant\doifelse{#3}{\v!geen} - {\dopreparenocaption{#1}{#2}{#3}{#4} - \edef\width{\the\wd\floatbox}} - {\setbox\tempcaptionbox=\hbox - {\footnotesenabledfalse\putcompletecaption{#4}{#2}{#3}{0}}% - \doifinsetelse{\@@kjkjplaats}{\v!hoog,\v!midden,\v!laag} - {\dopreparesidecaption{#1}{#2}{#3}{#4}} - {\doifelse{\@@kjkjbreedte}{\v!max} - {\dopreparestackcaptionmax{#1}{#2}{#3}{#4}} - {\ifdim\wd\tempcaptionbox>\wd\tempfloatbox % wider caption - \doifelse{\@@kjkjbreedte}{\v!passend} - {\dopreparestackcaptionaut{#1}{#2}{#3}{#4}} - {\dopreparestackcaptionwid{#1}{#2}{#3}{#4}}% - \else - \dopreparestackcaptionmin{#1}{#2}{#3}{#4}% - \fi}} - \edef\width{\the\wd\tempfloatbox}% - \buildfloatbox}% - \postcenterfloatbox\width - \egroup} - -\def\dopreparenocaption#1#2#3#4% - {\global\setbox\floatbox=\vbox % pas op als wd groter dan hsize - {\ifbinnenkolommen\ifdim\wd\tempfloatbox>\hsize - \let\locatefloat\relax - \fi\fi - \locatefloat{\copy\tempfloatbox}}} - -\def\dopreparestackcaptionmax#1#2#3#4% - {\dosetraggedvbox{\@@kjkjuitlijnen}% - \setbox\tempcaptionbox=\raggedbox - {\hsize\wd\tempfloatbox - \putcompletecaption{#4}{#2}{#3}{0}}} - -\def\captionminwidth {15\korpsgrootte} -\def\captionovershoot {2em} - -\def\dopreparestackcaptionaut#1#2#3#4% - {\doifsomething{\@@kjkjuitlijnen} - {\ExpandBothAfter\doifnotinset{\v!midden}{\@@kjkjuitlijnen} - {\let\captionovershoot\!!zeropoint}}% - \ifdim\wd\tempfloatbox>\hsize - % float is wider than \hsize - \dosetraggedvbox\@@kjkjuitlijnen - \setbox\scratchbox=\raggedbox % trial run - {\hsize=\wd\tempfloatbox - \footnotesenabledfalse - \putcompletecaption{#4}{#2}{#3}{0}}% - \ifdim\ht\scratchbox>\lineheight % more lines - \dosetraggedvbox\@@kjkjuitlijnen - \setbox\tempcaptionbox=\raggedbox - {\hsize=\wd\tempfloatbox - \advance\hsize -\captionovershoot\relax - \ifdim\hsize<\captionminwidth\relax - \hsize=\wd\tempfloatbox - \fi - \putcompletecaption{#4}{#2}{#3}{0}}% - \else - \setbox\tempcaptionbox=\raggedbox - {\hsize=\wd\tempfloatbox - \putcompletecaption{#4}{#2}{#3}{0}}% - \fi - \else - % float is smaller of equal to \hsize - \ifdim\wd\tempfloatbox<\captionminwidth\relax - \scratchdimen\captionminwidth % float smaller than min width - \else - \scratchdimen\wd\tempfloatbox % float width - \fi - \setbox\scratchbox=\vbox % test with overshoot - {\advance\scratchdimen \captionovershoot - \advance\scratchdimen 3em % an average word length - \ifdim\scratchdimen<\hsize \hsize=\scratchdimen \fi - \footnotesenabledfalse - \putcompletecaption{#4}{#2}{#3}{0}}% - \ifdim\ht\scratchbox>\lineheight - % at least an average word longer than a line - \dosetraggedvbox\@@kjkjuitlijnen - \setbox\tempcaptionbox\raggedbox - {\advance\scratchdimen \captionovershoot - \ifdim\scratchdimen<\hsize \hsize=\scratchdimen \fi - \putcompletecaption{#4}{#2}{#3}{0}}% - \else - % just over a line, don't use an overshoot - \dosetraggedvbox\@@kjkjuitlijnen - \setbox\tempcaptionbox=\raggedbox - {\hsize\scratchdimen - \putcompletecaption{#4}{#2}{#3}{0}}% - \fi - \fi} - -\def\dopreparestackcaptionwid#1#2#3#4% - {\dosetraggedvbox\@@kjkjuitlijnen - \setbox\tempcaptionbox=\raggedbox - {\hsize\@@kjkjbreedte - \putcompletecaption{#4}{#2}{#3}{0}}} - -\def\dopreparestackcaptionmin#1#2#3#4% - {\raggedcenter % the default - \dosetraggedvbox\@@kjkjuitlijnen % when given - \setbox\tempcaptionbox=\raggedbox % vbox, keeps footnotes - {\hsize\wd\tempfloatbox - \putcompletecaption{#4}{#2}{#3}{0}}} - -\def\dopreparesidecaption#1#2#3#4% - {\dimen0=\hsize - \advance\dimen0 by -\wd\tempfloatbox - \advance\dimen0 by -\@@bkmarge\relax % was \tfskipsize\relax - \ifdim\wd\tempcaptionbox>\dimen0 - \dimen2=1.3\dimen0 - \ifdim\wd\tempcaptionbox<\dimen2 - \dimen0=0.8\dimen0 - \fi - \fi - \setbox\tempcaptionbox=\vbox - {\hsize=\dimen0 - \raggedright - \putcompletecaption{#4}{#2}{#3}{1}}} - -\def\buildfloatbox% - {\global\setbox\floatbox=\vbox - {\forgetall - \processaction - [\@@kjkjplaats] - [ \v!boven=>\locatefloat{\box\tempcaptionbox}% - \endgraf\@@kjkjtussen - \locatefloat{\box\tempfloatbox}, - \v!onder=>\locatefloat{\box\tempfloatbox}% - \endgraf\@@kjkjtussen - \locatefloat{\box\tempcaptionbox}, - \v!hoog=>\locatefloat - {\doifelse{\@@flflplaats}{\v!links} - {\box\tempfloatbox - \tfskip - \vbox to\ht\tempfloatbox{\@@kjkjtussen\box\tempcaptionbox\vfill}} - {\vbox to\ht\tempfloatbox{\@@kjkjtussen\box\tempcaptionbox\vfill}% - \tfskip - \box\tempfloatbox}}, - \v!laag=>\locatefloat - {\doifelse{\@@flflplaats}{\v!links} - {\box\tempfloatbox - \tfskip - \vbox to\ht\tempfloatbox - {\vfill\box\tempcaptionbox\@@kjkjtussen}} - {\vbox to\ht\tempfloatbox - {\vfill\box\tempcaptionbox\@@kjkjtussen}% - \tfskip - \box\tempfloatbox}}, - \v!midden=>\locatefloat - {\doifelse{\@@flflplaats}{\v!links} - {\box\tempfloatbox - \tfskip - \vbox to\ht\tempfloatbox{\vfill\box\tempcaptionbox\vfill}} - {\vbox to\ht\tempfloatbox{\vfill\box\tempcaptionbox\vfill}% - \tfskip - \box\tempfloatbox}}, - \v!geen=>\locatefloat{\box\tempfloatbox}]}} - -\newif\ifpostponecolumnfloats \postponecolumnfloatsfalse % don't change - -\def\postcenterfloatbox#1% - {\ifbinnenkolommen - \ifpostponecolumnfloats - \scratchdimen=\makeupwidth - \else - \scratchdimen=#1\relax - \fi - \else\ifdim#1>\hsize - \scratchdimen=\hsize - \else - \scratchdimen=\wd\floatbox - \fi\fi - \global\setbox\floatbox=\hbox to \scratchdimen - {\hfill\box\floatbox\hfill}} % geen \hss, gaat mis in kolommen ! - -\def\dosetparfloat#1#2#3#4% - {\bgroup - \forgetall - \postponefootnotes - \mindermeldingen - %\showcomposition - \putborderedfloat#4\in4\\ - \ConvertToConstant\doifelse{#3}{\v!geen} - {\global\setbox\floatbox=\vbox{\box4}} - {\setbox2=\hbox - {\forgetall\putcompletecaption{#4}{#2}{#3}{0}}% - \doifelse{\@@kjkjbreedte}{\v!max} - {\dosetraggedvbox{\@@kjkjuitlijnen}% - \setbox2=\raggedbox - {\hsize\wd4\putcompletecaption{#4}{#2}{#3}{0}}}% - {\doifelse{\@@kjkjbreedte}{\v!passend} - {\ifdim\wd2>\wd4\relax - \setbox2=\vbox - {\forgetall\hsize\wd4\putcompletecaption{#4}{#2}{#3}{0}}% - \else - \setbox2=\hbox to \wd4 - {\hss\box2\hss}% - \fi} - {\dosetraggedvbox{\@@kjkjuitlijnen}% - \setbox2=\raggedbox - {\hsize\wd4\putcompletecaption{#4}{#2}{#3}{0}}}}% - \global\setbox\floatbox=\vbox - {\processaction - [\@@kjkjplaats] - [ \v!boven=>\box2\endgraf\@@kjkjtussen\box4, - \v!onder=>\box4\endgraf\@@kjkjtussen\box2, - \v!geen=>\box4, - \s!unknown=>\box4\endgraf\@@kjkjtussen\box2]}}% - \egroup} - -\newif\ifparfloat - -\long\def\dosetfloatbox#1#2#3#4% - {\ifvisible - \par - \doifcommonelse - {#1}{\v!links,\v!rechts,\v!inlinker,\v!inrechter,\v!inmarge} - {\global\parfloattrue} - {\global\parfloatfalse}% - \ifbinnenkolommen - \global\parfloatfalse - \fi - \edef\@@kjkjbreedte {\getvalue{\??kj#4\c!breedte}}% - \def \@@kjkjtussen {\getvalue{\??kj#4\c!tussen}}% geen \edef - \edef\@@kjkjplaats {\getvalue{\??kj#4\c!plaats}}% - \edef\@@kjkjuitlijnen{\getvalue{\??kj#4\c!uitlijnen}}% - \edef\@@flflplaats {\getvalue{\??fl#4\c!plaats}}% - \ifparfloat - \dosetparfloat{#1}{#2}{#3}{#4}% - \else - \dosetpagfloat{#1}{#2}{#3}{#4}% - \fi - \setbox\floatbox=\hbox{\black\box\floatbox}% - \global\floatheight=\ht\floatbox - \global\advance\floatheight by \dp\floatbox - \global\floatwidth=\wd\floatbox - \global\advance\totalnoffloats by 1 - \doifnotinset{\v!marge}{#1} % gaat namelijk nog fout - {\setbox\floatbox=\vbox - {\parindent\!!zeropoint - \ifvoorlopig - \inleftmargin{\framed{\infofont\the\totalnoffloats}}% - \fi - \box\floatbox}}% - \wd\floatbox=\floatwidth - \dimen0=\floatheight - \advance\dimen0 by \lineheight - \ifdim\dimen0<\teksthoogte - \else - \global\floatheight=\teksthoogte - \global\advance\floatheight by -\lineheight - \ht\floatbox=\floatheight - \dp\floatbox=\!!zeropoint - \showmessage{\m!floatblocks}{10}{\the\totalnoffloats}% - \fi - \fi} - -\def\dogetfloatbox#1% - {\ifvisible - \let\next\relax % ivm eetex - \processfirstactioninset - [#1] - [ \v!hier=>\def\next{\global\floatsonpagetrue\someelsefloat[#1]}, - \v!forceer=>\def\next{\global\floatsonpagetrue\somefixdfloat[#1]}, - \v!links=>\def\next{\global\floatsonpagetrue\somesidefloat[#1]\presetindentation}, - \v!rechts=>\def\next{\global\floatsonpagetrue\somesidefloat[#1]}, - \v!tekst=>\def\next{\global\floatsonpagetrue\sometextfloat[#1]}, - \v!boven=>\def\next{\someelsefloat[#1]\nonoindentation}, % ! - \v!onder=>\def\next{\global\floatsonpagetrue\someelsefloat[#1]}, - \v!marge=>\def\next{\somenextfloat[#1]\nonoindentation}, % ! - \v!pagina=>\def\next{\global\floatsonpagetrue\somepagefloat[#1]}, - \v!naast=>\def\next{\global\floatsonpagetrue\somefacefloat[#1]}, - \v!inmarge=>\def\next{\global\floatsonpagetrue\somesidefloat[#1]}, - \v!inlinker=>\def\next{\global\floatsonpagetrue\somesidefloat[#1]}, - \v!inrechter=>\def\next{\global\floatsonpagetrue\somesidefloat[#1]}, - \s!default=>\def\next{\global\floatsonpagetrue\someelsefloat[\v!hier,#1]}, - \s!unknown=>\def\next{\global\floatsonpagetrue\someelsefloat[\v!hier,#1]}]% - \next - \fi} - -\long\def\dofloat#1#2#3#4% - {\dosetfloatbox{#1}{#2}{#3}{#4}% - \dogetfloatbox{#1}}% - -\long\def\docompletefloat#1#2#3#4#5#6#7% - {\flushsidefloats - \calculatefloatskips - \bgroup - \global\setbox\floatbox=\vbox{#7}% - \dimen0=\ht\floatbox - \advance\dimen0 by \dp\floatbox - \ifdim\dimen0=\!!zeropoint\relax - \showmessage{\m!floatblocks}{11}{}% - \global\setbox\floatbox=\vbox{\getvalue{\e!lege#3}}% - \fi - \ConvertToConstant\doifelse{#6}{\v!geen} - {\global\setbox\floatbox=\vbox - {\unvbox\floatbox - \vss % gets rid of the depth - \rawpagereference{\s!flt}{#2}}% - \egroup\dofloat{#4}{}{#6}{#1}} - {\doglobal\convertargument#6\to\asciititle % \asciititle is global - \doifelsevalue{\??kj#1\c!nummer}{\v!ja} - {\verhoognummer[#1]% - \maakhetnummer[#1]% - \global\setbox\floatbox=\vbox - {\unvbox\floatbox % no \vss, keep the depth - \dofloatreference - \redofloatorder{#1}% - \rawreference{\s!flt}{#2}{{\hetnummer}{\asciititle}}% - \doschrijfnaarlijst{#3}{\hetnummer}{#6}{#3}}% - \egroup\dofloat{#4}{\labeltexts{#5}{\hetnummer}}{#6}{#1}} - {\global\setbox\floatbox=\vbox - {\unvbox\floatbox % no \vss, keep the depth - \rawreference{\s!flt}{#2}{{}{\asciititle}}}% - \egroup\dofloat{#4}{}{#6}{#1}}}% - \global\insidefloatfalse} - -\def\plaatsvolledig#1#2#3#4% kop, ref, tit, do - {#1[#2]{#3}% - #4% - \pagina[\v!ja]} - -\definieernummer - [\??si] - [\c!wijze=\v!per\v!tekst, - \c!conversie=\@@siconversie] - -\def\stelplaatsbloksplitsenin% - {\dodoubleargument\getparameters[\??si]} - -% ook (continued) - -\def\dosplitsplaatsblok[#1]#2% nog dubbele refs - {\ifbinnenkolommen % tzt ook nog figuren splitten - % not yet supported - \else - \bgroup - \insidefloattrue - \getparameters[\??si][#1]% - \resetnummer[\??si]% - \def\floatcaptionsuffix{\nummer[\??si]}% - \TABLEcaptionheight=\@@siregels\lineheight -\def\docomplexpagina[##1]{\goodbreak}% - \dowithnextbox - {\forgetall - \mindermeldingen - \doloop - {\setbox2\vsplit\nextbox to \lineheight - \setbox2=\vbox{\unvbox2} - \ifdim\ht2>\lineheight - \verhoognummer[\??si]% - \ifnum\ruwenummer[\??si]=1 \ifdim\ht\nextbox=\!!zeropoint - \let\floatcaptionsuffix=\empty - \fi\fi - \bgroup - #2{\unvbox2} - \egroup - \ifdim\ht\nextbox>\!!zeropoint - \pagina - \verlaagnummer[\floatcaptionnumber]% - \fi - \fi - \ifdim\ht\nextbox>\!!zeropoint\else - \expandafter\exitloop - \fi}% - \egroup} - \vbox - \fi} - -\def\splitsplaatsblok% - {\dosingleempty\dosplitsplaatsblok} - -\newbox\facingbox -\newbox\facingpage - -\newif\iffacingpages \facingpagesfalse - -\def\shipoutfacingpage% - {\iffacingpages - \ifnum\realpageno>1 - \bgroup - \pagebodyornamentsfalse - \setbox\facingpage=\vbox to \zethoogte - {\unvbox\facingpage\vfil}% - \myshipout{\buildpagebody\box\facingpage}% - \egroup - \else - \global\setbox\facingpage=\box\voidb@x - \fi - \fi} - -\def\naastpagina% - {\shipoutfacingpage} - -\def\facefloat% redefined - {\startnaast\box\floatbox\stopnaast} - -\def\startnaast% beter: \dowithnextbox - {\iffacingpages - \global\setbox\facingbox=\vbox - \bgroup - \hsize=\zetbreedte - \else - \def\next{\gobbleuntil\stopnaast}% - \expandafter\next - \fi} - -\def\stopnaast% - {\egroup - \global\setbox\facingpage=\vbox - {\ifvoid\facingpage - \vskip\openstrutdepth % \dp\strutbox - \else - \unvbox\facingpage - \fi - \box\facingbox - \blanko}} - -\def\dostelnaastplaatsenin[#1]% - {\getparameters[\??np][#1]% - \doifelse{\@@npstatus}{\v!start} - {\global\facingpagestrue} - {\global\facingpagesfalse}} - -\def\stelnaastplaatsenin% - {\dosingleargument\dostelnaastplaatsenin} - -% Don't use \@@mawhatevercommand directly, use \getvalue instead. - -\newif\ifnewbackground -\newif\ifsomebackground - -\newbox\leftbackground -\newbox\rightbackground - -\def\ifsomebackgroundfound#1% - {\edef\!!stringe{\??ma#1}% - \doifelsevaluenothing{\!!stringe\c!achtergrond } - {\doifelsevaluenothing{\!!stringe\c!voorgrondkleur} - {\doifelsevalue{\!!stringe\c!kader }\v!aan\!!doneatrue - {\doifelsevalue{\!!stringe\c!linkerkader }\v!aan\!!doneatrue - {\doifelsevalue{\!!stringe\c!rechterkader}\v!aan\!!doneatrue - {\doifelsevalue{\!!stringe\c!bovenkader }\v!aan\!!doneatrue - {\doifelsevalue{\!!stringe\c!onderkader }\v!aan\!!doneatrue - \!!doneafalse}}}}} - \!!doneatrue} - \!!doneatrue - \if!!donea} - -\def\doaddpagebackground#1#2% - {\ifsomebackgroundfound{#1}% - \edef\setpagebackgrounddepth% - {\dp#2=\the\dp#2}% - \setbox#2=\vbox\localframed - [\??ma#1] - [\c!strut=\v!nee,\c!offset=\v!overlay, - \c!breedte=\papierbreedte,\c!hoogte=\papierhoogte] - {\dp#2=\!!zeropoint\box#2}% - \setpagebackgrounddepth - \fi} - -\def\addpagebackground#1% - {\doifbothsidesoverruled - \doaddpagebackground{\v!rechterpagina}{#1}% - \orsideone - \doaddpagebackground{\v!rechterpagina}{#1}% - \orsidetwo - \doaddpagebackground{\v!linkerpagina}{#1}% - \od - \doaddpagebackground{\v!pagina}{#1}} - -\let\pagebackgroundhoffset = \!!zeropoint -\let\pagebackgroundvoffset = \!!zeropoint -\let\pagebackgrounddepth = \!!zeropoint - -% #1 = breedte -% #2 = hoogte -% #3 = pos -% #4 = pos - -%D Better (no zero dimension mp figs) and faster: - -\def\dododopagebodybackground#1#2#3#4% - {\ifsomebackgroundfound{#3#4}% - \ifdim#1>\!!zeropoint\relax - \ifdim#2>\!!zeropoint\relax - \localframed - [\??ma#3#4] - [\c!breedte=#1,\c!hoogte=#2,\c!offset=\v!overlay] - {\getvalue{\??ma#3#4\c!commando}}% {\hsize=#1\vsize=#2....} - \fi - \fi - \else - \hskip#1% - \fi} - -\def\dodopagebodybackground#1#2% - {\setbox0=\vbox to #2 - \bgroup\hbox\bgroup - \swapmargins - \goleftonpage - \dododopagebodybackground\linkerrandbreedte#2#1\v!linkerrand - \hskip\linkerrandafstand - %\hskip\pageseparation - \dododopagebodybackground\linkermargebreedte#2#1\v!linkermarge - \hskip\linkermargeafstand - \dododopagebodybackground\zetbreedte#2#1\v!tekst - \hskip\rechtermargeafstand - \dododopagebodybackground\rechtermargebreedte#2#1\v!rechtermarge - %\hskip\pageseparation - \hskip\rechterrandafstand - \dododopagebodybackground\rechterrandbreedte#2#1\v!rechterrand - \egroup\egroup - \wd0=\!!zeropoint\relax - \box0\relax} - -\def\setbackgroundbox#1#2% - {\global\setbox#1=\vbox - {\offinterlineskip - \mindermeldingen - \calculatereducedvsizes - #2\relax - \vskip-\bovenhoogte - \vskip-\bovenafstand - \dodopagebodybackground\v!boven\bovenhoogte - \vskip\bovenafstand - \dodopagebodybackground\v!hoofd\hoofdhoogte - \vskip\hoofdafstand - \dodopagebodybackground\v!tekst\teksthoogte - \vskip\voetafstand - \dodopagebodybackground\v!voet\voethoogte - \vskip\onderafstand - \dodopagebodybackground\v!onder\onderhoogte - \vfilll}% - \smashbox#1} - -\def\setbackgroundboxes% - {\ifsomebackground\ifnewbackground - \showmessage{\m!layouts}{8}{}% - \setbackgroundbox\leftbackground\relax - \ifdubbelzijdig - \setbackgroundbox\rightbackground\doswapmargins - \fi - %\global\newbackgroundfalse - \doifnot{\@@mastatus}{\v!herhaal}{\global\newbackgroundfalse}% - \doifelsevaluenothing{\??ma\v!tekst\v!tekst\c!achtergrond} - {\global\let\pagebackgroundhoffset=\!!zeropoint - \global\let\pagebackgroundvoffset=\!!zeropoint - \global\let\pagebackgrounddepth =\!!zeropoint} - {\bgroup - \dimen0=\getvalue{\??ma\v!pagina\c!offset}% - \doifnothing - {\getvalue{\??ma\v!boven\v!tekst\c!achtergrond}% - \getvalue{\??ma\v!onder\v!tekst\c!achtergrond}} - {\xdef\pagebackgroundhoffset{\the\dimen0}}% - \doifnothing - {\getvalue{\??ma\v!tekst\v!rechterrand\c!achtergrond}% - \getvalue{\??ma\v!tekst\v!linkerrand \c!achtergrond}} - {\xdef\pagebackgroundvoffset{\the\dimen0}% - \dimen0=\getvalue{\??ma\v!pagina\c!diepte}% - \xdef\pagebackgrounddepth{\the\dimen0}}% - \egroup}% - \fi\fi} - -\def\getbackgroundbox% - {\ifsomebackground - \setbackgroundboxes - \startinteractie - \doifmarginswapelse - {\copy\leftbackground} - {\copy\rightbackground}% - \stopinteractie - \fi} - -% saves us hundreds of unused hash entries if not needed - -%\def\docheckbackgrounddefinitions% allocates about 1000 hash-entries -% {\doifdefined{\??ma\v!pagina\c!achtergrond}% skip first pass -% {\def\dodocommando##1##2% -% {\copylocalframed[\??ma##1##2][\??ma\v!pagina]% -% \getparameters[\??ma##1##2] -% [\c!achtergrond=,\c!kader=,\c!kleur=,\c!raster=, -% \c!onderkader=,\c!bovenkader=,\c!linkerkader=,\c!rechterkader=]% -% \copyparameters -% [\??ma##1##2\c!kader][\??ma##1##2] -% [\c!kleur,\c!raster]% -% \copyparameters -% [\??ma##1##2\c!achtergrond][\??ma##1##2] -% [\c!kleur,\c!raster]}% -% \def\docommando##1% -% {\dodocommando##1\v!linkerrand \dodocommando##1\v!linkermarge -% \dodocommando##1\v!tekst -% \dodocommando##1\v!rechtermarge \dodocommando##1\v!rechterrand}% -% \docommando\v!boven \docommando\v!hoofd -% \docommando\v!tekst -% \docommando\v!voet \docommando\v!onder -% \def\docheckbackgrounddefinitions% -% {\global\somebackgroundtrue}}} - -\def\dostelachtergrondenin[#1][#2][#3]% - {\ifthirdargument - \global\somebackgroundtrue - \def\docommando##1% - {\doifinsetelse{##1}{\v!papier,\v!pagina,\v!linkerpagina,\v!rechterpagina} - {\getparameters[\??ma##1][#3]% - }%\dosetpageseparation} - {\def\dodocommando####1% - {\getparameters[\??ma##1####1][#3]}% - \processcommalist[#2]\dodocommando}}% - \processcommalist[#1]\docommando - \else\ifsecondargument - \global\somebackgroundtrue - \doifcommonelse{#1}{\v!tekst,\v!papier,\v!pagina,\v!linkerpagina,\v!rechterpagina} - {\def\docommando##1% - {\getparameters[\??ma##1][#2]}% - \processcommalist[#1]\docommando - }%\dosetpageseparation} - {\stelachtergrondenin - [#1]% - [\v!linkerrand,\v!linkermarge,\v!tekst,\v!rechtermarge,\v!rechterrand]% - [#2]}% - \else\iffirstargument - \getparameters[\??ma][#1]% - \fi\fi\fi - \doifelse{\@@mastatus}{\v!stop} - {\global\newbackgroundfalse} - {\global\newbackgroundtrue}} - -\def\stelachtergrondenin% - {\dotripleempty\dostelachtergrondenin} - -% a lot of setups, including short ones - -\presetlocalframed [\??ma\v!papier] -\presetlocalframed [\??ma\v!pagina] -\presetlocalframed [\??ma\v!linkerpagina] -\presetlocalframed [\??ma\v!rechterpagina] - -\copyparameters - [\??ma\v!papier\c!kader][\??ma\v!pagina] - [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] - -\copyparameters - [\??ma\v!papier\c!achtergrond][\??ma\v!pagina] - [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] - -\copyparameters - [\??ma\v!pagina\c!kader][\??ma\v!pagina] - [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] - -\copyparameters - [\??ma\v!pagina\c!achtergrond][\??ma\v!pagina] - [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] - -\copyparameters - [\??ma\v!linkerpagina\c!kader][\??ma\v!linkerpagina] - [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] - -\copyparameters - [\??ma\v!linkerpagina\c!achtergrond][\??ma\v!linkerpagina] - [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] - -\copyparameters - [\??ma\v!rechterpagina\c!kader][\??ma\v!rechterpagina] - [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] - -\copyparameters - [\??ma\v!rechterpagina\c!achtergrond][\??ma\v!rechterpagina] - [\c!offset,\c!diepte,\c!straal,\c!hoek,\c!kleur,\c!raster] - -\def\dodocommando#1#2% - {\copylocalframed - [\??ma#1#2][\??ma\v!pagina]% - \getparameters - [\??ma#1#2] - [\c!achtergrond=,\c!kader=,\c!kleur=,\c!raster=\@@rsraster, - \c!onderkader=,\c!bovenkader=,\c!linkerkader=,\c!rechterkader=]% - \setvalue{\??ma#1#2\c!kleur}{\getvalue{\??ma\v!pagina\c!kleur }}% - \setvalue{\??ma#1#2\c!raster}{\getvalue{\??ma\v!pagina\c!raster}}% - \setvalue{\??ma#1#2\c!kaderkleur}{\getvalue{\??ma#1#2\c!kleur}}% - \setvalue{\??ma#1#2\c!achtergrondkleur}{\getvalue{\??ma#1#2\c!kleur}}% - \setvalue{\??ma#1#2\c!achtergrondraster}{\getvalue{\??ma#1#2\c!raster}}} - -\dodocommando\v!tekst\empty - -\def\docommando#1% - {\dodocommando#1\v!linkerrand - \dodocommando#1\v!linkermarge - \dodocommando#1\v!tekst - \dodocommando#1\v!rechtermarge - \dodocommando#1\v!rechterrand} - -\docommando\v!boven -\docommando\v!hoofd -\docommando\v!tekst -\docommando\v!voet -\docommando\v!onder - -\let\dodocommando\relax \let\docommando\relax - -\def\currentproject {} -\def\currentproduct {} -\def\currentenvironment {} -\def\currentcomponent {} - -\def\loadedfiles {} -\def\processedfiles {} - -\let\geenfilesmeer=\relax - -\newcounter\textlevel -\newcounter\fileprocesslevel - -\setvalue{\c!file::0}{\jobname} - -\def\processedfile% is used in styles, don't change ! - {\getvalue{\c!file::\fileprocesslevel}} - -%\def\processfile#1% -% {\doglobal\increment\fileprocesslevel -% \setxvalue{\c!file::\fileprocesslevel}{#1}% -% \@EA\doglobal\@EA\addtocommalist\@EA{#1}\processedfiles -% \readlocfile{#1}{}{} -% \doglobal\decrement\fileprocesslevel} - -\def\processlocalfile#1#2% - {\doglobal\increment\fileprocesslevel - \setxvalue{\c!file::\fileprocesslevel}{#2}% - \@EA\doglobal\@EA\addtocommalist\@EA{#2}\processedfiles - #1{#2}{}{}% #1=\readlocfile|\readsetfile{dir} #2=filename - \doglobal\decrement\fileprocesslevel} - -\def\processfile#1% - {\relax - \ifx\allinputpaths\empty - \def\next{\processlocalfile\readlocfile}% - \else - \let\filepath\empty - \def\docommando##1% - {\doiffileelse{\pathplusfile{##1}{#1}} - {\donetrue\def\filepath{##1}} - {\donefalse}% - \ifdone\expandafter\quitcommalist\fi}% - \doifparentfileelse{#1} % new - {\processcommacommand [\allinputpaths]\docommando} - {\processcommacommand[.,\allinputpaths]\docommando}% - \ifx\filepath\empty - \def\next{\processlocalfile\readlocfile}% fall back ../../.. - \else - \def\next{\processlocalfile{\readsetfile\filepath}}% file found - \fi - \fi - \next{#1}} - -\let\allinputpaths\empty - -\def\usepath[#1]% - {\def\docommando##1% - {\doifelse{##1}{\v!reset} - {\let\allinputpaths\empty} - {\addtocommalist{##1}\allinputpaths}}% - \processcommalist[#1]\docommando} - -\def\registreerfileinfo[#1#2]#3% geen \showmessage ? - {\writestatus{\m!systems}{#1#2 file #3 at line \the\inputlineno}% - \immediatewriteutility{f #1 {#3}}} - -\doifundefined{preloadfonts} {\let\preloadfonts=\relax} -\doifundefined{preloadspecials} {\let\preloadspecials=\relax} - -\def\loadsystemfiles% - {\readsysfile{\f!newfilename} - {\showmessage{\m!systems}{2}{\f!newfilename}}{}% - \readsysfile{\f!oldfilename} - {\showmessage{\m!systems}{2}{\f!oldfilename}}{}% - \readsysfile{\f!filfilename} - {\showmessage{\m!systems}{2}{\f!filfilename}}{}% - \readsysfile{\f!sysfilename} - {\showmessage{\m!systems}{2}{\f!sysfilename}}{}} - -% test \@@svgebied - -\def\loadallsystemfiles#1% - {\ifx\@@svgebied\empty - \readsysfile{#1}{\showmessage{\m!systems}{2}{#1}}{}% - \else - \def\doloadsystemfile##1% - {\readsetfile{##1}{#1}{\showmessage{\m!systems}{2}{#1}}{}}% - \processcommacommand[\@@svgebied]\doloadsystemfile - \fi} - -\def\loadsystemfiles% - {\readsysfile{\f!newfilename} - {\showmessage{\m!systems}{2}{\f!newfilename}}{}% - \readsysfile{\f!oldfilename} - {\showmessage{\m!systems}{2}{\f!oldfilename}}{}% - \loadallsystemfiles\f!filfilename - \loadallsystemfiles\f!sysfilename} - -%D Loading of \type {cont-usr.tex} (edited by the user) -%D and \type {cont-fmt.tex} (generated by texexec). - -\def\loaduserspecifications - {\readsysfile{\f!usrfilename} - {\showmessage{\m!systems}{2}{\f!usrfilename}}{}% - \readjobfile{\f!fmtfilename} - {\showmessage{\m!systems}{2}{\f!fmtfilename}}{}} - -%D We don't want multiple jobfiles to interfere. - -\bgroup -\catcode`\%=\@@other -\xdef\texcommentsymbol{%} -\egroup - -\def\loadoptionfile% - {\readjobfile{\jobname.\f!optionextension} - {\showmessage{\m!systems}{2}{\jobname.\f!optionextension}}% - {}} - -% \newevery \everyjob \EveryJob -% \appendtoks ... \to \everyjob - -\prependtoks \showcontextbanner \to \everyjob - -\appendtoks \loadsystemfiles \to \everyjob -\appendtoks \preloadfonts \to \everyjob -\appendtoks \settopskip \to \everyjob -\appendtoks \preloadlanguages \to \everyjob -\appendtoks \preloadspecials \to \everyjob -\appendtoks \openspecialfile \to \everyjob -%appendtoks \checkutilityfile \to \everyjob % obsolete -\appendtoks \openutilities \to \everyjob -\appendtoks \loadoptionfile \to \everyjob -\appendtoks \loadtwopassdata \to \everyjob -\appendtoks \setupfootnotes \to \everyjob % depends on bodyfont -\appendtoks \initializeMPgraphics \to \everyjob % after loading system files - -\appendtoks \pagina[\v!laatste] \pagina \to \everybye -\appendtoks \ifarrangingpages\poparrangedpages\fi \to \everybye -\appendtoks \registreerfileinfo[end]{\jobname} \to \everybye - -\appendtoks \savenofpages \to \everybye -\appendtoks \savenofsubpages \to \everybye - -\appendtoks \closeutilities \to \everygoodbye -\appendtoks \stopcopyingblocks \to \everygoodbye -\appendtoks \closespecialfile \to \everygoodbye - -\appendtoks \checkreferences \to \everystarttext % nieuw 4-12-1999 - -\def\doateverystarttext% - {\the\everystarttext - \global\let\doateverystarttext\relax} - -\def\starttekst% - {\doateverystarttext - \ifnum\textlevel=0\relax - \registreerfileinfo[begin]{\jobname}% - \startcopyingblocks - \fi - \doglobal\increment\textlevel\relax} - -\def\stoptekst% - {\doglobal\decrement\textlevel\relax - \ifnum\textlevel>0 \else - \the\everystoptext - %\the\everybye % - %\the\everygoodbye % == \end (new) - %\expandafter\normalend % - \expandafter\end - \fi} - -\let\normalend=\end - -\def\end% - {\ifnum\textlevel>0 \else - \the\everybye - \the\everygoodbye - \global\everygoodbye\emptytoks % rather unneeded - \global\everybye\emptytoks % but for sure - \expandafter\normalend - \fi} - -\def\doexecutefileonce#1% - {\beforesplitstring#1\at.\to\currentfile - \ExpandBothAfter\doifnotinset{\currentfile}{\loadedfiles}% - {\ExpandFirstAfter\addtocommalist{\currentfile}\loadedfiles - \doexecutefile{#1}}} - -\def\doexecutefile#1% - {\registreerfileinfo[begin]{#1} - \processfile{#1}% - \registreerfileinfo[end]{#1}} - -\def\donotexecutefile#1% - {} - -\def\verwerkfile#1 % - {\doexecutefile{#1}} - -\def\omgeving #1 % at outermost level only - {\def\startomgeving ##1 {}% - \let\stopomgeving=\relax - \startreadingfile - \processfile{#1}% \readlocfile{#1}{}{}% - \stopreadingfile} - -\newcounter\filelevel - -\def\!!donextlevel#1#2#3#4#5#6\\% - {\beforesplitstring#6\at.\to#1 - \ifnum\filelevel=0\relax - \starttekst - \def\projekt ##1 {#2{##1}}% - \def\omgeving ##1 {#3{##1}}% - \def\produkt ##1 {#4{##1}}% - \def\onderdeel ##1 {#5{##1}}% - \fi - \increment\filelevel\relax - \ExpandFirstAfter\addtocommalist{#1}\loadedfiles} - -\def\doprevlevel% - {\ifnum\filelevel=1 - \expandafter\stoptekst - \else - \decrement\filelevel\relax - \expandafter\endinput - \fi} - -\def\startprojekt #1 % - {\!!donextlevel\currentproject - \donotexecutefile\doexecutefileonce - \doexecutefileonce\doexecutefile#1\\} - -\def\stopprojekt% - {\doprevlevel} - -\def\startprodukt #1 % - {\doateverystarttext - \!!donextlevel\currentproduct - \doexecutefileonce\doexecutefileonce - \donotexecutefile\doexecutefile#1\\} - -\def\stopprodukt% - {\doprevlevel} - -\def\startonderdeel #1 % - {\doateverystarttext - \!!donextlevel\currentcomponent - \doexecutefileonce\doexecutefileonce - \donotexecutefile\doexecutefile#1\\} - -\def\stoponderdeel% - {\doprevlevel} - -\def\startomgeving #1 % - {\!!donextlevel\currentenvironment - \donotexecutefile\doexecutefileonce - \donotexecutefile\donotexecutefile#1\\} - -\def\stopomgeving% - {\doprevlevel} - -\long\def\skipdeelomgeving#1\stopdeelomgeving% - {} - -\def\startdeelomgeving[#1]% - {\def\partialenvironments{}% - \def\docommando##1% - {\beforesplitstring##1\at.\to\someevironment - \ExpandFirstAfter\addtocommalist{\someevironment}\partialenvironments}% - \processcommalist[#1]\docommando - \ExpandBothAfter\doifcommonelse - {\currentproject,\currentproduct, - \currentcomponent,\currentenvironment} - {\partialenvironments} - {\let\stopdeelomgeving=\relax - \let\next=\relax} - {\let\next=\skipdeelomgeving}% - \next} - -\def\startproduct{\startprodukt} -\def\stopproduct {\stopprodukt} -\def\startproject{\startprojekt} -\def\stopproject {\stopprojekt} - -\def\project{\projekt} -\def\product{\produkt} - -\def\deelomgeving #1 % - {\doexecutefileonce{#1}} - -\expanded - {\long\noexpand\def\csname\e!start\e!instellingen\endcsname##1 ##2\csname\e!stop\e!instellingen\endcsname% - {\noexpand\long\noexpand\setvalue{\??su##1}{##2}}} - -\long\def\startsetups#1 #2\stopsetups% for international purposes - {\long\setvalue{\??su#1}{#2}} - -\def\dodosetups#1% - {\getvalue{\??su#1}} - -\def\dosetups[#1]% - {\iffirstargument - \dodosetups{#1}% - \else - \expandafter\dodosetups - \fi} - -\def\setups% - {\dosingleargument\dosetups} - -\newif\ifvoorlopig -\voorlopigfalse - -\newif\ifconcept -\conceptfalse - -\edef\utilityversion{1998.07.07} % was: 1996.03.15 % status variables -\edef\utilityversion{1998.12.20} % was: 1998.07.07 % index attributes - -\def\doplaatsversieaanduiding#1#2% - {\doifsomething{#2} - {\@EA\convertargument#2\to\ascii - \ #1: \ascii\ - \!!doneatrue}} - -\def\plaatsversieaanduiding% nog engels maken - {\ifvoorlopig - \vskip\!!sixpoint - \hbox to \zetbreedte - {\infofont - \getmessage\m!systems{27}: \currentdate\ - \doplaatsversieaanduiding{Project}\currentproject - \doplaatsversieaanduiding{Produkt}\currentproduct - \doplaatsversieaanduiding{Onderdeel}\currentcomponent - \if!!donea\else\ File: \jobname\fi - \hss\reportpagedimensions}% - \fi - \ifconcept - \vskip\!!sixpoint - \hbox to \zetbreedte - {\infofont - Concept: \currentdate - \hss\reportpagedimensions}% - \fi} - -% tot hier - -\def\doversie[#1]% - {\voorlopigfalse - \conceptfalse - \overfullrule=\!!zeropoint - \processaction - [#1] - [\v!voorlopig=>\voorlopigtrue - \overfullrule=5pt, - \v!concept=>\concepttrue]} - -\def\versie% - {\dosingleargument\doversie} - -% this will be inserts some day - -\newbox\referentieinfobox -\newbox\registerinfobox -\newbox\floatinfobox - -\def\dotestinfo#1#2#3% - {\ifvoorlopig\ifinpagebody\else - \begingroup - \convertargument#3\to\ascii - \xdef\extratestinfo% - {#2 \ascii}% - \gdef\totaltestinfo% - {\global\setbox#1=\vbox - {\unvbox#1\relax - \hbox - {\infofont - \strut - \expandafter\doboundtext\expandafter - {\extratestinfo} - {12em} - {..}% - \quad}}}% - \endgroup - \ifinner - \aftergroup\totaltestinfo - \else - \totaltestinfo - \fi - \fi\fi} - -\def\referentieinfo% - {\dotestinfo\referentieinfobox} - -\def\registerinfo% - {\dotestinfo\registerinfobox} - -\def\floatinfo% - {\dotestinfo\floatinfobox} - -\def\plaatstestinfo% - {\setbox0=\vbox to \teksthoogte - {\forgetall - \infofont - \hsize10em - \ifvoid\floatinfobox\else - \strut \getmessage\m!systems{24} - \vskip\!!sixpoint - \unvbox\floatinfobox - \vskip\!!twelvepoint - \fi - \ifvoid\referentieinfobox\else - \strut \getmessage\m!systems{25} - \vskip\!!sixpoint - \unvbox\referentieinfobox - \vskip\!!twelvepoint - \fi - \ifvoid\registerinfobox\else - \strut \getmessage\m!systems{26} - \vskip\!!sixpoint - \unvbox\registerinfobox - \fi - \vss}% - \wd0=\!!zeropoint - \box0\relax} - -% \docommando kan niet worden gebruikt omdat deze macro -% soms lokaal wordt gebruikt - -% te zijner tijd: -% -% \definevariable {pc} % ProtectedCommand -% -% \def\executeprotected#1% -% {\csname\??pc\string#1\endcsname} -% -% \def\defineprotected#1#2% -% {\expandafter\def\csname\??pc\string#2\endcsname} -% -% \def\defineunprotected#1% -% {\def#1} -% -% \def\doprotected% -% {\ifx\next\define -% \let\next=\defineprotected -% \else -% \let\next=\executeprotected -% \fi -% \next} -% -% \def\unexpanded% -% {\futurelet\next\doprotected} -% -% \unexpanded\define\ziezo{ziezo} -% -% \unexpanded\ziezo - -\def\complexdefinieer[#1]#2#3% - {\ifx#2\undefined - \else - \showmessage{\m!systems}{4}{\string#2}% - \fi - \ifcase0#1\def#2{#3}% - \or\def#2##1{#3}% - \or\def#2##1##2{#3}% - \or\def#2##1##2##3{#3}% - \or\def#2##1##2##3##4{#3}% - \or\def#2##1##2##3##4##5{#3}% - \or\def#2##1##2##3##4##5##6{#3}% - \or\def#2##1##2##3##4##5##6##7{#3}% - \or\def#2##1##2##3##4##5##6##7##8{#3}% - \or\def#2##1##2##3##4##5##6##7##8##9{#3}% - \else\def#2{#3}% - \fi} - -\definecomplexorsimpleempty\definieer - -\unexpanded\def\naam#1% - {\getvalue{#1}} - -\def\gebruikcommandos#1% - {\bgroup - \def\docommando##1% - {\setbox0=\hbox{\getvalue{\string##1}##1}}% - \processcommalist[#1]\docommando - \egroup} - -\def\complexstart[#1]{\bgroup\getvalue{\e!start#1}} -\def\complexstop [#1]{\getvalue{\e!stop #1}\egroup} - -\def\simplestart{\bgroup} -\def\simplestop {\egroup} - -\definecomplexorsimple\start -\definecomplexorsimple\stop - -\def\dodefinieerstartstop[#1][#2]% - {\getparameters - [\??be#1] - [\c!voor=, - \c!na=, - \c!commandos=, - \c!letter=, - #2]% -% \setvalue{\e!stel#1\e!in}[##1]% -% {\dodoubleargument\getparameters[\??be##1]}% - \unexpanded\setvalue{#1}% - {\groupedcommand - {\getvalue{\??be#1\c!commandos}% - \dostartattributes{\??be#1}\c!letter\c!kleur} - {\dostopattributes}}% - \setvalue{\e!start#1}% - {\getvalue{\??be#1\c!voor}% - \bgroup - \getvalue{\??be#1\c!commandos}% - \dostartattributes{\??be#1}\c!letter\c!kleur{}}% - \setvalue{\e!stop#1}% - {\dostopattributes - \egroup - \getvalue{\??be#1\c!na}}} - -\def\definieerstartstop% - {\dodoubleargument\dodefinieerstartstop} - -\def\stelstartstopin[#1]% - {\dodoubleargument\getparameters[\??be#1]} - -% gejat van Knuth (zie \copyright, p356) - -\def\omcirkeld#1% - {{\ooalign{\hfil\raise0.07ex\hbox{{\tfx#1}}\hfil\crcr\mathhexbox20D}}} - -\def\copyright - {\omcirkeld{c}} - -\def\dosetupsystem[#1]% - {\getparameters[\??sv][#1]% - \setuprandomize[\@@svwillekeur]% - \beforesplitstring\@@svresolutie\at dpi\to\@@svresolutie - \let\outputresolution=\@@svresolutie} - -\def\setupsystem% - {\dosingleargument\dosetupsystem} - -\def\setuprandomize[#1]% - {\doifsomething{#1} - {\bgroup - \setrandomseed{-1}% - \processaction - [#1] - [ \v!klein=>\divide\time 900, % 15 taco vragen hoe - \v!middel=>\divide\time 1800, % 30 time werkt; nodig voor - \v!groot=>\divide\time 3600, % 60 random pos deadlock - \v!normaal=>, - \s!default=>, - \s!unknown=>\time=#1]% - \nextrandom - \egroup}} - -\def\outputfilename{\@@svfile} - -% Default-instellingen (verborgen) - -\resetutilities - -% Uitgestelde instellingen - -\def\dooutput{\sidefloatoutput} % redefinition of \dooutput - -% Default-instellingen (zichtbaar) - -\setupsystem - [\c!gebied=, - \c!resolutie=600dpi, - \c!willekeur=, - \c!file=\jobname, - \c!korps=\normalizedlocalbodyfontsize] % of iets anders - -% Pas op: -% -% Omdat er geen fonts geladen zijn kunnen we bij de maten geen -% em's gebruiken. Bij afstanden is dit geen probleem, omdat -% deze pas een rol spelen als er al een font geladen is. - -\stellayoutin - [ \c!kopwit=.08417508418\papierhoogte, % .08333 2.5cm - \c!boven=\!!zeropoint, - \c!bovenafstand=\!!zeropoint, - \c!hoofd=.06734006734\papierhoogte, % .06667 2.0cm - \c!hoofdafstand=\!!zeropoint, - \c!hoogte=.84175084175\papierhoogte, % .83333 25.0cm - \c!voetafstand=\@@lyhoofdafstand, - \c!voet=.06734006734\papierhoogte, % .06667 2.0cm - \c!onderafstand=\@@lybovenafstand, - \c!onder=\!!zeropoint, - \c!rugwit=.11904761905\papierbreedte, % 2.5cm - \c!rand=\!!zeropoint, - \c!randafstand=\@@lymargeafstand, - \c!marge=.12649983170\papierbreedte, % snijwit-2*afstand - \c!margeafstand=.02008341748\papierbreedte, % 12.0pt - \c!linkerrand=\@@lyrand, - \c!linkerrandafstand=\@@lyrandafstand, - \c!linkermarge=\@@lymarge, - \c!linkermargeafstand=\@@lymargeafstand, - \c!breedte=.71428571429\papierbreedte, % 15.0cm - \c!rechtermargeafstand=\@@lymargeafstand, - \c!rechtermarge=\@@lymarge, - \c!rechterrandafstand=\@@lyrandafstand, - \c!rechterrand=\@@lyrand, - \c!kopoffset=\!!zeropoint, - \c!rugoffset=\!!zeropoint, - \c!tekstbreedte=, % dangerous here \tekstbreedte - \c!letter=, - \c!markering=\v!uit, - \c!plaats=, % \v!enkelzijdig, but empty is signal - \c!schaal=1, - \c!nx=1, - \c!ny=1, - \c!dx=\!!zeropoint, - \c!dy=\!!zeropoint, - \c!grid=\v!nee, - \c!regels=, - \c!snijwit=\!!zeropoint, - \c!bodemwit=\!!zeropoint] - -% instellingen hierop terugvallen, bijvoorbeeld de volgende: - -\definieerpapierformaat [A0] [\c!breedte=841mm, \c!hoogte=1189mm] -\definieerpapierformaat [A1] [\c!breedte=594mm, \c!hoogte=841mm] -\definieerpapierformaat [A2] [\c!breedte=420mm, \c!hoogte=594mm] -\definieerpapierformaat [A3] [\c!breedte=297mm, \c!hoogte=420mm] -\definieerpapierformaat [A4] [\c!breedte=210mm, \c!hoogte=297mm] -\definieerpapierformaat [A5] [\c!breedte=148mm, \c!hoogte=210mm] -\definieerpapierformaat [A6] [\c!breedte=105mm, \c!hoogte=148mm] -\definieerpapierformaat [A7] [\c!breedte=74mm, \c!hoogte=105mm] -\definieerpapierformaat [A8] [\c!breedte=52mm, \c!hoogte=74mm] -\definieerpapierformaat [A9] [\c!breedte=37mm, \c!hoogte=52mm] - -\definieerpapierformaat [B0] [\c!breedte=1000mm,\c!hoogte=1414mm] -\definieerpapierformaat [B1] [\c!breedte=707mm, \c!hoogte=1000mm] -\definieerpapierformaat [B2] [\c!breedte=500mm, \c!hoogte=707mm] -\definieerpapierformaat [B3] [\c!breedte=354mm, \c!hoogte=500mm] -\definieerpapierformaat [B4] [\c!breedte=250mm, \c!hoogte=354mm] -\definieerpapierformaat [B5] [\c!breedte=177mm, \c!hoogte=250mm] -\definieerpapierformaat [B6] [\c!breedte=125mm, \c!hoogte=177mm] -\definieerpapierformaat [B7] [\c!breedte=88mm, \c!hoogte=125mm] -\definieerpapierformaat [B8] [\c!breedte=63mm, \c!hoogte=88mm] -\definieerpapierformaat [B9] [\c!breedte=44mm, \c!hoogte=63mm] - -\definieerpapierformaat [C0] [\c!breedte=917mm, \c!hoogte=1297mm] -\definieerpapierformaat [C1] [\c!breedte=649mm, \c!hoogte=917mm] -\definieerpapierformaat [C2] [\c!breedte=459mm, \c!hoogte=649mm] -\definieerpapierformaat [C3] [\c!breedte=324mm, \c!hoogte=459mm] -\definieerpapierformaat [C4] [\c!breedte=229mm, \c!hoogte=324mm] -\definieerpapierformaat [C5] [\c!breedte=162mm, \c!hoogte=229mm] -\definieerpapierformaat [C6] [\c!breedte=115mm, \c!hoogte=162mm] -\definieerpapierformaat [C7] [\c!breedte=81mm, \c!hoogte=115mm] -\definieerpapierformaat [C8] [\c!breedte=57mm, \c!hoogte=81mm] -\definieerpapierformaat [C9] [\c!breedte=40mm, \c!hoogte=57mm] - -\definieerpapierformaat [S3] [\c!breedte=300pt, \c!hoogte=225pt] -\definieerpapierformaat [S4] [\c!breedte=400pt, \c!hoogte=300pt] -\definieerpapierformaat [S5] [\c!breedte=500pt, \c!hoogte=375pt] -\definieerpapierformaat [S6] [\c!breedte=600pt, \c!hoogte=450pt] - -\definieerpapierformaat [CD] [\c!breedte=120mm, \c!hoogte=120mm] - -\definieerpapierformaat [letter] [\c!breedte=8.5in, \c!hoogte=11in] -\definieerpapierformaat [2*letter] [\c!breedte=11in, \c!hoogte=17in] -\definieerpapierformaat [legal] [\c!breedte=8.5in, \c!hoogte=14in] -\definieerpapierformaat [folio] [\c!breedte=8.5in, \c!hoogte=13in] -\definieerpapierformaat [executive] [\c!breedte=7.25in, \c!hoogte=10.5in] - -\definieerpapierformaat [envelope 9] [\c!breedte=8.88in, \c!hoogte=3.88in] -\definieerpapierformaat [envelope 10] [\c!breedte=9.5in, \c!hoogte=4.13in] -\definieerpapierformaat [envelope 11] [\c!breedte=10.38in,\c!hoogte=4.5in] -\definieerpapierformaat [envelope 12] [\c!breedte=11.0in, \c!hoogte=4.75in] -\definieerpapierformaat [envelope 14] [\c!breedte=11.5in, \c!hoogte=5.0in] -\definieerpapierformaat [monarch] [\c!breedte=7.5in, \c!hoogte=3.88in] -\definieerpapierformaat [check] [\c!breedte=8.58in, \c!hoogte=3.88in] -\definieerpapierformaat [DL] [\c!breedte=220mm, \c!hoogte=110mm] - -% Let op: na \stellayoutin (omdat dit wordt aangeroepen). - -\stelpapierformaatin - [A4][A4] - -\stelpapierformaatin - [\c!boven=, - \c!onder=\vss, - \c!links=, - \c!rechts=\hss] - -\stelkolommenin - [\c!n=2, - \c!nboven=1, - \c!commando=, - \c!richting=\v!rechts, - \c!lijn=\v!uit, - \c!tolerantie=\v!soepel, - \c!afstand=1.5\korpsgrootte, % influenced by switching - \c!hoogte=, - \c!balanceren=\v!ja, - \c!uitlijnen=\v!tekst, - \c!blanko={\v!regel,\v!vast}, - \c!optie=, - \c!lijndikte=\linewidth, - \c!offset=.5\korpsgrootte] - -\stelhoofdtekstenin [\v!tekst] [] [] -\stelhoofdtekstenin [\v!marge] [] [] -\stelhoofdtekstenin [\v!rand] [] [] - -\stelvoettekstenin [\v!tekst] [] [] -\stelvoettekstenin [\v!marge] [] [] -\stelvoettekstenin [\v!rand] [] [] - -\stelteksttekstenin [\v!tekst] [] [] -\stelteksttekstenin [\v!marge] [] [] -\stelteksttekstenin [\v!rand] [] [] - -\stelondertekstenin [\v!tekst] [] [] -\stelondertekstenin [\v!marge] [] [] -\stelondertekstenin [\v!rand] [] [] - -\stelboventekstenin [\v!tekst] [] [] -\stelboventekstenin [\v!marge] [] [] -\stelboventekstenin [\v!rand] [] [] - -\stelhoofdin [\c!status=\v!normaal,\c!voor=,\c!na=] -\stelvoetin [\c!status=\v!normaal,\c!voor=,\c!na=] -\steltekstin [\c!status=\v!normaal,\c!voor=,\c!na=] -\stelbovenin [\c!status=\v!normaal,\c!voor=,\c!na=] -\stelonderin [\c!status=\v!normaal,\c!voor=,\c!na=] - -\stelhoofdin [\c!na=\vss] -\steltekstin [\c!voor=\vss,\c!na=\vss] -\stelvoetin [\c!voor=\vss] - -\stelbovenin [\c!voor=\vss,\c!na=\vss] -\stelonderin [\c!voor=\vss,\c!na=\vss] - -\stelhoofdin % \get??tk#1#2#3 would save quite some 3K in fmt size - [\v!tekst] - [\c!strut=\v!ja, - \c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!hoofd\v!tekst\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!hoofd\v!tekst\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!hoofd\v!tekst\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!hoofd\v!tekst\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!hoofd\v!tekst\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!hoofd\v!tekst\c!breedte}] - -\stelhoofdin - [\v!marge] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!hoofd\v!marge\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!hoofd\v!marge\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!hoofd\v!marge\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!hoofd\v!marge\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!hoofd\v!marge\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!hoofd\v!marge\c!breedte}] - -\stelhoofdin - [\v!rand] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!hoofd\v!rand\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!hoofd\v!rand\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!hoofd\v!rand\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!hoofd\v!rand\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!hoofd\v!rand\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!hoofd\v!rand\c!breedte}] - -\stelvoetin - [\v!tekst] - [\c!strut=\v!ja, - \c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!voet\v!tekst\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!voet\v!tekst\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!voet\v!tekst\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!voet\v!tekst\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!voet\v!tekst\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!voet\v!tekst\c!breedte}] - -\stelvoetin - [\v!marge] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!voet\v!marge\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!voet\v!marge\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!voet\v!marge\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!voet\v!marge\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!voet\v!marge\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!voet\v!marge\c!breedte}] - -\stelvoetin - [\v!rand] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!voet\v!rand\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!voet\v!rand\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!voet\v!rand\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!voet\v!rand\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!voet\v!rand\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!voet\v!rand\c!breedte}] - -\stelbovenin - [\v!tekst] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!boven\v!tekst\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!boven\v!tekst\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!boven\v!tekst\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!boven\v!tekst\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!boven\v!tekst\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!boven\v!tekst\c!breedte}] - -\stelbovenin - [\v!marge] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!boven\v!marge\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!boven\v!marge\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!boven\v!marge\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!boven\v!marge\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!boven\v!marge\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!boven\v!marge\c!breedte}] - -\stelbovenin - [\v!rand] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!boven\v!rand\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!boven\v!rand\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!boven\v!rand\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!boven\v!rand\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!boven\v!rand\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!boven\v!rand\c!breedte}] - -\stelonderin - [\v!tekst] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!onder\v!rand\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!onder\v!rand\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!onder\v!rand\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!onder\v!rand\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!onder\v!rand\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!onder\v!rand\c!breedte}] - -\stelonderin - [\v!marge] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!onder\v!marge\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!onder\v!marge\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!onder\v!marge\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!onder\v!marge\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!onder\v!marge\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!onder\v!marge\c!breedte}] - -\stelonderin - [\v!rand] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!onder\v!rand\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!onder\v!rand\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!onder\v!rand\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!onder\v!rand\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!onder\v!rand\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!onder\v!rand\c!breedte}] - -\steltekstin - [\v!tekst] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!tekst\v!tekst\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!tekst\v!tekst\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!tekst\v!tekst\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!tekst\v!tekst\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!tekst\v!tekst\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!tekst\v!tekst\c!breedte}] - -\steltekstin - [\v!marge] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!tekst\v!marge\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!tekst\v!marge\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!tekst\v!marge\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!tekst\v!marge\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!tekst\v!marge\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!tekst\v!marge\c!breedte}] - -\steltekstin - [\v!rand] - [\c!letter=, - \c!kleur=, - \c!linkertekst=, - \c!middentekst=, - \c!rechtertekst=, - \c!kantlijntekst=, - \c!margetekst=, - \c!linkerletter=\getvalue{\??tk\v!tekst\v!rand\c!letter}, - \c!rechterletter=\getvalue{\??tk\v!tekst\v!rand\c!letter}, - \c!linkerkleur=\getvalue{\??tk\v!tekst\v!rand\c!kleur}, - \c!rechterkleur=\getvalue{\??tk\v!tekst\v!rand\c!kleur}, - \c!breedte=, - \c!linkerbreedte=\getvalue{\??tk\v!tekst\v!rand\c!breedte}, - \c!rechterbreedte=\getvalue{\??tk\v!tekst\v!rand\c!breedte}] - -\stelblokkopjesin - [\c!plaats=\v!onder, - \c!voor=\blanko, - \c!tussen={\blanko[\v!middel]}, - \c!na=\blanko, - \c!breedte=\v!passend, - \c!kopletter=\v!vet, - \c!letter=\v!normaal, - \c!kleur=, - \c!uitlijnen=, - \c!nummer=\v!ja, - \c!wijze=\@@nrwijze, - \c!blokwijze=\@@nrblokwijze, - \c!sectienummer=\@@nrsectienummer, - \c!conversie=\v!cijfers] - -\stelplaatsblokkenin - [\c!plaats=\v!midden, - \c!breedte=\v!passend, - \c!hoogte=\v!passend, - \c!offset=\v!overlay, - \c!kader=\v!uit, - \c!straal=.5\korpsgrootte, - \c!hoek=\v!recht, - \c!achtergrond=, - \c!achtergrondraster=\@@rsraster, - \c!achtergrondkleur=, - \c!achtergrondoffset=\!!zeropoint, - \c!bovenkader=, - \c!onderkader=, - \c!linkerkader=, - \c!rechterkader=, - \c!kaderoffset=\!!zeropoint, - \c!voor=, - \c!na=, - \c!voorwit=\v!groot, - \c!nawit=\v!groot, - \c!zijvoorwit=\@@bkvoorwit, - \c!zijnawit=\@@bknawit, - \c!springvolgendein=\v!nee, - \c!marge=1em, - \c!nboven=2, - \c!nonder=0, - \c!nregels=4] - -\stelplaatsbloksplitsenin - [\c!conversie=\v!letter, % \v!romeins - \c!regels=3] - -\stelreferentielijstin - [\c!letter=\v!normaal] - -\stelinmargein - [\c!letter=\v!vet, - \c!kleur=, - \c!plaats=\v!beide, - \c!uitlijnen=\v!binnen, - \c!voor=, - \c!na=] - -\stelinmargein - [\v!links] - [\c!plaats=\v!links] -% \c!uitlijnen=\v!links] % njet - -\stelinmargein - [\v!rechts] - [\c!plaats=\v!rechts] -% \c!uitlijnen=\v!rechts] % njet - -\versie - [\v!definitief] - -\stelpaginanummerin - [\c!status=\v!start, - \c!nummer=1] - -\stelsubpaginanummerin - [\c!wijze=\v!per\v!deel, - \c!status=\v!stop] - -\stelregelnummerenin - [\c!conversie=\v!cijfers, - \c!start=1, - \c!stap=1, - \c!plaats=\v!inmarge, - \c!letter=, - \c!kleur=, - \c!breedte=2em, - \c!prefix=, - \c!refereren=\v!aan] - -\stelparagraafnummerenin - [\c!status=\v!stop, - \c!letter=, - \c!kleur=, - \c!afstand=\ifregelnummersinmarge2em\else\!!zeropoint\fi] - -\definieeropmaak - [\v!standaard] - [\c!breedte=\zetbreedte, - \c!hoogte=\teksthoogte, - \c!voffset=\!!zeropoint, - \c!hoffset=\!!zeropoint, - \c!pagina=\v!rechts, - \c!dubbelzijdig=\v!leeg] - -\stelpositionerenin - [\c!eenheid=\s!cm, - \c!factor=1, - \c!schaal=1, - \c!xstap=\v!absoluut, - \c!ystap=\v!absoluut, - \c!offset=\v!ja, - \c!xoffset=\!!zeropoint, - \c!yoffset=\!!zeropoint] - -\stelregelsin - [\c!voor=\blanko, - \c!na=\blanko, - \c!tussen=\blanko, - \c!inspringen=\v!nee] - -\stelkoppeltekenin - [\c!teken=\compoundhyphen] - -\stelnaastplaatsenin - [\c!status=\v!stop] - -\definieerplaatsblok - [\v!figuur] - [\v!figuren] - -\definieerplaatsblok - [\v!tabel] - [\v!tabellen] - -\stelplaatsblokin - [\v!tabel] - [\c!kader=\v!uit] - -\definieerplaatsblok - [\v!intermezzo] - [\v!intermezzos] - -\definieerplaatsblok - [\v!grafiek] - [\v!grafieken] - -\stelmargeblokkenin - [\c!status=\v!start, - \c!plaats=\v!inmarge, - \c!breedte=\rechtermargebreedte, - \c!letter=, - \c!kleur=, - \c!uitlijnen=, - \c!links=, - \c!rechts=, - \c!boven=, - \c!tussen=\blanko, - \c!onder=\vfill, - \c!voor=, - \c!na=] - -\stelachtergrondenin - [\c!status=\c!start] - -\stelachtergrondenin - [\v!papier,\v!pagina,\v!linkerpagina,\v!rechterpagina] - [\c!kader=\v!uit, - \c!straal=.5\korpsgrootte, - \c!hoek=\v!recht, - \c!achtergrond=, - \c!raster=\@@rsraster, - \c!kleur=, - \c!kaderoffset=\getvalue{\??ma\v!pagina\c!offset}, - \c!achtergrondoffset=\getvalue{\??ma\v!pagina\c!offset}, - \c!offset=\!!zeropoint, % later set to \v!overlay, watch out ! - %\c!scheider=\v!nee, - \c!diepte=\!!zeropoint] - -\global\somebackgroundfalse - -\def\documentstyle% - {\showmessage{\m!systems}{3}{} - \stoptekst} - -\let\documentclass\documentstyle - -\protect \endinput |