diff options
author | Hans Hagen <pragma@wxs.nl> | 2004-06-20 00:00:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2004-06-20 00:00:00 +0200 |
commit | 0bfaf7db3a4495c91871b17e20cebecdff4a5dde (patch) | |
tree | 6a8fcba94cba07f786eb5506ef665dc51e9ffbbc /tex/context/base/page-lin.tex | |
parent | 51d573f4c0e8d3b8499bff7a3c6fba3dcd71d725 (diff) | |
download | context-0bfaf7db3a4495c91871b17e20cebecdff4a5dde.tar.gz |
stable 2004.06.20
Diffstat (limited to 'tex/context/base/page-lin.tex')
-rw-r--r-- | tex/context/base/page-lin.tex | 274 |
1 files changed, 151 insertions, 123 deletions
diff --git a/tex/context/base/page-lin.tex b/tex/context/base/page-lin.tex index 10f875fc0..1d69d18e1 100644 --- a/tex/context/base/page-lin.tex +++ b/tex/context/base/page-lin.tex @@ -15,39 +15,35 @@ \unprotect -\newif\ifnumberinglines -\newif\iftypesettinglines - -\newcount\linenumber -\newcount\linestepper +\newif\ifinregels % \newif\ifregelnummersinmarge \chardef\linenumberlocation=0 \newtoks\beforeeverylinenumbering \newtoks\aftereverylinenumbering -\def\setuplines +\def\stelregelsin {\dodoubleargument\getparameters[\??rg]} -\def\startlines - {\@@rgbefore - \whitespace - %\page[\v!preference]} gaat mis na koppen, nieuw: later \nobreak +\def\startregels + {\@@rgvoor + \witruimte + %\pagina[\v!voorkeur]} gaat mis na koppen, nieuw: later \nobreak \begingroup \def\@@rgstepyes{\parindent\zeropoint}% \def\@@rgstepno {\parindent\zeropoint}% \edef\@@rgparindent{\the\parindent}% \globallet\@@rglinesteptoggle\!!plusone \processaction - [\@@rgindenting] - [ \v!yes=>\def\@@rgstepyes{\parindent\@@rgparindent}% + [\@@rginspringen] + [ \v!ja=>\def\@@rgstepyes{\parindent\@@rgparindent}% \def\@@rgstepno {\parindent\@@rgparindent}, - \v!odd=>\def\@@rgstepyes{\parindent\zeropoint }% + \v!oneven=>\def\@@rgstepyes{\parindent\zeropoint }% \def\@@rgstepno {\parindent\@@rgparindent}, \v!even=>\def\@@rgstepno {\parindent\zeropoint }% \def\@@rgstepyes{\parindent\@@rgparindent}]% - \typesettinglinestrue - \setupwhitespace[\v!none]% + \inregelstrue + \setupwhitespace[\v!geen]% \obeylines \let\checkindentation\relax \@@rgstepno @@ -81,37 +77,41 @@ % \fi} % etex \def\dobetweenthelines - {\doifmeaningelse\next\obeyedline\@@rginbetween\donothing} + {\doifmeaningelse\next\obeyedline\@@rgtussen\donothing} -\def\stoplines +\def\stopregels {\endgroup - \@@rgafter} + \@@rgna} + +\newcount\linenumber +\newcount\linestepper +\newif\ifinregelnummeren % het gebruik van \setlocalreference scheelt een hash entry \def\dodoshowlinenumber % for use elsewhere, to be extended - {\doplacelinenumber + {\doschrijfregelnummer \global\advance\linenumber \plusone} -\def\completelinenumber - {\@@rnleft\convertnumber\@@rnconversion\linenumber\@@rnright} +\def\regelweergave + {\@@rnlinks\convertnumber\@@rnconversie\linenumber\@@rnrechts} -\def\dosetuplinenumbering[#1]% - {\getparameters[\??rn][\c!start=1,\c!step=1,#1]% +\def\dostelregelnummerenin[#1]% + {\getparameters[\??rn][\c!start=1,\c!stap=1,#1]% \global\linenumber\plusone} -\def\setuplinenumbering - {\dosingleargument\dosetuplinenumbering} +\def\stelregelnummerenin + {\dosingleargument\dostelregelnummerenin} \def\dostartnummerenLINE - {\EveryPar{placelinenumber}} + {\EveryPar{\schrijfregelnummer}} \def\dostopnummerenLINE {\the\aftereverylinenumbering \egroup} \def\dostartnummerenVERB - {\EveryLine{\placelinenumber}} + {\EveryLine{\schrijfregelnummer}} \def\dostopnummerenVERB {\the\aftereverylinenumbering @@ -119,31 +119,31 @@ \newevery \everylinenumber \relax -\def\dodoplacelinenumber +\def\dodoschrijfregelnummer {% beware of em's, the font is already switched ! \setbox\scratchbox\hbox - {\setbox0\hbox{\@@rncommand{\completelinenumber}}\vsmashbox0% + {\setbox0\hbox{\@@rncommando{\regelweergave}}\vsmashbox0% \ifcase\linenumberlocation - \rlap{\hbox to \@@rnwidth{\box0\hss}}% was \llap, nog testen !! + \rlap{\hbox to \@@rnbreedte{\box0\hss}}% was \llap, nog testen !! \or \inleftmargin {\forgetall - \doifelse\@@rnwidth\v!margin - {\hsize\leftmarginwidth}{\hsize\@@rnwidth}% - \alignedline\@@rnalign\v!right{\box0\hskip\@@rndistance}}% + \doifelse\@@rnbreedte\v!marge + {\hsize\linkermargebreedte}{\hsize\@@rnbreedte}% + \alignedline\@@rnuitlijnen\v!rechts{\box0\hskip\@@rnafstand}}% \else \inrightmargin {\forgetall - \doifelse\@@rnwidth\v!margin - {\hsize\rightmarginwidth}{\hsize\@@rnwidth}% - \alignedline\@@rnalign\v!left{\hskip\@@rndistance\box0}}% + \doifelse\@@rnbreedte\v!marge + {\hsize\rechtermargebreedte}{\hsize\@@rnbreedte}% + \alignedline\@@rnuitlijnen\v!links{\hskip\@@rnafstand\box0}}% \fi}% \vsmashbox\scratchbox \box\scratchbox \the\everylinenumber} -\def\complexstartlinenumbering[#1]% - {\doifnot{#1}\v!continue +\def\complexstartregelnummeren[#1]% + {\doifnot{#1}\v!verder {\doifnumberelse{#1} {\global\linenumber#1\relax} {\doifelsenothing\@@rnstart @@ -151,85 +151,97 @@ {\global\linenumber\@@rnstart}}}% \chardef\linenumberlocation\zerocount \processaction - [\@@rnlocation] - [ \v!inmargin=>\chardef\linenumberlocation1, - \v!inleft=>\chardef\linenumberlocation1, - \v!inright=>\chardef\linenumberlocation2, - \v!margin=>\chardef\linenumberlocation1]% - % \v!text=>\chardef\linenumberlocation0, + [\@@rnplaats] + [ \v!inmarge=>\chardef\linenumberlocation1, + \v!inlinker=>\chardef\linenumberlocation1, + \v!inrechter=>\chardef\linenumberlocation2, + \v!marge=>\chardef\linenumberlocation1]% + % \v!tekst=>\chardef\linenumberlocation0, %\s!unknown=>\chardef\linenumberlocation0, %\s!default=>\chardef\linenumberlocation0]% \ifcase\linenumberlocation % text - \advance\leftskip \@@rnwidth\relax + \advance\leftskip \@@rnbreedte\relax \fi \chardef\@@rn@@rnmethod - \ifprocessingverbatim0\else\iftypesettinglines1\else2\fi\fi + \ifprocessingverbatim0\else\ifinregels1\else2\fi\fi \processaction - [\@@rnmethod] + [\@@rnmethode] [ \v!type=>\chardef\@@rn@@rnmethod0, - \v!line=>\chardef\@@rn@@rnmethod1, - \v!text=>\chardef\@@rn@@rnmethod2, + \v!regel=>\chardef\@@rn@@rnmethod1, + \v!tekst=>\chardef\@@rn@@rnmethod2, \v!file=>\chardef\@@rn@@rnmethod3]% \ifcase\@@rn@@rnmethod % verbatim, line by line - \typesettinglinestrue + \inregelstrue \let\dostartnummeren\dostartnummerenVERB - \let\stoplinenumbering\dostopnummerenVERB - \def\placelinenumber - {\doplacelinenumber + \let\stopregelnummeren\dostopnummerenVERB + \def\schrijfregelnummer + {\doschrijfregelnummer \global\advance\linenumber \plusone}% \or % text, line by line \let\dostartnummeren\dostartnummerenLINE - \let\stoplinenumbering\dostopnummerenLINE - \def\placelinenumber - {\doplacelinenumber + \let\stopregelnummeren\dostopnummerenLINE + \def\schrijfregelnummer + {\doschrijfregelnummer \global\advance\linenumber \plusone}% \or % text, whole lot \let\dostartnummeren\dostartnummerenPAR - \let\stoplinenumbering\dostopnummerenPAR - \def\placelinenumber + \let\stopregelnummeren\dostopnummerenPAR + \def\schrijfregelnummer {\global\advance\linenumber \minusone - \doplacelinenumber}% + \doschrijfregelnummer}% \or % verbatim, selective line by line - \typesettinglinestrue + \inregelstrue \let\dostartnummeren\dostartnummerenVERB - \let\stoplinenumbering\dostopnummerenVERB - \def\placelinenumber + \let\stopregelnummeren\dostopnummerenVERB + \def\schrijfregelnummer {\global\linenumber\verbatimlinenumber - \doplacelinenumber}% + \doschrijfregelnummer}% \fi \dostartnummeren} -\def\startlinenumbering +\def\startregelnummeren {\bgroup \the\beforeeverylinenumbering - \numberinglinestrue - \complexorsimpleempty\startlinenumbering} + \inregelnummerentrue + \complexorsimpleempty\startregelnummeren} -\def\doplacelinenumber +\def\doschrijfregelnummer {\ifnum\linenumber<\@@rnstart\relax \else \!!counta\linenumber - \divide\!!counta \@@rnstep - \multiply\!!counta \@@rnstep\relax + \divide\!!counta \@@rnstap + \multiply\!!counta \@@rnstap\relax \ifnum\!!counta=\linenumber - \doattributes\??rn\c!style\c!color\dodoplacelinenumber + \doattributes\??rn\c!letter\c!kleur\dodoschrijfregelnummer \fi \fi} -\def\someline[#1]% - {\dolinereference0[#1]\ignorespaces} +\def\eenregel[#1]% + {\regelreferentie0[#1]\ignorespaces} + +\def\startregel[#1]% + {\regelreferentie1[#1]\ignorespaces} -\def\startline[#1]% - {\dolinereference1[#1]\ignorespaces} +\def\stopregel[#1]% + {\removelastspace\regelreferentie2[#1]} -\def\stopline[#1]% - {\removelastspace\dolinereference2[#1]} +% \def\inregellabel#1% +% {\doifinstringelse{--}{#1} +% {\labeltext{\v!regels}} +% {\labeltext{\v!regel}}} +% +% \def\inregel#1[#2]% +% {\doifelsenothing{#1} +% {\in{\inregellabel{\currenttextreference}}[\@@rnprefix#2]} +% {\in{#1}[\@@rnprefix#2]}} +% +% double labels: -\def\inline#1[#2]% +\def\inregel#1[#2]% {\doifelsenothing{#1} {\doifinstringelse{--}\currenttextreference - {\in{\leftlabeltext\v!lines}{\rightlabeltext\v!lines}[\@@rnprefix#2]} - {\in{\leftlabeltext\v!line }{\rightlabeltext\v!line }[\@@rnprefix#2]}} + {\in{\leftlabeltext\v!regels}{\rightlabeltext\v!regels}[\@@rnprefix#2]} + {\in{\leftlabeltext\v!regel }{\rightlabeltext\v!regel }[\@@rnprefix#2]}} {\in{#1}[\@@rnprefix#2]}} \def\dostartnummerenPAR @@ -255,10 +267,26 @@ % 4 yyy yyy yyy yyy yyy xxx xxx <= stop y % 5 xxx xxx xxx xxx xxx xxx xxx -\def\dolinereference#1[#2]% +%\def\regelreferentie#1[#2]% +% {\bgroup +% \dimen0\strutdp +% \doif{\@@rnrefereren}{\v!aan} +% {\doglobal\increment\linereference +% % start 1=>(n=y,l=0,p=1) +% % stop 2=>(n=y,l=0,p=2) +% \setxvalue{lrf:n:\linereference}{\@@rnprefix#2}% +% \setxvalue{lrf:l:\linereference}{0}% +% \setxvalue{lrf:p:\linereference}{#1}% +% \advance\dimen0 by \linereference sp}% +% \prewordbreak +% \vrule \!!width \!!zeropoint \!!depth \dimen0 \!!height \!!zeropoint +% \prewordbreak +% \egroup} + +\def\regelreferentie#1[#2]% {\bgroup \dimen0=\strutdp - \doif\@@rnreferencing\v!on + \doif\@@rnrefereren\v!aan {\doglobal\increment\linereference % start 1=>(n=y,l=0,p=1) % stop 2=>(n=y,l=0,p=2) @@ -275,7 +303,7 @@ \linestepper\zerocount \reshapebox{\global\advance\linestepper \plusone}% \global\advance\linenumber \linestepper - \doifelse\@@rnreferencing\v!on + \doifelse\@@rnrefereren\v!aan {\reshapebox % We are going back! {\global\advance\linenumber \minusone \dimen0=\dp\shapebox @@ -330,13 +358,13 @@ \ifdim\dimen0>\zeropoint \dp\shapebox\strutdp \fi - \placelinenumber\box\shapebox}}% no \strut ! + \schrijfregelnummer\box\shapebox}}% no \strut ! \else - \reshapebox{\hbox{\placelinenumber\box\shapebox}}% no \strut ! + \reshapebox{\hbox{\schrijfregelnummer\box\shapebox}}% no \strut ! \fi} {\reshapebox{\global\advance\linenumber \minusone}% \global\advance\linenumber \linestepper - \reshapebox{\hbox{\placelinenumber\box\shapebox}}}% no \strut ! + \reshapebox{\hbox{\schrijfregelnummer\box\shapebox}}}% no \strut ! \global\advance\linenumber \linestepper \flushshapebox \the\aftereverylinenumbering @@ -350,25 +378,25 @@ \newcount\internalparagraphnumber -\def\setupparagraphnumbering% - {\dosingleempty\dosetupparagraphnumbering} +\def\stelparagraafnummerenin% + {\dosingleempty\dostelparagraafnummerenin} -\def\dosetupparagraphnumbering[#1]% +\def\dostelparagraafnummerenin[#1]% {\getparameters [\??ph][#1]% \processaction - [\@@phstate] + [\@@phstatus] [\v!start=>\let\showparagraphnumber\doshowparagraphnumberA, \v!stop=>\let\showparagraphnumber\relax, - \v!line=>\let\showparagraphnumber\doshowparagraphnumberB, + \v!regel=>\let\showparagraphnumber\doshowparagraphnumberB, \v!reset=>\global\internalparagraphnumber\zerocount \let\showparagraphnumber\doshowparagraphnumberA]} \def\dodoshowparagraphnumber {\global\advance\internalparagraphnumber \plusone \inleftmargin % \tf normalizes em - {\tf{\doattributes\??ph\c!style\c!color{\the\internalparagraphnumber}}% - \kern\@@phdistance}} + {\tf{\doattributes\??ph\c!letter\c!kleur{\the\internalparagraphnumber}}% + \kern\@@phafstand}} \def\doshowparagraphnumberA {\ifprocessingverbatim @@ -378,42 +406,42 @@ \fi} \def\doshowparagraphnumberB - {\ifnumberinglines + {\ifinregelnummeren \doshowparagraphnumberA \fi} -\setuplinenumbering - [\c!method=, - \c!conversion=\v!numbers, +\stelregelnummerenin + [\c!methode=, + \c!conversie=\v!cijfers, \c!start=1, - \c!step=1, - \c!location=\v!margin, - \c!style=, - \c!color=, - \c!width=2em, + \c!stap=1, + \c!plaats=\v!marge, + \c!letter=, + \c!kleur=, + \c!breedte=2em, \c!prefix=, - \c!referencing=\v!on] + \c!refereren=\v!aan] % new -\setuplinenumbering - [\c!width=\ifcase\linenumberlocation2em\else\v!margin\fi, - \c!left=, - \c!right=, - \c!command=, - \c!distance=\zeropoint, - \c!align=\ifcase\linenumberlocation\v!right\or\v!right\or\v!left\fi] - -\setupparagraphnumbering - [\c!state=\v!stop, - \c!style=, - \c!color=, - \c!distance=\ifcase\linenumberlocation2em\else\!!zeropoint\fi] - -\setuplines - [\c!before=\blank, - \c!after=\blank, - \c!inbetween=\blank, - \c!indenting=\v!no] - -\protect \endinput +\stelregelnummerenin + [\c!breedte=\ifcase\linenumberlocation2em\else\v!marge\fi, + \c!links=, + \c!rechts=, + \c!commando=, + \c!afstand=\zeropoint, + \c!uitlijnen=\ifcase\linenumberlocation\v!rechts\or\v!rechts\or\v!links\fi] + +\stelparagraafnummerenin + [\c!status=\v!stop, + \c!letter=, + \c!kleur=, + \c!afstand=\ifcase\linenumberlocation2em\else\!!zeropoint\fi] + +\stelregelsin + [\c!voor=\blanko, + \c!na=\blanko, + \c!tussen=\blanko, + \c!inspringen=\v!nee] + +\protect \endinput
\ No newline at end of file |