diff options
Diffstat (limited to 'macros/blu/blue.tex')
-rw-r--r-- | macros/blu/blue.tex | 4225 |
1 files changed, 4225 insertions, 0 deletions
diff --git a/macros/blu/blue.tex b/macros/blu/blue.tex new file mode 100644 index 0000000000..0aa5d33fb8 --- /dev/null +++ b/macros/blu/blue.tex @@ -0,0 +1,4225 @@ +%To prevent double loading +\ifx\beginscript\undefined\else +\message{---not loaded---}\endinput\fi +%The material is shareware and subject +%to the separate note on copyright. +% +%To print the format properly, copy +%the following 11-lines job and +%substitute the semicolon token +%(=escape char) for `semi-col'. (2x) +% ---Kees--- +%\input blue.tex +%\hfuzz10pt +%\title{File: blue.tex} +%\issue{Version 1.0} +%\beginscript +%\thisverbatim={\catcode`\`semicol'=0 +% \catcode`\!=12 +% \catcode`\|=12 +% \input blue.tex} +%\beginverbatim +%`semi-col'endverbatim +%\endscript +% +% +% +%Copyright Notice BLUe's Format system +%------------------------------------- +%The software +% blue.tex +% fmt.dat +% tools.dat +%is shareware available. It is not allowed +%to make any profit on it. A happy user is +%requested to send US$25 to the author, or +%better still according to the Macindex the +%equivalent of 20 breads in US dollars. +%(twenty-five US dollar) +% C.G van der Laan +% Hunzeweg 57 +% 9893 PB Garnwerd +% The Netherlands +% (cgl@rc.service.rug.nl) +%The contributors will be added to my +% register.blu database. +%Russian users are relieved for the moment +%from the shareware request, with respect +%to personal use. +%Auxiliary and personalized files are the +%databases +% address.dat addresses +% lit.dat references +% pic.dat pictures. +% +%The main reason to ask for shareware support +%is to protect myself against too many request, +%and to raise some funds to continue my \TeX{} +%work. +% +%The user's guide `Publishing with \TeX,' and the +%accompanying articles are free for personal use. +% +% March, 1995 +% C.G van der Laan%;newcol +% +% +% +%begin%%%%%%%%%%%%%%%general description% +\message{ ---blue.tex 1.0, Jan 95, cgl--- } +% ;nonum +%This file blue.tex accompanies +%Publishing with TeX by Kees van der Laan +%Available from CTAN: +%-pwt.scr (user's guide, which invokes +% the chapters: pwt.int, -.txt, -.mat +% -.tab, -.grf, -.ref, -.ind, -.cus +% -.aft, -.fmt, -.tls, -.tot, -.his, +% next to the dynamical generated +% answers, examples, contents and index.) +%-blue.tex (macros) +%-fmt.dat, tools.dat, +%-lit.dat, pic.dat, address.dat. +%Author: C.G. van der Laan +% Hunzeweg 57 +% 9893 PB Garnwerd +% The Netherlands +% 31 (0)594 62 1525 +% cgl@rc.service.rug.nl +%Purpose: general independent format. +%It is composed of +%-- abbreviations, from tugboat.cmn +%-- manmac.tex (+customization macros) +%-- ppt.tex, my preprint proposal, from +% TUGboat BLUes +%-- miscellaneous additions +%-- \eqalign family with multi-alignment +% point, from Math into BLUes +%-- icon macros via LaTeX's line fonts +%-- btable.tex, my bordered table macros, +% from Table Diversions +%-- vrb.tex (my verbatim mode suite), from +% BLUe's Verbatim +%-- macros for cross-referencing, from +% BLUe's Cross-Referencing +%-- macros for bibliography handling, from +% BLUe's Bibliography +%-- gkppic.tex a subset of gkpmac.tex for +% LaTeX's picture environment +%-- turtle graphics +%-- trs.tex for overhead transparencies +%-- crs.tex for crosswords via plain +%-- macros for creating an index +% from BLUe's Index +%The problem is to keep the constituent +%collections unaltered. +%For each set a table of contents has +%been added to locate macros. +%The reason for putting it all in one file +%is to handle conflicting items and to +%facilitate fast loading, read make it a +%format. +%Note. In order to process this file +%verbatim the semicolon has been reserved +%as escape character. +%The files have not been ordered alphabe- +%tically, due to the hierarchy. +%end%%%%%%%%%%%%%%%%%general description%;newpage +% +% +% +\catcode`\@=11 +%begin%%%%%%%%%%%%%%%%%%%%%abbreviations% +%;numvrb +%Abbreviations borrowed from tugboat.cmn. +\newcount\TestCount +\def\smc{\tensmc} +\def\SMC{\ninerm} +\font\tensmc=cmcsc10 + +\def\AllTeX{(\La)\TeX} + +\def\AMS{American Mathematical Society} + +\def\AmS{{\the\textfont2 A}\kern-.1667em% + \lower.5ex\hbox{\the\textfont2 M}% + \kern-.125em{\the\textfont2 S}} +\def\AmSTeX{\AmS-\TeX} + \def\AmSLaTeX{\AmS-\LaTeX}%Addition +\def\aw{A\kern.1em-W} +\def\AW{Addison\kern.1em-\penalty\z@ + \hskip\z@skip Wesley} + +\def\BibTeX{{\rm B\kern-.05em{\smc i% + \kern-.025emb}\kern-.08em\TeX}} + +\def\CandT{{\sl Computers \& + Typesetting}} + +\def\DVItoVDU{DVIto\kern-.12em VDU} + +\def\ISBN{{\SMC ISBN} } + +% Japanese TeX +\def\JTeX{\leavevmode\hbox{\lower.5ex% + \hbox{J}\kern-.18em\TeX}} + +\def\JoT{{\sl The Joy of \TeX}} + +\def\LAMSTeX{L\raise.42ex\hbox{\kern + -.3em\the\scriptfont2 A}\kern-.2em% + \lower.376ex\hbox{\the\textfont2 M}% + \kern-.125em{\the\textfont2 S}-\TeX} + \let\LAmsTeX=\LAMSTeX%addition +\def\La{\TestCount=\the\fam \leavevmode + L\raise.42ex\hbox{$\fam\TestCount + \scriptstyle\kern-.3em A$}} +\def\LaTeX{\La\kern-.15em\TeX} + +% for Robert McGaffey +\def\Mc{\setbox\TestBox=\hbox{M}M\vbox + to\ht\TestBox{\hbox{c}\vfil}} + +\font\manual=logo10 +% font used for the METAFONT logo, etc. +\def\MF{{\manual META}\-{\manual FONT}} +\def\MP{{\manual META}\-{\smc post}} +\def\MFB{{\sl The \slMF book}} + +% multilingual (INRS) TeX +\def\mtex{T\kern-.1667em\lower.5ex% + \hbox{\^E}\kern-.125emX} + +\def\pcMF{\leavevmode\raise.5ex\hbox + {p\kern-.3ptc}MF} +\def\PCTeX{PC\thinspace\TeX} +\def\pcTeX{\leavevmode\raise.5ex\hbox + {p\kern-.3ptc}\TeX} + +\def\Pas{Pascal} + +\def\PiC{P\kern-.12em\lower.5ex% + \hbox{I}\kern-.075emC} +\def\PiCTeX{\PiC\kern-.11em\TeX} + +\def\plain{{\tt plain}} + +\def\POBox{P.\thinspace O.\ Box } +\def\POBoxTUG{\POBox\unskip\ 21041, + Santa Barbara, CA93121-1041, USA} + +\def\PS{{Post\-Script}} + +\def\SC{Steering Committee} + +\def\SGML{{\SMC SGML}} + +\def\SliTeX{{\rm S\kern-.06em{\smc + l\kern-.035emi}\kern-.06em\TeX}} + +\def\slMF{\MF} +%Use \font\manualsl=logosl10 instead, +%if it's available, for +%\def\slMF{{\manualsl META}\-{\manualsl +% FONT}} + +% Atari ST (Klaus Guntermann) +\def\stTeX{{\smc st\rm\kern-0.13em\TeX}} + +\def\TANGLE{{\tt TANGLE}} + +\def\TB{{\sl The \TeX book}} +\def\TP{{\sl \TeX\/}: + {\sl The Program\/}} + +\def\TeX{T\hbox{\kern-.1667em% + \lower.424ex\hbox{E}\kern-.125emX}} + +\def\TeXhax{\TeX hax} + +% Don Hosek +\def\TeXMaG{\TeX M\kern-.1667em% + \lower.5ex\hbox{A}\kern-.2267emG} + +\def\TeXtures{{\it Textures}} +\let\Textures=\TeXtures + +\def\TeXXeT{\TeX--X\kern-.125em% + \lower.5ex\hbox{E}\kern-.1667emT} + +\def\ttn{{\sl TTN}} +\def\TTN{{\sl \TeX{} and TUG News}} + +\def\tubfont{\sl} +\def\TUB{{\tubfont TUGboat\/}} + +\def\TUG{\TeX\ \UG} + +\def\UG{Users Group} + +\def\UNIX{{\SMC UNIX}} + +\def\VAX{\leavevmode\hbox{V\kern-.12em% + A\kern-.1em X}} + +\def\VorTeX{V\kern-2.7pt\lower.5ex% + \hbox{O\kern-1.4pt R}\kern-2.6pt\TeX} + +\def\XeT{\leavevmode\hbox{X\kern-.125em% + \lower.424ex\hbox{E}\kern-.1667emT}} + +\def\WEB{{\tt WEB}} +\def\WEAVE{{\tt WEAVE}} +%Additions +\def\maps#1#2{MAPS {\oldstyle#1}.% + {\oldstyle#2}}%;nonum +% +%Although not necessary because of +%alphabetical ordering, I supplied +%also +% +%Table of contents abbreviations TUG +%\AllTeX..........................7 +%\AMS.............................9 +%\AmS, \AmSTeX...................14 +%\aw.............................16 +%\AW.............................17 +%\BibTeX.....................20, 21 +%\CandT......................23, 24 +%\DVItoVDU.......................26 +%\ISBN...........................28 +%\JTeX.......................31, 32 +%\JoT............................34 +%\LAMSTeX....................36--39 +%\La.........................41--43 +%\LaTeX..........................44 +%\maps (added) +%\Mc.........................47--48 +%\MF.............................52 +%\mf.............................53 +%\MFB........................54, 55 +%\mtex.......................57, 58 +%\pcMF.......................60, 61 +%\PCTeX..........................62 +%\pcTeX......................63, 64 +%\Pas............................66 +%\PiCTeX.........................70 +%\plain..........................72 +%\POBox..........................74 +%\POBoxTUG...................75--76 +%\PS.............................78 +%\SC.............................80 +%\SGML...........................82 +%\SliTeX.....................84, 85 +%\slMF......................%90, 91 +%\stTeX..........................94 +%\TANGLE.........................96 +%\TB.............................98 +%\TP.............................99 +%\TeX......................102, 103 +%\TeXhax........................105 +%\TeXMaG...................108, 109 +%\TeXtures......................111 +%\TeXXeT...................114, 115 +%\ttn...........................117 +%\TTN...........................118 +%\TUB...........................121 +%\TUG...........................123 +%\UG............................125 +%\UNIX..........................127 +%\VAX......................129, 130 +%\VorTeX...................132, 133 +%\XeT......................135, 136 +%\WEB...........................138 +%\WEAVE.........................139 +%end%%%%%%%%%%%%%%%%%%%%%%%abbreviations%;newpage +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%%%%%%%manmac% +%;numvrb +%manmac.tex cgl@rc.service.rug.nl +%Knuth's macros for formatting The TeXbook +%and The METAfont book. +% +%\catcode`@=11 +% +\font\tentex=cmtex10 + +\font\inchhigh=cminch +\font\titlefont=cmssdc10 at 40pt + +\font\ninerm=cmr9 +\font\eightrm=cmr8 +\font\sixrm=cmr6 + +\font\ninei=cmmi9 +\font\eighti=cmmi8 +\font\sixi=cmmi6 +\skewchar\ninei='177 +\skewchar\eighti='177 +\skewchar\sixi='177 + +\font\ninesy=cmsy9 +\font\eightsy=cmsy8 +\font\sixsy=cmsy6 +\skewchar\ninesy='60 +\skewchar\eightsy='60 +\skewchar\sixsy='60 + +\font\eightss=cmssq8 + +\font\eightssi=cmssqi8 + +\font\ninebf=cmbx9 +\font\eightbf=cmbx8 +\font\sixbf=cmbx6 + +\font\ninett=cmtt9 +\font\eighttt=cmtt8 + +\hyphenchar\tentt=-1 % inhibit hyphenation + % in typewriter type +\hyphenchar\ninett=-1 +\hyphenchar\eighttt=-1 + +\font\ninesl=cmsl9 +\font\eightsl=cmsl8 + +\font\nineit=cmti9 +\font\eightit=cmti8 + +\font\tenu=cmu10 % unslanted text italic +\font\magnifiedfiverm=cmr5 at 10pt +%Next two not available on my system +%\font\manual=manfnt % font used for the + % METAFONT logo, etc. +%\font\cmman=cmman % font used for +% +%miscellaneous Computer Modern variations +\newskip\ttglue +\def\tenpoint{\def\rm{\fam0\tenrm}% + \textfont0=\tenrm\scriptfont0=\sevenrm + \scriptscriptfont0=\fiverm + \textfont1=\teni \scriptfont1=\seveni + \scriptscriptfont1=\fivei + \textfont2=\tensy\scriptfont2=\sevensy + \scriptscriptfont2=\fivesy + \textfont3=\tenex\scriptfont3=\tenex + \scriptscriptfont3=\tenex + \def\it{\fam\itfam\tenit}\def\oldstyle + {\fam1 \teni}\textfont\itfam=\tenit + \def\sl{\fam\slfam\tensl}% + \textfont\slfam=\tensl + \def\bf{\fam\bffam\tenbf}% + \textfont\bffam=\tenbf + \scriptfont\bffam=\sevenbf + \scriptscriptfont\bffam=\fivebf + \def\tt{\fam\ttfam\tentt}% + \textfont\ttfam=\tentt + \tt \ttglue=.5em plus.25em minus.15em + \normalbaselineskip=12pt plus1pt minus1pt + \def\MF{{\manual META}\-{\manual FONT}}% + \let\sc=\eightrm + \let\big=\tenbig + \setbox\strutbox=\hbox{\vrule + height8.5pt depth3.5pt width\z@}% + \normalbaselines\rm} + +\def\ninepoint{\def\rm{\fam0\ninerm}% + \textfont0=\ninerm\scriptfont0=\sixrm + \scriptscriptfont0=\fiverm + \textfont1=\ninei\scriptfont1=\sixi + \scriptscriptfont1=\fivei + \textfont2=\ninesy\scriptfont2=\sixsy + \scriptscriptfont2=\fivesy + \textfont3=\tenex\scriptfont3=\tenex + \scriptscriptfont3=\tenex + \def\it{\fam\itfam\nineit}\def\oldstyle + {\fam1 \ninei}\textfont\itfam=\nineit + \def\sl{\fam\slfam\ninesl}% + \textfont\slfam=\ninesl + \def\bf{\fam\bffam\ninebf}% + \textfont\bffam=\ninebf + \scriptfont\bffam=\sixbf + \scriptscriptfont\bffam=\fivebf + \def\tt{\fam\ttfam\ninett}% + \textfont\ttfam=\ninett + \tt \ttglue=.5em plus.25em minus.15em + \normalbaselineskip=11pt plus1pt minus1pt + \def\MF{{\manual hijk}\-{\manual lmnj}}% + \let\sc=\sevenrm + \let\big=\ninebig + \setbox\strutbox=\hbox{\vrule height8pt + depth3pt width\z@}% + \normalbaselines\rm} + +\def\eightpoint{\def\rm{\fam0\eightrm}% + \textfont0=\eightrm \scriptfont0=\sixrm + \scriptscriptfont0=\fiverm + \textfont1=\eighti \scriptfont1=\sixi + \scriptscriptfont1=\fivei + \textfont2=\eightsy \scriptfont2=\sixsy + \scriptscriptfont2=\fivesy + \textfont3=\tenex \scriptfont3=\tenex + \scriptscriptfont3=\tenex + \def\it{\fam\itfam\eightit}\def\oldstyle + {\fam1 \eighti}\textfont\itfam=\eightit + \def\sl{\fam\slfam\eightsl}% + \textfont\slfam=\eightsl + \def\bf{\fam\bffam\eightbf}% + \textfont\bffam=\eightbf + \scriptfont\bffam=\sixbf + \scriptscriptfont\bffam=\fivebf + \def\tt{\fam\ttfam\eighttt}% + \textfont\ttfam=\eighttt + \tt \ttglue=.5em plus.25em minus.15em + \normalbaselineskip=10pt plus1pt minus1pt + \def\MF{{\manual opqr}\-{\manual stuq}}% + \let\sc=\sixrm + \let\big=\eightbig + \setbox\strutbox=\hbox{\vrule height7pt + depth2pt width\z@}% + \normalbaselines\rm} + +\def\tenmath{\tenpoint\fam-1 } % use after $ + % in ninepoint sections +\def\tenbig#1{{\hbox{$\left#1\vbox to8.5pt{}% + \right.\n@space$}}} +\def\ninebig#1{{\hbox{$\textfont0=\tenrm + \textfont2=\tensy + \left#1\vbox to7.25pt{}\right.\n@space$}}} +\def\eightbig#1{{\hbox{$\textfont0=\ninerm + \textfont2=\ninesy + \left#1\vbox to6.5pt{}\right.\n@space$}}} +% Page layout +\newdimen\manmachsize\newdimen\manmacvsize +\newdimen\pagewidth \newdimen\pageheight +\newdimen\manmacparindent\newdimen\ruleht%Cornrules +\manmachsize29pc\manmacvsize44pc\maxdepth2.2pt +\manmacparindent=3pc \ruleht=.5pt +\pagewidth\manmachsize\pageheight\manmacvsize +\abovedisplayskip=6pt plus 3pt minus 1pt +\belowdisplayskip=6pt plus 3pt minus 1pt +\abovedisplayshortskip=0pt plus 3pt +\belowdisplayshortskip=4pt plus 3pt + +\newinsert\footins +\def\manmacfootnote#1{\edef\@sf{\spacefactor + \the\spacefactor}#1\@sf + \insert\footins\bgroup\eightpoint + \interlinepenalty100 \let\par=\endgraf + \leftskip=\z@skip \rightskip=\z@skip + \splittopskip=10pt plus 1pt minus 1pt + \floatingpenalty=20000 + \smallskip\item{#1}\bgroup\strut + \aftergroup\@foot\let\next} + +\skip\footins=12pt plus 2pt minus 4pt +% space added when footnote is present +\count\footins=1000 +% footnote magnification factor (1 to 1) +\dimen\footins=30pc +% maximum footnotes per page + +\newinsert\margin +\dimen\margin=\maxdimen +\count\margin=0 \skip\margin=0pt +% marginal inserts take up no space + +\newif\iftitle +\def\titlepage{\global\titletrue} +% for pages without headlines +\def\rhead{} % contains the running headline + +\def\leftheadline{\hbox to \pagewidth{% + \vbox to 10pt{}% strut to position the + % baseline + \llap{\tenbf\folio\kern1pc}% folio to + % left of text + \tenit\rhead\hfil% running head flush left +}} +\def\rightheadline{\hbox to \pagewidth{% + \vbox to 10pt{}% strut to position the + % baseline + \hfil\tenit\rhead\/% running head flush + % right + \rlap{\kern1pc\tenbf\folio}% folio to + % right of text +}} + +\def\onepageout#1{\shipout\vbox{ % here we + % define one page of output + \offinterlineskip % butt the boxes together + \vbox to 3pc{ % this part goes on top of + % the 44pc pages + \iftitle % the next is used for title pages + \global\titlefalse % reset the titlepage + % switch + \setcornerrules % for camera alignment + \else\ifodd\pageno \rightheadline\else + \leftheadline\fi\fi + \vfill} % this completes the \vbox to 3pc + \vbox to \pageheight{ + \ifvoid\margin\else%marginal info is present + \rlap{\kern31pc\vbox to\z@{\kern4pt% + \box\margin \vss}}\fi + #1 % now insert the main information + \ifvoid\footins\else%footnote info is present + \vskip\skip\footins \kern-3pt + \hrule height\ruleht width\pagewidth + \kern-\ruleht \kern3pt + \unvbox\footins\fi + \boxmaxdepth=\maxdepth + } % this completes the \vbox to \pageheight +}\advancepageno} + +\def\setcornerrules{\hbox to \pagewidth{% + \vrule width 1pc height\ruleht + \hfil \vrule width 1pc} + \hbox to \pagewidth{\llap{\sevenrm(page + \folio)\kern1pc}% + \vrule height1pc width\ruleht depth\z@ + \hfil \vrule width\ruleht depth\z@}} + +\def\manmacoutput{\onepageout{ + \unvbox255}} + +\newbox\partialpage +\def\begindoublecolumns{\begingroup + \output={\global\setbox\partialpage= + \vbox{\unvbox255\bigskip}}\eject + \output={\doublecolumnout}% + \hsize=9cm \vsize=51cm}%cgl mods +\def\enddoublecolumns{\output= + {\balancecolumns}\eject \endgroup + \pagegoal=\vsize} + +\def\doublecolumnout{\splittopskip=\topskip + \splitmaxdepth=\maxdepth \dimen@=25cm + \advance\dimen@ by-\ht\partialpage + \setbox0=\vsplit255 to\dimen@ + \setbox2=\vsplit255 to\dimen@ + \onepageout\pagesofar + \unvbox255 \penalty\outputpenalty} +\def\pagesofar{\unvbox\partialpage + \wd0=\hsize \wd2=\hsize \hbox to + \pagewidth{\box0\hfil\box2}} +\def\balancecolumns{\setbox0=\vbox{\unvbox255} + \dimen@=\ht0 + \advance\dimen@ by\topskip + \advance\dimen@ by-\baselineskip + \divide\dimen@ by2 \splittopskip=\topskip + {\vbadness=10000 + \loop \global\setbox3=\copy0 + \global\setbox1=\vsplit3 to\dimen@ + \ifdim\ht3>\dimen@ + \global\advance\dimen@ by1pt + \repeat} + \setbox0=\vbox to\dimen@{\unvbox1} + \setbox2=\vbox to\dimen@{\unvbox3} + \pagesofar} + +% To produce only a subset of pages, +% put the page numbers on separate +% lines in a file called pages.tex +\let\Shipout=\shipout +\newread\pages \newcount\nextpage +\openin\pages=pages +\def\getnextpage{\pages\else + {\endlinechar=-1\read\pages to\next + \ifx\next\empty % in this case we should + % have eof now + \else\global\nextpage=\next\fi}\fi} +\ifeof\pages\else\message{OK, I'll ship only + the requested pages}\getnextpage\fi +% +\def\shipout{\ifeof\pages + \let\next=\Shipout\else + \ifnum\pageno=\nextpage + \getnextpage\let\next=\Shipout + \else\let\next=\Tosspage\fi\fi \next} +% +\newbox\garbage +\def\Tosspage{\deadcycles=0 + \setbox\garbage=} + +% Chapter formatting +% The preface and table of contents are +% formatted in place, not here. +\newcount\exno % for the number of exercises + % in the current chapter +\newcount\subsecno % for the number of + % subsections in the current chapter + +\def\manmacbeginchapter#1 #2#3. #4\par{% +\global\exno=0\subsecno=0\def\chapno{#2#3} + \ifodd\pageno + \errmessage{You had too much text on + that last page, I'm backing up} + \advance\pageno by-1 + \fi \titlepage + \def\\{ } % \\'s in the title will be + % treated as spaces + \message{#1 #2#3:} % show the chapter + % title on the terminal + \def\MF{{\manual 89:%insert semi-col + <=>:}} % slant the logo + \xdef\rhead{#1 #2#3: #4\unskip} + {\def\TeX{T\kern-.2em\lower.5ex% + \hbox{E}\kern-.06em X} + \def\MF{{\vbox to30pt{}\manual ()*+,-.*}} + \def\\{#3} + \ifx\empty\\ + \rightline{\inchhigh #2\kern-.04em} + \else\rightline{\inchhigh #2\kern-.06em% + #3\kern-.04em}% + \fi \vskip 1.75pc + \baselineskip 36pt \lineskiplimit + \titlelsl \lineskip 12pt + \let\\=\cr%now the \\'s are line dividers + \halign{\line{\titlefont\hfil##}\\#4% + \unskip\\}\vfill\eject} % output the + % chapter title page + \tenpoint\noindent\ignorespaces}% the first +%paragraph of a chapter is not indented +\newdimen\titlelsl \titlelsl=1pt + +\outer\def\manmacendchapter{\ifodd\pageno + \else\vfill\eject\null\fi + \begingroup\bigskip\vfill % beginning of + % the quotes + \def\eject{\endgroup\eject} + \def\par{\ifhmode\/\endgraf\fi}\obeylines + \def\TeX{T\kern-.2em\lower.5ex\hbox{E}% + \kern-.000em X} + \def\MF{{\manual opqr}\-{\manual stuq}} + \eightpoint \let\tt=\ninett + \baselineskip 10pt + \parfillskip \z@ + \interlinepenalty 10000 + \leftskip \z@ plus 40pc minus \parindent + \let\rm=\eightss \let\sl=\eightssi + \everypar{\sl}} +% +\def\manmacauthor#1(#2){\smallskip +\noindent\rm--- #1\unskip\enspace(#2)} + +\def\dbend{{\manual\char127}} +% dangerous bend sign +\def\d@nger{\medbreak\begingroup + \clubpenalty=10000 + \def\par{\endgraf\endgroup\medbreak} + \noindent\hang\hangafter=-2 + \hbox to0pt{\hskip-\hangindent\dbend + \hfill}\ninepoint} +\outer\def\danger{\d@nger} +\def\dd@nger{\medbreak\begingroup + \clubpenalty=10000 + \def\par{\endgraf\endgroup\medbreak} + \noindent\hang\hangafter=-2 + \hbox to0pt{\hskip-\hangindent\dbend + \kern1pt\dbend\hfill}\ninepoint} +\outer\def\ddanger{\dd@nger} +\def\enddanger{\endgraf\endgroup} % omits + % the \medbreak + +\outer\def\subsection#1. {\medbreak + \advance\subsecno by 1 + \noindent + {\it \the\subsecno.\enspace#1.\enspace}} +\def\ansno#1.#2:{\medbreak\noindent + \hbox to\parindent{\bf\hss#1.#2.\enspace} + \ignorespaces} + +% Composition macros +\hyphenation{man-u-script man-u-scripts + ap-pen-dix xscaled} + +%\def\AmSTeX{$\cal A\kern-.1667em\lower +% .5ex\hbox{$\cal M$}\kern-.075em S$-\TeX} +\def\bull{\vrule height .9ex width .8ex% + depth -.1ex } % square bullet +\def\SS{{\it SS}} % scriptscript style +\def\|{\leavevmode\hbox{\tt\char`\|}} + % vertical line +\def\dn{\leavevmode\hbox{\tt\char'14}} + % downward arrow +\def\up{\leavevmode\hbox{\tt\char'13}} + % upward arrow +\def\]{\leavevmode\hbox{\tt\char`\ }} + % visible space + +\def\pt{$\,${\rm pt}} % units of points, + % in math formulas +\def\em{$\,${\rm em}} % units of ems, + % in math formulas +\def\<#1>{\leavevmode\hbox{$\langle$#1% + \/$\rangle$}} % syntactic quantity +\def\oct#1{\hbox{\rm\'{}\kern-.2em\it + #1\/\kern.05em}} % octal constant +\def\hex#1{\hbox{\rm\H{}\tt#1}} + % hexadecimal constant +\def\cstok#1{\leavevmode\thinspace\hbox{% + \vrule\vtop{\vbox{\hrule\kern1pt\hbox{% + \vphantom{\tt/}\thinspace{\tt#1}% + \thinspace}}\kern1pt\hrule}\vrule}% + \thinspace} % control sequence token + +{\obeyspaces\gdef {\ }} +\def\parbreak{\hfil\break\indent\strut} +\def\stretch{\nobreak\hskip0pt plus2pt\relax} + +% macros for non-centered displays +\outer\def\begindisplay{\obeylines + \startdisplay} +{\obeylines\gdef\startdisplay#1 + {\catcode`\^^M=5$$#1\halign\bgroup\indent + ##\hfil&&\qquad##\hfil\cr}} +% +\outer\def\enddisplay{\crcr\egroup$$} +% (the following \begin...\end-type +% macros do not appear in Appendix E) +% macros for demonstrating math constructions +\outer\def\beginmathdemo{ + $$\advance\baselineskip by2pt + \halign\bgroup\indent\hbox to 160pt{##\hfil}& + $##$\hfil\cr\noalign{\vskip-2pt} +} +\outer\def\begindisplaymathdemo{ + $$\advance\baselineskip by15pt + \halign\bgroup\indent\hbox to 160pt{##\hfil}& + $\displaystyle{##}$\hfil\cr + \noalign{\vskip-15pt} +} +\outer\def\beginlongmathdemo{ + $$\advance\baselineskip by2pt + \halign\bgroup\indent\hbox to 210pt{##\hfil}& + $##$\hfil\cr\noalign{\vskip-2pt} +} +\outer\def\beginlongdisplaymathdemo{ + $$\advance\baselineskip by15pt + \halign\bgroup\indent\hbox to 210pt{##\hfil}& + $\displaystyle{##}$\hfil\cr + \noalign{\vskip-15pt} +} +\outer\def\endmathdemo{\crcr\egroup$$} + +% macros for font tables +\def\oddline#1{\cr + \noalign{\nointerlineskip} + \multispan{19}\hrulefill& + \setbox0=\hbox{\lower 2.3pt\hbox{% + \hex{#1x}}}\smash{\box0}\cr + \noalign{\nointerlineskip}} +\def\evenline{\cr\noalign{\hrule}} +\def\chartstrut{\lower4.5pt\vbox to14pt{}} +\def\beginchart#1{$$\postdisplaypenalty=-10000 + \global\count@=0 #1 + \halign to\hsize\bgroup + \chartstrut##\tabskip0pt plus10pt& + &\hfil##\hfil&\vrule##\cr + \lower6.5pt\null + &&&\oct0&&\oct1&&\oct2&&\oct3&&\oct4&& + \oct5&&\oct6&&\oct7&\evenline} +\def\endchart{\raise11.5pt\null&&&\hex 8&& + \hex 9&&\hex A&&\hex B&&\hex C&&\hex D&& + \hex E&&\hex F&\cr\egroup$$} +\def\:{\setbox0=\hbox{\char\count@}% + \ifdim\ht0>7.5pt\reposition + \else\ifdim\dp0>2.5pt\reposition\fi\fi + \box0\global\advance\count@ by1 } +\def\reposition{\setbox0=\hbox{$\vcenter + {\kern2pt\box0\kern2pt}$}} +\def\normalchart{% + &\oct{00x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&&\oddline0 + &\oct{01x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&\evenline + &\oct{02x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&&\oddline1 + &\oct{03x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&\evenline + &\oct{04x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&&\oddline2 + &\oct{05x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&\evenline + &\oct{06x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&&\oddline3 + &\oct{07x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&\evenline + &\oct{10x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&&\oddline4 + &\oct{11x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&\evenline + &\oct{12x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&&\oddline5 + &\oct{13x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&\evenline + &\oct{14x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&&\oddline6 + &\oct{15x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&\evenline + &\oct{16x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&&\oddline7 + &\oct{17x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&& + \:&\evenline} +% +% (now Appendix E resumes again) +% macros for verbatim scanning +\chardef\other=12 +\def\ttverbatim{\begingroup + \catcode`\\=\other + \catcode`\{=\other + \catcode`\}=\other + \catcode`\$=\other + \catcode`\&=\other + \catcode`\#=\other + \catcode`\%=\other + \catcode`\~=\other + \catcode`\_=\other + \catcode`\^=\other + \obeyspaces \obeylines \tt} + +\outer\def\begintt{$$\let\par=\endgraf + \ttverbatim \parskip=\z@ + \catcode`\|=0 \rightskip-5pc \ttfinish} +{\catcode`\|=0 |catcode`|\=\other + % | is temporary escape character + |obeylines % end of line is active + |gdef|ttfinish#1^^M#2\endtt{#1|vbox{#2}% + |endgroup$$}} +\catcode`\|=\active +{\obeylines \gdef|{\ttverbatim + \spaceskip=\ttglue +\let^^M=\ \let|=\endgroup}} + +% macros for syntax rules (again, not in +% Appendix E) +\def\[#1]{\silenttrue\xref|#1|\thinspace + {\tt#1}\thinspace} % keyword in syntax +\def\beginsyntax{\endgraf\nobreak\medskip + \begingroup \catcode`<=13 \catcode`[=13 + \let\par=\endsyntaxline \obeylines} +\def\endsyntaxline{\futurelet\next + \syntaxswitch} +\def\syntaxswitch{\ifx\next\<\let\next= + \syntaxrule\else + \ifx\next\endsyntax\let\next=\endgroup + \else\let\next=\continuerule + \fi\fi \next +} +\def\continuerule{\hfil\break\indent\qquad} +\def\endsyntax{\medbreak\noindent} +{\catcode`<=13 \catcode`[=13 + \global\let<=\< \global\let[=\[ + \gdef\syntaxrule<#1>{\endgraf\indent + \silentfalse%\xref%Mod cgl + \<#1>}} \def\alt{\ $\vert$ } +\def\is{\ $\longrightarrow$ } + +% macros to demarcate lines quoted from +% TeX source files +\def\beginlines{\par\begingroup\nobreak + \medskip\parindent\z@ \obeylines + \hrule\kern1pt\nobreak \everypar{\strut}} +\def\endlines{\kern1pt\hrule\endgroup + \medbreak\noindent} +\def\weakendlines{\kern1pt\hrule\endgroup + \medskip\noindent} +\def\finalendlines{\kern1pt\hrule\endgroup + \medbreak} + +\outer\def\manmacexercise{\medbreak + \global\advance\exno by 1 + \noindent\llap{\manual\char'170 + \rm\kern.15em}% triangle in margin + {\ninebf EXERCISE \bf\chapno.\the\exno}\par + \nobreak\noindent} +\def\dexercise{\global\advance\exno by 1 + \llap{\manual\char'170 + \rm\kern.15em}% triangle in indented space + {\eightbf EXERCISE \bf\chapno.\the\exno}\hfil + \break} +\outer\def\dangerexercise{\d@nger\dexercise} +\outer\def\ddangerexercise{\dd@nger\dexercise} + +\newwrite\ans +\immediate\openout\ans=answers + % file for answers to exercises +\outer\def\manmacanswer{\par\medbreak + \immediate\write\ans{} + \immediate\write\ans{\string\ansno + \chapno.\the\exno:}\copytoblankline} +\def\copytoblankline{\begingroup\setupcopy + \copyans} +\def\setupcopy{\def\do##1{\catcode`##1= + \other}\dospecials + \catcode`\|=\other \obeylines} +{\obeylines \gdef\copyans#1 + {\def\next{#1}% + \ifx\next\empty\let\next=\endgroup + \else\immediate\write\ans{\next}% + \let\next=\copyans + \fi\next}} + +% Macros for drawing figures (not in +% Appendix E) +\def\hidehrule#1#2{\kern-#1\hrule + height#1 depth#2 \kern-#2 } +\def\hidevrule#1#2{\kern-#1{\dimen0=#1 + \advance\dimen0 by#2\vrule width\dimen0}% + \kern-#2 } +% \makeblankbox puts rules at the edges of +% a blank box whose dimensions are those +% of \box0 (assuming nonnegative wd,ht,dp) +% #1 is rule thickness outside, +% #2 is rule thickness inside +\def\makeblankbox#1#2{\hbox{\lower\dp0 + \vbox{\hidehrule{#1}{#2}% + \kern-#1% overlap the rules at the corners + \hbox to\wd0{\hidevrule{#1}{#2}% + \raise\ht0\vbox to #1{}% set the vrule height + \lower\dp0\vtop to #1{}% set the vrule depth + \hfil\hidevrule{#2}{#1}}% + \kern-#1\hidehrule{#2}{#1}}}} +\def\maketypebox{\makeblankbox{0pt}{1pt}} +\def\makelightbox{\makeblankbox{.2pt}{.2pt}} + +% \box\bigdot is a null box with a bullet +% at its reference point +\newbox\bigdot \newbox\smalldot +\setbox0=\hbox{$\vcenter{}$} +% \ht0 is the axis height +\setbox1=\hbox to\z@{$\hss\bullet\hss$} +% bullet is centered on the axis +\setbox\bigdot=\vbox to\z@{\kern-\ht1 + \kern\ht0 \box1 \vss} +\setbox1=\hbox to\z@{$\hss\cdot\hss$} +% cdot is centered on the axis +\setbox\smalldot=\vbox to\z@{\kern-\ht1 + \kern\ht0 \box1 \vss} + +% \arrows makes things like <--- text ---> +\def\arrows#1#2{% #1=width, #2=text +{\setbox0=\hbox{$\mkern-2mu\mathord + -\mkern-2mu$} + \hbox to #1{\kern-.055556em$\leftarrow + \mkern-6mu$\cleaders\copy0\hfil + \kern.4em #2\kern.4em\cleaders\copy0\hfil + $\mkern-6mu\rightarrow$\kern-.055556em}}} + +% \samplebox makes the outline of a box, +% with big dot at reference point +\def\samplebox#1#2#3#4{% #1=ht, #2=dp, #3=wd, +% #4=text + {\setbox0=\vtop{\vbox to #1{\hbox to #3{} + \vss}\nointerlineskip\vbox to #2{}} + % now \box0 has the desired ht, dp, and wd + \hbox{\copy\bigdot + \vrule height.2pt depth.2pt width#3% + \kern-#3\makelightbox\kern-#3% + \raise#1\vbox{\hbox to #3{\hss#4\hss} + \kern 3pt}}}} + +% \sampleglue makes glue between sample boxes +\newdimen\varunit +\varunit=\hsize +\advance\varunit by-2\parindent +\divide\varunit by 58 % illustrations in + % Chapter 12 +\def\sampleglue#1#2{% #1=width, #2=text + \vtop{\hbox to #1{\xleaders\hbox to + .5\varunit{\hss\copy\smalldot\hss}\hfil} + \kern3pt + \tabskip \z@ plus 1fil + \halign to #1{\hfil##\cr#2\cr}}} + +% Indexing macros +\newif\ifproofmode +\proofmodetrue % this should be false when + % making camera-ready copy +\newwrite\inx +\immediate\openout\inx=index % file for + % index reminders +\newif\ifsilent +\def\specialhat{\ifmmode\def\next{^}\else + \let\next=\beginxref\fi\next} +\def\beginxref{\futurelet\next + \beginxrefswitch} +\def\beginxrefswitch{\ifx\next\specialhat + \let\next=\silentxref\else + \silentfalse\let\next=\xref\fi \next} +\catcode`\^=\active \let ^=\specialhat +\def\silentxref^{\silenttrue\xref} + +\def\marginstyle{\vrule height6pt depth2pt + width\z@ \sevenrm} + +\chardef\bslash=`\\ +\def\xref{\futurelet\next\xrefswitch} +\def\xrefswitch{\begingroup + \ifx\next|\aftergroup\vxref + % case 1 or 2, |arg| or |\arg| + \else\ifx\next\<\aftergroup\anglexref + % case 3, "\<arg>" means angle brackets + \else\aftergroup\normalxref + \fi\fi\endgroup} % case 0, "{arg}" +\def\vxref|{\catcode`\\=\active + \futurelet\next\vxrefswitch} +\def\vxrefswitch#1|{\catcode`\\=0 + \ifx\next\empty\def\xreftype{2}% + \def\next{{\tt\bslash\text}}%type2 + \else\def\xreftype{1}\def\next{% + {\tt\text}}\fi %type1 + \edef\text{#1}\makexref} +{\catcode`\|=0 \catcode`\\=\active |gdef\{}} +\def\anglexref\<#1>{\def\xreftype{3}% + \def\text{#1}\def\next{\<\text>}\makexref} +\def\normalxref#1{\def\xreftype{0}% + \def\text{#1}\let\next=\text\makexref} +\def\makexref{\ifproofmode\insert\margin + {\hbox{\marginstyle\text}}% +% \ifindexfile %Mod cgl oct 94 + \xdef\writeit{\write\inx{\text\space!% + \xreftype\space\noexpand\number\pageno.% + }}\writeit +% \else\advance\inxcnt1 +% \ea\xdef\csname\the\inxcnt\endcsname +% {\text\space!\xreftype\space}% +% \mark{\the\inxcnt}\fi + \else\ifhmode\kern0pt\fi\fi + \ifsilent\ignorespaces\else\next\fi} +% the \insert (which is done in proofmode +% only) suppresses hyphenation, so the +% \kern\z@ is put in to give the same effect +% in non-proofmode. + +% Internal cross references that may change +\def\sesame{61} + % page number for Sesame Street quote +\def\bmiexno{20} + % exercise number for bold math italic +\def\punishexno{1} + % exercise number for `punishment' +\def\fracexno{6} + % exercise number for `\frac' +\def\vshippage{31} + % error message from `\vship' +\def\storypage{24} + % listing of story.tex +\def\metaT{4} + % exercise number for T of METAFONT +\def\xwhat{2} + % exercise number for x3:=whatever +\def\Xwhat{2} + % exercise number for whatever itself + +\def\checkequals#1#2{\ifnum#1=#2\else + \errmessage{Redefine \string#1 to be + \the#2}\fi} + +%Things for The METAFONTbook only +%(omitted) ;nonum +% +%Contents manmac.tex +% cgl@rc.service.rug.nl +%Font definition ................7-58 +%Size switching macros ........60-154 +%Page layout (and OTR) .......156-282 +%-parameters..................159-193 +%-\manmacfootnote.............167-176 +%-\margin (insert)............185-188 +%-\titlepage......................191 +%-\leftheadline...............195-201 +%-\rightheadline..............202-209 +%-\onepageout.................211-235 +%-\setcornerrules.............237-243 +%-\manmacoutput...................245 +%-\begindoublecolumns.........248-253 +%-\enddoublecolumns...........254-256 +%-\doublecolumnout............258-264 +%-\pagesofar..................265-267 +%-\balancecolumns.............268-281 +%Subset of pages..............283-304 +%-\Shipout........................286 +%-\getnextpage................289-295 +%-\shipout....................297-301 +%-\Tosspage.......................304 +%Chapter formatting ..........306-393 +%-\manmacbeginchapter.........315-344 +%-\manmacendchapter...........348-363 +%-\author....................365, 366 +%-\dbend......................368-385 +%-\subsection.................387-393 +%Composition macros...........395-431 +%-\AmSTeX....................399, 400 +%-\bull......................401, 402 +%-\SS.............................403 +%-\vrt............................404 +%-\dn........................406, 407 +%-\up........................408, 409 +%-\]..............................410 +%-\pt........................413, 414 +%-\em........................415, 416 +%-\<#1>......................417, 418 +%-\oct.......................419, 420 +%-\hex............................421 +%-\cstok......................423-427 +%-\parbreak..................429, 430 +%-\stretch........................431 +%Macros for non-centered +% displays..................433-439 +%-\begindisplay..............434, 435 +%-\startdisplay...............436-438 +%-\enddisplay.....................440 +%Macros for showing math +% constructions.............441-466 +%-\beginmathdemo..............444-448 +%-\begindisplaymathdemo.......449-454 +%-\beginlongmathdemo..........455-459 +%-\beginlongdisplaymathdemo...460-465 +%-\endmathdemo....................466 +%Macros for font tables.......468-526 +%-\oddline....................469-474 +%-\evenline.......................475 +%-\chartstrut.....................476 +%-\beginchart.................477-484 +%-\endchart...................485-487 +%-\:..........................488-491 +%-\reposition................492, 493 +%-\normalchart................494-526 +%Macros for verbatim scanning.529-555 +%-\ttverbatim.................531-542 +%-\begintt....................544-546 +%-\ttfinish...................547-551 +%Macros for syntax rules......557-579 +%-\[#1]......................559, 560 +%-\beginsyntax................561-563 +%-\endsyntaxline.............564, 565 +%-\syntaxswitch...............566-570 +%-\continuerule...................572 +%-\endsyntax......................573 +%-<, [............................575 +%-\syntaxrule................576, 577 +%-\alt............................578 +%-\is.............................579 +%Macros to demarcate lines quoted +% from \TeX{} source files..581-591 +%-\beginlines................583, 585 +%-\endlines..................586, 587 +%-\weakendlines..............588, 589 +%-\finalendlines.............590, 591 +%Macros to mark up exercises +% and answers...............593-624 +%-\manmacexercise............593, 598 +%-\dexercise..................599-603 +%-\dangerexercise.................604 +%-\ddangerexercise................605 +%-\manmacanswer...............610-613 +%-\copytoblankline...........614, 615 +%-\setupcopy..................616-618 +%-\copyans....................619-624 +%Macros for drawing figures...626-696 +%-\hidehrule.................628, 629 +%-\hidevrule..................630-632 +%-\makeblankbox...............638-645 +%-\maketypebbox...................646 +%-\makelightbox...................647 +%-\bigdot....................656, 657 +%-\smalldot..................660, 661 +%-\arrows.....................664-670 +%-\samplebox..................674-683 +%-\sampleglue.................691-696 +%Indexing macros..............698-752 +%-\ifproofmode, \ifsilent....698, 704 +%-\inx............................701 +%-\specialhat................706, 707 +%-\beginxref.................708, 709 +%-\beginxrefswitch............710-712 +%-^...............................713 +%-\silentxref.....................714 +%-\marginstyle...............716, 717 +%-\bslash.........................719 +%-\xref...........................720 +%-\xrefswitch.................721-727 +%-\vxref.....................728, 729 +%-\vxrefswitch................730-736 +%-\anglexref.................738, 739 +%-\normalxref................740, 741 +%-\makexref...................742-754 +%Internal cross-references that +% may change................760-782 +% +%Additions +% +%\Large font for amongst others +%chapterhead of report +\font\Largerm=cmr12 + scaled\magstep4 +\let\subsubheadfont\Largerm +\font\Largei=cmmi12 + scaled\magstep4\relax +\font\Largeit=cmti12 + scaled\magstep4\relax +\font\Largesl=cmsl12 + scaled\magstep5\relax +\font\Largesy=cmsy10 + scaled\magstep5\relax +\font\Largeex=cmex10 + scaled\magstep5\relax +\font\Largebf=cmbx12 + scaled\magstep4\relax +\font\Largett=cmtt12 + scaled\magstep4\relax +\font\twelverm=cmr12 +\font\twelvebf=cmbx12 +\font\twelveit=cmti12 +\font\twelvesl=cmsl12 +\font\twelvemus=cmmi12 +\font\twelvesy=cmsy10 scaled\magstep1 +\font\twelveex=cmex10 scaled\magstep1 +\font\nineex=cmex10 scaled\magstephalf +\def\Large{\def\rm{\fam0\Largerm}% + \textfont0=\Largerm + \scriptfont0=\twelverm + \scriptscriptfont0=\ninerm + \textfont1=\Largei + \scriptfont1=\twelvemus + \scriptscriptfont1=\ninei + \textfont2=\Largesy + \scriptfont2=\twelvesy + \scriptscriptfont2=\ninesy + \textfont3=\Largeex + \scriptfont3=\twelveex + \scriptscriptfont3=\nineex + \def\it{\fam\itfam \Largeit}% + \textfont\itfam=\Largeit + \def\sl{\fam\slfam\Largesl}% + \def\oldstyle{\fam1 \Largei} + \textfont\slfam=\Largesl + \def\bf{\fam\bffam\Largebf}% + \textfont\bffam=\Largebf + \scriptfont\bffam=\tenbf + \scriptscriptfont\bffam=\sevenbf + \def\tt{\fam\ttfam\Largett}% + \textfont\ttfam=\Largett + \tt\ttglue=.5em plus.25em minus.15em + \normalbaselineskip=21pt + \def\MF{{\manual META}\-{\manual FONT}}% + \setbox\strutbox=\hbox{\vrule + height16pt depth5pt width\z@}% + \let\sc=\twelverm\let\big=\Largebig + \normalbaselines\rm} +\def\Largebig#1{{\hbox{$\left#1\vbox + to12pt{}\right.\n@space}}} +% +%\large font for transparencies +\font\largerm=cmr12 + scaled\magstep2 +\let\subsubheadfont\largerm +\font\largei=cmmi12 + scaled\magstep2\relax +\font\largeit=cmti12 + scaled\magstep2\relax +\font\largesl=cmsl12 + scaled\magstep2\relax +\font\largesy=cmsy10 + scaled\magstep3\relax +\font\largeex=cmex10 + scaled\magstep3\relax +\font\largebf=cmbx12 + scaled\magstep2\relax +\font\largett=cmtt12 + scaled\magstep2\relax +\def\large{\def\rm{\fam0\largerm}% + \textfont0=\largerm + \scriptfont0=\tenrm + \scriptscriptfont0=\sevenrm + \textfont1=\largei + \scriptfont1=\teni + \scriptscriptfont1=\seveni + \textfont2=\largesy + \scriptfont2=\tensy + \scriptscriptfont2=\sevensy + \textfont3=\largeex + \scriptfont3=\tenex + \scriptscriptfont3=\tenex + \def\it{\fam\itfam \largeit}% + \textfont\itfam=\largeit + \def\sl{\fam\slfam\largesl}% + \def\oldstyle{\fam1 \largei} + \textfont\slfam=\largesl + \def\bf{\fam\bffam\largebf}% + \textfont\bffam=\largebf + \scriptfont\bffam=\tenbf + \scriptscriptfont\bffam=\sevenbf + \def\tt{\fam\ttfam\largett}% + \textfont\ttfam=\largett + \tt\ttglue=.5em plus.25em minus.15em + \normalbaselineskip=20pt + \def\MF{{\manual META}\-{\manual FONT}}% + \setbox\strutbox=\hbox{\vrule + height15.5pt depth4.5pt width\z@}% + \let\sc=\tenrm \let\big=\largebig + \normalbaselines\rm} +\def\largebig#1{{\hbox{$\left#1\vbox + to10pt{}\right.\n@space}}} +% +%Customization of \beginchapter and +%\endchapter from Manmac BLUes. +\outer\def\beginchapter#1 #2#3. #4\par{% + \def\chapno{#2#3}\global\exno0 \subsecno0 + \def\hl{\gdef\hl{\the\issue\hfil\it\rhead}} + \headline{\hl} + \def\\{ }\xdef\rhead{#4} + \centerline{\titlefont + #1 #2#3\quad #4} + \bigskip\tenpoint\noindent\ignorespaces} +% +\footline{\tiny\rlap{\the\year}\hfil + --\folio--\hfil\llap{\copyright cgl}} +% +\outer\def\endchapter{\vfill\eject\vfill} +% +%\output{\plainoutput} +% +\hsize18cm \pagewidth\hsize +\vsize25cm \pageheight\vsize +%\issue{MAPS 93.1} +%History of changes +%1994 Table of contents added and +% names of footnote and output +% provided with unique prefix manmac. +% Customization \beginchapter added. +%1993 Adapted for twocolumn layout. +%end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%manmac%;newpage +% +% +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%ppt.tex cgl@rc.service.rug.nl +%;numvrb +%Adapted TUGboat.sty, 2-column bias +%\xcol is the column no within a page, +%ranges from 1 to \maxcols (=1 or 2). +\newcount\xcol +\newcount\maxcols +% +\newdimen\pagewd\newdimen\colwd +\newdimen\intercolwd +\newtoks\headlinesep\newtoks\footlinesep +\headlinesep{\kern2ex}\footlinesep{\kern1ex} +%\catcode`\@=11 +% remove \outer +\def\newbox{\alloc@4\box\chardef\insc@unt} +\def\boxcs#1{\box\csname#1\endcsname} +\def\setboxcs#1{\setbox\csname#1\endcsname} +\def\newboxcs#1{\expandafter + \newbox\csname#1\endcsname} +\newboxcs{column1} +\newboxcs{column2} +% +\def\midpage#1{\vbox{\ifnum\xcol=\maxcols + \the\headline\else\null\vskip\baselineskip + \fi\the\headlinesep + \vbox to\vsize{% + \hbox to\pagewd{#1}\vss} + \the\footlinesep + \ifnum\xcol=\maxcols + \the\footline\else\vskip4ex\fi}} +% +\headline={\hbox to\pagewd{\sevenrm + \the\issue\hfill{\it\the\title}}} +% +\newtoks\pagenumber\pagenumber{\folio} +\footline={\hbox to\pagewd{\tiny +\rlap{Draft \today}\hfill--\the\pagenumber + --\hfill\llap{\copyright cgl}}} +\def\today{\ifcase\month\or Jan\or Feb\or + March\or April\or May\or June\or July\or + Aug\or Sept\or Oct\or Nov\or Dec\fi + { }{\ea\oldstyle\number\day}, + {\ea\oldstyle\number\year}} +% +\def\newcol{\endgraf\vfill\eject} +% +\def\newpage{\vfill\eject +%\loop + \ifnum\xcol>1 + {\leavevmode\endgraf\vfill\eject} + \fi +}%\xcol is reset in the OTR %\repeat} +% horizontal offset of column +% from left edge of page +\newdimen\coloffset \coloffset=\z@ +\def\incrcoloffset{% + \global\advance\coloffset\colwd + \global\advance\coloffset\intercolwd} +% +\output={\global\setboxcs{column\number\xcol}= + \midpage{\kern\coloffset\pagebody\hfil} + \incrcoloffset + \ifnum\xcol=\maxcols + \shipout\hbox{% + \rlap{\boxcs{column1}}% + \rlap{\boxcs{column2}}% + \hbox to\pagewd{\hss}}% + \advancepageno + \global\coloffset\z@ + \global\xcol=\@ne + \else + \global\advance\xcol\@ne + \fi} +% +%Title, header and miscellaneous +\newtoks\title\newtoks\subtitle +\newtoks\author\newtoks\address +\newtoks\businessaccount +\newtoks\translator\newtoks\issue +\newtoks\netaddress\newtoks\crowner +\newtoks\telephone +\newtoks\thisscript\newtoks\everyscript +\newtoks\prehead\newtoks\posthead +\newtoks\presubhead\newtoks\postsubhead +\newtoks\presubsubhead\newtoks\postsubsubhead +\newtoks\thishead +\newtoks\thissubhead\newtoks\thissubsubhead +\newtoks\everyhead +\newtoks\everysubhead\newtoks\everysubsubhead +\newtoks\tocvar +\newdimen\subheadindent\subheadindent=0pc +\newdimen\subsubheadindent\subsubheadindent=2pc +\def\pasteupkeywords{\box\keywordsbox} +\def\pasteupabstract{\box\abstractbox} +\def\pasteupcontents{\unvbox\contentsbox} +\def\pasteupacknowledgements{\ifvoid + \acknowledgementsbox + \else\the\preacknowledgements\unvbox + \acknowledgementsbox\fi + }% +%pastupindex is much more complicated;vrblin100 +\def\beginscript{\lastscript + \the\everyscript\begingroup + \the\thisscript + \hrule\kern2ex\noindent + {\titlefont\the\title\unskip}% + \if!\the\subtitle!\else{\subtitlefont + \Dash\the\subtitle\unskip}\fi + \medskip\the\author + \medskip\pasteupkeywords + \medskip\pasteupabstract + \medbreak\pasteupcontents\smallbreak} +\def\endscript{\makesignature + \xcol=\maxcols + \vfil\eject\endgroup\tracingstats1 + \stop\thisscript{}} +\def\notlastscript{\let\stop\relax} +\def\lastscript{\let\stop\end} +\prehead{\vskip0pt plus9ex + \penalty-250\vskip0pt plus-9ex + \bgroup\catcode`\^=7 \the\everyhead + \the\thishead\bigskip\noindent} +\posthead{\medskip\nobreak\egroup + \noindent\ignorewhitespace} +\def\beginhead{\the\prehead\bgroup + \headfont} +\def\endhead{\egroup\the\posthead} +\presubhead{\vskip0pt plus6ex + \penalty-100\vskip0pt plus-6ex + \medskip\vskip\parskip\noindent + \bgroup\catcode`\^7 \the\everysubhead + \the\thissubhead + \leavevmode\hbox to\subheadindent{}} +\postsubhead{\egroup\quad\ignorewhitespace} +\def\beginsubhead{\the\presubhead + \bgroup\subheadfont} +\def\endsubhead{\egroup\the\postsubhead} +\presubsubhead{\vskip0pt plus3ex + \penalty-50\vskip0pt plus-3ex\bgroup + \catcode`\^=7 + \the\everysubsubhead\the\thissubsubhead + \smallskip\vskip\parskip\noindent + \leavevmode\hbox to\subsubheadindent{}} +\postsubsubhead{\egroup\quad\ignorewhitespace} +\def\beginsubsubhead{\the\presubsubhead + \bgroup\subsubheadfont} +\def\endsubsubhead{\egroup + \the\postsubsubhead} +%;vrblin150 +\def\head#{\beginhead\bgroup\ag\endhead + \afterassignment\ignorespaces + \let\dummy=} +\def\subhead#{\beginsubhead\bgroup\ag + \endsubhead\afterassignment\ignorespaces + \let\dummy=} +\def\subsubhead#{\beginsubsubhead\bgroup + \ag\endsubsubhead\let\dummy=} +\def\script#{\beginscript\bgroup\ag\endscript + \afterassignment\ignorespaces + \let\dummy=} +% +\def\bluetitle#1\par{\title{#1}} +\def\bluesubtitle#1\par{\subtitle{#1}} +\def\bluekeywords#1\par{\keywords{#1}} +\def\bluehead#1\par + {\beginhead#1\unskip\endhead} +\def\bluesubhead#1\par + {\beginsubhead#1\endsubhead} +\def\bluesubsubhead#1\par + {\beginsubsubhead#1\endsubsubhead} +\def\bluemakelabels#1\par + {\makelabels{#1}} +\def\blueabstract#1\par{\abstract{#1}} +\def\blueissue#1\par{\issue{#1}} +% +\long\def\ignorepars#1{\ifx\par#1\let\next\relax + \else\let\next#1\sraperongi\fi\ignorepars} +\long\def\sraperongi#1\ignorepars{\fi\next} +{\catcode`\^=7 \gdef\ignorewhitespace{\begingroup +%Due to Phil Taylor EuroTeX 94 +\catcode`\ =9 %space +\catcode`\^^I=9 %tab +\catcode`\^^L=9 %f-feed +\catcode`\^^M=9 %e-o-l +\futurelet\dummy\endgroup}} +%;vrblin200 +\def\tubissue#1(#2){TUGboat~{\oldstyle#1}, + {\oldstyle#2}} \def\\{\hfil\break} +\def\makesignature{\medskip + \rightline{\hbox to.4\hsize{\strut + \llap{\copyright\quad}\the\author\hss}} + \rightline{\vbox{\noindent + \hsize=.4\hsize + \the\address\hfill\break + \the\netaddress\\ + \the\telephone}}} +% +\def\on{\bgroup\afterassignment\doold\count0=} +% +\def\doold{\oldstyle\the\count0\egroup} +\def\oa#1 {{\oldstyle\fifoolda#1\ofifolda} } +\def\fifoolda#1#2{\ifcat#1a#1\else\aftergroup#1\fi + \ifx\ofifolda#2 \ofifolda\fi + \fifoolda#2} +\def\ofifolda#1\ofifolda{\fi} +% +% Defaults +% %;vrblin250 +\newif\ifonecol +\def\A#1{\csname A#1\endcsname} +\expandafter\def\csname A4\endcsname + {\ifonecol\hsize16cm\pagewd\hsize + \else\hsize9cm\intercolwd.5cm + \pagewd\hsize + \advance\pagewd\hsize + \advance\pagewd\intercolwd + \fi\colwd\hsize \vsize25cm} +% +\def\onecol{\maxcols=1 \xcol=1 + \onecoltrue\A4 + \hyphenchar\tentt='055 %`- + \hyphenchar\ninett='055 + \hyphenchar\eighttt='055 + \tolerance500 + \hbadness=499 + \hfuzz=4pt +} +% +\def\twocol{\maxcols=2 \xcol=1 + \onecolfalse\A4 + \hyphenchar\tentt='055 + \hyphenchar\ninett='055 + \hyphenchar\eighttt='055 + \tolerance500 + \hbadness=499 + \hfuzz=5pt +} +%Personalisation +\author{Kees van der Laan} +\address{Hunzeweg {\oldstyle57}\\ + {\oldstyle9893} PB Garnwerd\\ + The Netherlands} +\netaddress{cgl@rc.service.rug.nl} +\telephone{{\oldstyle31\thinspace{\rm(}0{\rm)}% + 594\thinspace62\thinspace1525}} +\crowner{cgl} +\businessaccount{Giro: C.G. van der Laan + no {\oldstyle1321224}} +\def\logo{\copy\ntglogobox}%a \vbox +%end Personalisation +\def\bluetex{blue.tex} +%\catcode`\@=12 +\hoffset-1cm \voffset-1cm +\parindent1pc +\let\titlefont\bf +\let\headfont\bf +\let\subheadfont\bf +\let\subsubheadfont\bf +\let\subtitlefont\rm +\twocol +%\endinput +%;nonum +%Contents ppt cgl@rc.service.rug.nl +%- OTR +% \boxcs........................14 +% \setboxcs.....................15 +% \newboxcs.....................16 +% \midpage...................21-28 +% \headline..................30-31 +% \footline..................34-36 +% \pagenumber...................33 +% \today.....................37-41 +% \newcol.......................42 +% \newpage...................44-49 +% \incrcoloffset.............53-55 +% \output....................57-72 +%- Markup structures +% \title, \subtitle.............75 +% \author.......................76 +% \address, \netaddress.........77 +% \issue........................77 +% \thisscript, \everyscript.....78 +% \prehead, \posthead...........79 +% \presubhead...................80 +% \presubsubhead................81 +% \pasteupkeywords..............82 +% \pasteupabstract..............83 +% \pasteupcontents..............84 +% \beginscript.............101-110 +% \endscript...............111-114 +% \notlastscript...............115 +% \lastscript..................116 +% \prehead.................117-119 +% \posthead................120-121 +% \presubhead..............124-126 +% \beginhead...............122-123 +% \endhead.....................124 +% \beginsubhead............127-128 +% \endsubhead..................129 +% \beginsubsubhead.........133-134 +% \endsubsubhead...............135 +% \script..................159-161 +% \head....................151-153 +% \subhead.................154-156 +% \subsubhead..............157-158 +% \ignorepars..............159-160 +% \sraperongi..................161 +% \ignorewhitespace........162-169 +%- Miscellaneous +% \tubissue....................201 +% \\...........................202 +% \makesignature...........203-209 +% \on...................... +% \ona..................... +%- Defaults +% \onecol..................251-263 +% \twocol..................265-277 +%- Initializations 278-289 +% \author......................278 +% \address.................279-280 +% \netaddress..............281-282 +% \headfont....................286 +% \subheadfont.................287 +% \subsubheadfont..............288 +% \parindent...................285 +% \hoffset, \voffset...........284 +% +%Split-off---inner level---are +% - tugboat.cmn abbreviations +% - size switching macros +% - \beginquote...\endquote +% - \bitem (essentially plain's \item) +% - verbatim mode macros +% - (bibliography macros, +% \beginbtable...\endbtable, +% ...) +%Author: C.G van der Laan +% Hunzeweg 57, 9893P +% Garnwerd The Netherlands +% cgl@rc.service.rug.nl, 0594621525 +% +%History of changes +%March 1996 \on, \ona added +%Dec 1994 \global\advance\count0\@ne +% changed into plain's \advancepageno. +% Phil Taylor's +% \ignorewhitespace has been included. +% Parameterization over +% \headlinesep, \footlinesep. +% \makesignature's \diamond +% changed into \copyright. +%July 1994 No parameter separators for +% \head etc. +% \beginscript, \endscript instead +% of \article, \endarticle. +% Token variables for \prehead +% \posthead, \presubhead +% \presubsubhead. +%June 1994 Name changed into ppt.tex +%May 94 \runhead and \runfoot changed +% into \headline and \footline +% compatible with plain. +%March 94 Essential set up +%end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%ppt.tex%;newcol +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%%%%Additions% +%Additions to ppt +%Shortcuts ;numvrb +\let\ea=\expandafter\let\nx=\noexpand +\let\ag=\aftergroup +\def\dash{--}\def\Dash{---} +\newtoks\contentsname +\newtoks\abstractname +\newtoks\keywordsname +\newtoks\acknowledgementsname +\newtoks\preacknowledgements +\preacknowledgements{\bigbreak\leftline{\bf + \the\acknowledgementsname}\nobreak + \medskip\noindent} +\newtoks\postacknowledgements +\def\DeK{D\kern-.11em\lower.5ex\hbox + {E}\kern-.1em K} %;vrblin=50 +\def\tiny{\fiverm\baselineskip7pt minus1pt + \let\it\fivei\let\bf\fivebf\def\oldstyle + {\fam1 \fivei}} %;vrblin=200 +%\pagenumber{\folio} +\newcount\fcnt +\def\ftn{\global\advance\fcnt1 + \footnote{${}^{\oldstyle\the\fcnt}$}} +\def\vfootnote#1{\insert\footins + \bgroup\interlinepenalty + \interfootnotelinepenalty + \splittopskip\ht\strutbox + \splitmaxdepth\dp\strutbox + \floatingpenalty\@MM + \leftskip\z@skip + \rightskip\z@skip + \spaceskip\z@skip + \xspaceskip\z@skip +%mods cgl +\small\noindent\llap{\oldstyle + #1\enspace}% +%end mods cgl + \footstrut\futurelet\next\fo@t +} +%LaTeX things ;vrblin=250 +%\def\\{\hfil\break} +\def\cite#1{(#1)} +\def\verb{} +\def\em{\it} +\def\cs#1{{\tt\char92 #1}} +%Some layout macros ;vrblin=300 +\newbox\keywordsbox +\keywordsname{Keywords} +% +\def\beginkeywords{\setbox\keywordsbox + \vbox\bgroup\subhead{\sevenbf + \the\keywordsname: }\small} +% +\def\endkeywords{\egroup} +% +\def\keywords#{\beginkeywords\bgroup + \aftergroup\endkeywords + \afterassignment\ignorespaces + \let\dummy=} +% +\newbox\abstractbox +%\abstractname{Abstract} +% +\def\beginabstract{\setbox\abstractbox + \vbox\bgroup\centerline{\sevenbf + \the\abstractname}\beginquote\small} +% +\def\endabstract{\endquote\egroup} +% +\def\abstract#{\beginabstract\bgroup + \aftergroup\endabstract + \afterassignment\ignorespaces + \let\dummy=} +% +\newbox\contentsbox +% +\let\se\quad\let\sse\qquad +% +\def\begincontents{\setbox\contentsbox + \vbox\bgroup\small\noindent + \the\contentsname\par\obeylines} +% +\def\endcontents{\egroup} +% +\def\contents#{\begincontents\bgroup + \aftergroup\endcontents + \afterassignment\ignorespaces + \let\dummy=} +% +\newbox\acknowledgementsbox +% +\def\beginacknowledgements{\setbox + \acknowledgementsbox=\vbox\bgroup} +% +\def\endacknowledgements{\egroup + \the\postacknowledgements} +% +\def\acknowledgements#{\beginacknowledgements + \bgroup\aftergroup\endacknowledgements + \afterassignment\ignorespaces + \let\dummy=} +% +\def\beginquote{\endgraf\bgroup\narrower + \smallbreak\noindent} +% +\def\endquote{\smallbreak\egroup\endgraf + \noindent} +% +\def\quote#{\beginquote\bgroup + \aftergroup\endquote + \afterassignment\ignorespaces + \let\dummy=} +% +\def\beginsummary{\beginquote + \narrower\sl} +% +\def\endsummary{\endquote\bigskip} +% +\def\summary#{\beginsummary\bgroup + \aftergroup\endsummary + \afterassignment\ignorespaces + \let\dummy=} +% +\def\begincenter{\bgroup\smallskip +\leftskip0pt plus1fill +\rightskip0pt plus 1fill +\parfillskip0pt +\obeylines} +% +\def\endcenter{\smallskip\egroup} +\def\center#{\begincenter\bgroup + \aftergroup\endcenter + \afterassignment\ignorespaces + \let\dummy=} +% +\def\begincenterblock{\bgroup + \let\par\cr\obeylines\startcenterblock} +{\obeylines\gdef\startcenterblock#1 + {$$#1\vbox\bgroup\halign\bgroup% + &##\hfil\cr}} +% +\def\endcenterblock{\egroup\egroup$$ + \egroup} +% +\def\begindisplaycenterline{% + $$\hbox\bgroup} +% +\def\enddisplaycenterline{\egroup$$} +% +\def\displaycenterline#{% + \begindisplaycenterline\bgroup + \aftergroup\enddisplaycenterline + \afterassignment\ignorespaces + \let\dummy=} +% +\def\begincenterdisplay{\csname + begindisplay\endcsname\vbox\bgroup} +% +\def\endcenterdisplay{\crcr\egroup\egroup$$} +% +% %;vrblin=350 +\def\bitem{\item{$\bullet$}} +% +\newcount\itemno +% +\def\nitem{\bgroup + \def\nitem{\advance\itemno1 + \item{\the\prenum{\oldstyle\the\itemno + }\the\postnum}} + \def\smallbreak{\endgraf\egroup + \smallbreak} + \let\smallskip\smallbreak\nitem} +% +\def\aitem{\bgroup\itemno96 + \def\aitem{\advance\itemno1 + \item{\char\itemno.}} + \def\smallbreak{\endgraf\egroup + \smallbreak} + \let\smallskip\smallbreak + \aitem} +% +\def\Aitem{\bgroup\itemno64 + \def\Aitem{\advance\itemno1 + \item{\char\itemno.}} + \def\smallbreak{\endgraf\egroup + \smallbreak} + \let\smallskip\smallbreak + \Aitem} +% +\def\endlist{\endgraf\egroup} +%On purpose no \smallskip or so. +% +\newtoks\thisexample +\newtoks\everyexample +\newtoks\preexample +\newtoks\postexample +\newtoks\examplename +% +\preexample{\vskip0pt plus5ex + \penalty-100\vskip0pt plus-5ex + \medbreak\noindent} +% +\postexample{\nobreak\par\noindent + \ignorewhitespace} +% +\def\beginexample{\the\preexample\bgroup + \the\examplename\kern1ex\sl + (\ignorewhitespace} +% +\def\endexample{)\egroup\the\postexample} +% +\def\example#{\beginexample\bgroup + \aftergroup\endexample + \afterassignment\ignorewhitespace + \let\dummy=} +%and the limited variants +\def\limexample#1{\the\preexample + \the\examplename\kern1ex{\sl(#1)}\nobreak + \par\noindent\ignorewhitespace} +%with as tribute to manmac +\def\blueexample#1\par + {\limexample{#1\unskip}} +% +\def\endintermezzo{\hfil\break\nobreak + {\bf End intermezzo.}\medbreak} +%For in \onecol +%;numvrb400 +\def\begindemo{\endgraf\line\bgroup + $\vcenter\bgroup\hsize.475\hsize + \beginverbatim} +% +\def\yields{\endverbatim + \global\thisverbatim{}\egroup$ + \kern\gutter + $\vcenter\bgroup\hsize.55\hsize} +% +\def\enddemo{\egroup$\hss\egroup} +%;numvrb500 +\def\pagenorepresentation#1{\quad\dotfill + {\oldstyle#1}} +% +\def\fbox#1{\setbox0\hbox{\strut + $\;$#1$\,$}\leavevmode\rlap{\copy0}% + \makelightbox} +%Knuth's frac Ex 11.6 +\def\frac#1/#2{\leavevmode\kern.1em + \raise.5ex\hbox{\the\scriptfont0 #1}% + \kern-.1em/\kern-.15em\lower.25ex + \hbox{\the\scriptfont0 #2}} +%Defaults +\let\small\eightpoint +\overfullrule=0pt +%;nonum +%Contents +%Newcount +% \itemcnt.................208 +%Newtoks +% \itemtag.................209 +%Shortcuts +% \ea, \nx....................1 +% \ag.........................2 +% \dash, \Dash................3 +% \DeK.....................6, 7 +%Font switching +% \tiny......................51 +% \small....................414 +% \cs.......................255 +%Footnote, paragraph +% \ftncnt...................202 +% \ftn..................203-204 +%LaTeX +% \\........................251 +% \cite.....................252 +% \verb.....................253 +% \em.......................254 +%Lay-out +% \keywordsbox..............301 +% \abstractbox..............311 +% \contentsbox..............321 +% \beginkeywords........303-305 +% \endkeywords..............306 +% \keywordsname.............302 +% \keywords.............307-310 +% \beginabstract........313-315 +% \endabstract..............316 +% \abstractname.............312 +% \abstract.............317-320 +% \begincontents........323-325 +% \endcontents..............326 +% \contentsname.............322 +% \contents.............327-330 +% \beginsummary......... +% \endsummary............... +% \summary.............. +% \beginquote...........331-332 +% \endquote.............333-334 +% \quote................335-338 +%Centering texts +% \begindisplaycenterline +% \enddisplaycenterline +% \displaycenterline +% \begincenter +% \endcenter +% \center +% \begincenterblock +% \endcenterblock +% \begincenter..........339-342 +% \endcenter................343 +% \center...............344-347 +% +% \bitem....................351 +% \itemno...................352 +% \nitem................353-359 +% \aitem................360-366 +% \Aitem................367-373 +% \endlist..................374 +% \example..............376-378 +% \endintermezzo........379-380 +% \begindemo............401-403 +% <escape char>yields...405-408 +% \enddemo..................410 +%Parameterization ToC setting +% \pagenorepresentation.501-502 +%Built on manmac +% \fbox.................504-505 +%Defaults +% \overfullrule=0pt.........507 +% +%History of changes +%Jan 95 \xyz and \partlogo to tools.dat +% \pagenorepresentation added +%July 1994 Boxes for keywords, abstract, +% and contents added. +%March 1994 Set up +%end%%%%%%%%%%%%%%%%%%%%%%%%%%%Additions%;newpage +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%%math extras% +%From Math into BLUes the mods +%-- \centering into \centeringp +% in order not to +% conflict with LaTeX +%-- \eqalign has gotten a repetitive +% template to allow for more +% than one alignment point. +%-- arrows for commutative diagrams +%-- Knuth's typographer's half +%-- prime for accenting summation symbols +%-- Poor man's symbols +% blackboard, grtlss, ext tensor prod. +\newskip\centeringp%plain's +\centeringp=0pt plus1000pt minus1000pt +\def\eqalign#1{\null\,\vcenter{\openup + \jot\m@th\ialign{\strut\hfil + $\displaystyle {##}$&&%mod cgl + $\displaystyle {{}##}$\hfil\crcr + #1\crcr }}\,} +\def\eqalignno#1{\displ@y + \tabskip\centeringp + \halign to\displaywidth{\hfil + $\@lign\displaystyle{##}$\tabskip\z@skip + &$\@lign\displaystyle{{}##}$\hfil + \tabskip\centeringp &\llap{$\@lign##$}% + \tabskip\z@skip\crcr + #1\crcr}} +\def\leqalignno#1{\displ@y + \tabskip\centeringp + \halign to\displaywidth {\hfil + $\@lign\displaystyle{##}$\tabskip\z@skip + &$\@lign\displaystyle{{}##}$\hfil + \tabskip\centeringp&\kern-\displaywidth + \rlap{$\@lign ##$}\tabskip\displaywidth + \crcr #1\crcr}} +% +\def\fracdek#1/#2{\leavevmode\kern.1em + \raise.50ex\hbox{\the\scriptfont0 #1} + \kern-.1em/\kern-.15em\lower.25ex + \hbox{\the\scriptfont0 #2}} +% +\def\lllongrightarrow{\relbar\joinrel% + \relbar\joinrel\relbar\joinrel% + \relbar\joinrel\rightarrow} +\def\llongrightarrow{\relbar\joinrel% + \relbar\joinrel\rightarrow} +\def\adaptedbaselines{% + \baselineskip20pt + \lineskip3pt + \lineskiplimit3pt} +\def\mapright#1{\smash{\mathop{ + \llongrightarrow}\limits^{#1}}} +\def\lmapright#1{\smash{\mathop{ + \lllongrightarrow}\limits^{#1}}} +\def\mapdown#1{\Big\downarrow + \rlap{$\vcenter{\hbox{$#1$}}$}} +\def\mapup#1{\Big\uparrow + \rlap{$\vcenter{\hbox{$#1$}}$}} +% +\def\acclap#1{{}^{\rlap{$\scriptstyle + #1$}}} +% +\def\cfsymbol{\vbox{\hbox to \wd0{\hss + \vrule height1.5\ht0} + \hrule + \hbox to \wd0{\vrule depth1.5\ht0 + \hss}}} +%Space saving variant continued fraction +\def\cf#1#2{\setbox0=\hbox{$#1\,\over + \,#2$}\vcenter{\cfsymbol}\kern-\wd0 + {#1\atop#2}} +% +\def\IN{{\rm I\kern-.5ex N}} +\def\Z{{\rm Z\kern-.9ex Z}} +\def\Q{{\rm\kern.2ex\vrule + height1.5ex depth-.1ex + width.4pt\kern-.7ex Q}} +\def\R{{\rm I\kern-.5ex R}} +\def\C{{\rm\kern.3ex\vrule + height1.5ex depth-.05ex + width.4pt\kern-.7ex C}} +\def\gtrless{\mathrel{\vcenter{ + \offinterlineskip\hbox{${>}$}% + \kern-.2ex\hbox{${<}$} } }} +\def\boxit#1{\vbox{\hrule\hbox{% <--!! + \vrule#1\vrule}\hrule}} +\def\boxtimes{\mathbin{\boxit + {$\times$}}} +%end%%%%%%%%%%%%%%%%%%%%%%%%%math extras%;newpage +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%%%%%%%%icons% +%From icons via LaTeX's fonts. +%Here use is made of gkpmac's picture +%environment. +\def\icmat#1#2{%ICon MATrix(rectangular) +%#1 is ht of icon matrix, e.g. 4 +%#2 is wd of icon matrix, e.g. 2 +\vbox{\hrule + \hbox to#2\unitlength{\vrule + height#1\unitlength\hfil\vrule}% + \hrule}% +}%end icmat +% +\def\icurt#1#2{%IConUpperRightTriangle +%#1 is ht of icon matrix, with UT +%the upper triangular part, e.g. 4 +%#2 is wd of icon (upper triangular) +%matrix, e.g. 2 +\vbox to #1\unitlength{\hrule + \hbox{\gkpbeginpicture(#2,#2)(0,0)% + \put(0,#2){\line(1,-1){#2}}% + \gkpendpicture\vrule}% + \vss}% +}%end icurt +% +\def\squineicurt#1#2{%IConUpperRightTriangle +%#1 is ht of icon matrix, with UT +%the upper triangular part, e.g. 4 +%#2 is wd of icon (upper triangular) +%matrix, e.g. 2 +%For small diaglines +\csname newcount\endcsname\half +\half#2 \divide\half 2 +\vbox to #1\unitlength{\hrule + \hbox{\gkpbeginpicture(#2,#2)(0,0)% + \put(0,0){\squine(0,\the\half,#2,#2,% + \the\half,0)}% + \gkpendpicture\vrule}% + \vss}% +}%end icurt +\def\icllt#1#2{%IConLowerLeftTriangle +%#1 is ht of icon matrix, with LT +%the lower triangular part, e.g. 4 +%#2 is wd of icon (lower triangular) +%matrix, e.g. 2 +\vbox to #1\unitlength{\vss + \hbox{\vrule + \gkpbeginpicture(#2,#1)(0,0)% + \put(0,#2){\line(1,-1){#2}}% + \gkpendpicture}% + \hrule}% +}%end icllt +% +\def\icuh#1#2#3{%IConUpperHessenberg +%#1 is size of icon matrix, with UH +% the upper Hessenberg part, e.g. 4 +%#2 is wd of icon (upper Hesenberg) +% matrix, e.g. 1 +%#3 is size Lower Left triangular part, +% #1-#2 (for simplicity the latter is added, +% could have been calculated, perhaps some +% inconsistency test could be incorporated) +\vbox{\offinterlineskip + \hrule + \hbox to#1\unitlength{\vrule height% + #2\unitlength depth0pt\relax + \hfil\vrule}% + \hbox to#1\unitlength + {\gkpbeginpicture(#3,#3)(0,0)% + \put(0,#3){\line(1,-1){#3}}% + \gkpendpicture\hfil\vrule}% + \hbox to#1\unitlength{\hfil\vrule + width#2\unitlength height.2pt\relax}% + }% +}%end icuh +%Example of use +%\input blue.tex +%\beginscript +%\unitlength=1ex +%$$\icmat44\kern\unitlength\icllt44= +% \icllt44\icuh413\qquad AL=LH$$ +%$$\icmat63=\icmat63\kern\unitlength +% \icurt63\qquad A=QR$$ +%\endscript +%end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%icons%;newpage +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%%%%%%%btable% +%Table Diversions cgl@rc.service.rug.nl +%EuroTeX '92 proceedings, MAPS92.2. +%The article discusses typsetting tables +%via plain, surveys related work, +%introduces the file btable.tex, and +%provides a discipline for typesetting +%cell-blocks. +%;numvrb +\newbox\btablebox +\newtoks\thisbtable\newtoks\everybtable +\newtoks\prebtable\newtoks\postbtable +%Cell vertical size, +%row height and depth (separation implicit), +\newdimen\cvsize +\newdimen\tsht \newdimen\tsdp +\newdimen\tvsize\newdimen\thsize +%Parameter setting macros: Rules +\def\hruled{\def\lineglue{\hrulefill} + \def\colsep{}\def\rowsep{\hrule} + \let\rowstbsep=\colsep + \let\headersep=\rowsep} +\def\vruled{\def\lineglue{\hfil} + \def\colsep{\vrule}\def\rowsep{} + \let\rowstbsep=\colsep + \let\headersep=\hrule} +\def\ruled{\def\lineglue{\hrulefill} + \def\colsep{\vrule}\def\rowsep{\hrule} + \let\rowstbsep=\colsep + \let\headersep=\rowsep} +\def\nonruled{\def\lineglue{\hfil} + \def\colsep{}\def\rowsep{} + \def\rowstbsep{\vrule} + \def\headersep{\hrule}} +\def\dotruled{\def\lineglue{\dotfill} + \def\rowsep{\hbox to\thsize{\dotfill}} + \def\colsep{\lower1.5\tsdp\vbox to + \cvsize{\leaders\hbox to0pt{\vrule + height2pt depth2pt width0pt\hss.\hss} + \vfil}} + \let\rowstbsep=\colsep + \let\headersep=\rowsep} +%Parameter setting macros: +% Controling positioning +\def\ctr{\def\lft{\hfil}\def\rgt{\hfil}} +%Centered +\def\fll{\def\lft{} \def\rgt{\hfil}} +%Flushed left +\def\flr{\def\lft{\hfil}\def\rgt{}} +%Flushed right +%Parameter setting macros: Framing +\def\framed{\let\frameit=\boxit} +\def\nonframed{\def\frameit##1{##1}} +\def\dotframed{\let\frameit=\dotboxit} +%;vrblin=100 +\def\beginbtable{\vbox\bgroup +\ifx\empty\rowstblst \let\rsl=\rowstblst +\else\ea\def\ea\rsl\ea{\rowstblst{}}%Append with sentinel +\fi\ifx\empty\template\ifx\empty\rsl + \def\template{\colsepsurround + \lft####\rgt&&\lft####\rgt\cr} + \else\def\template{\colsepsurround + ####\hfil&&\lft####\rgt\cr}\fi +\fi +\def\tstrut{\vrule height\tsht + depth\tsdp width0pt} +%Logical mark up of column and +%row separators, via use of +\def\cs{&\colsepsurround\colsep + \colsepsurround&} +\def\prs{&\colsepsurround\lineglue&} +\def\srp{&\lineglue\colsepsurround&} +\def\rs{\colsepsurround\tstrut\cr + \ifx\empty\rowsep + \else\noalign{\rowsep}\fi + \ifx\empty\rsl + \else\ea\nxtrs\fi} +\def\grs{\colsepsurround\tstrut\cr\ghostrow} +\def\ghostrow{\rss\prs\logms2\lineglue\cr\nxtrs} +\def\rss{&\colsepsurround\rowstbsep + \colsepsurround&} +\def\hs{\colsepsurround\tstrut\cr + \ifx\empty\headersep + \else\noalign{\headersep}\fi + \ifx\empty\rsl\else\ea\nxtrs\fi} +\the\everybtable\relax +\the\thisbtable\relax +\cellsize +\tsht=.775\cvsize\tsdp=.225\cvsize +\setbox\btablebox=\vbox\bgroup + \tabskip=0pt\relax\offinterlineskip + \halign\bgroup + \span\template\ifx\empty\first + \ifx\empty\rsl + \else\ifx\empty\header + \else\ea\rss\fi + \fi\else\first\ea\rss\fi + \ifx\empty\header + \ifx\empty\first + \ifx\empty\rsl\else + \ea\nxtrs\fi\else\ea\hs\fi + \else\header\tstrut\ea\hs\fi}% +%end \beginbtable +%;vrblin=200 +\def\endbtable{\colsepsurround + \tstrut\crcr\egroup\egroup + %end setbox + \global\thsize=\wd\btablebox + \global\tvsize=\ht\btablebox + \global\advance\tvsize by\dp\btablebox + \the\prebtable + \ifx\btablecaption\empty + \else\hbox to\thsize{\strut\hfil + \btablecaption\hss}\captionsep\fi + \frameit{\copy\btablebox} + \ifx\footer\empty + \else\footersep\hbox to\thsize{\strut + \footer\hss}\fi + \egroup\the\postbtable + \thisbtable={}}% +%end \endbtable +% +\def\btable#1{\beginbtable#1\endbtable} +%Defaults %;vrblin=300 +\def\cellsize{\cvsize=4ex + \tsht=.775\cvsize\tsdp=.225\cvsize} +%\cellsize +\def\colsepsurround{\kern.5em} +\def\btablecaption{} +\def\first{} +\def\header{} +\def\rowstblst{} +\def\footer{} +\def\captionsep{\medskip} +\def\headersep{\hrule} +\def\footersep{\smallskip} +\def\rowstbsep{\vrule} +\def\template{} +\ctr +\nonruled +\nonframed +%end Defaults +%Auxiliaries %;vrblin=350 +\def\boxit#1{\vbox{\hrule\hbox{\vrule + \vbox{#1}\vrule}\hrule}} +\def\dotboxit#1{\vbox{\offinterlineskip + \hbox to\thsize{\dotfill}% + \hbox{\lower\dp\btablebox\vbox to\tvsize{% + \xleaders\hbox to0pt{\hss\vrule + height1.5pt depth1.5pt width0pt.\hss + }\vfil}% + \vbox{#1}\lower\dp\btablebox\vbox to\tvsize{% + \xleaders\hbox to0pt{\hss\vrule + height1.5pt depth1.5pt width0pt.\hss + }\vfil}}% + \hbox to\thsize{\dotfill}}} +%And to account for logical columns with +%\logms% logical multispan +\def\spicspan{\span\omit} +\def\logms#1{\omit\mscount=#1\multiply + \mscount by2 \advance\mscount by-1 + \loop\ifnum\mscount>1 + \spicspan\advance\mscount by-1 + \repeat} +%To process FIFO +\def\fifo#1{\ifx\ofif#1\ofif\fi + \process{#1}\fifo} +\def\ofif#1\fifo{\fi} +%To handle row stub list +\def\nxtrs{\ifx\empty\rsl + \else\def\nxtel{\ea\nrs\rsl\srn}% + \ea\nxtel\fi}%next Row Stub +\def\nrs#1#2\srn{\gdef\rsl{#2}#1\rss} +%\endinput %btable +%;nonum +%Contents btable.tex +%Newbox +% \btablebox..................1 +%Newtoks +% \thisbtable, \everybtable...2 +% \prebtable, \postbtable.....3 +%Parameter setting: rules +% \hruled.................10-13 +% \vruled.................14-17 +% \ruled..................18-21 +% \nonruled...............22-25 +% \dotruled...............26-33 +%Parameter setting: positioning +% \ctr.......................36 +% \fll.......................38 +% \flr.......................40 +%Parameter setting: framing +% \framed....................43 +% \nonframed.................44 +% \dotframed.................45 +%User macro +% \beginbtable..........101-148 +% \endbtable............201-217 +% \btable...................219 +%Defaults +% \cellsize.............301-303 +% \colsepsurround...........304 +% \btablecaption............305 +% \first....................306 +% \header...................307 +% \rowstblst................308 +% \footer...................309 +% \captionsep...............310 +% \headersep................312 +% \footersep................312 +% \rowstbsep................314 +% \template.................314 +% \ctr......................320 +% \nonruled.................321 +% \nonframed................322 +%Auxiliaries +% \boxit................351-352 +% \dotboxit.............353-363 +% \spicspan.................366 +% \logms................367-371 +% \fifo.................373-374 +% \ofif.....................375 +% \nxtrs................377-379 +% \nrs......................380 +% +%History of changes +%Version +%December 1994 +%\rowstblst (and \rsl): +% no longer does last element of list +% need extra braces. +%\postbtable is token variable +%to guide user positioning. +%\data omitted in the macro. +%Formatting of footer made symmetrical +%with caption. +%\dotboxit corrected such that +%vertical dotted lines are symmetrical +%July 1994 +% \cellsize is invoked in +% \beginbtable. +% Token vars for \prebtable +% \postbtable. +%June 1994 +% \beginbtable...\endbtable +% two-part macro +% \btable minimal variant +% \preinsert, \postinsert changed +% into \prebtable, \postbtable +% toks vars: \everybtable, +% \thisbtable +%Version 1.1 \btablecaption as caption +% (to prevent name clashes) +% \def\cellsize{\cvsize= +% et cetera} to be used +% as default +% and after font change. +%end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%btable%;newpage +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%vrb% +%vrb.tex +%Author: C.G. van der Laan +% Hunzeweg 57, 9893PB +% Garnwerd The Netherlands +% 0594621525, cgl@rc.service.rug.nl. +%Purpose: Verbatim macros via plain, +% to be used with AnyTeX. +% ;numvrb +%User toks variables +\newtoks\thisverbatim +\newtoks\everyverbatim +\newtoks\preverbatim +\newtoks\postverbatim +% +%User customization +\preverbatim{\medskip} +\postverbatim{\smallbreak} +% ;vrblin100 +%User `options': \numvrb +\newcount\vrblin +\def\numvrb{\vrblin0 + \everypar{\advance\vrblin1 + \llap{\sevenrm\the\vrblin\quad}}} +\def\nonum{\everypar={}} +% : \emc, \unmc +\def\makeescape#1{\catcode`#1=0 } +\def\makeactive#1{\catcode`#1=13 } +{\makeactive\< + \gdef\emc{\makeactive\<% + \def<##1>{$\langle##1\rangle$}}} +\def\unmc{\catcode`\<=12 }%;vrblin200 +%User macro +\def\beginverbatim{\begingroup + \the\preverbatim\tt\setupverbatim + \the\everyverbatim\relax + \the\thisverbatim\relax + \verbatimgobble} +% +\def\endverbatim{\the\postverbatim + \endgroup\global\thisverbatim={}} +% +\def\setupverbatim{%\makeactive\`% + \let\!=!\makeescape\!%Knuth&Levy + \def\par{\leavevmode\endgraf}%TB381 + \parskip0pt + \obeylines\uncatcodespecials + \obeyspaces} +% +{\obeyspaces\global\let =\ \catcode`\^=7 + \obeylines\gdef\verbatimgobble#1^^M{}% +%\makeactive\` \gdef`{\relax\lq}%TB381 +}% +\def\uncatcodespecials{\def\do##1{% + \catcode`##1=12 }\dospecials} +% +\def\math{\bgroup$\catcode`\_=8\relax + \catcode`\^=7\relax} +\def\endmath{$\egroup} +% +\def\verbatim#{\beginverbatim\bgroup + \aftergroup\endverbatim + \afterassignment\ignorespaces + \let\dummy=} +% ;vrblin250 +%Minimal | tag for inline verbatim +\def\vrt{{\tt\char`\|}}\makeactive\| +\def|{\bgroup\tt\setupverbatim + \the\everyverbatim\relax + \the\thisverbatim\relax + \def|{\egroup\thisverbatim{}}} +%;\vrblin300 +%centering verbatims +\def\boxlines{\obeyspaces\fifol} +%\gdef\fifol#1^^M{\ifx\lofif#1\lofif\fi +% \processl{#1}\fifol} +\def\begincenterverbatim{$$% + \def\processl##1{\hbox{##1}}% + \def\lofif##1\fifol{\fi\egroup + \egroup$$\thisverbatim{}} + \let\endcenterverbatim\lofif + \bgroup\tt\setupcopy + \let\!=!\catcode`\!=0 + \the\everyverbatim\the\thisverbatim + \vbox\bgroup\boxlines} +% +{\obeylines\gdef\fileverbatim#1{% + \thisverbatim{\input#1}\beginverbatim + \endverbatim +}} +\def\bluefileverbatim#1\par{\fileverbatim{#1}} +%Default +\everyverbatim{\baselineskip12pt + plus2ptminus1pt + \lineskip1ptplus1ptminus1pt} +%\endinput +% ;nonum +%Contents vrb.tex cgl@rc.service.rug.nl +%Newtoks +% \thisverbatim.................2 +% \everyverbatim................3 +% \preverbatim..................4 +% \postverbatim.................5 +%Customization +% \preverbatim..................8 +% \postverbatim.................9 +%Options +% \numvrb.................103-105 +% \vrblin.....................104 +% \nonum......................106 +% \makeescape.................108 +% \makeactive.................109 +% \emc....................111-112 +% \unmc.......................113 +% <#1>........................112 +%User macro +% \beginverbatim..........202-206 +% <esc char>endverbatim...208-209 +% \verbatim...............228-231 +% \setupverbatim..........211-215 +% \verbatimgobble.............218 +% `...........................219 +% \uncatcodespecials..........221 +% <escape char>math.......224-225 +% <escape char>endmath....... 226 +% \begincenterverbatim....305-313 +%Inline verbatim +% \vrt........................252 +% vertical bar symbol...... ..253 +%Files +% \bluefileverbatim........... +% +%History of changes +%March 1996 \bluefileverbatim added +%July 1994 Version 2 +% \pre- and \postverbatim +% changed into token vars. +% Added +% \unmc, unable metacode +% \verbatim minimal tag +% <escape char>math +% <escape char>endmath +%Febr 1994 Release Version 1.0 +%end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%vrb%;newpage +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%bibliography% +%From BLUe's Bibliography%;numvrb +%\ls<name> template +\newcount\bcnt +\def\lsstraight{\let\ls\nitem} +% +%\ls a la AMS +% +\newcount\suffixcnt +\def\lsams{\frenchspacing + \let\lstnme\relax \let\lstyear\relax + % + \def\ls##1{\ea\bibitem##1} + % + \def\bibitem##1(##2){% + \def\authornme{##1}% + \def\authoryear{##2}% + \ifx\lstnme\authornme + \def\authornme{------}% + \ifx\lstyear\authoryear + \global\advance\suffixcnt1 + \def\authoryear{--}% + \else\let\lstyear\authoryear\suffixcnt0 + \fi + \else\let\lstnme\authornme + \let\lstyear\authoryear\suffixcnt0 + \fi\nitem\authornme$\,$% + (\authoryear\suffix)}%end \bibitem +% +\def\suffix{\ifcase\suffixcnt\or a\or b\or + c\or d\or e\or f\or g\or h\or i\or j\or + k\or l\or m\or n\or o\or p\or q\or r\or + s\or t\or u\or v\or w\or x\or y\or z\fi} +} %;vrblin100 +%Loading +%Load selected entries +\def\gobble#1{} +\def\loadselectivefrom#1{%#1 lit etc. + \def\lst##1{\ifx##1\undefined\ea\gobble + \else \ea\gdef\ea##1\fi} + \input #1.dat \relax%e.g. lit.dat + } %;vrblin200 +\newif\ifstore \storetrue +\newtoks\thisreferences +\newtoks\referencesname +\newtoks\prereferences +\newtoks\postreferences +\newtoks\referencesfile +\newbox\referencesbox +\referencesfile{lit} +%\referencesname{References} +\def\references#1{\beginreferences#1% + \endreferences} +\def\bluereferences#1\par + {\beginreferences#1\endreferences} +\def\loadreferences{\loadselectivefrom + {\the\referencesfile}} +\def\beginreferences#1\endreferences{% + \bgroup\def\process##1{\ifx\undefined##1 + \global\let##1\referenceserror\else + \message{***\tt\string##1 + already loaded.***} + \fi\namelst\ea{\the\namelst\lst##1}}% + \fifo#1\ofif + \if]#1]\else\ea\loadreferences\fi + %formatting + \ifstore\global\setbox\referencesbox= + \vbox\bgroup\fi\prenum{}\postnum{} + \lsams%Default ls + \the\thisreferences + \def\lst##1{\ls{##1} + \xdef##1{\the\itemno}} + \the\namelst\endreferences} +% +\def\referenceserror{Reference not in + database (Sorry.)\loaderror{Reference}} +% +\def\endreferences{\smallbreak\egroup + \ifstore\egroup\fi + \thisreferences{}} +% +\def\pasteupreferences{% + \the\prereferences + \unvbox\referencesbox + \the\postreferences} +% +\prereferences{\head{\the + \referencesname}} +%\postreferences{} +%;vrblin250 +%Double loading is not prevented +%instead a message is provided. +\def\beginpictures#1\endpictures{% + \def\process##1{\ifx\undefined##1 + \gdef##1{Picture {\tt\string##1} not + in database, Sorry. + \loaderror{Picture}}% + \else \message{***\string##1 + already loaded.***}% + \fi}% + \fifo#1\ofif + \loadselectivefrom{\the\picturesfile} + \commonforpic} +% +%\def\endpictures{\egroup} +% +\def\pictures#1{\beginpictures#1% + \endpictures} +\def\bluepictures#1\par + {\beginpictures#1\endpictures} +\def\loadallpictures{\input\the + \picturesfile.dat\relax\commonforpic} +% +\def\loaderror#1{\write16{#1 not in + database}} +%\endinput %;nonum +%Contents bibliography +% cgl@rc.service.rug.nl +%Newcount +% \bcnt.........................2 +% \suffixcnt....................8 +%Newif +% \ifstore....................201 +%Newtoks +% \thisreferences.............202 +% \referencesname........203, 206 +% \prereferences.........204, 234 +% \postreferences.............205 +%Newbox +% \referencesbox..............206 +%Initializations +% \prereferences..........231-232 +% \postreferences.............233 +%\ls customization +% \lsstraight.................3-6 +% \lsams.....................9-34 +% \suffix...................30-33 +%loading +% \gobble.....................102 +% \loadselectivefrom......104-109 +%User level +% \references.............208-209 +% \beginreferences........210-225 +% \endreferences..........226-228 +% \pasteupreferences......230-233 +% \beginpictures..........251-259 +% \endpictures................260 +% \pictures...............261-262 +% \loadallpictures........263-265 +% \loaderror..............266-267 +%History of changes +%July 1994 Information supplied before +% \beginscript, past up later. +% Separate loading of pictures. +%June 1994 Simpler user interface +% \beginreferences +% \<name_1> ... \<name_n> +% \endreferences +%Created May 1994 +%end%%%%%%%%%%%%%%%%%%%%%%%%bibliography%;newpage +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%%%Cross-Refs% +%From BLUe's Cross-Referencing +%cgl@rc.service.rug.nl %;numvrb +\newif\ifadvance \advancetrue +\newcount\frmcnt +\newtoks\prenum\newtoks\postnum +%Default prenum and postnum +\prenum{(}\postnum{)} +%Automatic numbering +\def\frmnum{\ifadvance\global\advance + \frmcnt1 \fi + \the\prenum\the\frmcnt\the\postnum} +%Automatic numbering and attaching a name +\def\ref{\frmnum\create} +%\def\create#1{\ifx#1$$\else +% \xdef#1{\the\frmcnt}\fi} +%The version, which handles also displaylines +\def\create#1{\ifx#1$$\else + \ifx#1\hfil\hfil\else + \xdef#1{\the\prenum\the\frmcnt + \the\postnum}\fi\fi} +%Citation +\newif\ifproof \prooftrue +\def\crsref#1{\ifx#1\undefined{\ifproof + \leavevmode\vadjust{\kern-1ex + \rightline{\vbox to0pt{\vss + \rlap{FR: \tt\string#1}}}}\fi} + \else#1\fi} +%;nonum +%Contents Cross-Referencing +% cgl@rc.service.rug.nl +%Newifs, newcounts +% \ifadvance, \ifproof..........1, 18 +% \frmcnt...........................2 +%Newtoks +% \prenum, \postnum.................3 +%Context +% \prenum, \postnum.................4 +%Automatic numbering, referencing +% \frmnum.........................7-9 +% \ref.............................11 +% \create.......................15-16 +%Cross referencing +% \crsref.......................19-23 +% +%History of changes +%Jan 95 \prenum and postnum values are +% stored together with the number +% by \create +%June 94 Designed. +%end%%%%%%%%%%%%%%%%%%%%%%%%%%%cross-ref%;newpage +% +% +% +%begin%%%%%%%%%%%%%%%%%%%%%%%%%%%%gkppic% +%From gkpmac (line diagrams) +% `Pictures (a subset of \LaTeX's +% conventions)' +%These macros have been used for typesetting +%`Concrete Mathematics,' among others. +% cgl@rc.service.rug.nl ;numvrb +%\catcode`@=11 % borrow the private macros +% % of PLAIN (with care) +\newskip\hsssglue +\hsssglue=0pt plus 1fill minus 1fill +\def\hsss{\hskip\hsssglue} + +\newdimen\unitlength +\newdimen\linethickness +\newdimen\@picheight \newdimen\@xdim +\newdimen\@ydim \newdimen\@len \newdimen\@save +\newcount\@multicount \newcount\@xarg +\newcount\@yarg\newbox\@picbox \newbox\@mpbox + +\font\tenln=line10 \font\tenlnw=linew10 +\font\tencirc=lcircle10 +\font\tencircw=lcirclew10 +\font\smallln=linew10 scaled 483 % magstep-4 + +\def\thinlines{\let\linefont=\tenln + \let\circlefont=\tencirc + \linethickness=\fontdimen8\linefont} +\def\thicklines{\let\linefont=\tenlnw + \let\circlefont=\tencircw + \linethickness=\fontdimen8\linefont} +\thinlines + +\def\gkpbeginpicture(#1,#2)(#3,#4){\begingroup +\@picheight=#2\unitlength \let\line=\@line + \setbox\@picbox=\hbox to#1\unitlength + \bgroup\kern-#3\unitlength + \lower#4\unitlength\hbox\bgroup + \ignorespaces} +\def\gkpendpicture{\egroup\hss\egroup + \ht\@picbox=\@picheight \dp\@picbox=\z@ + \leavevmode\box\@picbox\endgroup} + +\def\put(#1,#2)#3{\raise#2\unitlength + \rlap{\kern#1\unitlength #3}\ignorespaces} + +\def\multiput(#1,#2)(#3,#4)#5#6{\@multicount + =#5\@xdim=#1\unitlength \@ydim=#2\unitlength +\setbox\@mpbox=\hbox{#6}% + \loop\ifnum\@multicount>0 + \raise\@ydim\rlap{\kern\@xdim + \unhcopy\@mpbox}% + \advance\@xdim#3\unitlength + \advance\@ydim#4\unitlength + \advance\@multicount\m@ne + \repeat\ignorespaces} + +%makebox is replaced because its reference +%point does not coincide with LaTeX's +%\def\makebox(#1,#2)#3{\setbox\@picbox= +% \hbox to#1\unitlength{\hss#3\hss}% +% \advance\@ydim-\dp\@picbox +% \ht\@picbox=#2\unitlength +% \dp\@picbox=\z@ +% \leavevmode\lower.5\@ydim\box\@picbox} +\def\makebox(#1,#2)#3{% + \hbox to#1\unitlength{\hss + \vbox to#2\unitlength{\vss + \hbox{#3}\vss}\hss}} +%LaTeX's framebox is added +\def\framebox(#1,#2)#3{\setbox0= + \hbox to#1\unitlength{\hss + \vbox to#2\unitlength{\vss + \hbox{#3}\vss}\hss}% + \makelightbox\kern-\wd0\box0} + +\newif\ifneg +\def\@line(#1,#2)#3{\@xarg=#1 \@yarg=#2 + \@len=#3\unitlength \leavevmode + \ifnum\@xarg<0 \reverseline \else + \negfalse \@ydim=\z@\fi + \ifnum\@xarg=0 \@vline + \else\ifnum\@yarg=0 \@hline + \else\@sline\fi\fi +\ifneg\kern-\@len\else\@save=\@ydim\fi} +\def\reverseline{\negtrue \kern-\@len + \@xarg=-\@xarg + \@ydim=\@len \multiply\@ydim\@yarg + \divide\@ydim\@xarg \@yarg=-\@yarg} + +\def\@hline{\vrule height.5\linethickness + depth.5\linethickness width\@len} +\def\@vline{\kern-.5\linethickness\vrule + width\linethickness + \ifnum\@yarg<0 height\z@ depth\else + depth\z@ height\fi\@len + \kern-.5\linethickness} + +\def\@sline{\setbox\@picbox=\hbox{\linefont + \count@=\@xarg \multiply\count@ 8 + \ifnum\@yarg>0 \advance\count@\@yarg + \advance\count@-9 + \else \advance\count@-\@yarg + \advance\count@ 55 \fi + %\immediate\write0{count@=\the\count@}% + \char\count@}% + \ifnum\@yarg<0 \@picheight=-\ht\@picbox + \advance\@ydim\@picheight + \else \@picheight=\ht\@picbox \fi + \@xdim=\wd\@picbox \@save=\@ydim +%\hbox to0pt{\hss$\bullet$\hss}% + \loop\ifdim\@xdim<\@len + \raise\@ydim\copy\@picbox + \advance\@xdim\wd\@picbox + \advance\@ydim\@picheight%\immediate + %\write0{x, y: \the\@xdim, \the\@ydim}% + \repeat + \advance\@xdim-\@len \kern-\@xdim + \multiply\@xdim\@yarg + \divide\@xdim\@xarg + \advance\@ydim-\@xdim +%Mod cgl June 94 + \ifdim\@len<\ht\@picbox + \kern\wd\@picbox\else + \raise\@ydim\box\@picbox\fi} + +\def\vector(#1,#2)#3{\@line(#1,#2){#3}% + \ifnum\@xarg=0 \@vvector + \else\ifnum\@yarg=0 \@hvector + \else\@svector\fi\fi} +\def\@hvector{\ifneg\rlap{\linefont\char + 27}\else\smash{\llap{\linefont\char45}}\fi + } % we have to smash because of font bug +\def\@vvector{\ifnum\@yarg<0 + \raise-\@len\rlap{\linefont\char63}% + \else\setbox\@picbox=\rlap{\linefont + \char54}\advance\@len-\ht\@picbox + \raise\@len\box\@picbox\fi} + +\def\@svector{\setbox\@picbox=\hbox + to\z@{\linefont + \ifnum\@yarg<0 \count@=55 \@yarg=-\@yarg + \else\count@=-9 \fi + \ifneg\multiply\@xarg16 \multiply\@yarg2 + \else\hss % \llap + \ifnum\@xarg>2 \multiply\@xarg9 + \multiply\@yarg2 + \advance\count@29 + \else\ifnum\@yarg>2 \multiply\@xarg16 + \multiply\@yarg9 + \advance\count@-20 + \else\multiply\@xarg24 \multiply\@yarg3 + \fi\fi\fi + \advance\count@\@xarg + \advance\count@\@yarg \char\count@ + \ifneg\hss\fi}% \rlap + \raise\@save\box\@picbox} + +\def\disk#1{\@len=#1\unitlength + \count@='160 \@diskcirc} +\def\circle#1{\@len=#1\unitlength + \count@='140 \@diskcirc} +\def\@diskcirc{\setbox\@picbox= + \hbox{\circlefont\char\count@}% + \@xdim=\wd\@picbox \leavevmode + \ifdim\@len>15.499\@xdim \@bigdc + \else \@smalldc\fi} +\def\@bigdc{\ifnum\count@<'160 \@bigcirc + \else \@len=15\@xdim \@diskcirc\fi} +\def\@smalldc{{\advance\@len-.5\@xdim + \loop\ifdim\@xdim<\@len + \advance\count@\@ne + \advance\@xdim\wd\@picbox + \repeat + \hbox{\circlefont\char\count@}}} +\def\@bigcirc{{\circlefont\count@=15 + \setbox\@picbox=\hbox{\char\count@ + }\@xdim=\wd\@picbox + \ifdim\@len>2.5\@xdim \@len=2.5\@xdim\fi + \advance\@len-.125\wd\@picbox + \loop\ifdim\@xdim<\@len + \advance\count@4 + \advance\@xdim.25\wd\@picbox + \repeat + \@ydim=.5\@xdim + \advance\@ydim.5\linethickness + \setbox\@picbox=\vbox{\hbox{\char + \count@\advance\count@-3\char\count@}% + \nointerlineskip + \hbox{\advance\count@\m@ne\char + \count@\advance\count@\m@ne + \char\count@}}% + \kern-\@ydim\lower\@ydim\box\@picbox}} + +\newif\ifovaltl \newif\ifovaltr +\newif\ifovalbl \newif\ifovalbr +\ovaltltrue \ovaltrtrue +\ovalbltrue \ovalbrtrue +\def\oval(#1,#2){\@xdim=#1\unitlength + \@ydim=#2\unitlength + {\circlefont + \setbox\@picbox=\hbox{\char0} + \ifdim\@xdim<\wd\@picbox + \@xdim=\wd\@picbox\fi + \ifdim\@ydim<\wd\@picbox + \@ydim=\wd\@picbox\fi + \@save=\@xdim + \ifdim\@ydim<\@save \@save=\@ydim \fi + \count@=39 + \loop \setbox\@picbox=\hbox{\char + \count@}\ifdim\@save<\wd\@picbox + \advance\count@-4 + \repeat + \setbox\strutbox=\hbox{\vrule height\ht + \@picbox depth\dp\@picbox width\z@ + \kern\wd\@picbox}% + \@save=.5\wd\@picbox + \advance\@save-.5\linethickness + \setbox0=\hbox to\@xdim{\ifovaltl + \char\count@\else\strut\fi + \kern-\@save\leaders\hrule height + \ifovaltl\linethickness\else\z@\fi + \hfil + \leaders\hrule height\ifovaltr + \linethickness\else\z@\fi + \hfil\kern\@save + \ifovaltr\advance\count@-3 + \char\count@\else\strut\fi + \kern-\wd\@picbox}% + \advance\count@\m@ne + \setbox2=\hbox to\@xdim{\ifovalbl + \char\count@\else\strut\fi + \kern-\@save\leaders\hrule height + \ifovalbl\linethickness\else\z@\fi + \hfil + \leaders\hrule height + \ifovalbr\linethickness\else + \z@\fi\hfil\kern\@save + \ifovalbr\advance\count@\m@ne + \char\count@\else\strut\fi + \kern-\wd\@picbox}% + \@save=\@ydim + \advance\@save-\wd\@picbox + \divide\@save 2 + \setbox\@picbox=\vbox{\box0 + \nointerlineskip + \hbox to\@xdim{\vrule height\@save + width\ifovaltl\linethickness + \else\z@\fi + \hfil\ifovaltr\vrule + width\linethickness + \kern-\linethickness\fi}% + \nointerlineskip + \hbox to\@xdim{\vrule height\@save + width\ifovalbl\linethickness + \else\z@\fi + \hfil\ifovalbr\vrule + width\linethickness + \kern-\linethickness\fi}% + \nointerlineskip\box2}% + \@save=.5\@ydim + \advance\@save.5\linethickness + \leavevmode + \kern-.5\@xdim + \kern-.5\linethickness + \lower\@save\box\@picbox}} + +\def\begincpic#1\endcpic{\vcenter{\hbox + {\beginpicture#1\endpicture}}} + +% Squines (quadratic splines) +% example of use: to plot f(x) between +% x0 and x1, you can say +% \put(0,0){\squine(x0,xm,x1,y0,ym,y1)}, +% where y0=f(x0), y1=f(x1) +% xm=(y0-y1+s1x1-s0x0)/(s1-s0), +% ym=(s0(s1x1-y1)-s1(s0x0-y0))/(s1-s0), +% s0=f'(x0), and s1=f'(x1). + +\newdimen\@xi \newdimen\@xii +\newdimen\@xiii \newdimen\@xiv +\newdimen\@xpt \newdimen\@xoldpt +\newdimen\@yi \newdimen\@yii +\newdimen\@yiii \newdimen\@yiv +\newdimen\@ypt \newdimen\@yoldpt +\def\squineelem{.} +%\def\squineelem{\tencirc q} +\def\squine(#1,#2,#3,#4,#5,#6){\setbox + \@picbox\hbox{\squineelem}% + \global\@xoldpt=#1\unitlength + \global\@yoldpt=#4\unitlength + \kern\@xoldpt + \@xi=\@xoldpt + \@xii=#2\unitlength + \@xiii=#3\unitlength + \@yi=\@yoldpt + \@yii=#5\unitlength + \@yiii=#6\unitlength + \squinerec + \@xpt=#3\unitlength + \@ypt=#6\unitlength + \@addpoint + \raise\@ypt\copy\@picbox} +\newif\iffar +\def\squinerec{\farfalse + \testnear\@xi\@xiii \testnear\@yi\@yiii + \iffar \decast \fi} +\def\testnear#1#2{\@save=#1\advance + \@save-#2% + \ifdim\@save<\z@ \@save=-\@save\fi + \ifdim\@save>\p@ \fartrue \fi} +\def\decast{\@xpt=\@xi + \advance\@xpt\@xii \divide\@xpt2 + \advance\@xii\@xiii \divide\@xii2 + \@xiv=\@xpt + \advance\@xiv\@xii + \divide\@xiv2 + \@ypt=\@yi + \advance\@ypt\@yii + \divide\@ypt2 + \advance\@yii\@yiii + \divide\@yii2 + \@yiv=\@ypt + \advance\@yiv\@yii + \divide\@yiv2 + \begingroup\@xii=\@xpt \@xiii=\@xiv + \@yii=\@ypt \@yiii=\@yiv + \squinerec\endgroup + \@xpt=\@xiv \@ypt=\@yiv \@addpoint + \@xi=\@xiv \@yi=\@yiv \squinerec} +\def\@addpoint{% + %\message{(\the\@xpt,\the\@ypt)}% + \global\advance\@xoldpt-\@xpt + \wd\@picbox=-\@xoldpt + \raise\@yoldpt\copy\@picbox + \global\@xoldpt=\@xpt + \global\@yoldpt=\@ypt} +%Additions%;vrblin399 +\newtoks\xdim \newtoks\ydim +\newtoks\xoffset \newtoks\yoffset +\newtoks\everypicture +\newtoks\thispicture +\xoffset{0}\yoffset{0}%defaults +\def\beginpicture{\bgroup + \the\everypicture\the\thispicture + \gkpbeginpicture(\the\xdim,\the\ydim)% + (\the\xoffset,\the\yoffset)} +\def\endpicture{\gkpendpicture\egroup + \global\thispicture{}} +\def\rhombus(#1,#2)#3#4{% +%#1,#2 ratio of horizontal/vertical size, <=6 +%#3 the size in unitlengths (half of total width) +%#4 text to be put in the middle. +%The centre is the reference point, +%like \oval. +\setbox0=\hbox{\line(#1,#2){#3}}% +\setbox1=\hbox{\line(#1,-#2){#3}}% +\hbox to0pt{\hss + \vbox to0pt{\offinterlineskip\vss + \copy0\copy1\vss}% + \vbox to0pt{\vss\copy1\copy0\vss}\hss}% + \vbox to0pt{\vss + \hbox to 0pt{\hss#4\hss}\vss}} +%lu is pointing left up, +%rl is pointing roght down +\def\rdarrowhead{\hbox to 0pt{\hss + \vrule height.1ptdepth.1ptwidth.5ex + \vrule height.5ex\relax}} +\def\luarrowhead{\hbox to 0pt{\vrule + depth.5ex\relax + \vrule height.1ptdepth.1ptwidth.5ex}} +%\endinput %;nonum +% +%Contents Picture environm. named +%gkppic. cgl@rc.service.rug.nl +%Dimensions +% \unitlength......................7 +% \linethickness...................8 +% \@picheight......................9 +% \@xdim, \@ydim................9-10 +% \@xarg, \@yarg, \@len........10-12 +% \@save..........................10 +% \@picbox........................12 +% \@mpbox.........................12 +% \@xi, \@xii, \@xiii, \@xiv.270-271 +% \@xpt, \@xoldpt................272 +% \@yi, \@yii, \@yiii, \@yiv.273-274 +% \@ypt, \@yoldpt................275 +%Newifs +% \ifneg..........................70 +% \ifovaltl, \ifovaltr...........185 +% \ifovalbl, \ifovalbr...........186 +% \iffar.........................297 +%Fonts +% \tenln, \tenlnw.................14 +% \tencirc, \tencircw..........15-16 +% \smallln........................17 +%Size switching +% \thinlines, \thicklines......19-25 +%Picture environment +% \gkpbeginpicture +% (and \line in there)......27-32 +% \gkpendpicture...............33-35 +% \begincpic, \endcpic.......258-259 +% \put.........................37-38 +% \multiput....................40-49 +%Picture elements +% \makebox.....................59-62 +% \framebox....................64-68 +% \@line.......................71-78 +% \reverseline.................79-82 +% \@hline......................84-85 +% \@vline......................86-90 +% \@sline.....................92-115 +% \vector....................117-120 +% \@hvector..................121-123 +% \@vvector..................124-128 +% \@svector..................130-147 +% \disk......................149-150 +% \circle....................151-152 +% \@diskcirc.................153-157 +% \@bigdc....................158-159 +% \@smalldc..................160-165 +% \@bigcirc..................166-183 +% \oval......................189-256 +%Curves +% \squineelem................276-277 +% \squine....................278-293 +% \squinerec.................295-297 +% \testnear..................298-301 +% \decast....................302-320 +% \@addpoint.................321-327 +%Additions, compatible blue.tex conventions +%Newtoks +% \xdim, \ydim, +% \xoffset, \yoffset.........400-401 +%\everypicture, \thispicture..402-403 +%\beginpicture................406-409 +%\endpicture..................410-411 +%\rhombus.....................412-424 +%\luarrowhead.................430-432 +%\rlarrowhead.................427-429 +%History of changes +%Dec 94 \rhombus picture element added. +% \luarrowhead, \rlarrowhead added. +%Jun 94 Extensions added for compati- +% bility with blue.tex. +% \makebox adapted to LaTeX. +% \framebox added. +% \@sline adapted for case +% \@len less then \ht\@picbox +% (suppress line +% element but kern conditionally.) +% The `dot' element in \squine has +% been parameterized and initialized +% differently. +%end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%gkppic%;newcol +% +% +% +%%%%%%%%% Amy's Diagonal line %%%%%%%%%% +\newif\ifminuswd +\newif\ifminusht +\newbox\dotwide +\newbox\dotbox +\newdimen\savehtofdiagline +\newdimen\htofdiagline +\newdimen\wdofdiagline +\newdimen\dotmove +\newdimen\newsaveht +\newdimen\savewdofdiagline +% +\def\diagline #1 #2 wd #3 ht{% +%#1 dot, e.g. . +%#2 width in units, eg 2ex +%#3 height in units, eg 3ex +%Amy Hendrickson, TB6#2, 1985 +%Comment cgl: Line thickness varies over +%the direction, nearly verticals go wrong. +\global\setbox\dotwide=\hbox{#1}% +\global\setbox\dotbox= + \hbox to0pt{\hss#1\hss}% +\global\wdofdiagline=#2\relax% +\ifdim\wdofdiagline<1sp + \global\minuswdtrue + \global\advance\wdofdiagline + by-2\wdofdiagline +\else\global\minuswdfalse%Robustness +\fi% turn neg dim to positive +\global\htofdiagline=#3\relax% +\ifdim\htofdiagline<1sp + \global\advance\htofdiagline + by-2\htofdiagline\global\minushttrue +\else\global\minushtfalse%Robustness +\fi +\global\dotmove=1pt%% +\setbox1=\hbox{% + \global\divide\htofdiagline + by\the\wdofdiagline\relax}% +\ifminuswd\rlap\bgroup% +\else\bgroup\fi% +\loop\ifdim\htofdiagline>.4pt%CGL mod +\global\divide\htofdiagline by2% +\global\divide\dotmove by2\repeat% +\global\savehtofdiagline=\htofdiagline% +\loop\ifdim\wdofdiagline>0pt% +\hskip\ifminuswd-\dotmove% + \else\dotmove\fi% +\ifminusht\lower\else\raise\fi% + \htofdiagline\copy\dotbox% +\global\advance\htofdiagline + by\savehtofdiagline% +\global\advance\wdofdiagline + by-\dotmove\repeat% +\egroup% +}% end diagonal line +\def\amyicurt#1#2{%IConUpperRightTriangle +%#1 is ht of icon matrix, +%with UT the upper triangular part, e.g. 4ex +%#2 is wd of icon (upper triangular) +%matrix, e.g. 2ex +\vbox to #1{\hrule + \hbox{\diagline . #2 wd -#2 ht\vrule}% + \vfil}% +}%end amyicurt +%endamy's diagline%%%%%%%%%%%%%%%%%%;nonum;newcol +% +% +% +\newtoks\picturesfile +\picturesfile{pic} +%;numvrb +%begin%%%%%%Generalized \samplebox +\def\point#1 #2 #3{\kern#1\unitlength + \raise#2\unitlength\hbox to0pt{\the\prefil + \the\prepoint#3\the\postfil + }\kern-#1\unitlength} +% +\def\gbox#1#2#3#4{%#1=ht,#2=dp,#3=wd +%#4=text. Assumed: the dimen vars +%\xshift, \yshift have been initialized. +%position of begin of text. +{\setbox0=\vtop{\vbox to#1{% + \hbox to#3{}\vss}\nointerlineskip + \vbox to#2{}}% +%now \box0 has the desired +%ht, dp, and wd + \hbox{\makelightbox\kern-#3% + \raise\yshift\hbox to#3{\kern\xshift + #4\hss}% + }}}%;nonum;newpage +% +% +%Turtle graphics macros added, July 1995 +%cgl@rc.service.rug.nl, July 1995 +%\newdimen\unitlength +\unitlength3ex %deault +\newdimen\unitlengthx +\newdimen\unitlengthy +\newdimen\x \newdimen\auxdim +\newdimen\leftx \newdimen\rightx +\newdimen\y \newdimen\yy +\newdimen\lefty \newdimen\righty +%\newcount\i +\newcount\k \newcount\kaux +\newcount\loccnt \newcount\modsum +\newcount\level \newcount\order +\newcount\kmax +\newcount\kk \newcount\ekk +\newcount\dir +\newbox\nel \newbox\nwl +\newbox\hlfwndelm +%\newdimen\linethickness \linethickness.2pt +\newdimen\linesize +\setbox\hlfwndelm=\hbox{\vrule + height\linethickness + width\linethickness} +\def\xy#1{%Function: place #1 at x, y + \vbox to0pt{\kern-\y + \hbox to0pt{\kern\x#1\hss}\vss}} +% +\def\xytxt#1{%Function: place text #1 at x, y + \xy{\vbox to0pt{\vss + \hbox to0pt{\strut#1\hss}\kern0pt}}} +% +\def\N#1{\xy{\kern-.5\linethickness + \vbox to0pt{\vss + \hrule height#1\unitlength + width\linethickness}}% +\advance\y#1\unitlength} +% +\def\S#1{\advance\y-#1\unitlength + {\N{#1}}} +% +\def\E#1{\xy{\vbox to0pt{\vss + \hrule width#1\unitlength + height\linethickness + depth0pt\vss +}}\advance\x#1\unitlength} +% +\def\W#1{\advance\x-#1\unitlength + {\E{#1}}} +% +\def\NE#1{\auxdim#1\unitlength\correction +\loop\advance\auxdim-\wd\hlfwndelm +\ifdim\auxdim>-.5\wd\hlfwndelm + \xy{\vbox to0pt{\vss\copy\hlfwndelm}}% + \advance\x\wd\hlfwndelm + \advance\y\ht\hlfwndelm +\repeat} +% +\def\NW#1{\auxdim#1\unitlength\correction +\loop\advance\auxdim-\wd\hlfwndelm +\ifdim\auxdim>-.5\wd\hlfwndelm + \advance\x-\wd\hlfwndelm + \xy{\vbox to0pt{\vss\copy\hlfwndelm}}% + \advance\y\ht\hlfwndelm +\repeat} +% +\def\SW#1{\auxdim#1\unitlength\correction +\loop\advance\auxdim-\wd\hlfwndelm +\ifdim\auxdim>-.5\wd\hlfwndelm + \advance\x-\wd\hlfwndelm + \advance\y-\ht\hlfwndelm + \xy{\vbox to0pt{\vss\copy\hlfwndelm}}% +\repeat} +% +\def\SE#1{\auxdim#1\unitlength\correction +\loop\advance\auxdim-\wd\hlfwndelm +\ifdim\auxdim>-.5\wd\hlfwndelm + \advance\y-\ht\hlfwndelm + \xy{\vbox to0pt{\vss\copy\hlfwndelm}}% + \advance\x\wd\hlfwndelm +\repeat} +% +%Convenient aliases are +\let\0\N +\let\1\E +\let\2\S +\let\3\W +%to supply text to the east (by preceding +%it with \hss it is centered) +\def\trttxt#1{\hbox to0pt{% + \kern\x\vbox to0pt{\vss + \hbox to0pt{\strut#1\hss + }\kern\y}\hss}} +%white writing i.e. just move, don't draw +\def\whiteE#1{\advance\x#1\unitlength } +\def\whiteN#1{\advance\y#1\unitlength } +\def\whiteW#1{\advance\x-#1\unitlength } +\def\whiteS#1{\advance\y-#1\unitlength } +%sometimes the following variants with +%global changes are needed +\def\globalN#1{\xy{\kern-.5\linethickness + \vbox to0pt{\vss + \hrule height#1\unitlength + width\linethickness}}% +\global\advance\y#1\unitlength} +% +\def\globalS#1{\global\advance + \y-#1\unitlength{\N{#1}}} +% +\def\globalE#1{\xy{\vbox to0pt{\vss + \hrule width#1\unitlength + height\linethickness + depth0pt\vss +}}\global\advance\x#1\unitlength} +% +\def\globalW#1{\global\advance + \x-#1\unitlength{\E{#1}}} +% +\newbox\trielm +\linethickness.2pt +\setbox\trielm=\hbox{\vrule + width1.74\linethickness + height\linethickness\relax} +%To account for element in 30 degrees direction +\unitlengthy\ht\trielm %default.2pt +\unitlengthx\wd\trielm %default.3482pt +\unitlength\unitlengthy%default.2pt +% +\def\WSW#1{\auxdim#1\unitlength\divide\auxdim2 + \loop\advance\auxdim-\unitlengthy + \ifdim\auxdim>-.5\unitlengthy + \advance\x-\unitlengthx + \advance\y-\unitlengthy + \xy{\vbox to0pt{\vss\copy\trielm}}% + \repeat} +% +\def\ESE#1{\auxdim#1\unitlength\divide\auxdim2 + \loop\advance\auxdim-\unitlengthy + \ifdim\auxdim>-.5\unitlengthy + \advance\y-\unitlengthy + \xy{\vbox to0pt{\vss\copy\trielm}}% + \advance\x\unitlengthx + \repeat} +% +\def\correction{\multiply\auxdim23 + \divide\auxdim32\relax} +% +%And the shortcut +\def\draw{\csname\the\dir\endcsname + {\the\kk}} +%The useful \bintree for trees +\def\bintree{\S1\ifnum2=\kk\eertnib\fi + \divide\kk2 + {\W{\the\kk}\bintree}% + \E{\the\kk}\bintree\relax} +\def\eertnib#1\relax{\fi\global\advance\k1 + \whiteS1\xytxt{ \csname\the\k\endcsname}} +% +%cgl@rc.service.rug.nl, July 1995 +%\newdimen\x \newdimen\y \newdimen\yy +%\newcount\k \newcount\kmax +\ea\newdimen\csname X1\endcsname +\ea\newdimen\csname X2\endcsname +\ea\newdimen\csname X3\endcsname +\ea\newdimen\csname X4\endcsname +\ea\newdimen\csname X12\endcsname +\ea\newdimen\csname X23\endcsname +\ea\newdimen\csname X34\endcsname +\ea\newdimen\csname X123\endcsname +\ea\newdimen\csname X234\endcsname +\ea\newdimen\csname X1234\endcsname +\def\X#1{\csname X#1\endcsname} +% +\ea\newdimen\csname Y1\endcsname +\ea\newdimen\csname Y2\endcsname +\ea\newdimen\csname Y3\endcsname +\ea\newdimen\csname Y4\endcsname +\ea\newdimen\csname Y12\endcsname +\ea\newdimen\csname Y23\endcsname +\ea\newdimen\csname Y34\endcsname +\ea\newdimen\csname Y123\endcsname +\ea\newdimen\csname Y234\endcsname +\ea\newdimen\csname Y1234\endcsname +\def\Y#1{\csname Y#1\endcsname} +% +\newbox\smileybox +%Next the METAfont spline implementation +\def\mfs{\ifnum\k=\kmax \sfm\fi +\advance\k1 +\midpoints\x\X{1234}\y\Y{1234}\putatxy +{\X2\X{12}\X3\X{123}\X4\X{1234}% + \Y2\Y{12}\Y3\Y{123}\Y4\Y{1234}\mfs}% +{\X1\X{1234}\X2\X{234}\X3\X{34}% + \Y1\Y{1234}\Y2\Y{234}\Y3\Y{34}\mfs}\relax}%end \mfs +% +\def\sfm#1\relax{\fi} +% +% +\def\midpoints{%z1,...,z4 -> z1, z12, z23,...,z1234 +\X{12}\X1\advance\X{12}by\X2\divide\X{12}by2 +\X{23}\X2\advance\X{23}by\X3\divide\X{23}by2 +\X{34}\X3\advance\X{34}by\X4\divide\X{34}by2 +\X{123}\X{12}\advance\X{123}by\X{23}\divide\X{123}by2 +\X{234}\X{23}\advance\X{234}by\X{34}\divide\X{234}by2 +\X{1234}\X{123}\advance\X{1234}by\X{234}\divide\X{1234}by2 +% +\Y{12}\Y1\advance\Y{12}by\Y2\divide\Y{12}by2 +\Y{23}\Y2\advance\Y{23}by\Y3\divide\Y{23}by2 +\Y{34}\Y3\advance\Y{34}by\Y4\divide\Y{34}by2 +\Y{123}\Y{12}\advance\Y{123}by\Y{23}\divide\Y{123}by2 +\Y{234}\Y{23}\advance\Y{234}by\Y{34}\divide\Y{234}by2 +\Y{1234}\Y{123}\advance\Y{1234}by\Y{234}\divide\Y{1234}by2 } +%\putatxy already in blue.tex +\def\putatxy{\hbox to0pt{\kern\x\kern-.15pt + \vbox to0pt{\vss\hrule width.3pt + height.3pt\relax + \kern\y}\hss}} +% +%\def\S#1{...}%See earlier +% +\def\initialize#1#2#3#4#5#6#7#8{%points: (#1,#2),...(#7,#8) + \csname X1\endcsname#1\unitlength + \csname X2\endcsname#3\unitlength + \csname X3\endcsname#5\unitlength + \csname X4\endcsname#7\unitlength + \csname Y1\endcsname#2\unitlength + \csname Y2\endcsname#4\unitlength + \csname Y3\endcsname#6\unitlength + \csname Y4\endcsname#8\unitlength} +% +% +%\def\smiley{\loadsmileys\hbox{\unitlength.01pt +% \copy\smileybox\eyes\mouth\kern1000\unitlength} } +%\def\winksmiley{\loadsmileys\hbox{\unitlength.01pt +% \copy\smileybox\winkeye\mouth\kern1000\unitlength} } +%\def\sadsmiley{\loadsmileys\hbox{\unitlength.01pt +% \copy\smileybox\squinteyes\sadmouth\kern1000\unitlength} } +% +%Contents turtle tools +%Storage allocations +%\newcount +% \k, \loccnt, \modsum, +% \level, \order, \kmax, +% \kk, \ekk, \dir +%newdimen +% \x, \leftx, \rightx, +% \y, \yy, \lefty, \righty, +%\newbox +% \hlfwndelm, \trielm +%Definitions +% \N, \E, \S, \W +% \NE, \SE, \SW, \NW +% \WSW, \ESE +% \whiteN, \whiteE, \whiteS, \whiteW +% \globalN, \globalE, \globalS, \globalW +% \correction +% \draw +% \bintree, \eertnib +% \putarxy +% \mfs, \sfm +% \midpoints +% \initialize +%Aliases +%\0, \1, \3, \4 +%History of changes +%July 1995 Setup turtle graphics +%\endinput +% +% +%Undocumented features +%\rnd from Reid, 1987 +%(Included in index macros of BLUe.) +%\newcount\rndnum \newcount\rndtmp +%\newcount\rndval +\def\rnd{\multiply\rndnum371{}% + \advance\rndnum1{}% + \ifnum\rndnum>99999 + \rndtmp\rndnum \divide\rndtmp100000 + \multiply\rndtmp100000 + \advance\rndnum-\rndtmp + \fi\rndval\rndnum + \divide\rndval1000 } +% +\def\dieiii{\rnd\throw= + \ifnum\rndval<34 0\else + \ifnum\rndval<67 1\else2 + \fi\fi} +\def\dieiv{\rnd\throw= + \ifnum\rndval<25 0\else + \ifnum\rndval<50 1\else + \ifnum\rndval<75 2\else3 + \fi\fi\fi} +\def\diev{\rnd\throw= + \ifnum\rndval<20 0\else + \ifnum\rndval<40 1\else + \ifnum\rndval<60 2\else + \ifnum\rndval<80 3\else4 + \fi\fi\fi\fi} +% +% +%;numvrb +%Formats. +\def\loadformat{\input fmt.dat\relax} +% +\def\concert{\ifx\undefined\concertfmt + \let\concertfmt=x\fi + \loadformat + \let\concertfmt\undefined +} +%;vrblin50 +\newtoks\addressesfile +\addressesfile{address} +% +\def\letter{\ifx\undefined\letterfmt + \let\letterfmt=x\fi + \loadformat + \let\letterfmt\undefined +} +%;vrblin100 +\newcount\reportloadcnt +%Prevent double loading. +\def\report{\ifx\undefined\reportfmt + \let\reportfmt=x\fi + \ifnum\reportloadcnt=0 \ea\loadformat\fi + \advance\reportloadcnt1 + \let\reportfmt\undefined +} +%;vrblin150 +\newcount\transparenciesloadcnt +\def\transparencies{% + \ifx\undefined\transparenciesfmt + \let\transparenciesfmt=x\fi + \ifnum\transparenciesloadcnt=0 + \ea\loadformat\fi + \advance\transparenciesloadcnt1 + \let\transparenciesfmt\undefined +}% +\newcount\trsno +\newbox\trsppt +\newcount\transparenciespptloadcnt +\def\transparenciesppt{% + \ifx\undefined\transparenciespptfmt + \let\transparenciespptfmt=x\fi + \ifnum\transparenciespptloadcnt=0 + \ea\loadformat\fi + \advance\transparenciespptloadcnt1 + \let\transparenciespptfmt\undefined +}%;nonum;newpage +% +% +%;numvrb +%Tools +%General macros. +\def\fifo#1{\ifx\ofif#1\ofif\fi + \process{#1}\fifo} +\def\ofif#1\fifo{\fi} +% +{\obeylines\gdef\fifol#1 + {\ifx\lofif#1\lofif\fi% + \processl{#1}\fifol}} +\def\lofif#1\fifol{\fi} +% +{\obeyspaces\gdef\fifow#1 {\ifx +\wofif#1\wofif\fi\processw{#1}\ \fifow}} +\def\wofif#1\fifow{\fi} +% +\long\def\gobbletool#1\endinput{\egroup} +\long\def\tool#1{\ifx#1\undefined + \bgroup\unouterdefs + \ea\gobbletool\fi} +% +\def\toolverbatim{\thisverbatim{% + \baselineskip12ptplus2ptminus1pt + \lineskip1ptplus1ptminus1pt}% + \beginverbatim} +% +\let\cgl\relax +%\def\cgl{\endverbatim\endinput} +% +\def\unouterdefs{%List of defs which + %have to be neglected + \ea\let\csname+\endcsname\relax + \catcode`\^12 + %more to come +} +% +\newif\iffound +\def\loc#1#2{\def\locate##1#1##2\end + {\ifx\empty##2\empty\foundfalse + \else\foundtrue\fi}\ea\locate#2.#1\end} +% +\def\contentsdatabase#1{%#1 pic lit address +\ea\let\ea\name\csname toc#1\endcsname +\immediate\openout\name=contents#1 +%Define list element tag `\lst' +\def\lst##1##2{\let##1\relax + \advance\k1 + \immediate\write\name{##1}} +\input #1.dat\relax +\message{Database #1 contains + \the\k\space entries. + See the file contents#1 for + the list of the names of the entries.}} +% +\newwrite\tocfmt +\newwrite\toctools +% +\def\contentstoolsorfmt#1{%#1 tools fmt +\bgroup +\ea\let\ea\name\csname toc#1\endcsname +\immediate\openout\name=contents#1 +\long\def\tool##1##2\endinput{% + \immediate\write\name{\nx##1}} +\unouterdefs +\input #1.dat\relax +\message{Database #1 contains + \the\k\space entries.}% +\egroup} +% +%Tags for the address database +\newif\ifregisteredblue +%Searching the database +\newtoks\searchfile +\newtoks\foundfile +\newtoks\namelst +\def\search#1{\def\loc##1##2{% + \def\locate####1##1####2\end + {\ifx\empty####2\empty\foundfalse + \else\foundtrue\fi}\ea\locate##2.##1\end} + \def\lst##1##2{\loc{#1}{##2}\iffound + \immediate\write16{\nx##1}%log file + \namelst\ea{\the\namelst\lst##1} + \def##1{##2}%define found element + \fi}\input\the\searchfile.dat\relax} +%;vrblin200 +\def\bluechapter#1\par + {\beginchapterhead#1\unskip\endchapterhead} +%Because of \par not in fmt.dat +\def\blueexample#1\par + {\example{#1\unskip}} +% +\def\bluedisplaycenterline#1\par + {\begindisplaycenterline + #1\enddisplaycenterline}%;nonum;newcol +% +% +%;numvrb +%Tools +%Next sorted on <tag>tool +% +\def\loadtool{\input tools.dat\relax} +%;vrblin20 +%Binarytreetool +\newcount\ltree \newcount\m +\newcount\lu \newcount\levelone +\newdimen\tophns \newdimen\tophnshalf +\newdimen\vnodesep +\newdimen\treewidth %\treewidth= +%\prod_{i=1}^k{1+1/2i} * \tophns, for level k tree. +\newtoks\thisbintree +\newtoks\everybintree +\def\beginbintree{\begingroup + \let\bintreetool=x + \loadtool + \startbintree} +\newtoks\thisbt +\newtoks\everybt +\newtoks\prebt +\newtoks\postbt +\def\beginbt{\begingroup + \let\bttool=x + \loadtool\bt} +%;vrblin50 +%Bridgetool +\def\beginbridge{\begingroup + \let\endbridge\endgroup + \let\bridgetool=x + \loadtool +} +%;vrblin100 +%Crosswordstool +\def\begincrosswords{\begingroup + \let\endcrosswords\endgroup + \let\crosswordstool=x + \loadtool +} +%;vrblin150 +%Hanoitool +\def\hanoi#1{\beginhanoi{#1}\endhanoi} +\def\beginhanoi{\begingroup + \let\endhanoi\endgroup + \let\hanoitool=x + \loadtool +\sethanoi} +%;vrblin200 +%Indextool +\newcount\indexloadcnt +\def\loadindexmacros{% + \ifx\undefined\indextool + \let\indextool=x\fi + \ifnum\indexloadcnt=0 + \ea\loadtool\fi + \advance\indexloadcnt1 + \let\indextool\undefined} +%(mini-)ToCtool +\newwrite\toc +\newcount\tocloadcnt +\def\loadtocmacros{% + \ifx\undefined\toctool + \let\toctool=x\fi + \ifnum\tocloadcnt=0 + \ea\loadtool\fi + \advance\tocloadcnt1 + \let\toctool\undefined} +%;vrblin250 +%Language tools +\def\english{\let\englishtool=x + \loadtool + \let\englishtool\undefined +} +\def\russian{\let\russiantool=x + \loadtool + \let\russiantool\undefined +} +%;vrblin500 +%ntglogo +\font\calx=cmsy10 scaled \magstep4 +\newbox\ntglogobox +\def\loadntglogo{\let\ntglogotool=x + \loadtool + \let\ntglogotool\undefined +} +\def\loadntginfo{\let\ntginfotool=x + \loadtool + \let\ntginfotool\undefined +} +% +%;vrblin525 +\newbox\smileybox +\newcount\smileysloadcount +\def\smiley{\loadsmileys\raise.5ex + \hbox{\unitlength.01pt + \copy\smileybox + \eyes\mouth + \kern1000\unitlength} } +\def\winksmiley{\loadsmileys\raise.5ex + \hbox{\unitlength.01pt\copy\smileybox + \winkeye\mouth + \kern1000\unitlength} } +\def\sadsmiley{\loadsmileys\raise.5ex + \hbox{\unitlength.01pt\copy\smileybox + \squinteyes\sadmouth + \kern1000\unitlength} } +\def\loadsmileys{\ifx\undefined\smileystool + \let\smileystool=x\fi + \ifnum\smileysloadcount=0 \ea\loadtool + \else\message{--- smileys already loaded---}\fi + \advance\smileysloadcount1 + \let\smileystool\undefined} +% +%;vrblin550 +\def\loadxyz{\let\xyztool=x + \loadtool + \let\xyztool\undefined +} +%;vrblin575 +\def\loadpartlogo{\let\partlogotool=x + \loadtool + \let\partlogotool\undefined +} +%;vrblin600 +%Pascaltool +%Declarations +\newtoks\prepascal +\newtoks\postpascal +\newtoks\reservedset +\newcount\commentstatus +%Initializations +\let\reservedwordsfont\bf +\let\pascalprogramfont\it +\let\pascalcommentfont\rm +\prepascal{\medskip\noindent} +\postpascal\prepascal +%Reserved words need right catcodes +% +\def\beginpascal{\begingroup + \let\pascaltool=x + \loadtool + \afterassignment\fifol\let\dummy=}%;nonum;newcol +% +% +% +%***Storage allocation*** ;numvrb +%\new...-s needed in the various tools +%Space is once reserved. +%General +\newtoks\storedheadline +\newtoks\storedfootline +\newtoks\appendixname +\appendixname{Appendix} +\newcount\storedpageno +%;vrblin10 +%From \contentsdatabase +\newwrite\tocpic +\newwrite\toclit +\newwrite\tocaddress +%;vrblin20 +%From \letter +\newtoks\letterfile +%\newtoks\addressesfile +\newtoks\addresseename\newtoks\fullname +\newtoks\addresseelist +\newtoks\subject +\newtoks\ourreference +\newtoks\yourreference +\newtoks\enclosures +\newdimen\longindentation +\newdimen\storedvsize +\newskip\vaoffset%vert address offset +\newskip\haoffset%hor address offset +\newbox\affiliationbox +\letterfile{letter} +%\addressesfile{address} +%From \transparencies +\newtoks\regularheadline +\newtoks\regularfootline +%;vrblin50 +%From \report +\newtoks\chapternumbering +\newtoks\thischapterhead +\newtoks\everychapterhead +\newtoks\prefacename +\newtoks\bibliographydata +\newtoks\chaptertitle +\newtoks\prechapterhead +\newtoks\postchapterhead +\newtoks\headtitle +\newtoks\subheadtitle +\newtoks\subsubheadtitle +\newtoks\prepoint +\newtoks\prefil +\newtoks\postfil +\newtoks\thisexample +\newtoks\everyexample +\newtoks\exampletitle +\newbox\prefacebox +\newbox\contentsbox +\newbox\forewordtranslatorbox +\newdimen\generalindent +\newdimen\gutter \gutter1em +\newdimen\xshift +\newdimen\yshift +\newdimen\subsubheadindent +\newcount\headcnt +\newcount\chaptercnt +\newcount\examplecnt +\newcount\exercisecnt +\newwrite\toc +\newwrite\toe +\newif\ifrunin +%;vrblin100 +%From transparencies +\newtoks\identification +%\newtoks\crowner +\newtoks\headtitle +\newtoks\subheadtitle +\newtoks\subsubheadtitle +\newskip\leftskiptrs +\newskip\rightskiptrs +%;vrblin125 +%From crosswords +\newif\ifpuzzle +\newcount\cnt +\newdimen\csize +%;vrblin150 +%From index +\newif\ifcontinue%controls loops +\newif\iffound%locating accent cs +\newif\ifproof\prooftrue +\newtoks\indword +\newcount\n +\newcount\lc +\newcount\r +\newcount\ic +\newcount\uone +\newcount\jc +\newcount\jj +\newcount\jjone +%Counters +%\newcount\n +%\newcount\m +%\newcount\k +%\newcount\kk +\n=0 +\newcount\kzero\kzero0 %Bias value +\newcount\pk +\newcount\pkone%Used in sortcs +\newcount\frst%First value of range +\newcount\last %Last value of range +\newcount\slast%Successor \last +\newcount\dif %Difference \last-\frst +\newcount\nw %Number of words +\newcount\nc %Number of characters/comp +\newcount\numex %Number of exchanges +\newcount\rndval%Random number +\newcount\rndnum%Seed random generator +\newcount\rndtmp%Temporary value +\newcount\throw +\newcount\status%Status comparison +\newcount\low +\newcount\up +\newif\ifgoon +\newread\inxin +\newtoks\indword +\newtoks\indexfile + %To parameterize the resulting index +\newtoks\irfile + %To parameterize the IRs +\newtoks\indexname +\newtoks\preindex +\newtoks\postindex +\newtoks\ignores +\newtoks\conseqs +\newtoks\consyms +\newtoks\srtkeys +\newtoks\srtkeypairs +%;vrblin500 +%Contents Tools +%- bridgetool +%- crosswordstool +%- hanoitool +%- indextool +%- langauages englishtool (default) +%- ntglogotool +%- ntginfotool +%- russiantool +%- smileys +%- toctool +%- xyztool +%- pascaltool +%;nonum +%History of changes Tools +% Jan 1995 Created +% Summer 1995 Smileys added +% March 1996 Toc tool added +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% +% +\def\\{\hfil\break} +\let\annotation\relax +\generalindent\parindent +\subsubheadindent\generalindent +\loadntglogo +\english +\catcode`\@=12 +\endinput +%for Mac as pre format +\global\advance\count0-1 \dump +%%%end blue.tex, cgl%%%
\ No newline at end of file |