summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/colo-run.tex16
-rw-r--r--tex/context/base/cont-fil.tex1
-rw-r--r--tex/context/base/cont-new.tex94
-rw-r--r--tex/context/base/cont-sys.ori5
-rw-r--r--tex/context/base/context.tex2
-rw-r--r--tex/context/base/core-buf.tex16
-rw-r--r--tex/context/base/core-des.tex37
-rw-r--r--tex/context/base/core-fig.tex13
-rw-r--r--tex/context/base/core-fld.tex2
-rw-r--r--tex/context/base/core-fnt.tex4
-rw-r--r--tex/context/base/core-grd.tex49
-rw-r--r--tex/context/base/core-hlp.tex31
-rw-r--r--tex/context/base/core-int.tex10
-rw-r--r--tex/context/base/core-itm.tex8
-rw-r--r--tex/context/base/core-job.tex8
-rw-r--r--tex/context/base/core-ltb.tex4
-rw-r--r--tex/context/base/core-mak.tex66
-rw-r--r--tex/context/base/core-mat.tex22
-rw-r--r--tex/context/base/core-mis.tex25
-rw-r--r--tex/context/base/core-nav.tex14
-rw-r--r--tex/context/base/core-not.tex8
-rw-r--r--tex/context/base/core-ntb.tex40
-rw-r--r--tex/context/base/core-pos.tex72
-rw-r--r--tex/context/base/core-rul.tex122
-rw-r--r--tex/context/base/core-sec.tex73
-rw-r--r--tex/context/base/core-spa.tex28
-rw-r--r--tex/context/base/core-tab.tex20
-rw-r--r--tex/context/base/core-tbl.tex50
-rw-r--r--tex/context/base/core-ver.tex2
-rw-r--r--tex/context/base/core-vis.tex6
-rw-r--r--tex/context/base/enco-grk.tex317
-rw-r--r--tex/context/base/font-chi.tex4
-rw-r--r--tex/context/base/font-run.tex18
-rw-r--r--tex/context/base/font-uni.tex10
-rw-r--r--tex/context/base/m-educat.tex4
-rw-r--r--tex/context/base/m-plus.tex29
-rw-r--r--tex/context/base/mult-com.tex44
-rw-r--r--tex/context/base/mult-con.tex156
-rw-r--r--tex/context/base/page-flt.tex42
-rw-r--r--tex/context/base/page-imp.tex18
-rw-r--r--tex/context/base/page-ini.tex115
-rw-r--r--tex/context/base/page-lin.tex10
-rw-r--r--tex/context/base/page-mar.tex16
-rw-r--r--tex/context/base/page-mul.tex10
-rw-r--r--tex/context/base/page-new.tex112
-rw-r--r--tex/context/base/page-one.tex10
-rw-r--r--tex/context/base/page-set.tex47
-rw-r--r--tex/context/base/page-sid.tex23
-rw-r--r--tex/context/base/plus-rul.tex183
-rw-r--r--tex/context/base/ppchtex.tex46
-rw-r--r--tex/context/base/regi-grk.tex117
-rw-r--r--tex/context/base/regi-ini.tex20
-rw-r--r--tex/context/base/regi-mac.tex227
-rw-r--r--tex/context/base/setupb.tex40
-rw-r--r--tex/context/base/spec-tpd.tex2
-rw-r--r--tex/context/base/supp-box.tex57
-rw-r--r--tex/context/base/supp-fun.tex34
-rw-r--r--tex/context/base/symb-mvs.tex2
-rw-r--r--tex/context/base/syst-new.tex7
-rw-r--r--tex/context/base/type-enc.tex61
-rw-r--r--tex/context/base/type-map.tex4
-rw-r--r--tex/context/base/x-contml.tex4
-rw-r--r--tex/context/base/x-res-08.tex21
-rw-r--r--tex/context/base/x-res-09.tex55
-rw-r--r--tex/context/user/cont-sys.rme5
65 files changed, 1835 insertions, 883 deletions
diff --git a/tex/context/base/colo-run.tex b/tex/context/base/colo-run.tex
index 1355c9365..2b222328f 100644
--- a/tex/context/base/colo-run.tex
+++ b/tex/context/base/colo-run.tex
@@ -14,7 +14,7 @@
{\offinterlineskip
\setuppalet[#1]
\def\rule
- {\vrule\!!width3em\!!height\ht\strutbox\!!depth\dp\strutbox}
+ {\vrule\!!width3em\!!height\strutht\!!depth\strutdp}
\tabskip\zeropoint
\def\doshowpalet##1%
{\doifinsetelse\v!nummer{#2}{##1\hskip.5em}{}&
@@ -47,10 +47,10 @@
\processpalet[#1]\doshowpalet}\cr
\doifinset\v!naam{#2}{#1\hskip.5em}%
\def\doshowpalet##1%
- {&\color[##1]{\vrule\!!width\!!widtha\!!height\ht\strutbox\!!depth\!!zeropoint}}%
+ {&\color[##1]{\vrule\!!width\!!widtha\!!height\strutht\!!depth\!!zeropoint}}%
\processpalet[#1]\doshowpalet\crcr
\def\doshowpalet##1%
- {&\graycolor[##1]{\vrule\!!width\!!widtha\!!height\!!zeropoint\!!depth\dp\strutbox}}%
+ {&\graycolor[##1]{\vrule\!!width\!!widtha\!!height\!!zeropoint\!!depth\strutdp}}%
\processpalet[#1]\doshowpalet\crcr
\doifinset\v!waarde{#2}
{\def\doshowpalet##1%
@@ -82,14 +82,14 @@
\setuppalet
\tabskip\zeropoint
\def\rule
- {\vrule\!!width4em\!!height\ht\strutbox\!!depth\dp\strutbox}
+ {\vrule\!!width4em\!!height\strutht\!!depth\strutdp}
\def\colorformatseparator{\strut\cr}
\def\dodoshowgroup##1%
{\halign
{\hss####\hss\cr
\doifinset\v!nummer{#2}{\strut##1}\cr
- \color[#1:##1]{\vrule\!!width4em\!!height\ht\strutbox\!!depth\!!zeropoint}\cr
- \graycolor[#1:##1]{\vrule\!!width4em\!!height\!!zeropoint\!!depth\dp\strutbox}\cr
+ \color[#1:##1]{\vrule\!!width4em\!!height\strutht\!!depth\!!zeropoint}\cr
+ \graycolor[#1:##1]{\vrule\!!width4em\!!height\!!zeropoint\!!depth\strutdp}\cr
\doifinset\v!waarde{#2}{\colorvalue{#1:##1}\strut}\crcr}}
\def\doshowgroup##1%
{\doifdefined{\??cr#1:##1}
@@ -110,7 +110,7 @@
\setuppalet
\tabskip\zeropoint
\def\rule
- {\vrule\!!width2.5em\!!height\ht\strutbox\!!depth\dp\strutbox}
+ {\vrule\!!width2.5em\!!height\strutht\!!depth\strutdp}
\def\doshowgroup##1%
{\doifdefined{\??cr#1:##1}
{\doifinset\v!nummer{#2}{##1\hskip.5em}&
@@ -127,7 +127,7 @@
\setupcolor[#1]
\stelwitruimtein[\v!geen]
\def\rule
- {\vrule\!!width4em\!!height\ht\strutbox\!!depth\dp\strutbox}
+ {\vrule\!!width4em\!!height\strutht\!!depth\strutdp}
\def\docommand##1%
{\hbox
{\graycolor[##1]{\rule}\quad
diff --git a/tex/context/base/cont-fil.tex b/tex/context/base/cont-fil.tex
index d605583bb..56cd4a687 100644
--- a/tex/context/base/cont-fil.tex
+++ b/tex/context/base/cont-fil.tex
@@ -37,6 +37,7 @@
\definefilesynonym [res-make] [res-01]
\definefilesynonym [res-base] [res-04]
\definefilesynonym [res-trace] [res-08]
+\definefilesynonym [res-log] [res-09]
\definefilesynonym [pre-general] [pre-00]
diff --git a/tex/context/base/cont-new.tex b/tex/context/base/cont-new.tex
index cdeae1d2f..5438259b6 100644
--- a/tex/context/base/cont-new.tex
+++ b/tex/context/base/cont-new.tex
@@ -16,6 +16,57 @@
%D features.
\unprotect
+
+% startplaats
+
+\writestatus{\m!systems}{beware: some patches loaded from cont-new.tex!}
+
+\def\removefunnytabulateline
+ {\ifhmode
+ \strut\crcr
+ \TABLEnoalign{\kern-\lineheight}%
+ \fi}
+
+% \def\fulltabulatecontent
+% {\tabulateheadcontent
+% \tabulatecontent
+% \tabulatetailcontent
+% \removefunnytabulateline}
+
+\newsignal\strutsignal \setfalse\sigstruts
+
+\def\begstrut
+ {\relax\ifcase\strutht\else
+ \ifconditional\sigstruts
+ \noindent\hbox{\strut}%
+ \normalpenalty\@M % \!!tenthousand
+ \normalhskip-\strutsignal
+ \normalhskip\strutsignal
+ \else
+ \strut
+ \normalpenalty\@M % \!!tenthousand
+ \normalhskip\zeropoint
+ \fi
+ \ignorespaces
+ \fi}
+
+\def\endstrut
+ {\relax\ifhmode\ifcase\strutht\else
+ \ifconditional\sigstruts
+ \ifdim\lastskip=\strutsignal
+ \unskip\unskip\unpenalty\setbox\scratchbox\lastbox
+ \else
+ \normalpenalty\@M % \!!tenthousand
+ \normalhskip\zeropoint
+ \strut
+ \fi
+ \else
+ \removeunwantedspaces
+ \normalpenalty\@M % \!!tenthousand
+ \normalhskip\zeropoint
+ \strut
+ \fi
+ \fi\fi}
\def\showexternalfigured
{\bgroup
@@ -30,31 +81,26 @@
\immediate\closeout\scratchwrite
\egroup}
-\def\setsidefloatparagraph
- {%\advance\sidefloatprogress \sidefloatbottomskip
- %\!!counta\sidefloatprogress
-\scratchdimen\sidefloatprogress
-\advance\scratchdimen \ht\strutbox
-\advance\scratchdimen -10sp % new, needed in prikkels, prevent rounding errors
-\!!counta\scratchdimen
- \divide\!!counta \baselineskip
- \ifnum\!!counta>0
- \hangindent \ifrightfloat-\fi\sidefloatwidth
- \hangafter-\!!counta
- \fi
- \global\advance\sidefloatparagraph \plusone
- \iftracesidefloats
- \hskip-\sidefloatwidth
- \color[darkgray]%
- {\vrule\!!height.5\s!pt\!!depth.5\s!pt\!!width\sidefloatwidth
- %\hskip-.25\bodyfontsize\showstruts\strut\hskip.25\bodyfontsize}%
- \llap{\showstruts\strut\hskip.25\bodyfontsize}}%
- \fi}
+% between alignment lines certain rules apply, and even a
+% simple test can mess up a table, which is why we have a
+% special test facility
+%
+% \ruledvbox
+% {\starttabulate[|l|p|]
+% \NC 1test \NC test \NC \NR
+% \tableifelse{\doifelse{a}{a}}{\NC Xtest \NC test \NC \NR}{}%
+% \stoptabulate}
+\long \def\tableifelse#1%
+ {\TABLEnoalign{#1%
+ {\aftergroup \firstoftwoarguments}%
+ {\aftergroup\secondoftwoarguments}}}
+% \long \def\tableif#1% whow, this is real ugly
+% {\TABLEnoalign{\let\gnext\gobbleoneargument#1%
+% {\let\gnext\firstofoneargument}}\gnext}
-
-\writestatus{\m!systems}{beware: some patches loaded from cont-new.tex!}
+\long \def\tableiftextelse#1{\tableifelse{\doiftextelse{#1}}}
\def\ejectinsert
{\flushnotes
@@ -760,7 +806,7 @@
\setbox\columnspanbox\hbox % depth to be checked, probably option!
{\localframed[\??ks][\c!offset=\v!overlay]{\box\columnspanbox}}%
\ht\columnspanbox\scratchdimen
- \dp\columnspanbox\dp\strutbox
+ \dp\columnspanbox\strutdp
\wd\columnspanbox\hsize
\ifbinnenkolommen
\ifnum\@@ksn>1
@@ -784,7 +830,7 @@
\snaptogrid\vbox{\box\columnspanbox}
\fi
\endgraf
- \prevdepth\dp\strutbox
+ \prevdepth\strutdp
\egroup}
\vbox\bgroup
%\topskipcorrection % becomes an option !
diff --git a/tex/context/base/cont-sys.ori b/tex/context/base/cont-sys.ori
index 755101e4e..55d304913 100644
--- a/tex/context/base/cont-sys.ori
+++ b/tex/context/base/cont-sys.ori
@@ -13,6 +13,11 @@
\unprotect
+% If you want some extras, just uncomment the following
+% line:
+%
+% \usemodule[plus]
+%
% Here you can take care of overloading some (style)
% defaults. What goes here, depends on your local system.
%
diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex
index f10dee3f5..49973594c 100644
--- a/tex/context/base/context.tex
+++ b/tex/context/base/context.tex
@@ -15,7 +15,7 @@
\catcode`\{=1 \catcode`\}=2
-\def\contextversion{2003.3.4}
+\def\contextversion{2003.3.17}
%D Welcome to the main module. When this module is ran through
%D \type{initex} or \type{tex -i} or \type{whatevertex} using
diff --git a/tex/context/base/core-buf.tex b/tex/context/base/core-buf.tex
index 5633bb069..96578ee45 100644
--- a/tex/context/base/core-buf.tex
+++ b/tex/context/base/core-buf.tex
@@ -131,8 +131,8 @@
% more accurate
%
-% \@EA\convertcommand\csname\e!start\e!buffer\endcsname\to\beginofblock % else a space
-% \@EA\convertcommand\csname\e!stop\e!buffer \endcsname\to\endofblock
+% \@EA\convertcommand\csname\e!start\v!buffer\endcsname\to\beginofblock % else a space
+% \@EA\convertcommand\csname\e!stop\v!buffer \endcsname\to\endofblock
\def\resetbuffer
{\dosingleempty\doresetbuffer}
@@ -206,9 +206,9 @@
{\doifnumberelse{\getvalue{\??bu#1\c!alinea}}
\segmentatebuffertrue\segmentatebufferfalse}%
\doifelse{#4}{}
- {\letbeundefined{\e!stop\e!buffer}% % \let\stopbuffer=\relax % \undefined
- \@EA\@EA\@EA\convertargument\@EA\e!start\e!buffer\to\beginofblock % else a space
- \@EA\@EA\@EA\convertargument\@EA\e!stop\e!buffer\to\endofblock
+ {\letbeundefined{\e!stop\v!buffer}% % \let\stopbuffer=\relax % \undefined
+ \@EA\@EA\@EA\convertargument\@EA\e!start\v!buffer\to\beginofblock % else a space
+ \@EA\@EA\@EA\convertargument\@EA\e!stop\v!buffer\to\endofblock
\let\processnextblockline\processnextbufferline}
{\letbeundefined{#4}% \letvalue{#4}=\relax % \undefined
\@EA\convertargument\csname#3\endcsname\to\beginofblock
@@ -233,7 +233,7 @@
\let\writeoutblocks\gobbleoneargument
\copyblockline}
-\letvalue{\e!start\e!buffer}\dostartbuffer
+\letvalue{\e!start\v!buffer}\dostartbuffer
% \setbuffer[name]#2\endbuffer : saves to file #1.tmp
@@ -1014,9 +1014,9 @@
% the buffer mechanism handles nesting, add some switch
-\setvalue{\e!start\e!verbergen}%
+\setvalue{\e!start\v!verbergen}%
{\dostartbuffer[buf-\nofpostponedblocks]
- [\e!start\e!verbergen][\e!stop\e!verbergen]}
+ [\e!start\v!verbergen][\e!stop\v!verbergen]}
\stelbufferin
[\c!alinea=\v!nee,
diff --git a/tex/context/base/core-des.tex b/tex/context/base/core-des.tex
index 676209341..4a5c26c1c 100644
--- a/tex/context/base/core-des.tex
+++ b/tex/context/base/core-des.tex
@@ -44,7 +44,7 @@
{\??dd#1}\c!kopletter\c!kopkleur
{\getvalue{\??dd#1\c!commando}% NAAR BUITENSTE NIVEAU !
{\begstrut\getvalue{\??dd#1\c!tekst}#4\endstrut}}%
- \rawreference{\s!def}{#2}{#3}}
+ \rawreference\s!def{#2}{#3}}
\setvalue{@@definitie\v!links}#1%
{\@@definitiehang{#1}\@@definitielinkspure\@@definitielinkshang}
@@ -99,15 +99,15 @@
\rightskip\zeropoint
#2\steluitlijnenin[\getvalue{\??dd#1\c!uitlijnen}]%
\unhcopy\@@definitiebox}%
- \ht\@@definitiebox\ht\strutbox
- \dp\@@definitiebox\dp\strutbox}
+ \ht\@@definitiebox\strutht
+ \dp\@@definitiebox\strutdp}
\def\@@definitielinkshang#1[#2]#3%
{\@@dostartdefinitie{#1}[#2]{#3}%
\mindermeldingen
\advance\!!widtha \!!widthb
\hangindent\!!widtha
- \@@makedefinitiehangbox{#1}{\raggedright}{\advance\rightskip \!!widthb}%
+ \@@makedefinitiehangbox{#1}\raggedright{\advance\rightskip \!!widthb}%
\noindent\ignorespaces
\llap
{\dontshowcomposition
@@ -119,7 +119,7 @@
\mindermeldingen
\advance\!!widtha \!!widthb
\hangindent-\!!widtha
- \@@makedefinitiehangbox{#1}{\raggedleft}{\advance\leftskip \!!widthb}%
+ \@@makedefinitiehangbox{#1}\raggedleft{\advance\leftskip \!!widthb}%
\noindent\ignorespaces
\rlap
{\mindermeldingen
@@ -138,13 +138,13 @@
\hsize\!!widtha
#2\steluitlijnenin[\getvalue{\??dd#1\c!uitlijnen}]#3%
\unhcopy\@@definitiebox}%
- \ht\@@definitiebox\ht\strutbox
- \dp\@@definitiebox\dp\strutbox
+ \ht\@@definitiebox\strutht
+ \dp\@@definitiebox\strutdp
\doifinsetelse{\getvalue{\??dd#1\c!hang}}{\v!passend,\v!ruim}
{\dimen0=\ht\@@definitiebox
\advance\dimen0 \dp\@@definitiebox
\doifvalue{\??dd#1\c!hang}\v!ruim
- {\advance\dimen0 .5\ht\strutbox}%
+ {\advance\dimen0 .5\strutht}%
\getnoflines{\dimen0}%
\hangafter-\noflines}
{\hangafter-\getvalue{\??dd#1\c!hang}}}%
@@ -289,7 +289,7 @@
\endgroup
\getvalue{\??dd#1\c!na}%
\egroup % temporary hack
- \doifvalue{\??dd#1\c!springvolgendein}\v!nee\noindentation}
+ \dochecknextindentation{\??dd#1}}
\def\@@dodefinitie#1%
{\dostartattributes{\??dd#1}\c!letter\c!kleur\empty
@@ -348,7 +348,6 @@
\setvalue{\e!stop#1}%
{\@@stopdefinitie{#1}}}%
-
\def\@@startdefinitie[#1][#2]%
{\doifelsevalue{\??dd#1\s!do\c!status}\v!start
{\@@startsomedefinitie{#1}[#2]{}}
@@ -405,11 +404,11 @@
\def\special@@definitiewoord#1#2#3#4[#5]#6#7%
{\strut
\doifelsevalue{\??dd#1\c!nummer}\v!nee
- {\!!doneafalse}
+ \!!doneafalse
{\doifelse{#5}{-}
- {\!!doneafalse}
- {\!!doneatrue}}%
- \chardef\definitiekoppeling0
+ \!!doneafalse
+ \!!doneatrue}%
+ \chardef\definitiekoppeling\zerocount
\iflocation
\doifvaluesomething{\??dd#1\c!koppeling}
{\processaction % genereert > of <
@@ -430,10 +429,10 @@
\preparethenumber{\??dd#1}\voorafgaandenummer\preparednumber
\ifcase\definitiekoppeling \or
\xdef\internaldoornummer{#3{#1}}%
- \rawreference{\s!num}{#1:\internaldoornummer}{}%
+ \rawreference\s!num{#1:\internaldoornummer}{}%
\or
\xdef\internaldoornummer{\countervalue{\??dd\c!koppeling#1}}%
- \rawreference{\s!num}{#1:\internaldoornummer}{}%
+ \rawreference\s!num{#1:\internaldoornummer}{}%
\fi
\egroup
\fi
@@ -448,16 +447,16 @@
\domakednnummer{#1}{#2}{#3}}}%
\iflocation\ifcase\definitiekoppeling \else
\edef\localconnection{\getvalue{\??dd#1\c!koppeling}:\internaldoornummer}%
- \doifreferencefoundelse{\localconnection}
+ \doifreferencefoundelse\localconnection
{\in[\localconnection]}{}% genereert > of <
\fi\fi}%
- \doifnot{#5}{-}{\rawreference{\s!num}{#5}{#3{#1}}}%
+ \doifnot{#5}{-}{\rawreference\s!num{#5}{#3{#1}}}%
\else % Why was this strange expansion needed?
\hbox
{\edef\!!stringa{\showdnpuretext{#2#1}}% nog eens testen binnen \expanded
\expanded{\doattributes{\??dd#1}\noexpand\c!kopletter\noexpand\c!kopkleur
{\noexpand\getvalue{\??dd#1\c!commando}{\!!stringa}}}%
- \doifnot{#5}{-}{\rawreference{\s!num}{#5}{}}}%
+ \doifnot{#5}{-}{\rawreference\s!num{#5}{}}}%
\fi}
\def\@@ddsetsubsubsubnummer#1%
diff --git a/tex/context/base/core-fig.tex b/tex/context/base/core-fig.tex
index 11eb2a8e6..2a98f6814 100644
--- a/tex/context/base/core-fig.tex
+++ b/tex/context/base/core-fig.tex
@@ -1505,6 +1505,9 @@
\def\useexternalfigure
{\doquadrupleempty\douseexternalfigure}
+\unexpanded\def\externalfigure
+ {\dotripleempty\doexternalfigure}
+
\def\doexternalfigure[#1][#2][#3]%
{\bgroup
\doifelsenothing{#1}
@@ -1513,10 +1516,16 @@
{\useexternalfigure[\s!dummy][#1][#2][#3]%
\getexternalfigure{\s!dummy}[#3]}
{\getexternalfigure{#1}[#2]}}%
+ \globallet\currentresourcecomment\empty
\egroup}
-\unexpanded\def\externalfigure%
- {\dotripleempty\doexternalfigure}
+\long\def\resourcecomment#1%
+ {\long\gdef\currentresourcecomment{#1}}
+
+\long\def\startresourcecomment#1\stopresourcecomment
+ {\long\gdef\currentresourcecomment{#1}}
+
+\let\currentresourcecomment\empty
%D Two alternatives, more settings needed.
diff --git a/tex/context/base/core-fld.tex b/tex/context/base/core-fld.tex
index a0138a552..9bdc263a1 100644
--- a/tex/context/base/core-fld.tex
+++ b/tex/context/base/core-fld.tex
@@ -945,7 +945,7 @@
\lower2ex\hbox to \zeropoint
{\fitfield[\currentsystemfield:but]}%
#2}%
- \ht0=\ht\strutbox\dp0=\dp\strutbox\box0
+ \ht0\strutht\dp0\strutdp\box0
\egroup}
%D And one more:
diff --git a/tex/context/base/core-fnt.tex b/tex/context/base/core-fnt.tex
index 9bd68420a..c51f07103 100644
--- a/tex/context/base/core-fnt.tex
+++ b/tex/context/base/core-fnt.tex
@@ -476,9 +476,9 @@
\dimen0=\underbarlevel\dimen0
\ifdone \else
%\advance\dimen0 -1pt
- \advance\dimen0 -\ht\strutbox
+ \advance\dimen0 -\strutht
\fi
- \dimen2=\dimen0
+ \dimen2\dimen0
\advance\dimen2 \@@onlijndikte
\dododounderbar{-\dimen0}{\dimen2}{#1}%
\egroup}
diff --git a/tex/context/base/core-grd.tex b/tex/context/base/core-grd.tex
index 8bf85846c..5d3644bdd 100644
--- a/tex/context/base/core-grd.tex
+++ b/tex/context/base/core-grd.tex
@@ -98,11 +98,11 @@
\ifdim\prevdepth>\zeropoint\kern-\prevdepth\fi
\setbox0\null
\wd0\hsize
- \dp0\dp\strutbox
+ \dp0\strutdp
\nointerlineskip
\ruledvbox{\box0}%
\egroup
- \prevdepth\dp\strutbox}%
+ \prevdepth\strutdp}%
\def\dotopbaselinecorrection
{\hrule\!!height\thetopbaselinecorrection}%
\def\dobotbaselinecorrection
@@ -110,15 +110,15 @@
\def\dobaselinecorrection
{\ifdim\prevdepth>\zeropoint\kern-\prevdepth\fi
- \kern\dp\strutbox
- \prevdepth\dp\strutbox}
+ \kern\strutdp
+ \prevdepth\strutdp}
\def\baselinecorrection
{\endgraf
\ifvmode
\ifdim\prevdepth<\maxdimen
\ifdim\prevdepth<\zeropoint \else
- \ifdim\prevdepth<\dp\strutbox
+ \ifdim\prevdepth<\strutdp
\dobaselinecorrection
\fi
\fi
@@ -136,7 +136,6 @@
\fi
\fi}
-
% Beware, keep this one as it is, see for instance module
% m-steps.tex, where we apply a \localhsize to the \vbox, in
% order to follow narrower and side floats !
@@ -235,7 +234,7 @@
\setbaselinecorrections
\dobotbaselinecorrection
\allowbreak % new, otherwise problems when many in a row
- \prevdepth\dp\strutbox
+ \prevdepth\strutdp
\egroup
\fi}
@@ -367,7 +366,7 @@
% \forcepresnaptrue
% \fi
% \forcedpresnapcorrection
-% \ifdim\nextboxht>\ht\strutbox
+% \ifdim\nextboxht>\strutht
% \scratchdimen\nextboxht
% \ifcase\@@presnap\relax
% \ifdim\scratchskip>\zeropoint\relax
@@ -411,7 +410,7 @@
% \vskip\scratchdimen
% \fi \fi
% \fi
-% \ifdim\nextboxdp>\dp\strutbox
+% \ifdim\nextboxdp>\strutdp
% \getnoflines{\nextboxdp}%
% \advance\noflines -1
% \ifnum\noflines>0
@@ -426,14 +425,14 @@
% \ifnum\@@extrasnap=3 \advance\scratchdimen \extrasnapsign\lineheight \fi
% \edef\postsnap{\the\scratchdimen}%
% \ifstrutsnapping
-% \nextboxht\ht\strutbox
-% \nextboxdp\dp\strutbox
+% \nextboxht\strutht
+% \nextboxdp\strutdp
% \else
% \scratchdimen\presnap
-% \advance\scratchdimen \ht\strutbox
+% \advance\scratchdimen \strutht
% \nextboxht\scratchdimen
% \scratchdimen\postsnap
-% \advance\scratchdimen \dp\strutbox
+% \advance\scratchdimen \strutdp
% \nextboxdp\scratchdimen
% \fi
% \hbox{\tracedsnapping\flushnextbox}%
@@ -462,7 +461,7 @@
% \ifshowgridboxes
% \setbox\nextbox\hbox{\color[grid:two]{\ruledhbox{\black\flushnextbox}}}%
% \fi
-% \nextboxdp\dp\strutbox
+% \nextboxdp\strutdp
% \dimen4=\nextboxht
% \dimen6=\nextboxdp
% \setbox\nextbox\vbox to \scratchdimen
@@ -568,7 +567,7 @@
\forcepresnaptrue
\fi
\forcedpresnapcorrection
- \ifdim\nextboxht>\ht\strutbox
+ \ifdim\nextboxht>\strutht
\scratchdimen\nextboxht
\ifcase\@@presnap\relax
\ifdim\scratchskip>\zeropoint\relax
@@ -612,7 +611,7 @@
\vskip\scratchdimen
\fi \fi
\fi
- \ifdim\nextboxdp>\dp\strutbox
+ \ifdim\nextboxdp>\strutdp
\getnoflines{\nextboxdp}%
\advance\noflines -1
\ifnum\noflines>0
@@ -627,14 +626,14 @@
\ifnum\@@extrasnap=3 \advance\scratchdimen \extrasnapsign\lineheight \fi
\edef\postsnap{\the\scratchdimen}%
\ifstrutsnapping
- \nextboxht\ht\strutbox
- \nextboxdp\dp\strutbox
+ \nextboxht\strutht
+ \nextboxdp\strutdp
\else
\scratchdimen\presnap
- \advance\scratchdimen \ht\strutbox
+ \advance\scratchdimen \strutht
\nextboxht\scratchdimen
\scratchdimen\postsnap
- \advance\scratchdimen \dp\strutbox
+ \advance\scratchdimen \strutdp
\nextboxdp\scratchdimen
\fi
\hbox{\tracedsnapping\flushnextbox}%
@@ -662,7 +661,7 @@
\ifshowgridboxes
\setbox\nextbox\hbox{\color[grid:two]{\ruledhbox{\black\flushnextbox}}}%
\fi
- \nextboxdp\dp\strutbox
+ \nextboxdp\strutdp
\dimen4=\nextboxht
\dimen6=\nextboxdp
\iftracegridsnapping
@@ -757,7 +756,7 @@
{\ifgridsnapping
\dowithnextbox
{\scratchdimen\nextboxht
- \advance\scratchdimen -\ht\strutbox
+ \advance\scratchdimen -\strutht
\advance\scratchdimen \topskip
\nextboxht\scratchdimen
\nextboxdp\zeropoint
@@ -782,7 +781,7 @@
% {\forgetall
% \vskip\zeropoint \!!plus \nextboxht
% \copy\nextbox
-% \kern.5\dp\strutbox % VOORLOPIGE WAARDE
+% \kern.5\strutdp % VOORLOPIGE WAARDE
% \vskip\zeropoint \!!plus \nextboxdp}
% \noindent\snaptogrid\vbox{\flushnextbox}%
% \egroup}
@@ -793,7 +792,7 @@
% options, will be configurable some day ...
\def\centertogrid % usage: see ie pascal / stepcharts
- {\snaptogrid[\v!midden,.5\dp\strutbox]\vbox}
+ {\snaptogrid[\v!midden,.5\strutdp]\vbox}
\ifx\startbaselinecorrection\undefined \wait \fi % change order
@@ -817,7 +816,7 @@
\ruledvbox % calculated size
{\getrawnoflines{#3}% \getnoflines{#3}%
\vskip\topskip
- \vskip-\ht\strutbox
+ \vskip-\strutht
\scratchdimen#2\advance\scratchdimen \lineheight
\dorecurse\noflines
{\strut
diff --git a/tex/context/base/core-hlp.tex b/tex/context/base/core-hlp.tex
index 90503bf30..198a5e09a 100644
--- a/tex/context/base/core-hlp.tex
+++ b/tex/context/base/core-hlp.tex
@@ -24,10 +24,10 @@
\unprotect
\defineframedtext
- [\e!helptext]
+ [\v!helptext]
\setupframedtexts
- [\e!helptext]
+ [\v!helptext]
[\c!breedte=.75\tekstbreedte,
\c!uitlijnen=\v!normaal,
\c!kader=\v!uit,
@@ -87,33 +87,36 @@
{\nofhelpdataentries}%
{#1}}}
-\setvalue{\e!start\e!helptext}[#1]%
+\setvalue{\e!start\v!helptext}[#1]%
{\iflocation
\global\settrue\somehelpdatadefined
- \setvalue{\e!stop\e!helptext}%
- %{\definesymbol[helpinfo:#1][\getvalue\e!helptext{\getbuffer[\e!helptext]}]%
- {\definesymbol[helpinfo:#1][{\doframedtext[\e!helptext]{\getbuffer[\e!helptext]}}]%
- \dopresetfieldsymbol{helpinfo:#1}}%
+ \setvalue{\e!stop\v!helptext}%
+ %{\definesymbol[helpinfo:#1][{\doframedtext[\v!helptext]{\getbuffer[\v!helptext]}}]%
+ % \dopresetfieldsymbol{helpinfo:#1}}%
+ {\definesymbol[\v!helptext:#1][{\doframedtext[\v!helptext]{\getbuffer[\v!helptext]}}]%
+ \dopresetfieldsymbol{\v!helptext:#1}}%
\else
- \letvalue{\e!stop\e!helptext}\relax
+ \letvalue{\e!stop\v!helptext}\relax
\fi
- \dostartbuffer[\e!helptext][\e!start\e!helptext][\e!stop\e!helptext]}
+ \dostartbuffer[\v!helptext][\e!start\v!helptext][\e!stop\v!helptext]}
\long\def\helptext[#1]#2%
{\iflocation
\global\settrue\somehelpdatadefined
- %\definesymbol[helpinfo:#1][\getvalue\e!helptext{#2}]%
- \definesymbol[helpinfo:#1][{\doframedtext[\e!helptext]{#2}}]%
- \dopresetfieldsymbol{helpinfo:#1}%
+ %\definesymbol[helpinfo:#1][{\doframedtext[\v!helptext]{#2}}]%
+ %\dopresetfieldsymbol{helpinfo:#1}%
+ \definesymbol[\v!helptext:#1][{\doframedtext[\v!helptext]{#2}}]%
+ \dopresetfieldsymbol{\v!helptext:#1}%
\fi}
\let\definehelptext\helptext % for backward compabilities sake
\def\dohelpdata#1%
- {\setbox0=\hbox
+ {\setbox0\hbox
{\startoverlay
{\box0}
- {\definemainfield[help:#1][check][helpsetup][helpinfo:#1][helpinfo:#1]%
+ %{\definemainfield[help:#1][check][helpsetup][helpinfo:#1][helpinfo:#1]%
+ {\definemainfield[help:#1][check][helpsetup][\v!helptext:#1][\v!helptext:#1]%
\fitfield[help:#1]}
\stopoverlay}}
diff --git a/tex/context/base/core-int.tex b/tex/context/base/core-int.tex
index 666786674..5020c5add 100644
--- a/tex/context/base/core-int.tex
+++ b/tex/context/base/core-int.tex
@@ -1115,7 +1115,7 @@
\setvalue{\??am\??am\v!geen}{3}
\setvalue{\??am\??am }{1} % default
-\processbetween{\e!interactiemenu}\dostartinteractiemenu
+\processbetween{\v!interactiemenu}\dostartinteractiemenu
\def\dostartinteractiemenu#1%
{\dodostartinteractiemenu#1\dodostopinteractiemenu}
@@ -2112,7 +2112,7 @@
\newbox\commentbox
\def\doflushcommentanchors
- {\inmarge{\hbox{\raise\ht\strutbox\box\commentbox}}}
+ {\inmarge{\hbox{\raise\strutht\box\commentbox}}}
\def\flushcommentanchors % in everypar so indirect
{\ifvoid\commentbox\else \doflushcommentanchors \fi}
@@ -2120,7 +2120,7 @@
\def\stelcommentaarin
{\dodoubleargument\getparameters[\??cc]}
-\setvalue{\e!start\e!commentaar}% the dummy triple gobbles trailing spaces
+\setvalue{\e!start\v!commentaar}% the dummy triple gobbles trailing spaces
{\dotripleempty\dostartcommentaar}
\def\commentaar
@@ -2157,14 +2157,14 @@
\egroup}}%
{\long\def\docommando##1%
{\egroup}}%
- \grabuntil{\e!stop\e!commentaar}\docommando}
+ \grabuntil{\e!stop\v!commentaar}\docommando}
\def\docommentaar[#1][#2]#3%
{\doif\@@ccstatus\v!start
{\hbox to \zeropoint
{\dopreparecommentaar{#1}{#2}%
\hskip-\@@ccmarge
- \raise\ht\strutbox\hbox{\dodocommentaar{#3}}}}%
+ \raise\strutht\hbox{\dodocommentaar{#3}}}}%
\ignorespaces}
% \startcommentaar
diff --git a/tex/context/base/core-itm.tex b/tex/context/base/core-itm.tex
index 0d7865cf8..445b634d4 100644
--- a/tex/context/base/core-itm.tex
+++ b/tex/context/base/core-itm.tex
@@ -578,7 +578,7 @@
\ifnum\itemlevel=\plusone
\doitembreak\allowbreak % toegevoegd
\getitemparameter1\c!na
- \doif\@@oospringvolgendein\v!nee\noindentation
+ \dochecknextindentation\??oo
\fi
\fi
\endgroup
@@ -888,12 +888,12 @@
% efficient default itemize as well as upward compatible
% definition:
-\defineitemgroup [\e!itemize] [\c!niveaus=6]
+\defineitemgroup [\v!itemize] [\c!niveaus=6]
% keep these, needed for styles:
-% \def\startitemize {\startitemgroup[]}
+% \def\startitemize {\startitemgroup[\v!itemize]}
% \def\stopitemize {\stopitemgroup}
-% \def\setupitemize {\setupitemgroup[]}
+% \def\setupitemize {\setupitemgroup[\v!itemize]}
\protect \endinput
diff --git a/tex/context/base/core-job.tex b/tex/context/base/core-job.tex
index 8d4e1dbb6..b6ae082e0 100644
--- a/tex/context/base/core-job.tex
+++ b/tex/context/base/core-job.tex
@@ -355,8 +355,8 @@
{\currentproject,\currentproduct,%
\currentcomponent,\currentenvironment}
{\loadedlocalenvironments}
- {\letvalue{\e!stop\e!deelomgeving}\relax}
- {\grabuntil{\e!stop\e!deelomgeving}\relax}}
+ {\letvalue{\e!stop\v!deelomgeving}\relax}
+ {\grabuntil{\e!stop\v!deelomgeving}\relax}}
\def\startproduct{\startprodukt}
\def\stopproduct {\stopprodukt}
@@ -386,13 +386,13 @@
\def\doifsetupselse#1%
{\doifdefinedelse{\??su#1}}
-\long\@EA\def\csname\e!start\e!instellingen\endcsname#1 %
+\long\@EA\def\csname\e!start\v!instellingen\endcsname#1 %
{\bgroup
\catcode`\^^M=\@@ignore
\xdostartsetups{#1}}
\expanded
- {\long\noexpand\def\noexpand\xdostartsetups##1##2\csname\e!stop\e!instellingen\endcsname%
+ {\long\noexpand\def\noexpand\xdostartsetups##1##2\csname\e!stop\v!instellingen\endcsname%
{\egroup
\long\noexpand\setvalue{\??su##1}{##2}}}
diff --git a/tex/context/base/core-ltb.tex b/tex/context/base/core-ltb.tex
index 1dfcdffc9..bdb81d4f5 100644
--- a/tex/context/base/core-ltb.tex
+++ b/tex/context/base/core-ltb.tex
@@ -171,9 +171,9 @@
\else
\scratchdimen\teksthoogte
\fi
- \advance\scratchdimen -\dp\strutbox
+ \advance\scratchdimen -\strutdp
\ifdim\prevdepth<\maxdimen\ifdim\prevdepth>\zeropoint
- \global\advance\scratchdimen -\dp\strutbox
+ \global\advance\scratchdimen -\strutdp
\global\advance\scratchdimen -\parskip
\fi\fi
\getrawnoflines\scratchdimen
diff --git a/tex/context/base/core-mak.tex b/tex/context/base/core-mak.tex
index e8c75c9c1..d258ad9ec 100644
--- a/tex/context/base/core-mak.tex
+++ b/tex/context/base/core-mak.tex
@@ -21,7 +21,7 @@
% - still undocumented and also not in setupb yet
% - kan ook intern/direct (scheelt duplicatie), zie \framedtext
-\def\dodefinieerplaats[#1][#2]%
+\def\dodefineplacement[#1][#2]%
{\getparameters
[\??pl#1]
[\c!links=\hss,
@@ -29,31 +29,71 @@
\c!regelcorrectie=\v!uit,
\c!dieptecorrectie=\v!uit,
\c!marge=\v!standaard,
+ \c!grid=\v!midden,
%\c!voor=,
%\c!na=,
#2]%
- \setvalue{\e!plaats#1}{\doplaats[\??pl#1]}}
+ \setvalue{\e!plaats#1}{\doplacement[\??pl#1]}}
-\def\definieerplaats
- {\dodoubleempty\dodefinieerplaats}
+\def\defineplacement
+ {\dodoubleempty\dodefineplacement}
-\def\doplaats
- {\dodoubleempty\dodoplaats}
+\def\setupplacement
+ {\dodoubleempty\dosetupplacement}
-\def\dodoplaats[#1][#2]% correctie moet mooier
+\def\dosetupplacement[#1]%
+ {\dodoubleempty\getparameters[\??pl#1]}
+
+\def\doplacement
+ {\dodoubleempty\dodoplacement}
+
+% \def\dodoplacement[#1][#2]% correctie moet mooier
+% {\bgroup
+% \dowithnextbox
+% {\setlocalhsize
+% \getparameters[#1][#2]%
+% \getvalue{#1\c!voor}%
+% \doifvalue{#1\c!regelcorrectie}\v!aan \startbaselinecorrection
+% \doifinset{\getvalue{#1\c!marge}}{\v!standaard,\v!ja}\noindent
+% \hbox to \localhsize
+% {\getvalue{#1\c!links}%
+% \flushnextbox
+% \getvalue{#1\c!rechts}}%
+% \doifvalue{#1\c!dieptecorrectie}\v!aan\baselinecorrection
+% \doifvalue{#1\c!regelcorrectie }\v!aan\stopbaselinecorrection
+% \getvalue{#1\c!na}%
+% \egroup}
+% \vbox}
+
+\def\dodoplacement[#1][#2]% correctie moet mooier
{\bgroup
- \dowithnextbox
+ \dowithnextboxcontent
+ {\forgetall}
{\setlocalhsize
\getparameters[#1][#2]%
\getvalue{#1\c!voor}%
- \doifvalue{#1\c!regelcorrectie}\v!aan \startbaselinecorrection
- \doifinset{\getvalue{#1\c!marge}}{\v!standaard,\v!ja}\noindent
- \hbox to \localhsize
+ \begingroup
+ \positioningparfalse
+ \setbox\nextbox\hbox to \localhsize
{\getvalue{#1\c!links}%
\flushnextbox
\getvalue{#1\c!rechts}}%
- \doifvalue{#1\c!dieptecorrectie}\v!aan\baselinecorrection
- \doifvalue{#1\c!regelcorrectie }\v!aan\stopbaselinecorrection
+ \ifinsidefloat \else
+ \addlocalbackgroundtobox\nextbox
+ \fi
+ \ifgridsnapping
+ \doifundefined{#1\c!grid}{\letvalue{#1\c!grid}\v!midden}%
+ % unchecked
+ \doifinset{\getvalue{#1\c!marge}}{\v!standaard,\v!ja}\noindent
+ \snaptogrid[\getvalue{#1\c!grid}]\hbox{\flushnextbox}%
+ \else
+ \doifvalue{#1\c!regelcorrectie}\v!aan \startbaselinecorrection
+ \doifinset{\getvalue{#1\c!marge}}{\v!standaard,\v!ja}\noindent
+ \flushnextbox
+ \doifvalue{#1\c!dieptecorrectie}\v!aan\baselinecorrection
+ \doifvalue{#1\c!regelcorrectie }\v!aan\stopbaselinecorrection
+ \fi
+ \endgroup
\getvalue{#1\c!na}%
\egroup}
\vbox}
diff --git a/tex/context/base/core-mat.tex b/tex/context/base/core-mat.tex
index b9517053c..b70fc9a3d 100644
--- a/tex/context/base/core-mat.tex
+++ b/tex/context/base/core-mat.tex
@@ -163,8 +163,8 @@
\def\doformulenummer
{\dotripleempty\dodoformulenummer}
-\setvalue{\e!start\e!formule}{\dostartformula{}}
-\setvalue{\e!stop \e!formule}{\dostopformula}
+\setvalue{\e!start\v!formule}{\dostartformula{}}
+\setvalue{\e!stop \v!formule}{\dostopformula}
\def\definieerformule%
{\dodoubleempty\dodefinieerformule}
@@ -178,8 +178,8 @@
\c!springvolgendein,\c!variant,
\c!strut,\c!uitlijnen,\c!afstand]%
\setupformulas[#1][#2]%
- \setvalue{\e!start#1\e!formule}{\dostartformula{#1}}%
- \setvalue{\e!stop #1\e!formule}{\dostopformula}}}
+ \setvalue{\e!start#1\v!formule}{\dostartformula{#1}}%
+ \setvalue{\e!stop #1\v!formule}{\dostopformula}}}
\def\setupformulas
{\dodoubleempty\dosetupformulas}
@@ -272,16 +272,16 @@
\let\setdisplayskips\relax
\ifoptimizedisplayspacing
\ifdim\lastlinewidth>\zeropoint
- \abovedisplayshortskip-\ht\strutbox\relax
+ \abovedisplayshortskip-\strutht\relax
\fi
\else
\resetlastlinewidth
\fi
- \getvalue{\e!start\getvalue{\??fm\currentformula\c!variant}\e!formule}}
+ \getvalue{\e!start\getvalue{\??fm\currentformula\c!variant}\v!formule}}
\def\switchtoformulabodyfont{\switchtobodyfont}
-\setvalue{\e!formule}{\dosingleempty\doformula}
+\setvalue{\v!formule}{\dosingleempty\doformula}
\def\doformula[#1]#2%
{\begingroup
@@ -294,10 +294,10 @@
\def\dostopformula
{\doplaceformulanumber
- \getvalue{\e!stop\getvalue{\??fm\currentformula\c!variant}\e!formule}%
+ \getvalue{\e!stop\getvalue{\??fm\currentformula\c!variant}\v!formule}%
\resetlastlinewidth
\nonoindentation
- \doifvalue{\??fm\currentformula\c!springvolgendein}\v!nee\noindentation
+ \dochecknextindentation{\??fm\currentformula}%
\egroup}
\newif\ifinformula
@@ -382,8 +382,8 @@
{\dotripleargument\dodefineformulaalternative}
\def\dodefineformulaalternative[#1][#2][#3]%
- {\setvalue{\e!start#1\e!formule}{#2}%
- \setvalue{\e!stop #1\e!formule}{#3}}
+ {\setvalue{\e!start#1\v!formule}{#2}%
+ \setvalue{\e!stop #1\v!formule}{#3}}
\defineformulaalternative[\s!default][\startdisplaymath][\stopdisplaymath]
diff --git a/tex/context/base/core-mis.tex b/tex/context/base/core-mis.tex
index 2d86723fd..3478d2004 100644
--- a/tex/context/base/core-mis.tex
+++ b/tex/context/base/core-mis.tex
@@ -539,7 +539,7 @@
\def\doorsnede
{\hbox{\rlap/$\circ$} }
-\def\punten
+\unexpanded\def\punten
{\dosingleempty\dopunten}
\def\dopunten[#1]%
@@ -547,12 +547,12 @@
\hbox to \iffirstargument#1\else5\fi \scratchdimen
{\leaders\hbox to \scratchdimen{\hss.\hss}\hss}}
-\def\ongeveer
+\unexpanded\def\ongeveer
{\mathematics\pm}
% for compatibility
-\def\unknown
+\unexpanded\def\unknown
{\dontleavehmode\punten[3]}
\def\leftboundarycharacter#1#2%
@@ -889,7 +889,7 @@
\let\dodostopdelimitedtextpar\endgraf}
{\startsmaller[#1]\let\dodostopdelimitedtextpar\stopsmaller}%
% so far
- \doif{\delimitedtextparameter\c!springvolgendein}\v!nee\noindentation
+ \dochecknextindentation{\??ci\currentdelimitedtext}%
\dostartattributes{\??ci\currentdelimitedtext}\c!letter\c!kleur\empty
\leftdelimitedtextmark
\doglobal\incrementvalue{\??ci\currentdelimitedtext\c!niveau}%
@@ -1372,23 +1372,23 @@
\stopmessages
\definetabulate
- [\e!legenda]
+ [\v!legenda]
[|emj1|i1|mR|]
\setuptabulate
- [\e!legenda]
+ [\v!legenda]
[\c!eenheid=.75em,\c!binnen=\setquicktabulate\leg,EQ={=}]
\definetabulate
- [\e!legenda][\v!twee]
+ [\v!legenda][\v!twee]
[|emj1|emk1|i1|mR|]
\definetabulate
- [\e!gegeven]
+ [\v!gegeven]
[|R|ecmj1|i1mR|]
\setuptabulate
- [\e!gegeven]
+ [\v!gegeven]
[\c!eenheid=.75em,\c!binnen=\setquicktabulate\geg,EQ={=}]
\unexpanded\def\xbox
@@ -1759,7 +1759,7 @@
\box#1\relax
\ifcase\pairedlocationb\hss\or\or\or\or\hss\fi}}
-\definepairedbox[\e!legenda]
+\definepairedbox[\v!legenda]
%D Goody:
@@ -1846,10 +1846,10 @@
{\ifx\nexttoken\egroup \else % the next box is empty
\hsize\wd0
\steluitlijnenin[\combinationparameter\c!uitlijnen]%
-\dostartattributes{\??co\currentcombination}\c!letter\c!kleur\empty
+ \dostartattributes{\??co\currentcombination}\c!letter\c!kleur\empty
\bgroup
\aftergroup\endstrut
-\aftergroup\dostopattributes
+ \aftergroup\dostopattributes
\aftergroup\egroup
\begstrut
\fi}%
@@ -1954,6 +1954,7 @@
\def\flushcombinationstack
{\noalign
{\ifdim\ht\combinationstack>\zeropoint
+\nointerlineskip % nieuw
\@@cotussen
\global\horcombination\maxhorcombination
\globallet\doflushcombinationstack\dodoflushcombinationstack
diff --git a/tex/context/base/core-nav.tex b/tex/context/base/core-nav.tex
index e3e2e3a76..60877f953 100644
--- a/tex/context/base/core-nav.tex
+++ b/tex/context/base/core-nav.tex
@@ -137,19 +137,21 @@
\newif\iflocationsplit
\def\resetgoto
- {\global\let\@@ia@@hoogte\!!zeropoint
- \global\let\@@ia@@diepte\!!zeropoint}
+ {\globallet\@@ia@@hoogte\!!zeropoint
+ \globallet\@@ia@@diepte\!!zeropoint}
\resetgoto
\def\presetgoto
{\iflocationstrut
\setstrut
- \xdef\@@ia@@hoogte{\the\ht\strutbox}%
- \xdef\@@ia@@diepte{\the\dp\strutbox}%
+ %\xdef\@@ia@@hoogte{\the\strutht}%
+ %\xdef\@@ia@@diepte{\the\strutdp}%
+ \globallet\@@ia@@hoogte\strutheight
+ \globallet\@@ia@@diepte\strutdepth
\else
- \global\let\@@ia@@hoogte\@@iahoogte
- \global\let\@@ia@@diepte\@@iadiepte
+ \globallet\@@ia@@hoogte\@@iahoogte
+ \globallet\@@ia@@diepte\@@iadiepte
\fi}
%D In the macros that deal with making areas into hyperlinks,
diff --git a/tex/context/base/core-not.tex b/tex/context/base/core-not.tex
index e9afb604d..77eec6bc7 100644
--- a/tex/context/base/core-not.tex
+++ b/tex/context/base/core-not.tex
@@ -441,8 +441,8 @@
\forgetall
\setfootnotebodyfont
\redoconvertfont % to undo \undo calls in in headings etc
- \splittopskip\ht\strutbox % not actually needed here
- \splitmaxdepth\dp\strutbox % not actually needed here
+ \splittopskip\strutht % not actually needed here
+ \splitmaxdepth\strutdp % not actually needed here
\iffixedlayoutdimensions % ugly hack, will change
\linkermargeafstand\@@vnmargeafstand
\rechtermargeafstand\linkermargeafstand
@@ -571,7 +571,7 @@
\c!strut=\v!nee,
\c!offset=\v!overlay]
{\ifdim\dp0=\zeropoint % this hack is needed because \vadjust
- \hbox{\lower\dp\strutbox\box0}% % in margin number placement
+ \hbox{\lower\strutdp\box0}% % in margin number placement
\else % hides the (always) present depth
\box0
\fi}%
@@ -705,7 +705,7 @@
\c!strut=\v!nee,
\c!offset=\v!overlay]
{\ifdim\dp0=\zeropoint % this hack is needed because \vadjust
- \hbox{\lower\dp\strutbox\box0}% % in margin number placement
+ \hbox{\lower\strutdp\box0}% % in margin number placement
\else % hides the (always) present depth
\box0
\fi}}%
diff --git a/tex/context/base/core-ntb.tex b/tex/context/base/core-ntb.tex
index e97e12955..d6ad8278a 100644
--- a/tex/context/base/core-ntb.tex
+++ b/tex/context/base/core-ntb.tex
@@ -64,7 +64,7 @@
\else
\par
\ifdim\prevdepth<\zeropoint % =-1000pt ?
- \vskip-\dp\strutbox
+ \vskip-\strutdp
\else
\removebottomthings
\fi
@@ -471,7 +471,7 @@
\endTBL
% wrong ! ! ! better to have an auto-offset-overlay
% \ifnum\TBLlevel>1
- % \vskip-\dp\strutbox
+ % \vskip-\strutdp
% \fi
\egroup
\egroup
@@ -596,8 +596,9 @@
\setbox0\vbox{\trialtypesettingtrue \the\tbltoks}%
\ifautoTBLspread
% experimental, stretch non fixed cells to \hsize
- \checktblwidthsone % trial run
- \checktblwidthstwo % real run
+ \checktblwidthsone % trial run
+ \checktblwidthstwo % real run
+ \stretchtblwidths
\let\handleTBLcell\dohandleTBLcellB
\setbox\scratchbox\vbox{\trialtypesettingtrue \the\tbltoks}%
\else\ifdim\wd0>\hsize
@@ -687,6 +688,21 @@
\vbox{\the\tbltoks}%
\fi\fi}
+\def\stretchtblwidths
+ {\!!dimend\zeropoint
+ \dorecurse\maximumcol
+ {\advance\!!dimend\gettblwid\recurselevel}%
+ % distribute width (stretch)
+ \ifdim\!!dimend<\hsize
+ \advance\!!dimend-\hsize
+ \!!dimend-\!!dimend
+ \divide\!!dimend\maximumcol
+ \dorecurse\maximumcol
+ {\scratchdimen\gettblwid\recurselevel
+ \advance\scratchdimen\!!dimend
+ \settblwid\recurselevel{\the\scratchdimen}}%
+ \fi}
+
% \def\splittblbox#1% #1 <> 0/2
% {\unvbox#1}
@@ -769,17 +785,17 @@
{\let\xrowTBL\recurselevel
\dorecurse\maximumcol
{\let\xcolTBL\recurselevel
- \count0=0\gettblrow\xrowTBL\xcolTBL\relax
+ \!!countb=0\gettblrow\xrowTBL\xcolTBL\relax
% check row span
- \ifnum\count0>1
+ \ifnum\!!countb>1
% current height in row
\dimen0=\gettblht\xrowTBL\xcolTBL
% find nearest height in row
\dimen2=\zeropoint
\dorecurse\maximumcol
{\ifnum\recurselevel=\xcolTBL\else
- \count2=0\gettblrow\xrowTBL\recurselevel\relax
- \ifnum\count2=\plusone
+ \!!countc=0\gettblrow\xrowTBL\recurselevel\relax
+ \ifnum\!!countc=\plusone
\dimen4=\gettblht\xrowTBL\recurselevel\relax
\ifdim\dimen2<\dimen4
\dimen2=\dimen4
@@ -789,7 +805,7 @@
\let\xxrowTBL\xrowTBL
% calculate cummulative height
\dimen4=\dimen2
- \dorecurse{\count0}
+ \dorecurse{\!!countb}
{\ifnum\xxrowTBL=\xrowTBL\else
\advance\dimen4 \gettblhei\xxrowTBL
\fi
@@ -797,10 +813,10 @@
% distribute overshoot equally
\ifdim\dimen4<\dimen0
\advance\dimen0 -\dimen4
- \divide\dimen0 \count0
+ \divide\dimen0 \!!countb
\let\xxrowTBL\xrowTBL
\settblhei\xrowTBL{\the\dimen2}%
- \dorecurse{\count0}
+ \dorecurse{\!!countb}
{\dorecurse\maximumcol
{\ifnum\recurselevel=\xcolTBL\else
\scratchdimen\gettblht\xxrowTBL\recurselevel
@@ -816,7 +832,7 @@
\fi\fi
\fi}}}
-\def\checktblheightstwo%
+\def\checktblheightstwo
{}
\def\showtblwids#1%
diff --git a/tex/context/base/core-pos.tex b/tex/context/base/core-pos.tex
index b60186eed..d44af3480 100644
--- a/tex/context/base/core-pos.tex
+++ b/tex/context/base/core-pos.tex
@@ -707,7 +707,7 @@
\def\wpos#1%
{\dontleavehmode\vadjust % may disappear if buried
- {\setbox0\hbox{\raise\dp\strutbox\hbox{\rawwpos{#1}}}%
+ {\setbox0\hbox{\raise\strutdp\hbox{\rawwpos{#1}}}%
\rlap{\smashedbox0}}}
\def\wwpos#1% \hsmashed{\llap{\rawwpos{#1}}}
@@ -766,22 +766,23 @@
\def\doregisterparoptions
{\doglobal\increment\parposcounter
- \bgroup
+ \begingroup
\leftskip 1\leftskip
\rightskip1\rightskip
\setpositiondataplus
{p:\parposcounter}% % identifier
- {\zeropoint}
- {\ht\strutbox}
- {\dp\strutbox}
+ {\zeropoint}%
+ {\strutht}%
+ {\strutdp}%
{\efficientdimen\hsize ,% 1
\efficientdimen\leftskip ,% 2
\efficientdimen\rightskip ,% 3
\efficientdimen\hangindent,% 4
\the\hangafter ,% 5
\efficientdimen\parindent }% 6
- \normalhbox{\registerparsymbol}%
- \egroup}
+ %\normalhbox{\registerparsymbol}%
+ \registerparsymbol
+ \endgroup}
\newif\iftracepositions
@@ -913,39 +914,39 @@
% \def\dopresetpositionanchors
% {\bgroup
-% \dimen0=\ifdim\topskip>\ht\strutbox\topskip\else\ht\strutbox\fi
+% \dimen0=\ifdim\topskip>\strutht\topskip\else\strutht\fi
% \dimen2=\MPy\textanchor
% \dimen4=\dimen2
% \advance\dimen2 \MPh\textanchor % space is essential
% \advance\dimen2 -\dimen0
-% \advance\dimen4 \dp\strutbox
+% \advance\dimen4 \strutdp
% \dimen6=\MPx\textanchor
% \dimen8=\MPw\textanchor
% \setxvalue{\POSprefix\headanchor}%
% {\realfolio,\withoutpt{\the\dimen6},\withoutpt{\the\dimen2},%
-% \withoutpt{\the\dimen8},\withoutpt{\the\dimen0},\withoutpt{\the\dp\strutbox}}%
+% \withoutpt{\the\dimen8},\withoutpt{\the\dimen0},\withoutpt{\the\strutdp}}%
% \setxvalue{\POSprefix\tailanchor}%
% {\realfolio,\withoutpt{\the\dimen6},\withoutpt{\the\dimen4},%
-% \withoutpt{\the\dimen8},\withoutpt{\the\ht\strutbox},\withoutpt{\the\dp\strutbox}}%
+% \withoutpt{\the\dimen8},\withoutpt{\the\strutht},\withoutpt{\the\strutdp}}%
% %\showanchor\textanchor\showanchor\headanchor\showanchor\tailanchor\wait
% \egroup}
\def\dopresetpositionanchors
{\bgroup
- \!!dimena\ifdim\topskip>\ht\strutbox\topskip\else\ht\strutbox\fi
+ \!!dimena\ifdim\topskip>\strutht\topskip\else\strutht\fi
\!!dimenb\MPy\textanchor
\!!dimenc\!!dimenb
\advance\!!dimenb \MPh\textanchor % space is essential
\advance\!!dimenb -\!!dimena
- \advance\!!dimenc \dp\strutbox
+ \advance\!!dimenc \strutdp
\!!dimend\MPx\textanchor
\!!dimene\MPw\textanchor
\setxvalue{\POSprefix\headanchor}%
{\realfolio,\withoutpt{\the\!!dimend},\withoutpt{\the\!!dimenb},%
- \withoutpt{\the\!!dimene},\withoutpt{\the\!!dimena},\withoutpt{\the\dp\strutbox}}%
+ \withoutpt{\the\!!dimene},\withoutpt{\the\!!dimena},\withoutpt{\the\strutdp}}%
\setxvalue{\POSprefix\tailanchor}%
{\realfolio,\withoutpt{\the\!!dimend},\withoutpt{\the\!!dimenc},%
- \withoutpt{\the\!!dimene},\withoutpt{\the\ht\strutbox},\withoutpt{\the\dp\strutbox}}%
+ \withoutpt{\the\!!dimene},\withoutpt{\the\strutht},\withoutpt{\the\strutdp}}%
%\showanchor\textanchor\showanchor\headanchor\showanchor\tailanchor\wait
\egroup}
@@ -1083,9 +1084,9 @@
% rounding errors
{\setbox\scratchbox\hbox to \overlaywidth
{\dopositionaction{#1::\MPanchoridentifier}\hss}%
- \ht\scratchbox\overlayheight
- \dp\scratchbox\zeropoint
- \box\scratchbox}}%
+ \ht\scratchbox\overlayheight
+ \dp\scratchbox\zeropoint
+ \box\scratchbox}}%
{\hbox to \overlaywidth{\hss}}%
\vfill}%
\fi}
@@ -1836,7 +1837,6 @@
\endgraf % new
\getvalue{\??td\currenttextbackground\c!na}}
-
\let\textparpages \!!zeropoint
\let\textparheight\!!zeropoint
\let\textparwidth \!!zeropoint
@@ -1913,7 +1913,7 @@
{\dodoubleempty\dodefinetextbackground}
\def\dodefinetextbackground[#1][#2]%
- {\ifsecondargument
+ {\ifsecondargument % why ?
\copyparameters[\??td#1][\??td]
[\c!status,\c!plaats,\c!variant,\c!mp,\c!methode,
\c!achtergrond,\c!achtergrondkleur,\c!hoek,\c!niveau,
@@ -2100,7 +2100,7 @@
% \scratchdimen=\MPy{\s!margin:\currentmarginpos}%
% \doglobal\increment\currentmarginpos
% \advance\scratchdimen by -\MPy{\s!margin:\currentmarginpos}%
-% \advance\scratchdimen by -\dp\strutbox
+% \advance\scratchdimen by -\strutdp
% \setbox#1=\hbox
% {\setposition{\s!margin:\currentmarginpos}\raise\scratchdimen\box#1}%
% \dp#1=\!!zeropoint
@@ -2117,7 +2117,7 @@
\scratchdimen\MPy{\s!margin:\currentmarginpos}%
\doglobal\increment\currentmarginpos
\advance\scratchdimen -\MPy{\s!margin:\currentmarginpos}%
- \advance\scratchdimen -\dp\strutbox
+ \advance\scratchdimen -\strutdp
% new
\setbox#1\hbox
{\hskip-\MPx{\s!margin:\currentmarginpos}%
@@ -2344,22 +2344,20 @@
%D \startbuffer
%D \def\cw#1{\color[white]{#1}}
%D
-%D \def\TableShade#1#2%
-%D {\startMPpositiongraphic
-%D initialize_area(\MPpos{b:#1},\MPpos{e:#1}) ;
-%D linear_shade(pxy,0,.4#2,.9#2) ;
-%D anchor_area(\MPanchor{b:#1}) ;
-%D \stopMPpositiongraphic}
-%D
-%D \dosetpositionaction{b:x}{\TableShade{x}{red}}
-%D \dosetpositionaction{b:y}{\TableShade{y}{green}}
-%D \dosetpositionaction{b:z}{\TableShade{z}{blue}}
+%D \startMPpositiongraphic{tableshade}
+%D initialize_area(\MPpos{\MPvar{from}},\MPpos{\MPvar{to}}) ;
+%D color c ; c := \MPvar{color} ;
+%D linear_shade(pxy,0,.4c,.9c) ;
+%D anchor_area(\MPanchor{\MPvar{from}}) ;
+%D \stopMPpositiongraphic
+%D
+%D \setMPpositiongraphic{b:x}{tableshade}{from=b:x,to=e:x,color=red}
+%D \setMPpositiongraphic{b:y}{tableshade}{from=b:y,to=e:y,color=green}
+%D \setMPpositiongraphic{b:z}{tableshade}{from=b:z,to=e:z,color=blue}
%D \stopbuffer
%D
-%D \typebuffer
-%D
-%D % \haalbuffer
-%D
+%D \typebuffer \haalbuffer
+%D
%D The definition of the table looks about the same as the
%D previous one:
%D
@@ -2373,7 +2371,7 @@
%D
%D \typebuffer
%D
-%D % \haalbuffer
+%D \haalbuffer
% \definepositionframed[w][background=color,backgroundcolor=yellow]
% \definepositionframed[x][background=color,backgroundcolor=red]
diff --git a/tex/context/base/core-rul.tex b/tex/context/base/core-rul.tex
index 70c4af511..a248a99a2 100644
--- a/tex/context/base/core-rul.tex
+++ b/tex/context/base/core-rul.tex
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\writestatus{loading}{Context Core Macros / Ruled Stuff Handling}
+\writestatus{loading}{Context Core Macros / Ruled Content Handling}
\unprotect
@@ -795,7 +795,7 @@
\let\localbegstrut\pseudobegstrut % was: \relax
\let\localendstrut\pseudoendstrut % was: \relax
\let\localstrut \pseudostrut % was: \relax
- %\ifboxhasheight\ifdim\!!heighta<\ht\strutbox % saveguard
+ %\ifboxhasheight\ifdim\!!heighta<\strutht % saveguard
% \let\localbegstrut\relax % but not that
% \let\localstrut \relax % save afterall
%\fi\fi
@@ -1401,45 +1401,11 @@
{\framednoflines\zerocount
\framedlastlength\zeropoint}
-% \def\doreshapeframedbox%
-% {\beginofshapebox
-% \unvcopy\framebox
-% \endofshapebox
-% \global\@@globalwidth=\zeropoint
-% \resetshapeframebox
-% \reshapebox
-% {\setbox0=\hbox
-% {\strut\ifhbox\shapebox\unhbox\else\box\fi\shapebox}%
-% \global\advance\framednoflines by 1
-% \ifdim\framedlastlength>\zeropoint\else
-% \global\framedlastlength=\wd0
-% \fi
-% \ifdim\wd0>\@@globalwidth
-% \global\@@globalwidth=\wd0
-% \fi}%
-% \dosetraggedcommand{\localformat}%
-% \raggedcommand
-% \ifboxhasheight
-% \setbox\framebox=\vbox to \localheight
-% {\hsize\@@globalwidth
-% \reshapebox{\hbox to \hsize{\ifhbox\shapebox\unhbox\else\box\fi\shapebox}}%
-% \dobeforeframedbox
-% \innerflushshapebox
-% \doafterframedbox}%
-% \else
-% \setbox\framebox=\vbox
-% {\hsize\@@globalwidth
-% \reshapebox{\hbox to \hsize{\ifhbox\shapebox\unhbox\else\box\fi\shapebox}}%
-% \innerflushshapebox}%
-% \dp\framebox=\dp\strutbox
-% \fi
-% \ifdim\framedlastlength=\zeropoint\global\framednoflines=\wd\framebox\fi
-% \ifcase\framednoflines\global\framednoflines=1\fi}
-
-% better depth preserving, else problems with framed display
-% math and auto width
+% The next implementation is frozen! It preserves the depth,
+% otherwise we get problems with framed display math and auto
+% width.
-\def\doreshapeframedbox
+\def\doreshapeframedbox % frozen
{\beginofshapebox
\unvcopy\framebox
\endofshapebox
@@ -1470,7 +1436,7 @@
{\hsize\@@globalwidth
\reshapebox{\hbox to \hsize{\ifhbox\shapebox\unhbox\else\box\fi\shapebox}}%
\innerflushshapebox}%
- \dp\framebox\scratchdimen % \dp\strutbox otherwise problem with math
+ \dp\framebox\scratchdimen % \strutdp otherwise problem with math
\fi
\ifdim\framedlastlength=\zeropoint\global\framednoflines\wd\framebox\fi
\ifcase\framednoflines\global\framednoflines\plusone\fi}
@@ -1539,14 +1505,14 @@
%D baseline intact outside as well as inside the framed box.
\def\doinlineframedbox
- {\scratchdimen\dp\strutbox
+ {\scratchdimen\strutdp
\advance\scratchdimen \ruledlinewidth
\ifboxhasoffset
\advance\scratchdimen \framedparameter\c!offset
\fi
\setbox\framebox\hbox{\lower\scratchdimen\box\framebox}%
- \ht\framebox\ht\strutbox
- \dp\framebox\dp\strutbox
+ \ht\framebox\strutht
+ \dp\framebox\strutdp
\box\framebox}
%D We can also lower the box over the natural depth of the
@@ -1554,9 +1520,9 @@
\def\doloweredframedbox
{\getboxheight\scratchdimen\of\box\framebox
- \advance\scratchdimen -\dp\strutbox
+ \advance\scratchdimen -\strutdp
\ht\framebox\scratchdimen
- \dp\framebox\dp\strutbox
+ \dp\framebox\strutdp
\box\framebox}
%D Hanging the content is mainly meant for cases like the
@@ -1618,14 +1584,14 @@
\ifboxhasheight
\dimen4=\localheight \divide\dimen4 2
\dimen6=\dimen4
- \advance\dimen4 \dp\strutbox
- \advance\dimen6 -\dp\strutbox
+ \advance\dimen4 \strutdp
+ \advance\dimen6 -\strutdp
\advance\dimen4 -2\ruledlinewidth
\advance\dimen6 2\ruledlinewidth
\else
- \dimen4\ht\strutbox
+ \dimen4\strutht
\advance\dimen4 \dimen2
- \dimen6\dp\strutbox
+ \dimen6\strutdp
\advance\dimen6 \dimen2
\fi
\unskip
@@ -1636,8 +1602,8 @@
\!!depth\dimen6
\!!width\ruledlinewidth
\hskip\dimen2}%
- \ht0\ht\strutbox
- \dp0\dp\strutbox
+ \ht0\strutht
+ \dp0\strutdp
\box0
\ignorespaces
\egroup}
@@ -1722,8 +1688,8 @@
\getparameters[\??bj][#1]%
\setstrut
\doif\@@bjbreedte\v!max{\def\@@bjbreedte{1em}}%
- \doif\@@bjhoogte \v!max{\def\@@bjhoogte{\ht\strutbox}}%
- \doif\@@bjdiepte \v!max{\def\@@bjdiepte{\dp\strutbox}}%
+ \doif\@@bjhoogte \v!max{\def\@@bjhoogte{\strutht}}%
+ \doif\@@bjdiepte \v!max{\def\@@bjdiepte{\strutdp}}%
\localstartcolor[\@@bjkleur]%
\vrule
\!!width \@@bjbreedte
@@ -1800,7 +1766,7 @@
\def\dodrawmarginrule
{\setbox0\hbox
- {\vrule\!!depth\strutdepth\!!height\strutheight\!!width\@@kadikte}%
+ {\vrule\!!depth\strutdepth\!!height\strutheight\!!width\@@kalijndikte}%
\smashbox0 % no \vsmash !!!
\box0}
@@ -1840,7 +1806,7 @@
%D
%D \showsetup{\y!setupmarginrules}
-\def\setupmarginrules%
+\def\setupmarginrules
{\dodoubleargument\getparameters[\??ka]}
%D \macros
@@ -1886,7 +1852,7 @@
%D \stopkantlijn
%D
%D \startkantlijn[5]
-%D The second paragraph is a level~5 one. As we can se here,
+%D The second paragraph is a level~5 one. As we can see here,
%D the marginal rule gets a width according to its level.
%D \stopkantlijn
%D
@@ -1924,24 +1890,24 @@
\def\complexvl[#1]%
{\bgroup
- \dimen0=#1\ht\strutbox
- \dimen2=#1\dp\strutbox
- \setbox0\hbox
+ \!!dimena#1\strutht
+ \!!dimenb#1\strutdp
+ \setbox\scratchbox\hbox
{\vrule
\!!width \linewidth
- \!!height\dimen0
- \!!depth \dimen2}%
- \dp0\dp\strutbox
- \ht0\ht\strutbox
- \box0
+ \!!height\!!dimena
+ \!!depth \!!dimenb}%
+ \dp\scratchbox\strutdp
+ \ht\scratchbox\strutht
+ \box\scratchbox
\egroup}
\def\complexhl[#1]%
{\hbox
{\vrule
- \!!width#1em
+ \!!width #1\s!em
\!!height\linewidth
- \!!depth\zeropoint}}
+ \!!depth \zeropoint}}
\definecomplexorsimple\vl \def\simplevl{\complexvl[1]}
\definecomplexorsimple\hl \def\simplehl{\complexhl[1]}
@@ -2005,8 +1971,8 @@
% \startcolor[\@@dlkleur]%
% \doif{\@@dlhoogte}{\v!max}{\def\@@dlhoogte{1}}%
% \doif{\@@dldiepte}{\v!max}{\def\@@dldiepte{1}}%
-% \freezedimensionwithunit\@@dlhoogte{\ht\strutbox}%
-% \freezedimensionwithunit\@@dldiepte{\dp\strutbox}%
+% \freezedimensionwithunit\@@dlhoogte{\strutht}%
+% \freezedimensionwithunit\@@dldiepte{\strutdp}%
% \leaders
% \hrule\!!height\@@dlhoogte\!!depth\@@dldiepte
% \hfill
@@ -2054,8 +2020,8 @@
\let\@@dlhoogte\!!plusone
\let\@@dldiepte\!!plusone
\fi
- \freezedimensionwithunit\@@dlhoogte{\ht\strutbox}%
- \freezedimensionwithunit\@@dldiepte{\dp\strutbox}%
+ \freezedimensionwithunit\@@dlhoogte{\strutht}%
+ \freezedimensionwithunit\@@dldiepte{\strutdp}%
\divide\linewidth 2
\doifelse\@@dlachtergrond\v!kleur
{\startcolor[\@@dlachtergrondkleur]%
@@ -2460,7 +2426,7 @@
\ifinsidefloat
\box\framebox
\else
- \doplaats[\??kd#1][\c!dieptecorrectie=\v!uit]{\box\framebox}%
+ \doplacement[\??kd#1][\c!dieptecorrectie=\v!uit]{\box\framebox}%
\fi
\egroup}
@@ -2592,8 +2558,8 @@
\fi
\color[\@@tllijnkleur]
{\leaders\hrule\!!height\dimen4\!!depth\dimen6\hfill}}%
- \ht\scratchbox\ht\strutbox
- \dp\scratchbox\dp\strutbox
+ \ht\scratchbox\strutht
+ \dp\scratchbox\strutdp
\noindent\box\scratchbox
%\nobreak\verticalstrut\kern-\lineheight
% evt \witruimte
@@ -2612,8 +2578,8 @@
{\ifhmode
\endgraf
\fi
- \dimen0\dp\strutbox
- \ifdim\prevdepth<\dp\strutbox
+ \dimen0\strutdp
+ \ifdim\prevdepth<\strutdp
\ifdim\prevdepth>\zeropoint
\advance\dimen0 -\prevdepth
\fi
@@ -3124,7 +3090,7 @@
% \def\registered{\encircled{R}}
% \setuprules
-% [\c!dikte=\v!middel]
+% [\c!lijndikte=\v!middel]
\setuplinewidth
[\v!middel]
@@ -3174,7 +3140,7 @@
\setupmarginrules
[\c!niveau=0,
- \c!dikte=\@@kadefaultwidth\linewidth]
+ \c!lijndikte=\@@kadefaultwidth\linewidth]
\setupthinrules
[\c!interlinie=\v!klein,
diff --git a/tex/context/base/core-sec.tex b/tex/context/base/core-sec.tex
index 44612b528..6ee585198 100644
--- a/tex/context/base/core-sec.tex
+++ b/tex/context/base/core-sec.tex
@@ -206,7 +206,7 @@
{\let\numberseparator\empty
\let#3#2}
{\unexpanded\def\numberseparator{\getvalue{#1\c!scheider}}%
- \edef#3{\@EA\separatednumber\@EA{#2}}}}
+ \edef#3{\@EA\separatednumber\@EA{#2}}}} % hm, etex
\def\lossenummer[#1]%
{\maakhetnummer[#1]%
@@ -827,12 +827,12 @@
\def\getsectieblokomgeving#1%
{\let\do\firstofoneargument\getvalue{\??sb\s!do#1}}
-\setvalue{\e!start\e!sectieblokomgeving}%
+\setvalue{\e!start\v!sectieblokomgeving}%
{\dosingleargument\dostartsectieblokomgeving}
\def\dostartsectieblokomgeving[#1]% evt \pushendofline \popendofline
{\long\def\do##1##2{\setsectieblokomgeving{#1}{##1##2}}%
- \grabuntil{\e!stop\e!sectieblokomgeving}{\getvalue{\??sb\s!do#1}}}
+ \grabuntil{\e!stop\v!sectieblokomgeving}{\getvalue{\??sb\s!do#1}}}
%D \starttypen
%D \startsectionblockenvironment[frontpart]
@@ -1468,7 +1468,7 @@
\def\stoplistreferences%
{\gobbleoneargument}
-% \prevdepth\dp\strutbox is belangrijk, vergelijk naast elkaar:
+% \prevdepth\strutdp % is belangrijk, vergelijk naast elkaar:
%
% \onderwerp{test} \input tufte
% \onderwerp{test} \strut \input tufte
@@ -1552,7 +1552,8 @@
\ifdisplaysectionhead
\getvalue{\??ko#1\c!tekstcommando}%
{\setstrut\begstrut#3\endstrut}%
- \xdef\localheaddepth{\the\dp\strutbox}%
+ \xdef\localheaddepth{\the\strutdp}%
+ % == \globallet\localheaddepth\strutdepth
\else
\getvalue{\??ko#1\c!tekstcommando}{#3}%
\fi
@@ -1608,7 +1609,8 @@
\ifdisplaysectionhead
\getvalue{\??ko#1\c!tekstcommando}%
{\setstrut\begstrut#4\endstrut}%
- \xdef\localheaddepth{\the\dp\strutbox}%
+ \xdef\localheaddepth{\the\strutdp}%
+ % == \globallet\localheaddepth\strutdepth
\else
\getvalue{\??ko#1\c!tekstcommando}{#4}%
\fi
@@ -1623,62 +1625,12 @@
\let\headlastlinewidth\!!zeropoint
\newif\ifcontinuoushead
-% \def\beginheadplacement#1%
-% {\bgroup
-% \gdef\localheaddepth{\dp\strutbox}%
-% \everypar{}% needed indeed
-% \noindent % ipv \witruimte elders, na \forgetall !
-% \bgroup
-% \forgetall % now we may forget everything
-% %\showcomposition
-% \mindermeldingen
-% \postponefootnotes
-% \iflocation\ifdisplaysectionhead\else\noninterferingmarks\fi\fi
-% %\setupinteraction
-% % [\c!letter=,
-% % \c!kleur=,
-% % \c!contrastkleur=]%
-% \resetinteractionparameter\c!letter
-% \resetinteractionparameter\c!kleur
-% \resetinteractionparameter\c!contrastkleur
-% \strictouterreferencestrue % tzt instelling
-% \def\localheadsetup%
-% {\dolocalheadsetup{#1}}%
-% \startsynchronisatie}
-
-% \def\beginheadplacement#1%
-% {\bgroup
-% \setsystemmode{#1}% to be documented
-% \ifgridsnapping\iftracegridsnapping\showstruts\fi\fi
-% \gdef\localheaddepth{\dp\strutbox}%
-% \everypar\emptytoks % needed indeed
-% \noindent % ipv \witruimte elders, na \forgetall !
-% \bgroup
-% \doifelsevalue{\??ko#1\c!titeluitlijnen}\v!ja % new
-% {\leftskip 1\leftskip
-% \rightskip1\rightskip
-% \edef\next{\leftskip\the\leftskip\rightskip\the\rightskip}%
-% \xdef\localheadskip{\the\leftskip}%
-% \expandafter\forgetall\next % now we may forget everything
-% \setlocalhsize\hsize\localhsize}
-% {\globallet\localheadskip\!!zeropoint
-% \forgetall}%
-% \mindermeldingen
-% \postponefootnotes
-% \iflocation\ifdisplaysectionhead\else\noninterferingmarks\fi\fi
-% \resetinteractionparameter\c!letter
-% \resetinteractionparameter\c!kleur
-% \resetinteractionparameter\c!contrastkleur
-% \strictouterreferencestrue % tzt instelling
-% \def\localheadsetup%
-% {\dolocalheadsetup{#1}}%
-% \startsynchronisatie}
-
\def\beginheadplacement#1%
{\bgroup
\setsystemmode{#1}% to be documented
\ifgridsnapping\iftracegridsnapping\showstruts\fi\fi
- \gdef\localheaddepth{\dp\strutbox}%
+ \gdef\localheaddepth{\strutdp}%
+ % == \globallet\localheaddepth\strutdp
\everypar\emptytoks % needed indeed
\noindent % ipv \witruimte elders, na \forgetall !
\bgroup
@@ -1704,7 +1656,6 @@
{\dolocalheadsetup{#1}}%
\startsynchronisatie}
-
\def\endheadplacement#1#2%
{\doifelsevalue{\??rf#1\c!status}\v!start
{\doifvaluenothing{\??ko#1\c!file}{\autocrossdocumentfalse}}
@@ -1756,7 +1707,7 @@
\fi
\ifdisplaysectionhead
\ifgridsnapping % important, font related depth, see comment
- \prevdepth\dp\strutbox
+ \prevdepth\strutdp
\else
\prevdepth\localheaddepth
\fi
@@ -1765,7 +1716,7 @@
\egroup
\egroup
\ifdisplaysectionhead
- \doifvalue{\??ko#1\c!springvolgendein}\v!nee\noindentation
+ \dochecknextindentation{\??ko#1}%
\else
\nonoindentation % recently added, was a bug
\fi}
diff --git a/tex/context/base/core-spa.tex b/tex/context/base/core-spa.tex
index 53ba96cc7..f5a6b7730 100644
--- a/tex/context/base/core-spa.tex
+++ b/tex/context/base/core-spa.tex
@@ -1122,6 +1122,22 @@
\def\nietinspringen{\inspringen[\v!nee,\v!volgende]}
\def\welinspringen {\inspringen[\v!ja,\v!eerste]}
+
+\def\dochecknextindentation#1% internal one
+ {\checknextindentation[\getvalue{#1\c!springvolgendein}]}
+
+\def\checknextindentation[#1]%
+ {\processaction[#1][%\v!handhaaf=>,
+ \v!ja=>\doindentation,
+ \v!nee=>\noindentation,
+ \v!auto=>\autoindentation]}
+
+\def\doindentation% too simple
+ {\gdef\checkindentation{\global\indentationtrue}}
+
+\ifx\autoindentation\undefined
+ \let\autoindentation\relax
+\fi
% \frenchspacing leidt soms tot afbreken tussen -, vandaar
% de variant \newfrenchspacing.
@@ -1734,7 +1750,7 @@
{\strutdimen\normallineheight % wat niet per se \lineheight
\strutdimen#2\strutdimen % is omdat een strut lokaal
\strutdimen#3\strutdimen % kan afwijken van de globale
- \edef#1{\the\strutdimen}} % strut
+ \edef#1{\the\strutdimen}} % macro % strut
% plain definition:
%
@@ -1779,8 +1795,8 @@
\def\setcharstrut#1%
{\setbox\strutbox\hbox{#1}%
- \edef\strutheight{\the\ht\strutbox}%
- \edef\strutdepth {\the\dp\strutbox}%
+ \edef\strutheight{\the\strutht}%
+ \edef\strutdepth {\the\strutdp}%
\dosetstrut}
\def\setfontstrut
@@ -1831,8 +1847,7 @@
\setstrut}
\def\begstrut
- {%relax\ifdim\ht\strutbox=\zeropoint\else
- \relax\ifcase\ht\strutbox\else
+ {\relax\ifcase\strutht\else
\strut
\normalpenalty\@M % \!!tenthousand
\normalhskip\zeropoint
@@ -1840,8 +1855,7 @@
\fi}
\def\endstrut
- {%relax\ifhmode\ifdim\ht\strutbox=\zeropoint\else
- \relax\ifhmode\ifcase\ht\strutbox\else
+ {\relax\ifhmode\ifcase\strutht\else
\removeunwantedspaces
\normalpenalty\@M % \!!tenthousand
\normalhskip\zeropoint
diff --git a/tex/context/base/core-tab.tex b/tex/context/base/core-tab.tex
index df2db6ab6..320ee324e 100644
--- a/tex/context/base/core-tab.tex
+++ b/tex/context/base/core-tab.tex
@@ -1174,17 +1174,17 @@
\let\@@TABLEhead\empty \def\TABLEhead{\@@TABLEhead}
\let\@@TABLEtail\empty \def\TABLEtail{\@@TABLEtail}
-\letvalue{\e!start\e!tablehead}=\undefined
-\letvalue{\e!stop \e!tablehead}=\undefined
-\letvalue{\e!start\e!tabletail}=\undefined
-\letvalue{\e!stop \e!tabletail}=\undefined
+\letvalue{\e!start\v!tablehead}=\undefined
+\letvalue{\e!stop \v!tablehead}=\undefined
+\letvalue{\e!start\v!tabletail}=\undefined
+\letvalue{\e!stop \v!tabletail}=\undefined
\expanded
- {\def\csname\e!start\e!tablehead\endcsname##1\csname\e!stop\e!tablehead\endcsname%
+ {\def\csname\e!start\v!tablehead\endcsname##1\csname\e!stop\v!tablehead\endcsname%
{\noexpand\setTABLEhead##1\noexpand\end}}
\expanded
- {\def\csname\e!start\e!tabletail\endcsname##1\csname\e!stop\e!tabletail\endcsname%
+ {\def\csname\e!start\v!tabletail\endcsname##1\csname\e!stop\v!tabletail\endcsname%
{\noexpand\setTABLEtail##1\noexpand\end}}
%D The second argument is a dummy one, by scanning for it, we
@@ -1218,9 +1218,9 @@
\fi
\advance\dimen2 -\dimen0
\global\TABLEmaxheight\dimen2
- \global\advance\TABLEmaxheight -\dp\strutbox
+ \global\advance\TABLEmaxheight -\strutdp
\ifdim\prevdepth<\maxdimen\ifdim\prevdepth>\zeropoint
- \global\advance\TABLEmaxheight -\dp\strutbox
+ \global\advance\TABLEmaxheight -\strutdp
\global\advance\TABLEmaxheight -\parskip
\fi\fi}
@@ -1233,7 +1233,7 @@
\fi
\advance\dimen2 -\dimen0
\global\TABLEmaxheight\dimen2
- \global\advance\TABLEmaxheight -\dp\strutbox}
+ \global\advance\TABLEmaxheight -\strutdp}
\def\calculatemaxTABLEheight#1%
{\ifsplittables
@@ -1570,7 +1570,7 @@
\gdef\afterTABLEline{\TABLEnoalign{\nobreak}}%
\else
\dimen2=\TABLEheight
- \advance\dimen2 \dp\strutbox
+ \advance\dimen2 \strutdp
\advance\dimen2 \TABLEtailheight
\advance\dimen2 \TABLEcaptionheight
\advance\dimen2 \lineheight % we're ahead
diff --git a/tex/context/base/core-tbl.tex b/tex/context/base/core-tbl.tex
index 8a7753504..ff8aa2f9b 100644
--- a/tex/context/base/core-tbl.tex
+++ b/tex/context/base/core-tbl.tex
@@ -487,8 +487,8 @@
{\unvbox\tabulatebox}%
\setbox\tabulatebox\hbox to \wd\tabulatebox
{\hss\dotabulatehook{\box\tabulatebox}\hss}%
- \ht\tabulatebox\ht\strutbox
- \dp\tabulatebox\dp\strutbox
+ \ht\tabulatebox\strutht
+ \dp\tabulatebox\strutdp
\box\tabulatebox}
\def\dotabulatehook {\getvalue{\@@tabhook@@ \tabulatecolumn}}
@@ -572,7 +572,7 @@
{\ifthirdargument
\doifundefined{\??tt#1::\c!eenheid}
{\copyparameters
- [\??tt#1::][\??tt\e!tabulate::]%
+ [\??tt#1::][\??tt\v!tabulate::]%
[\c!kader,\c!afstand,\c!eenheid,\c!voor,\c!korps,\c!na,
\c!binnen,\c!inspringen,\c!marge,\c!uitlijnen,
\c!lijnkleur,\c!lijndikte,EQ]}%
@@ -652,19 +652,19 @@
\tabulatecontent
\tabulatetailcontent}
-\setvalue{\e!start\e!tabulatehead}%
+\setvalue{\e!start\v!tabulatehead}%
{\dosingleempty\dostartstarttabulatehead}
\def\dostartstarttabulatehead[#1]%
- {\processcontent{\e!stop\e!tabulatehead}\next
- {\letvalue{\??tt\iffirstargument#1\else\e!tabulate\fi::\v!hoofd}\next}}
+ {\processcontent{\e!stop\v!tabulatehead}\next
+ {\letvalue{\??tt\iffirstargument#1\else\v!tabulate\fi::\v!hoofd}\next}}
-\setvalue{\e!start\e!tabulatetail}%
+\setvalue{\e!start\v!tabulatetail}%
{\dosingleempty\dostartstarttabulatetail}
\def\dostartstarttabulatetail[#1]%
- {\processcontent{\e!stop\e!tabulatetail}\next
- {\letvalue{\??tt\iffirstargument#1\else\e!tabulate\fi::\v!voet}\next}}
+ {\processcontent{\e!stop\v!tabulatetail}\next
+ {\letvalue{\??tt\iffirstargument#1\else\v!tabulate\fi::\v!voet}\next}}
\def\dosubstarttabulate
{\dodoubleempty\dodosubstarttabulate}
@@ -672,17 +672,17 @@
\def\dodosubstarttabulate[#1][#2]%
{\getvalue{\e!start#1::\ifundefined{\e!start#1::#2}\else#2\fi}}
-\setvalue{\e!start\e!tabulate}%
+\setvalue{\e!start\v!tabulate}%
{\bgroup\dodoubleempty\donormalstarttabulate}
\def\donormalstarttabulate[#1][#2]%
{\ifsecondargument
- \getparameters[\??tt\e!tabulate::][#2]%
+ \getparameters[\??tt\v!tabulate::][#2]%
\fi
\iffirstargument
- \def\next{\dofinalstarttabulate[\e!tabulate][][#1]}%
+ \def\next{\dofinalstarttabulate[\v!tabulate][][#1]}%
\else
- \def\next{\dofinalstarttabulate[\e!tabulate][][|l|p|]}%
+ \def\next{\dofinalstarttabulate[\v!tabulate][][|l|p|]}%
\fi
\next}
@@ -781,16 +781,16 @@
\let\\\tabulateautocolumn}
%\def\tabulateruleseperator
-% {\vskip\dp\strutbox}
+% {\vskip\strutdp}
-\def\tabulateruleseperator%
+\def\tabulateruleseperator
{\bgroup
\let\factor\!!plusone
- \scratchskip\dp\strutbox
+ \scratchskip\strutdp
\ExpandFirstAfter\processallactionsinset
[\getvalue{\??tt\currenttabulate\c!afstand}]
[ \v!blanko=>\scratchskip\bigskipamount,
- \v!diepte=>\scratchskip\dp\strutbox,
+ \v!diepte=>\scratchskip\strutdp,
\v!klein=>\def\factor{.25},
\v!middel=>\def\factor{.5},
\v!groot=>,
@@ -1025,7 +1025,7 @@
\def\xbskip{\bskip}%
\def\xeskip{\eskip}%
\ifsplittabulate
- \splittopskip\ht\strutbox
+ \splittopskip\strutht
\global\let\flushtabulatedindeed\empty
\long\def\bbskip
{\ifvoid\tablebox\tabulatecolumn
@@ -1086,8 +1086,8 @@
\def\tablebaselinecorrection
{\def\dobaselinecorrection
{\vskip-\prevdepth
- \vskip\dp\strutbox
- \vskip\dp\strutbox}%
+ \vskip\strutdp
+ \vskip\strutdp}%
\baselinecorrection}%
\def\FL{\TABLEnoalign
{\ifinsidefloat\else
@@ -1097,7 +1097,7 @@
\tabulaterule
\dotabulatenobreak
\tabulateruleseperator
- \prevdepth\dp\strutbox
+ \prevdepth\strutdp
\dotabulatenobreak}}%
\def\ML{\TABLEnoalign
{\tabulateruleseperator
@@ -1117,7 +1117,7 @@
\tabulaterule
\ifinsidefloat\else
\doifemptyvalue{\??tt\currenttabulate\c!na} % no expansion
- {\vskip\dp\strutbox
+ {\vskip\strutdp
\vbox{\strut}%
\vskip-\lineheight}%
\fi}}%
@@ -1125,9 +1125,9 @@
%
\chardef\tabulatepass\plustwo
\@EA\halign\@EA{\the\!!toksa\crcr\fulltabulatecontent\crcr}%
- \prevdepth\dp\strutbox % nog eens beter, temporary hack
+ \prevdepth\strutdp % nog eens beter, temporary hack
\doifvalue{\??tt\currenttabulate\c!afstand}\v!grid
- {\vskip-\dp\strutbox}% experimental tm-prikkels
+ {\vskip-\strutdp}% experimental tm-prikkels
%
\stopframedcontent
%
@@ -1186,7 +1186,7 @@
\else\ifsecondargument
\getparameters[\??tt#1::][#2]%
\else
- \getparameters[\??tt\e!tabulate::][#1]%
+ \getparameters[\??tt\v!tabulate::][#1]%
\fi\fi}
\setuptabulate
diff --git a/tex/context/base/core-ver.tex b/tex/context/base/core-ver.tex
index 09e90e34c..4b302422a 100644
--- a/tex/context/base/core-ver.tex
+++ b/tex/context/base/core-ver.tex
@@ -729,7 +729,7 @@
{\stopverbatimcolor
\stopopelkaar % includes \egroup
\getvalue{\??tp#1\c!na}%
- \doifvalue{\??tp#1\c!springvolgendein}\v!nee\noindentation}
+ \dochecknextindentation{\??tp#1}}
%D \macros
%D {setuptyping}
diff --git a/tex/context/base/core-vis.tex b/tex/context/base/core-vis.tex
index 2c26e3a48..3b5c6a5d5 100644
--- a/tex/context/base/core-vis.tex
+++ b/tex/context/base/core-vis.tex
@@ -76,15 +76,15 @@
\normalhbox
{\boxrulewidth5\testrulewidth
\setbox0\ruledhbox to \hangindent
- {\scratchdimen\ht\strutbox
- \advance\scratchdimen \dp\strutbox
+ {\scratchdimen\strutht
+ \advance\scratchdimen \strutdp
\vrule
\!!width \zeropoint
\!!height \zeropoint
\!!depth -\hangafter\scratchdimen}%
\normalhskip-\hangindent
\smashbox0
- \raise\ht\strutbox\box0}%
+ \raise\strutht\box0}%
\fi
\fi}
diff --git a/tex/context/base/enco-grk.tex b/tex/context/base/enco-grk.tex
new file mode 100644
index 000000000..dbab21302
--- /dev/null
+++ b/tex/context/base/enco-grk.tex
@@ -0,0 +1,317 @@
+%D \module
+%D [ file=enco-grk,
+%D version=2003.03.01,
+%D title=\CONTEXT\ Encoding Macros,
+%D subtitle=Greek,
+%D author=Apostolos Syropoulos,
+%D date=\currentdate,
+%D copyright=PRAGMA-ADE]
+%C
+%C This module is part of the \CONTEXT\ macro||package and is
+%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
+%C details.
+
+
+\startencoding[default]
+
+%
+% Uppercase Greek letters
+%
+
+\definecharacter GreekAlpha {A}
+\definecharacter GreekBeta {B}
+\definecharacter GreekGamma {G}
+\definecharacter GreekDelta {D}
+\definecharacter GreekEpsilon {E}
+\definecharacter GreekZeta {Z}
+\definecharacter GreekEta {H}
+\definecharacter GreekTheta {J}
+\definecharacter GreekIota {I}
+\definecharacter GreekKappa {K}
+\definecharacter GreekLamda {L}
+\definecharacter GreekMu {M}
+\definecharacter GreekNu {N}
+\definecharacter GreekXi {X}
+\definecharacter GreekOmicron {O}
+\definecharacter GreekPi {P}
+\definecharacter GreekRho {R}
+\definecharacter GreekSigma {S}
+\definecharacter GreekTau {T}
+\definecharacter GreekUpsilon {U}
+\definecharacter GreekPhi {F}
+\definecharacter GreekChi {Q}
+\definecharacter GreekPsi {Y}
+\definecharacter GreekOmega {W}
+
+%
+% Lowercase Greek letters
+%
+
+\definecharacter Greekalpha {a}
+\definecharacter Greekbeta {b}
+\definecharacter Greekgamma {g}
+\definecharacter Greekdelta {d}
+\definecharacter Greekepsilon {e}
+\definecharacter Greekzeta {z}
+\definecharacter Greeketa {h}
+\definecharacter Greektheta {j}
+\definecharacter Greekiota {i}
+\definecharacter Greekkappa {k}
+\definecharacter Greeklamda {l}
+\definecharacter Greekmu {m}
+\definecharacter Greeknu {n}
+\definecharacter Greekxi {x}
+\definecharacter Greekomicron {o}
+\definecharacter Greekpi {p}
+\definecharacter Greekrho {r}
+\definecharacter Greekfinalsigma {c}
+\definecharacter Greeksigma {s}
+\definecharacter Greektau {t}
+\definecharacter Greekupsilon {u}
+\definecharacter Greekphi {f}
+\definecharacter Greekchi {q}
+\definecharacter Greekpsi {y}
+\definecharacter Greekomega {w}
+
+%
+% Accented Uppercase Greek letters
+%
+
+\definecharacter GreekAlphatonos {'A}
+\definecharacter GreekEpsilontonos {'E}
+\definecharacter GreekEtatonos {'H}
+\definecharacter GreekIotatonos {'I}
+\definecharacter GreekOmicrontonos {'O}
+\definecharacter GreekUpsilontonos {'U}
+\definecharacter GreekOmegatonos {'W}
+\definecharacter GreekIotadialytika {"I}
+\definecharacter GreekUpsilondialytika {"U}
+
+%
+% Accented Lowercase Greek letters
+%
+
+\definecharacter Greekalphatonos {'a}
+\definecharacter Greekepsilontonos {'e}
+\definecharacter Greeketatonos {'h}
+\definecharacter Greekiotatonos {'i}
+\definecharacter Greekomicrontonos {'o}
+\definecharacter Greekupsilontonos {'u}
+\definecharacter Greekomegatonos {'w}
+\definecharacter Greekiotadialytika {"i}
+\definecharacter Greekupsilondialytika {"u}
+\definecharacter Greekiotadialytikatonos {'"i}
+\definecharacter Greekupsilondialytikatonos {'"u}
+
+%
+% Miscellaneous Greek symbols
+%
+
+\definecharacter Greekleftquot {((}
+\definecharacter Greekrightquot {))}
+\definecharacter Greektonos {'}
+\definecharacter Greekdialytikatonos {'"}
+\definecharacter Greekapostrophos {''}
+
+\stopencoding
+
+%%% Note that with the command
+%%% \definecasemap 165 181 165
+%%% character 165 becomes 181 in uppercase and 165 in lowercase
+
+\startmapping[iso-8859-7]
+
+%
+% Uppercase Greek letters
+%
+
+\definecasemap 193 193 225 % GreekAlpha
+\definecasemap 194 194 226 % GreekBeta
+\definecasemap 195 195 227 % GreekGamma
+\definecasemap 196 196 228 % GreekDelta
+\definecasemap 197 197 229 % GreekEpsilon
+\definecasemap 198 198 230 % GreekZeta
+\definecasemap 199 199 213 % GreekEta
+\definecasemap 200 200 232 % GreekTheta
+\definecasemap 201 201 233 % GreekIota
+\definecasemap 202 202 234 % GreekKappa
+\definecasemap 203 203 235 % GreekLamda
+\definecasemap 204 204 236 % GreekMu
+\definecasemap 205 205 237 % GreekNu
+\definecasemap 206 206 238 % GreekXi
+\definecasemap 207 207 239 % GreekOmicron
+\definecasemap 208 208 240 % GreekPi
+\definecasemap 209 209 241 % GreekRho
+\definecasemap 211 211 243 % GreekSigma
+\definecasemap 212 212 244 % GreekTau
+\definecasemap 213 213 245 % GreekUpsilon
+\definecasemap 214 214 246 % GreekPhi
+\definecasemap 215 215 247 % GreekChi
+\definecasemap 216 216 248 % GreekPsi
+\definecasemap 217 217 249 % GreekOmega
+
+%
+% Lowercase Greek letters
+%
+
+\definecasemap 225 193 225 % Greekalpha
+\definecasemap 226 194 226 % Greekbeta
+\definecasemap 227 195 227 % Greekgamma
+\definecasemap 228 196 228 % Greekdelta
+\definecasemap 229 197 229 % Greekepsilon
+\definecasemap 230 198 230 % Greekzeta
+\definecasemap 213 199 213 % Greeketa
+\definecasemap 232 200 232 % Greektheta
+\definecasemap 233 201 233 % Greekiota
+\definecasemap 234 202 234 % Greekkappa
+\definecasemap 235 203 235 % Greeklamda
+\definecasemap 236 204 236 % Greekmu
+\definecasemap 237 205 237 % Greeknu
+\definecasemap 238 206 238 % Greekxi
+\definecasemap 239 207 239 % Greekomicron
+\definecasemap 240 208 240 % Greekpi
+\definecasemap 241 209 241 % Greekrho
+\definecasemap 242 211 242 % Greekfinalsigma
+\definecasemap 243 211 243 % GreekSigma
+\definecasemap 244 212 244 % GreekTau
+\definecasemap 245 213 245 % GreekUpsilon
+\definecasemap 246 214 246 % GreekPhi
+\definecasemap 247 215 247 % GreekChi
+\definecasemap 248 216 248 % GreekPsi
+\definecasemap 249 217 249 % GreekOmega
+
+%
+% Accented Uppercase Greek letters
+%
+
+\definecasemap 182 193 220 % GreekAlphatonos
+\definecasemap 184 197 221 % GreekEpsilontonos
+\definecasemap 185 199 222 % GreekEtatonos
+\definecasemap 186 201 223 % GreekIotatonos
+\definecasemap 188 207 252 % GreekOmicrontonos
+\definecasemap 190 213 253 % GreekUpsilontonos
+\definecasemap 191 217 254 % GreekOmegatonos
+\definecasemap 218 218 250 % GreekIotadialytika
+\definecasemap 219 219 251 % GreekUpsilondialytika
+
+%
+% Accented Lowercase Greek letters
+%
+
+\definecasemap 220 193 220 % Greekalphatonos
+\definecasemap 221 197 221 % Greekepsilontonos
+\definecasemap 222 199 222 % Greeketatonos
+\definecasemap 223 201 223 % Greekiotatonos
+\definecasemap 252 207 252 % Greekomicrontonos
+\definecasemap 253 213 253 % Greekupsilontonos
+\definecasemap 254 217 254 % Greekomegatonos
+\definecasemap 250 218 250 % Greekiotadialytika
+\definecasemap 251 219 251 % Greekupsilondialytika
+\definecasemap 192 218 192 % Greekiotadialytikatonos
+\definecasemap 224 219 224 % Greekupsilondialytikatonos
+
+
+\stopencoding
+
+\startencoding[iso-8859-7]
+
+%
+% Uppercase Greek letters
+%
+
+\definecharacter GreekAlpha 193
+\definecharacter GreekBeta 194
+\definecharacter GreekGamma 195
+\definecharacter GreekDelta 196
+\definecharacter GreekEpsilon 197
+\definecharacter GreekZeta 198
+\definecharacter GreekEta 199
+\definecharacter GreekTheta 200
+\definecharacter GreekIota 201
+\definecharacter GreekKappa 202
+\definecharacter GreekLamda 203
+\definecharacter GreekMu 204
+\definecharacter GreekNu 205
+\definecharacter GreekXi 206
+\definecharacter GreekOmicron 207
+\definecharacter GreekPi 208
+\definecharacter GreekRho 209
+\definecharacter GreekSigma 211
+\definecharacter GreekTau 212
+\definecharacter GreekUpsilon 213
+\definecharacter GreekPhi 214
+\definecharacter GreekChi 215
+\definecharacter GreekPsi 216
+\definecharacter GreekOmega 217
+
+%
+% Lowercase Greek letters
+%
+
+\definecharacter Greekalpha 225
+\definecharacter Greekbeta 226
+\definecharacter Greekgamma 227
+\definecharacter Greekdelta 228
+\definecharacter Greekepsilon 229
+\definecharacter Greekzeta 230
+\definecharacter Greeketa 231
+\definecharacter Greektheta 232
+\definecharacter Greekiota 233
+\definecharacter Greekkappa 234
+\definecharacter Greeklamda 235
+\definecharacter Greekmu 236
+\definecharacter Greeknu 237
+\definecharacter Greekxi 238
+\definecharacter Greekomicron 239
+\definecharacter Greekpi 240
+\definecharacter Greekrho 241
+\definecharacter Greekfinalsigma 242
+\definecharacter Greeksigma 243
+\definecharacter Greektau 244
+\definecharacter Greekupsilon 245
+\definecharacter Greekphi 246
+\definecharacter Greekchi 247
+\definecharacter Greekpsi 248
+\definecharacter Greekomega 249
+
+%
+% Accented Uppercase Greek letters
+%
+
+\definecharacter GreekAlphatonos 182
+\definecharacter GreekEpsilontonos 184
+\definecharacter GreekEtatonos 185
+\definecharacter GreekIotatonos 186
+\definecharacter GreekOmicrontonos 188
+\definecharacter GreekUpsilontonos 190
+\definecharacter GreekOmegatonos 191
+\definecharacter GreekIotadialytika 218
+\definecharacter GreekUpsilondialytika 219
+
+%
+% Accented Lowercase Greek letters
+%
+
+\definecharacter Greekalphatonos 220
+\definecharacter Greekepsilontonos 221
+\definecharacter Greeketatonos 222
+\definecharacter Greekiotatonos 223
+\definecharacter Greekomicrontonos 252
+\definecharacter Greekupsilontonos 253
+\definecharacter Greekomegatonos 254
+\definecharacter Greekiotadialytika 250
+\definecharacter Greekupsilondialytika 251
+\definecharacter Greekiotadialytikatonos 192
+\definecharacter Greekupsilondialytikatonos 224
+
+%
+% Miscellaneous Greek symbols
+%
+
+\definecharacter Greekleftquot 171
+\definecharacter Greekrightquot 187
+\definecharacter Greektonos 180
+\definecharacter Greekdialytikatonos 181
+\definecharacter Greekapostrophos 162
+
+\stopencoding
diff --git a/tex/context/base/font-chi.tex b/tex/context/base/font-chi.tex
index fa9e940f7..43a19be3c 100644
--- a/tex/context/base/font-chi.tex
+++ b/tex/context/base/font-chi.tex
@@ -357,8 +357,8 @@
\rotate[\c!rotatie=270]{\box\scratchbox}%
\fi
\hss}%
- \ht\scratchbox\unicodeheight\ht\strutbox
- \dp\scratchbox\unicodedepth \dp\strutbox
+ \ht\scratchbox\unicodeheight\strutht
+ \dp\scratchbox\unicodedepth \strutdp
\ifvmode % catches \hbox{...}, actually \hbox should be \vbox -)
\nointerlineskip
\fi
diff --git a/tex/context/base/font-run.tex b/tex/context/base/font-run.tex
index 20b720c8c..9b81ac140 100644
--- a/tex/context/base/font-run.tex
+++ b/tex/context/base/font-run.tex
@@ -37,9 +37,9 @@
{\dosetshowfonttitle{#1}%
\def\bigstrut##1##2%
{\hbox{\vrule
- \!!height ##1\ht\strutbox
- \!!depth ##2\dp\strutbox
- \!!width \!!zeropoint}}
+ \!!height##1\strutht
+ \!!depth ##2\strutdp
+ \!!width \zeropoint}}
\def\next##1##2##3%
{&&##1&&##2\tf##3&&##2\sc##3%
&&##2\sl##3&&##2\it##3&&##2\bf##3&&##2\bs##3&&##2\bi##3%
@@ -144,15 +144,15 @@
{\tf\vbox to 2.5em
{\vss
\hbox to 2.5em
- {\dummy\ifdim\fontdimen2\font=\!!zeropoint
- \setbox\scratchbox=\hbox
- {\raise.5\dp\scratchbox\hbox
- {\lower.5\ht\scratchbox\copy\scratchbox}}%
+ {\dummy\ifdim\fontdimen2\font=\zeropoint
+ \setbox\scratchbox\hbox
+ {\raise.5\dp\scratchbox\hbox
+ {\lower.5\ht\scratchbox\copy\scratchbox}}%
\ht\scratchbox\zeropoint
\dp\scratchbox\zeropoint
\else
- \ht\scratchbox\ht\strutbox
- \dp\scratchbox\dp\strutbox
+ \ht\scratchbox\strutht
+ \dp\scratchbox\strutdp
\strut
\fi
\hss\copy\scratchbox\hss}
diff --git a/tex/context/base/font-uni.tex b/tex/context/base/font-uni.tex
index a114c0882..269c0f771 100644
--- a/tex/context/base/font-uni.tex
+++ b/tex/context/base/font-uni.tex
@@ -372,15 +372,15 @@
\def\dosetunicodestrut#1#2% height depth
{\def\unicodestrut
{\vrule
- \!!width\zeropoint
- \!!height#1\ht\strutbox
- \!!depth#2\dp\strutbox
+ \!!width \zeropoint
+ \!!height#1\strutht
+ \!!depth #2\strutdp
\relax}}
\def\setunicodestrut#1#2% height depth
- {\ifdim#1\ht\strutbox>\zeropoint
+ {\ifdim#1\strutht>\zeropoint
\dosetunicodestrut{#1}{#2}%
- \else\ifdim#1\dp\strutbox>\zeropoint
+ \else\ifdim#1\strutdp>\zeropoint
\dosetunicodestrut{#1}{#2}%
\else
\let\unicodestrut\empty
diff --git a/tex/context/base/m-educat.tex b/tex/context/base/m-educat.tex
index 01e156797..0951ee055 100644
--- a/tex/context/base/m-educat.tex
+++ b/tex/context/base/m-educat.tex
@@ -73,7 +73,7 @@
\def\setupanswerarea
{\setuptextbackground[\v!answerarea]}
-\def\answerspace
+\setvalue\e!answerspace
{\dosingleempty\doanswerspace}
\def\doanswerspace[#1]%
@@ -181,7 +181,7 @@
\getvalue{\e!stop\v!answerarea}%
\par\endgroup\endgroup}
-\def\answerlines
+\setvalue\e!answerlines
{\dosingleempty\doanswerlines}
\def\doanswerlines[#1]#2%
diff --git a/tex/context/base/m-plus.tex b/tex/context/base/m-plus.tex
new file mode 100644
index 000000000..cd3a72757
--- /dev/null
+++ b/tex/context/base/m-plus.tex
@@ -0,0 +1,29 @@
+%D \module
+%D [ file=m-plus,
+%D version=2003.03.16,
+%D title=\CONTEXT\ Extra Modules,
+%D subtitle=Loading extra features,
+%D author=Hans Hagen,
+%D date=\currentdate,
+%D copyright=PRAGMA-ADE]
+%C
+%C This module is part of the \CONTEXT\ macro||package and is
+%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
+%C details.
+
+%D Somewhere in 2001 i started collecting new functionality
+%D in a module \type {m-yesno}. As the name suggests, I was
+%D not entirely sure if this functionality belonged in the
+%D kernel. When (again) on the \CONTEXT\ list a request for
+%D side bars was posted, I decided to move such code to plus
+%D modules. Users who want this additional functionality can
+%D put the following call in their \type {cont-sys.tex} file:
+%D
+%D \starttyping
+%D \usemodule[plus]
+%D \stoptyping
+
+\readfile {plus-rul} \donothing \donothing
+\readfile {plus-pag} \donothing \donothing
+
+\endinput
diff --git a/tex/context/base/mult-com.tex b/tex/context/base/mult-com.tex
index c6a8ba11d..6dc0ab5b9 100644
--- a/tex/context/base/mult-com.tex
+++ b/tex/context/base/mult-com.tex
@@ -804,24 +804,28 @@ stelnummerin: stelnummerin setupnumber
ran ran
ran ran
% new
+ defineitemgroup: definieeritemgroep defineitemgroup
+ defineitemgroup defineitemgroup
+ defineitemgroup defineitemgroup
+ setupitemgroup: stelitemgroepin setupitemgroup
+ setupitemgroup setupitemgroup
+ setupitemgroup setupitemgroup
setupitemgroups: stelitemgroepenin setupitemgroups
setupitemgroups setupitemgroups
setupitemgroups setupitemgroups
- % downward compatible definitions
-
- setupitemgroups: stelopsommingenin setupitemizations
- stelleaufzaehlungenein nastavvycty
- impostaelencazioni setareitemization
- startitemize: startopsomming startitemize
- startaufzaehlung startvycet
- iniziaelenco startenumerare
- setupitemize: stelopsommingin setupitemize
- stelleaufzaehlungein nastavvycet
- impostaelenco setareenumerare
- stopitemize: stopopsomming stopitemize
- stopaufzaehlung stopvycet
- terminaelenco stopenumerare
+% setupitemgroups: stelopsommingenin setupitemizations
+% stelleaufzaehlungenein nastavvycty
+% impostaelencazioni setareitemization
+% startitemize: startopsomming startitemize
+% startaufzaehlung startvycet
+% iniziaelenco startenumerare
+% setupitemize: stelopsommingin setupitemize
+% stelleaufzaehlungein nastavvycet
+% impostaelenco setareenumerare
+% stopitemize: stopopsomming stopitemize
+% stopaufzaehlung stopvycet
+% terminaelenco stopenumerare
% so far
@@ -1148,9 +1152,15 @@ listsymbol: lijstsymbool listsymbol
placefloat: plaatsplaatsblok placefloat
placefloat placefloat
placefloat placefloat %%%
-movesidefloat: verplaatszijblok movesidefloat
- movesidefloat movesidefloat
- movesidefloat movesidefloat
+ movesidefloat: verplaatszijblok movesidefloat
+ movesidefloat movesidefloat
+ movesidefloat movesidefloat
+defineplacement: definieerplaats defineplacement
+ defineplacement defineplacement
+ defineplacement defineplacement
+ setupplacement: stelplaatsin setupplacement
+ setupplacement setupplacement
+ setupplacement setupplacement
definecombination: definieercombinatie definecombination
definecombination definecombination
definecombination definecombination
diff --git a/tex/context/base/mult-con.tex b/tex/context/base/mult-con.tex
index 7e34cb065..b5661567b 100644
--- a/tex/context/base/mult-con.tex
+++ b/tex/context/base/mult-con.tex
@@ -315,6 +315,9 @@
spraak: spraak speech
speech speech
speech speech
+ itemize: opsomming itemize
+ aufzaehlung vycet
+ elenco enumerare
\stopvariables
@@ -445,6 +448,9 @@ clipoffset: clipoffset clipoffset
auteur: auteur author
autor autor
autore autor
+ auto: auto auto
+ auto auto
+ auto auto
autofile: autofile autofile
autofile autofile
autofile autofile % TB TH
@@ -529,9 +535,9 @@ clipoffset: clipoffset clipoffset
dieptecorrectie: dieptecorrectie depthcorrection
tiefekorrektur korekcehloubky
correzioneprofondita corectieadancime
- dikte: dikte thickness
- dicke tloustka
- spessore grosime
+% dikte: dikte thickness
+% dicke tloustka
+% spessore grosime
doorgaan: doorgaan continue
fortsetzen pokracovat
continua continua
@@ -1412,9 +1418,6 @@ trefwoord: trefwoord keyword
breedte: breedte width
breite sirka
ampiezza latime
- buffer: buffer buffer
- puffer buffer
- buffer buffer
buiten: buiten outer
aussen vnejsi
esterno extern
@@ -2311,6 +2314,21 @@ geencontrole: geencontrole nocheck
framedtext: kadertekst framedtext
umrahmtertext oramovanytext
testoincorniciato textinconjurat
+ itemgroup: itemgroup itemgroup
+ itemgroup itemgroup
+ itemgroup itemgroup
+ typen: typen typing
+ tippen typing
+ typing typing % GB
+ buffer: buffer buffer
+ puffer buffer
+ buffer buffer
+ formule: formule formula
+ formel rovnice
+ formula formula
+ tabulate: tabulatie tabulate
+ tabulator tabelator
+ tabulato tabulate
\stopsetupvariables
@@ -2329,18 +2347,9 @@ geencontrole: geencontrole nocheck
beginvan: beginvan begin
anfang zacatek
inizio inceput
- buffer: buffer buffer
- puffer buffer
- buffer buffer
- commentaar: commentaar comment
- kommentar komentar
- commento comentariu
eindvan: eindvan end
ende konec
fine sfarsit
- formule: formule formula
- formel rovnice
- formula formula
gekoppelde: gekoppelde coupled
verknuepft propojene
accoppiato cuplat
@@ -2353,15 +2362,6 @@ geencontrole: geencontrole nocheck
in: in -
ein -
- -
- instellingen: instellingen setups
- impostazioni einstellungen
- nastaveni setari
- interactiemenu: interactiemenu interactionmenu
- interaktionsmenue interaktivnimenu
- menuinterattivo meniuinteractiune
- itemize: opsomming itemize
- aufzaehlung vycet
- elenco enumerare
laad: laad load
laden nacist
carica incarca
@@ -2380,9 +2380,6 @@ geencontrole: geencontrole nocheck
lokale: lokale local
lokal lokalne
locale local
- opmaak: opmaak makeup
- umbruch zlom
- makeup makeup % GB
plaats: plaats place
platziere umisti
metti pune
@@ -2398,33 +2395,6 @@ geencontrole: geencontrole nocheck
stop: stop stop
stop stop
termina stop
- tablehead: tabelkop tablehead
- tabellenueberschrift zahlavitabulky
- testatabella antettabel
- tabletail: tabelstaart tabletail
- tabellenende konectabulky
- codatabella subsoltabel
- tabulate: tabulatie tabulate
- tabulator tabelator
- tabulato tabulate
- tabulatehead: tabulatiekop tabulatehead
- tabulatehead tabulatehead
- testatabulato tabulatehead %
- tabulatetail: tabulatiestaart tabulatetail
- tabulatetail tabulatetail
- codatabulato tabulatetail %
- tekst: tekst text
- text text
- testo text
- type: type type
- type opis
- type type % GB
- uitstellen: uitstellen postponing
- verschieben odlozit
- posporre postponing % GB
- verbergen: verbergen hiding
- verbergen skryt
- nascondere ascundere
verhoog: verhoog increment
erhoehen zvysit
incrementa increment
@@ -2443,33 +2413,83 @@ geencontrole: geencontrole nocheck
zie: zie see
sieh viz
vedi vezi
- register: register register
- register rejstrik
- registro registru
+ type: type type
+ type opis
+ type type % GB
+ opmaak: opmaak makeup
+ umbruch zlom
+ makeup makeup % GB
+ tekst: tekst text
+ text text
+ testo text
+
+\stopelements
+
+%D These are predefined instances. To be cleaned up.
+
+\startvariables dutch english
+ german czech
+ italian romanian
+
+ buffer: buffer buffer
+ puffer buffer
+ buffer buffer
+ linenote: regelnoot linenote
+ linenote linenote
+ linenote linenote
+ commentaar: commentaar comment
+ kommentar komentar
+ commento comentariu
+ interactiemenu: interactiemenu interactionmenu
+ interaktionsmenue interaktivnimenu
+ menuinterattivo meniuinteractiune
+ uitstellen: uitstellen postponing
+ verschieben odlozit
+ posporre postponing % GB
+ verbergen: verbergen hiding
+ verbergen skryt
+ nascondere ascundere
+ tabulate: tabulatie tabulate
+ tabulator tabelator
+ tabulato tabulate
+ tabulatehead: tabulatiekop tabulatehead
+ tabulatehead tabulatehead
+ testatabulato tabulatehead %
+ tabulatetail: tabulatiestaart tabulatetail
+ tabulatetail tabulatetail
+ codatabulato tabulatetail %
gegeven: gegeven fact
gegeben fakt
fatto fapt
legenda: legenda legend
legende legenda
legenda legenda
+ formule: formule formula
+ formel rovnice
+ formula formula
+ tablehead: tabelkop tablehead
+ tabellenueberschrift zahlavitabulky
+ testatabella antettabel
+ tabletail: tabelstaart tabletail
+ tabellenende konectabulky
+ codatabella subsoltabel
+ instellingen: instellingen setups
+ impostazioni einstellungen
+ nastaveni setari
helptext: helptekst helptext
hilfetext textnapovedy
testoaiuto textajutator
- pagecomment: paginacommentaar pagecomment
- pagecomment komentarstranky
- commentopagina comentariupagina % TB
- sectieblokomgeving: sectieblokomgeving sectionblockenvironment
- sectionblockenvironment sectionblockenvironment
- ambientebloccosezione blocsectiuneambient % TB TH
deelomgeving: deelomgeving localenvironment
lokaleumgebung lokalnihoprostredi
ambientelocale mediulocal
+ sectieblokomgeving: sectieblokomgeving sectionblockenvironment
+ sectionblockenvironment sectionblockenvironment
+ ambientebloccosezione blocsectiuneambient % TB TH
+ pagecomment: paginacommentaar pagecomment
+ pagecomment komentarstranky
+ commentopagina comentariupagina % TB
- linenote: regelnoot linenote
- linenote linenote
- linenote linenote
-
-\stopelements
+\stopvariables
%D \stopcompressdefinitions
diff --git a/tex/context/base/page-flt.tex b/tex/context/base/page-flt.tex
index 2178d4b26..c99e6e119 100644
--- a/tex/context/base/page-flt.tex
+++ b/tex/context/base/page-flt.tex
@@ -1056,7 +1056,7 @@
\newskip\sidefloatleftshift
\newskip\sidefloatrightshift
-\def\sidefloattopoffset {\openstrutdepth} % {\dp\strutbox}
+\def\sidefloattopoffset {\openstrutdepth} % {\strutdp}
\newcount\noftopfloats \noftopfloats=2
\newcount\nofbotfloats \nofbotfloats=0
@@ -1145,7 +1145,7 @@
{\doattributes{\??kj#1}\c!kopletter\c!kopkleur
{\labeltexts{#1}{\preparednumber}}%
\doattributes{\??kj#1}\c!tekstletter\c!tekstkleur
- {\dotfskip\@@kjkjafstand#3}}}%
+ {\dotfskip{\getvalue{\??kj#1\c!afstand}}#3}}}%
\fi}
\def\placefloatcaptiontext [#1]{\getvalue{@fl@t@#1}}
@@ -1258,8 +1258,10 @@
\dopreparestackcaptionmin{#1}{#2}{#3}{#4}%
\fi}}%
\edef\width{\the\wd\tempfloatbox}%
-\doglobal\addlocalbackgroundtobox\tempfloatbox
-\doglobal\addlocalbackgroundtobox\tempcaptionbox
+%\doglobal
+\addlocalbackgroundtobox\tempfloatbox
+%\doglobal
+\addlocalbackgroundtobox\tempcaptionbox
\buildfloatbox
\fi
% \doglobal\addlocalbackgroundtobox\floatbox
@@ -1381,10 +1383,10 @@
\processaction
[\@@kjkjplaats]
[ \v!boven=>\locatefloat{\box\tempcaptionbox}%
- \endgraf\@@kjkjtussen
+ \endgraf\nointerlineskip\@@kjkjtussen
\locatefloat{\box\tempfloatbox},
\v!onder=>\locatefloat{\box\tempfloatbox}%
- \endgraf\@@kjkjtussen
+ \endgraf\nointerlineskip\@@kjkjtussen
\locatefloat{\box\tempcaptionbox},
\v!hoog=>\locatefloat
{\doifelse\@@flflplaats\v!links
@@ -1544,7 +1546,8 @@
\mindermeldingen
%\showcomposition
\setbox\tempfloatbox\vbox{\borderedfloatbox{#4}}%
-\doglobal\addlocalbackgroundtobox\tempfloatbox
+%\doglobal
+\addlocalbackgroundtobox\tempfloatbox
\ifnofloatcaption
\global\setbox\floatbox\vbox{\box\tempfloatbox}%
\else
@@ -1565,14 +1568,21 @@
{\dosetraggedvbox\@@kjkjuitlijnen
\setbox\tempcaptionbox\raggedbox
{\hsize\wd\tempfloatbox\putcompletecaption{#4}{#2}{#3}{0}}}}%
-\doglobal\addlocalbackgroundtobox\tempcaptionbox
+%\doglobal
+\addlocalbackgroundtobox\tempcaptionbox
\global\setbox\floatbox\vbox
{\processaction
[\@@kjkjplaats]
- [ \v!boven=>\box\tempcaptionbox\endgraf\@@kjkjtussen\box\tempfloatbox,
- \v!onder=>\box\tempfloatbox\endgraf\@@kjkjtussen\box\tempcaptionbox,
+ [ \v!boven=>\box\tempcaptionbox
+ \endgraf\nointerlineskip\@@kjkjtussen
+ \box\tempfloatbox,
+ \v!onder=>\box\tempfloatbox
+ \endgraf\nointerlineskip\@@kjkjtussen
+ \box\tempcaptionbox,
\v!geen=>\box\tempfloatbox,
- \s!unknown=>\box\tempfloatbox\endgraf\@@kjkjtussen\box\tempcaptionbox]}%
+ \s!unknown=>\box\tempfloatbox
+ \endgraf\nointerlineskip\@@kjkjtussen
+ \box\tempcaptionbox]}%
\fi
% \doglobal\addlocalbackgroundtobox\floatbox
\egroup}
@@ -1924,11 +1934,11 @@
% \egroup
% \fi\fi}
%
-% \setvalue{\e!start\e!uitstellen}%
+% \setvalue{\e!start\v!uitstellen}%
% {\doglobal\increment\nofpostponedblocks
% \showmessage\m!layouts3\nofpostponedblocks
% \dostartbuffer[buf-\nofpostponedblocks]
-% [\e!start\e!uitstellen][\e!stop\e!uitstellen]}
+% [\e!start\v!uitstellen][\e!stop\v!uitstellen]}
% \startpostponing [pagenumber] [+pageoffset]
%
@@ -1983,7 +1993,7 @@
% beware, \dosingleempty conflicts with buffers (feeds back the \par)
-\setvalue{\e!start\e!uitstellen}%
+\setvalue{\e!start\v!uitstellen}%
{\bgroup
\obeylines
\doifnextcharelse[%
@@ -1998,13 +2008,13 @@
\egroup
\showmessage\m!layouts3\nofpostponedpageblocks
\dostartbuffer[rbuf-\nofpostponedpageblocks]%
- [\e!start\e!uitstellen][\e!stop\e!uitstellen]}
+ [\e!start\v!uitstellen][\e!stop\v!uitstellen]}
\def\dodostartpostponing
{\doglobal\increment\nofpostponedblocks
\showmessage\m!layouts3\nofpostponedblocks
\dostartbuffer[pbuf-\nofpostponedblocks]%
- [\e!start\e!uitstellen][\e!stop\e!uitstellen]}
+ [\e!start\v!uitstellen][\e!stop\v!uitstellen]}
\definieernummer
[\??si]
diff --git a/tex/context/base/page-imp.tex b/tex/context/base/page-imp.tex
index f35b08bf2..8d318b4b0 100644
--- a/tex/context/base/page-imp.tex
+++ b/tex/context/base/page-imp.tex
@@ -1081,11 +1081,11 @@
{\setuppapersize[\c!links=\hskip\@@pcoffset]%
\adddimenmacro\papierhoogte\@@pcoffset\@@pcoffset\@@pcafstand\@@pchoogte\to\@@pcpaperheight
\adddimenmacro\papierbreedte\@@pcoffset\@@pcoffset\to\@@pcpaperwidth
- \defineoverlay[pagecomment][\placepagecommentTB]}
+ \defineoverlay[\v!pagecomment][\placepagecommentTB]}
{\setuppapersize[\c!boven=\vskip\@@pcoffset]%
\adddimenmacro\papierhoogte\@@pcoffset\@@pcoffset\to\@@pcpaperheight
\adddimenmacro\papierbreedte\@@pcoffset\@@pcoffset\@@pcafstand\@@pcbreedte\to\@@pcpaperwidth
- \defineoverlay[pagecomment][\placepagecommentLR]}%
+ \defineoverlay[\v!pagecomment][\placepagecommentLR]}%
\processaction
[\@@pcplaats]
[ \v!onder=>{\setuppapersize[\c!onder =\vss,\c!boven =\vskip\@@pcoffset]},
@@ -1093,12 +1093,12 @@
\v!links=>{\setuppapersize[\c!links =\hss,\c!rechts=\hskip\@@pcoffset]},
\v!rechts=>{\setuppapersize[\c!rechts=\hss,\c!links =\hskip\@@pcoffset]}]%
\definepapersize
- [commentedpage]
+ [\v!pagecomment]
[\c!hoogte=\@@pcpaperheight,
\c!breedte=\@@pcpaperwidth]%
\let\@@pcprintpapersize\printpapersize
- \setuppapersize[\papersize][commentedpage]%
- \setupbackgrounds[\v!papier][\c!achtergrond=pagecomment]}
+ \setuppapersize[\papersize][\v!pagecomment]%
+ \setupbackgrounds[\v!papier][\c!achtergrond=\v!pagecomment]}
{\doif\@@pcstatus\v!stop % else initialization invokes backgrounds
{% this should be tested first
% \expanded{\setuppapersize[\papersize][\@@pcprintpapersize]}%
@@ -1117,7 +1117,7 @@
{\forgetall
\hsize\papierbreedte
\ifpagecomment
- \haalbuffer[pagecomm]
+ \getbuffer[\v!pagecomment]%
\global\pagecommentfalse
\fi}%
\hfill
@@ -1133,7 +1133,7 @@
\vskip\@@pcoffset
\hsize\@@pcbreedte
\ifpagecomment
- \haalbuffer[pagecomm]
+ \getbuffer[\v!pagecomment]%
\global\pagecommentfalse
\fi
\vss}%
@@ -1142,9 +1142,9 @@
\newif\ifpagecomment
-\setvalue{\e!start\e!pagecomment}%
+\setvalue{\e!start\v!pagecomment}%
{\global\pagecommenttrue
- \dostartbuffer[pagecomm][\e!start\e!pagecomment][\e!stop\e!pagecomment]}
+ \dostartbuffer[\v!pagecomment][\e!start\v!pagecomment][\e!stop\v!pagecomment]}
\setuppagecomment
[\c!status=, % \v!stop would invoke background calculation
diff --git a/tex/context/base/page-ini.tex b/tex/context/base/page-ini.tex
index 167f59af8..4b59577c3 100644
--- a/tex/context/base/page-ini.tex
+++ b/tex/context/base/page-ini.tex
@@ -562,6 +562,12 @@
13: blocul lat este mutat in partea de sus a coloanelor
\stopmessages
+\ifx\dosetuplayout\undefined % overloaded in page-lay !
+
+ \def\setuplayout{\dodoubleempty\getparameters[\??ly]}
+
+\fi
+
%D In case we're not running \ETEX, we need to bypass a
%D couple of primitives.
@@ -1198,6 +1204,63 @@
\newif\ifsavepagebody \newbox\savedpagebody
+% \def\buildpagebody#1#2%
+% {\ifsavepagebody\global\setbox\savedpagebody\fi
+% \vbox
+% {\beginrestorecatcodes
+% \forgetall % igv problemen, check: \boxmaxdepth\maxdimen
+% \boxmaxdepth\maxdimen % new
+% \mindermeldingen
+% \setbox\pagebox\vbox
+% {\offinterlineskip
+% \ifpagebodyornaments
+% % \getbackgroundbox
+% % \getlogobox
+% \bgroup % else footnotes get inconsistent font/baseline
+% % \doconvertfont\@@lyletter\empty
+% \dostartattributes\??ly\c!letter\c!kleur\empty
+% \offinterlineskip
+% \gettextboxes
+% \dostopattributes
+% \egroup
+% \fi
+% \getmainbox#1#2}% including footnotes
+% \ifpagebodyornaments
+% \addmainbackground \pagebox
+% \addlogobackground \pagebox
+% \fi
+% \buildpagebox \pagebox
+% \addstatusinfo \pagebox
+% \ifpagebodyornaments
+% \addpagebackground \pagebox
+% \fi
+% \registerpageposition\pagebox
+% \ifarrangingpages
+% \shiftpaperpagebox \pagebox % \v!papier
+% \else
+% \clippagebox \pagebox
+% \addpagecutmarks \pagebox
+% \replicatepagebox \pagebox
+% \scalepagebox \pagebox
+% \mirrorpaperbox \pagebox
+% \rotatepaperbox \pagebox
+% \addpagecolormarks \pagebox
+% \centerpagebox \pagebox
+% \addprintbackground\pagebox
+% \mirrorprintbox \pagebox
+% \rotateprintbox \pagebox
+% \shiftprintpagebox \pagebox % \v!pagina
+% \offsetprintbox \pagebox
+% \negateprintbox \pagebox
+% \fi
+% \box\pagebox
+% \endrestorecatcodes}%
+% \ifsavepagebody\copy\savedpagebody\fi}
+
+% beware, \??ly is used before defined, i.e. bad module design
+
+\setuplayout[\c!methode=\v!normaal]
+
\def\buildpagebody#1#2%
{\ifsavepagebody\global\setbox\savedpagebody\fi
\vbox
@@ -1205,26 +1268,11 @@
\forgetall % igv problemen, check: \boxmaxdepth\maxdimen
\boxmaxdepth\maxdimen % new
\mindermeldingen
- \setbox\pagebox\vbox
- {\offinterlineskip
- \ifpagebodyornaments
-% \getbackgroundbox
-% \getlogobox
- \bgroup % else footnotes get inconsistent font/baseline
- % \doconvertfont\@@lyletter\empty
- \dostartattributes\??ly\c!letter\c!kleur\empty
- \offinterlineskip
- \gettextboxes
- \dostopattributes
- \egroup
- \fi
- \getmainbox#1#2}% including footnotes
- \ifpagebodyornaments
- \addmainbackground \pagebox
- \addlogobackground \pagebox
- \fi
- \buildpagebox \pagebox
- \addstatusinfo \pagebox
+ % the following plugin uses and sets pagebox; beware: this
+ % will change and is for my (hh) personal experiments
+ \executeifdefined{\??ly\c!methode\@@lymethode}%
+ {\getvalue{\??ly\c!methode\v!normaal}}#1#2%
+ % the finishing touch
\ifpagebodyornaments
\addpagebackground \pagebox
\fi
@@ -1251,6 +1299,25 @@
\endrestorecatcodes}%
\ifsavepagebody\copy\savedpagebody\fi}
+\setvalue{\??ly\c!methode\v!normaal}#1#2%
+ {\setbox\pagebox\vbox
+ {\offinterlineskip
+ \ifpagebodyornaments
+ \bgroup % else footnotes get inconsistent font/baseline
+ \dostartattributes\??ly\c!letter\c!kleur\empty
+ \offinterlineskip
+ \gettextboxes
+ \dostopattributes
+ \egroup
+ \fi
+ \getmainbox#1#2}% including footnotes
+ \ifpagebodyornaments
+ \addmainbackground \pagebox
+ \addlogobackground \pagebox
+ \fi
+ \buildpagebox \pagebox
+ \addstatusinfo \pagebox}
+
\def\finishpagebox#1%
{\ifarrangingpages
\addpagecutmarks #1%
@@ -1684,13 +1751,13 @@
\ht\registertextbox\ht#3%
\dp\registertextbox\dp#3%
\ifcase#1\or % 1
- \setbox\registertextbox\hbox{\lower\dp\strutbox\box\registertextbox}%
+ \setbox\registertextbox\hbox{\lower\strutdp\box\registertextbox}%
\fi
\ifcase#2\or % 1
- \setbox\registertextbox\hbox{\raise\topskip\hbox{\lower\ht\strutbox\box\registertextbox}}%
- \dp\registertextbox\dp\strutbox
+ \setbox\registertextbox\hbox{\raise\topskip\hbox{\lower\strutht\box\registertextbox}}%
+ \dp\registertextbox\strutdp
\fi
- \dp\registertextbox\dp\strutbox % needed
+ \dp\registertextbox\strutdp % needed
%\setbox\registertextbox\hbox
% {\iftracetextareas\gray\boxrulewidth2pt\ruledhbox\fi
% {\registerMPtextarea{\box\registertextbox}}}%
diff --git a/tex/context/base/page-lin.tex b/tex/context/base/page-lin.tex
index 12af9dc27..8038e45b9 100644
--- a/tex/context/base/page-lin.tex
+++ b/tex/context/base/page-lin.tex
@@ -269,7 +269,7 @@
%\def\regelreferentie#1[#2]%
% {\bgroup
-% \dimen0=\dp\strutbox
+% \dimen0\strutdp
% \doif{\@@rnrefereren}{\v!aan}
% {\doglobal\increment\linereference
% % start 1=>(n=y,l=0,p=1)
@@ -285,7 +285,7 @@
\def\regelreferentie#1[#2]%
{\bgroup
- \dimen0=\dp\strutbox
+ \dimen0=\strutdp
\doif\@@rnrefereren\v!aan
{\doglobal\increment\linereference
% start 1=>(n=y,l=0,p=1)
@@ -307,7 +307,7 @@
{\reshapebox % We are going back!
{\global\advance\linenumber \minusone
\dimen0=\dp\shapebox
- \advance\dimen0 -\dp\strutbox\relax
+ \advance\dimen0 -\strutdp\relax
\ifdim\dimen0>\zeropoint
% 1=>4 | 2=>4 1=>2
% start 1=>(n=y,l=2,p=1)
@@ -354,9 +354,9 @@
{\referenceprefix\linereferencename}{}{}{0}}% ==done
\fi}%
\dimen0\dp\shapebox
- \advance\dimen0 -\dp\strutbox\relax
+ \advance\dimen0 -\strutdp\relax
\ifdim\dimen0>\zeropoint
- \dp\shapebox\dp\strutbox
+ \dp\shapebox\strutdp
\fi
\schrijfregelnummer\box\shapebox}}% no \strut !
\else
diff --git a/tex/context/base/page-mar.tex b/tex/context/base/page-mar.tex
index 5109446b1..3447a9f4d 100644
--- a/tex/context/base/page-mar.tex
+++ b/tex/context/base/page-mar.tex
@@ -57,7 +57,7 @@
\def\margetekstnummer {0}
\let\margetekstscheider = \empty
-\def\margestrutheight{\ht\strutbox}
+\def\margestrutheight{\strutht}
\def\maakmargetekstblok#1#2#3#4#5#6%
{#4\relax
@@ -92,11 +92,11 @@
\@@imvoor
\dostartattributes{\??im\margetekstnummer}\c!letter\c!kleur\empty
\dorecurse\margetekstregels{\strut\\}%
- \xdef\margestrutheight{\the\ht\strutbox}%
+ \xdef\margestrutheight{\the\strutht}%
\begstrut#6\endstrut\endgraf
\dostopattributes
\@@imna}%
- \ht0\ht\strutbox
+ \ht0\strutht
\box0
\egroup
#5\relax}
@@ -131,17 +131,17 @@
\setbox0\hbox
{#2{\hskip#3\strut
\iflowinmargin\else
- \dimen0\dp\strutbox
+ \dimen0\strutdp
\advance\dimen0 \margestrutheight
- \advance\dimen0 -\ht\strutbox
+ \advance\dimen0 -\strutht
\raise\dimen0
\fi
\box0}}%
\ht0\zeropoint
\dp0\zeropoint
- \gdef\margestrutheight{\the\ht\strutbox}%
+ \gdef\margestrutheight{\the\strutht}%
%\graphicvadjust{\box0}} % fails in high math lines, let it be
- %\hbox{\lower\dp\strutbox\box0}} % alas, wrong lapping, therefore useless
+ %\hbox{\lower\strutdp\box0}} % alas, wrong lapping, therefore useless
\dopositionmarginbox0}
%D This approach permits us to implement a better mechanism
@@ -562,7 +562,7 @@
{\egroup
\global\setbox\facingpage\vbox
{\ifvoid\facingpage
- \vskip\openstrutdepth % \dp\strutbox
+ \vskip\openstrutdepth % \strutdp
\else
\unvbox\facingpage
\fi
diff --git a/tex/context/base/page-mul.tex b/tex/context/base/page-mul.tex
index cc14f168e..9536114a2 100644
--- a/tex/context/base/page-mul.tex
+++ b/tex/context/base/page-mul.tex
@@ -809,15 +809,15 @@
\ifnotespresent
\bgroup
\scratchdimen\ht\firstcolumnbox
- \advance\scratchdimen -\openstrutdepth % \dp\strutbox
+ \advance\scratchdimen -\openstrutdepth % \strutdp
\getnoflines\scratchdimen
\advance\noflines -2
\scratchdimen\noflines\lineheight
\advance\scratchdimen \topskip
\setbox0\hbox
{\lower\scratchdimen\vbox{\placefootnoteinserts}}%
- \ht0=\openstrutheight % \ht\strutbox
- \dp0=\openstrutdepth % \dp\strutbox
+ \ht0=\openstrutheight % \strutht
+ \dp0=\openstrutdepth % \strutdp
\scratchdimen\ht\lastcolumnbox
\global\setbox\lastcolumnbox\vbox to \scratchdimen
{\box\lastcolumnbox
@@ -856,8 +856,8 @@
{\dimen0\dp\currentcolumnbox
\unvbox\currentcolumnbox
\vskip-\dimen0
- \vskip\openstrutdepth % \dp\strutbox
- \prevdepth\openstrutdepth % \dp\strutbox
+ \vskip\openstrutdepth % \strutdp
+ \prevdepth\openstrutdepth % \strutdp
\vfill}}%
\ifbottomnotes \else
\dimen0\ht\firstcolumnbox
diff --git a/tex/context/base/page-new.tex b/tex/context/base/page-new.tex
index b5f9faf43..342d5c81d 100644
--- a/tex/context/base/page-new.tex
+++ b/tex/context/base/page-new.tex
@@ -11,9 +11,9 @@
{\bgroup
\donefalse
\def\OTRSETcheckcontent##1%
- {\setbox\scratchbox=##1\recurselevel
- \setbox\scratchbox=\vbox{\unvbox\scratchbox}%
- \ifdim\ht\scratchbox>\!!zeropoint\donetrue\fi}%
+ {\setbox\scratchbox##1\recurselevel
+ \setbox\scratchbox\vbox{\unvbox\scratchbox}%
+ \ifdim\ht\scratchbox>\zeropoint\donetrue\fi}%
\dorecurse{\nofcolumns}
{\OTRSETcheckcontent\columngettextbox
\OTRSETcheckcontent\columngetfootbox
@@ -25,12 +25,12 @@
{\scratchdimen=\OTRSETgetparameter\c!maxhoogte#1%
\advance\scratchdimen -\OTRSETgetparameter\c!bovenoffset#1%
\advance\scratchdimen -\ht\columntopbox#1%
-\advance\scratchdimen -\getvalue{\??mc\number\mofcolumns-f}%
+ \advance\scratchdimen -\getvalue{\??mc\number\mofcolumns-f}%
\advance\scratchdimen -\ht\columnbotbox#1} % not used
\def\OTRSETgetcolumnnaturalheight#1% max - boven - top
- {\setbox\scratchbox=\vbox{\unvcopy\columntextbox#1}%
- \scratchdimen=\ht\scratchbox
+ {\setbox\scratchbox\vbox{\unvcopy\columntextbox#1}%
+ \scratchdimen\ht\scratchbox
\advance\scratchdimen \OTRSETgetparameter\c!bovenoffset#1%
\advance\scratchdimen \ht\columntopbox#1%
\advance\scratchdimen -\getvalue{\??mc\number\mofcolumns-f}%
@@ -42,8 +42,8 @@
% collect content and notes
\bgroup
\OTRSEToutput
- {\global\setbox1=\vbox{\unvbox\normalpagebox}%
- \global\setbox3=\vbox{\unvbox\footins}}%
+ {\global\setbox1\vbox{\unvbox\normalpagebox}%
+ \global\setbox3\vbox{\unvbox\footins}}%
\vbox{\toonstruts\strut}\vskip-\lineheight % makes footnotes flush
\eject
\global\collectingcontentfalse
@@ -52,18 +52,18 @@
\global\setbox1=\vbox{}
% fix height of first line
\ifdim\ht3>\!!zeropoint
- \global\setbox3=\vbox
+ \global\setbox3\vbox
{\setfootnotebodyfont
- \kern-\ht\strutbox
+ \kern-\strutht
\kern\topskip
\unvbox3}
\fi
% prepare trial box
- \global\setbox5=\vbox
- {\ifdim\ht1>\!!zeropoint
+ \global\setbox5\vbox
+ {\ifdim\ht1>\zeropoint
\unvcopy1 \ifdim\ht3>\zeropoint \kern\skip\footins \fi
\fi
- \ifdim\ht3>\!!zeropoint \unvcopy3 \fi}
+ \ifdim\ht3>\zeropoint \unvcopy3 \fi}
\egroup
% erase old stuff
\columnerasetextboxes
@@ -72,11 +72,11 @@
\OTRSETdotopinsertions
\OTRSETdobotinsertions % not used can be removed
% calculate available space
- \!!heighta=\!!zeropoint % available total height
+ \!!heighta\zeropoint % available total height
\dorecurse{\nofcolumns}
{\OTRSETgetcolumntextheight\recurselevel
\OTRSETcalculatelines\scratchdimen
- \advance\!!heighta by \scratchdimen}
+ \advance\!!heighta \scratchdimen}
% quick check
\ifdim\ht5>\!!heighta
% use normal routine
@@ -87,26 +87,26 @@
\unvbox3
\doglobal\addtocommalist{-\realfolio}\OTRSETbalancinglist
\donefalse
- %\writestatus{\m!columns}{no balancing, text overflows height}%
- \else\ifdim\ht5>\!!zeropoint \relax
+ %\writestatus\m!columns{no balancing, text overflows height}%
+ \else\ifdim\ht5>\zeropoint \relax
% some text and/or notes
\donetrue
\else
\donefalse
- \dorecurse{\nofcolumns}
- {\ifdim\ht\columntopbox\recurselevel>\!!zeropoint \donetrue \fi}%
+ \dorecurse\nofcolumns
+ {\ifdim\ht\columntopbox\recurselevel>\zeropoint \donetrue \fi}%
\ifdone
% no text and notes, but figures
\else
% no text, no notes, no figures
\doglobal\addtocommalist{-\realfolio}\OTRSETbalancinglist
- \writestatus{\m!columns}{no balancing, nothing to be placed}%
+ \writestatus\m!columns{no balancing, nothing to be placed}%
\fi
\fi\fi
\ifdone
- \ifdim\ht5>\!!zeropoint \relax
+ \ifdim\ht5>\zeropoint \relax
% balancing text and notes
- %\writestatus{\m!columns}{text may fit, balancing}%
+ %\writestatus\m!columns{text may fit, balancing}%
\newcounter\loopcounter
\newcounter\balancinglines
\doloop
@@ -115,22 +115,22 @@
\columnerasetextboxes
\columnerasefootboxes
\setbox0=\copy5
- \splittopskip=\topskip
+ \splittopskip\topskip
% pre-split loop and quality calculation
- %\writestatus{\m!columns}{pass \loopcounter: correction -\balancinglines}
- \dorecurse{\nofcolumns}
+ %\writestatus\m!columns{pass \loopcounter: correction -\balancinglines}
+ \dorecurse\nofcolumns
{\OTRSETgetcolumntextheight\recurselevel
\OTRSETcalculatelines\scratchdimen
- \!!heightc=\scratchdimen
+ \!!heightc\scratchdimen
\ifnum\recurselevel<\nofcolumns
- \advance\!!heightc by -\balancinglines\lineheight
+ \advance\!!heightc -\balancinglines\lineheight
\fi
- \columnsettextbox\recurselevel=\vsplit0 to \!!heightc}
+ \columnsettextbox\recurselevel\vsplit0 to \!!heightc}
% just one method
- \OTRSETgetcolumnnaturalheight1 \dimen4=\scratchdimen
- \OTRSETgetcolumnnaturalheight\nofcolumns \dimen6=\scratchdimen
- %\writestatus{\m!columns}{first column: \the\dimen4}%
- %\writestatus{\m!columns}{last column: \the\dimen6}%
+ \OTRSETgetcolumnnaturalheight1 \dimen4\scratchdimen
+ \OTRSETgetcolumnnaturalheight\nofcolumns \dimen6\scratchdimen
+ %\writestatus\m!columns{first column: \the\dimen4}%
+ %\writestatus\m!columns{last column: \the\dimen6}%
\ifdim\dimen4=\dimen6
\donetrue % perfect balance
\else\ifdim\dimen4>\dimen6
@@ -144,50 +144,50 @@
\fi
\fi\fi
% extra check
- % \ifdim\ht0>\!!zeropoint\relax \donefalse \fi
+ % \ifdim\ht0>\zeropoint\relax \donefalse \fi
% another check
\ifdone
- %\writestatus{\m!columns}{balancing finished in pass \loopcounter}%
+ %\writestatus\m!columns{balancing finished in pass \loopcounter}%
\else \ifnum\loopcounter>100 \donetrue
- %\writestatus{\m!columns}{balancing aborted after pass \loopcounter}%
+ %\writestatus\m!columns{balancing aborted after pass \loopcounter}%
\else
- %\writestatus{\m!columns}{balancing continued after pass \loopcounter}%
+ %\writestatus\m!columns{balancing continued after pass \loopcounter}%
\fi \fi
% final balancing pass
\ifdone
- \setbox0=\copy1
- \setbox2=\copy3
+ \setbox0\copy1
+ \setbox2\copy3
\columnerasetextboxes
\columnerasefootboxes
- \dorecurse{\nofcolumns}
+ \dorecurse\nofcolumns
{\OTRSETgetcolumntextheight\recurselevel
\OTRSETcalculatelines\scratchdimen
- \!!heightc=\scratchdimen
+ \!!heightc\scratchdimen
\ifnum\recurselevel<\nofcolumns
- \advance\!!heightc by -\balancinglines\lineheight
+ \advance\!!heightc -\balancinglines\lineheight
\fi
% split off text
- \ifdim\ht0>\!!zeropoint
- \columnsettextbox\recurselevel=\vsplit0 to \!!heightc
- \setbox4=\vbox{\unvcopy\columntextbox\recurselevel}
- \advance\!!heightc by -\ht4
- \ifdim\ht0>\!!zeropoint
- \columnsettextbox\recurselevel=\box4
- \advance\!!heightc by \skip\footins
+ \ifdim\ht0>\zeropoint
+ \columnsettextbox\recurselevel\vsplit0 to \!!heightc
+ \setbox4\vbox{\unvcopy\columntextbox\recurselevel}
+ \advance\!!heightc -\ht4
+ \ifdim\ht0>\zeropoint
+ \columnsettextbox\recurselevel\box4
+ \advance\!!heightc \skip\footins
\fi
\fi
% split off footnotes
- \ifdim\ht0>\!!zeropoint\relax \else
- \ifdim\ht2>\!!zeropoint\relax
- \setbox4=\vsplit2 to \!!heightc
+ \ifdim\ht0>\zeropoint\relax \else
+ \ifdim\ht2>\zeropoint\relax
+ \setbox4\vsplit2 to \!!heightc
\setbox\footins=\vbox{\unvbox4} % ugly and dirty trick
- \ifdim\ht\columntextbox\recurselevel=\!!zeropoint\relax
- \columnsettextbox\recurselevel=\hbox
- {\raise\dp\strutbox\hbox % ugly but needed
+ \ifdim\ht\columntextbox\recurselevel=\zeropoint\relax
+ \columnsettextbox\recurselevel\hbox
+ {\raise\strutdp\hbox % ugly but needed
{\setfootnotebodyfont % both these moves
- \lower\dp\strutbox\hbox{\placebottomnotes}}}
+ \lower\strutdp\hbox{\placebottomnotes}}}
\else
- \columnsetfootbox\recurselevel=\hbox{\placebottomnotes}
+ \columnsetfootbox\recurselevel\hbox{\placebottomnotes}
\fi
\fi
\fi}
diff --git a/tex/context/base/page-one.tex b/tex/context/base/page-one.tex
index 02a6e139f..e620d43bf 100644
--- a/tex/context/base/page-one.tex
+++ b/tex/context/base/page-one.tex
@@ -56,14 +56,14 @@
% \pushcolor
% \ifgridsnapping
% \vskip-\currentpagedepth
-% \vskip\openstrutdepth % \dp\strutbox
-% \prevdepth\openstrutdepth % \dp\strutbox
+% \vskip\openstrutdepth % \strutdp
+% \prevdepth\openstrutdepth % \strutdp
% \dobotinsertions
% \vfil
% \else\ifr@ggedbottom
% \vskip-\currentpagedepth
-% \vskip\openstrutdepth % \dp\strutbox
-% \prevdepth\openstrutdepth % \dp\strutbox
+% \vskip\openstrutdepth % \strutdp
+% \prevdepth\openstrutdepth % \strutdp
% \dobotinsertions
% \vfil
% \else\ifb@selinebottom
@@ -458,7 +458,7 @@
{\baselinecorrection
\doplacefloatbox
\doinsertfloatinfo
- \doif\@@bkspringvolgendein\v!nee\noindentation} % new
+ \dochecknextindentation\??bk}
\def\OTRONEsomefixdfloat % [#1]
{\docheckiffloatfits
diff --git a/tex/context/base/page-set.tex b/tex/context/base/page-set.tex
index 16ca38798..ab6e43545 100644
--- a/tex/context/base/page-set.tex
+++ b/tex/context/base/page-set.tex
@@ -298,8 +298,8 @@
{\topskipcorrection
\dorecurse\columnmaxcells
{\setbox\scratchbox\hbox{\OTRSETgetgridcell\mofcolumns\recurselevel}%
- \ht\scratchbox\ht\strutbox
- \dp\scratchbox\dp\strutbox
+ \ht\scratchbox\strutht
+ \dp\scratchbox\strutdp
\ifcase\columndirection
\box\scratchbox
\else
@@ -328,8 +328,8 @@
\setbox\scratchbox\hbox
{\hbox to \zeropoint{\OTRSETgetgridcell\nofcolumns\lastcolumnlastcell}%
\box\scratchbox}%
- \ht\scratchbox\ht\strutbox
- \dp\scratchbox\dp\strutbox
+ \ht\scratchbox\strutht
+ \dp\scratchbox\strutdp
\OTRSETsetgridcell\nofcolumns\lastcolumnlastcell\box\scratchbox
\fi
\global\lastcolumnlastcell\zerocount
@@ -628,14 +628,14 @@
% \setbox0\vbox to \columnfreecells\lineheight
% {\vskip-\topskip
% \vskip\lineheight
-% \prevdepth\dp\strutbox
+% \prevdepth\strutdp
% \unvbox\normalpagebox
% \vfill}%
% \setbox2\hbox
% {\OTRSETplacebottomnotes}%
% \setbox\scratchbox\hbox
% {\wd0\zeropoint\box0\box2}%
-% \dp\scratchbox\dp\strutbox
+% \dp\scratchbox\strutdp
% \OTRSEThandleflushedtext1
% \egroup}
@@ -645,14 +645,14 @@
\setbox0\vbox to \columnfreecells\lineheight
{\vskip-\topskip
\vskip\lineheight
- \prevdepth\dp\strutbox
+ \prevdepth\strutdp
\unvbox\normalpagebox
\vfill}%
\setbox2\hbox
{\OTRSETplacebottomnotes}%
\setbox\scratchbox\hbox
{\wd0\zeropoint\box0\box2}%
- \dp\scratchbox\dp\strutbox
+ \dp\scratchbox\strutdp
\donetrue
\ifbalancecolumns \ifcase\OTRSETfinish \or \or
% we're in the second balance loop in this column set,
@@ -1931,8 +1931,8 @@
\wd\scratchbox\zeropoint
\else
\wd\scratchbox\hsize
- \ht\scratchbox\ht\strutbox
- \dp\scratchbox\dp\strutbox
+ \ht\scratchbox\strutht
+ \dp\scratchbox\strutdp
\fi
\box\scratchbox}}
@@ -1973,7 +1973,7 @@
\def\OTRSETsomeslotfloat[#1]%
{\setbox\floatbox\vbox{\flushfloatbox}%
- \dp\floatbox\dp\strutbox
+ \dp\floatbox\strutdp
\@EA\uppercasestring\floatmethod\to\floatmethod
\OTRSETstoreincolumnslot\floatmethod\floatbox
\doinsertfloatinfo}
@@ -2439,27 +2439,6 @@
% \chardef\columnslotlocation2
-% \def\dostopcolumnsetspan#1%
-% {\par
-% \vbox{\strut}
-% \kern-2\lineheight
-% \vbox{\strut}
-% \doifsomething{\framedtextparameter{cs:#1}\c!na}
-% {\framedtextparameter{cs:#1}\c!na
-% \kern\zeropoint}% otherwise blanks disappear, better be a switch
-% \dostopframedtext
-% \egroup
-% \setbox\scratchbox\frozenhbox % keeps grid snapping okay
-% {\lower\strutdepth\box\scratchbox}%
-% %todo: nboven/onder\chardef\columnslotlocation2
-% %\OTRSETstoreincolumnslotSOMEWHERE\columnslotlocation\scratchbox
-% \chardef\columnslotspacing\framedtextparameter{cs:#1}\c!nregels\relax
-% \OTRSETstoreincolumnslotSOMEWHERE2\scratchbox
-% \doif{\framedtextparameter{cs:#1}\c!springvolgendein}\v!nee
-% \noindentation
-% \egroup
-% \endgraf}
-
\def\dostopcolumnsetspan#1%
{\par
\vbox{\strut}
@@ -2488,8 +2467,8 @@
\@EA\uppercasestring\floatmethod\to\floatmethod
% todo : \v!hier -> here enzovoorts
\OTRSETstoreincolumnslot\floatmethod\scratchbox
- \doif{\framedtextparameter{cs:#1}\c!springvolgendein}\v!nee
- \noindentation
+ % watch out: no \dochecknextindentation{tag}
+ \checknextindentation[\framedtextparameter{cs:#1}\springvolgendein]
\fi
\egroup
\endgraf}
diff --git a/tex/context/base/page-sid.tex b/tex/context/base/page-sid.tex
index b0919842f..521b8b968 100644
--- a/tex/context/base/page-sid.tex
+++ b/tex/context/base/page-sid.tex
@@ -597,11 +597,32 @@
\def\iffirstsidefloatparagraph
{\ifnum\sidefloatparagraph=1 }
+% \def\setsidefloatparagraph
+% {%\advance\sidefloatprogress \sidefloatbottomskip
+% %\!!counta\sidefloatprogress
+%\scratchdimen\sidefloatprogress
+%\advance\scratchdimen \strutht
+%\!!counta\scratchdimen
+% \divide\!!counta \baselineskip
+% \ifnum\!!counta>0
+% \hangindent \ifrightfloat-\fi\sidefloatwidth
+% \hangafter-\!!counta
+% \fi
+% \global\advance\sidefloatparagraph \plusone
+% \iftracesidefloats
+% \hskip-\sidefloatwidth
+% \color[darkgray]%
+% {\vrule\!!height.5\s!pt\!!depth.5\s!pt\!!width\sidefloatwidth
+% %\hskip-.25\bodyfontsize\showstruts\strut\hskip.25\bodyfontsize}%
+% \llap{\showstruts\strut\hskip.25\bodyfontsize}}%
+% \fi}
+
\def\setsidefloatparagraph
{%\advance\sidefloatprogress \sidefloatbottomskip
%\!!counta\sidefloatprogress
\scratchdimen\sidefloatprogress
-\advance\scratchdimen \ht\strutbox
+\advance\scratchdimen \strutht
+\advance\scratchdimen -10sp % new, needed in prikkels, prevent rounding errors
\!!counta\scratchdimen
\divide\!!counta \baselineskip
\ifnum\!!counta>0
diff --git a/tex/context/base/plus-rul.tex b/tex/context/base/plus-rul.tex
new file mode 100644
index 000000000..8b5652485
--- /dev/null
+++ b/tex/context/base/plus-rul.tex
@@ -0,0 +1,183 @@
+%D \module
+%D [ file=plus-rul,
+%D version=2003.03.16,
+%D title=\CONTEXT\ Plus Macros,
+%D subtitle=Ruled Stuff Handling,
+%D author=Hans Hagen,
+%D date=\currentdate,
+%D copyright=PRAGMA-ADE]
+%C
+%C This module is part of the \CONTEXT\ macro||package and is
+%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
+%C details.
+
+\writestatus{loading}{Context Plus Macros / Ruled Content Handling}
+
+\unprotect
+
+%D \definesidebar[whow][rulecolor=green,distance=]
+%D
+%D \starttext
+%D
+%D \input tufte \par
+%D \startsidebar
+%D \input tufte \par
+%D \input tufte \par
+%D \startsidebar[whow]
+%D \input tufte \par
+%D \input tufte \par
+%D \input tufte \stopsidebar \par
+%D \input tufte \par
+%D \input tufte \stopsidebar \par
+%D \input tufte \par
+%D \input tufte \par
+%D \startsidebar
+%D \input tufte \par
+%D \input tufte \par
+%D \input tufte \par
+%D \input tufte \par
+%D \input tufte \stopsidebar \par
+%D \input tufte \par
+%D \input tufte \par
+%D \startsidebar
+%D \input tufte
+%D \input tufte
+%D \input tufte
+%D \input tufte
+%D \input tufte
+%D \stopsidebar
+
+\newcounter\currentsidebar
+\newdimen \sidebardistance
+
+\definesystemvariable{sr}
+
+\def\setupsidebars
+ {\dodoubleargument\dosetupsidebars}
+
+\def\dosetupsidebars[#1][#2]%
+ {\ifsecondargument
+ \getparameters[\??sr#1][#2]%
+ \else
+ \getparameters[\??sr][#1]%
+ \fi}
+
+% \setupMPvariables
+% [mpos:bar]
+% [linecolor=red,
+% linewidth=2pt,
+% distance=5pt]
+
+\setupsidebars
+ [\c!lijndikte=2pt,
+ \c!lijnkleur=red,
+ \c!afstand=.5\bodyfontsize]
+
+\def\definesidebar
+ {\dodoubleempty\dodefinesidebar}
+
+\def\dodefinesidebar[#1][#2]%
+ {\copyparameters
+ [\??sr#1][\??sr]
+ [\c!lijndikte,\c!lijnkleur,\c!afstand]%
+ \getparameters
+ [\??sr#1][#2]}
+
+\def\startsidebar
+ {\dosingleempty\dostartsidebar}
+
+\def\dostartsidebar[#1]%
+ {\bgroup
+ \dontleavehmode
+ \checktextbackgrounds
+ \doglobal\increment\currentsidebar
+ \doifelsenothing{#1}
+ {\advance\sidebardistance\@@srafstand}
+ {\doifelsevaluenothing{\??sr#1\c!afstand}
+ {\advance\sidebardistance\@@srafstand}
+ {\sidebardistance\getvalue{\??sr#1\c!afstand}}}%
+ \startpositionoverlay{text-1}%
+ \expanded{\setMPpositiongraphicrange
+ {b:side:\currentsidebar}%
+ {e:side:\currentsidebar}%
+ {mpos:bar}%
+ {self=side:\currentsidebar,
+ linewidth=\getvalue{\??sr#1\c!lijndikte},
+ linecolor=\getvalue{\??sr#1\c!lijnkleur},
+ distance=\the\sidebardistance}}%
+ \stoppositionoverlay
+ \edef\stopsidebar{\noexpand\dostopsidebar{\currentsidebar}}%
+ \bpos{side:\currentsidebar}\ignorespaces}
+
+\def\dostopsidebar#1%
+ {\removelastspace\tpos{side:#1}\carryoverpar\egroup}
+
+\startMPpositionmethod{mpos:bar}
+ \startMPpositiongraphic{mpos:bar}{linecolor,linewidth,distance}%
+ StartPage ;
+ path p ; p :=
+ if \MPp\MPbself=\MPp\MPeself :
+ (xpart ulcorner Field[Text][Text],\MPy\MPbself+\MPh\MPbself) --
+ (xpart llcorner Field[Text][Text],\MPy\MPeself-\MPd\MPeself) ;
+ elseif RealPageNumber=\MPp\MPbself :
+ (xpart ulcorner Field[Text][Text],\MPy\MPbself+\MPh\MPbself) --
+ (llcorner Field[Text][Text]) ;
+ elseif RealPageNumber=\MPp\MPeself :
+ (ulcorner Field[Text][Text]) --
+ (xpart llcorner Field[Text][Text],\MPy\MPeself-\MPd\MPeself) ;
+ else :
+ (ulcorner Field[Text][Text]) --
+ (llcorner Field[Text][Text]) ;
+ fi ;
+ p := p shifted (-llcorner Field[Text][Text]-(\MPvar{distance},0)) ;
+ interim linecap := butt ;
+ draw p
+ withpen pencircle scaled \MPvar{linewidth}
+ withcolor \MPvar{linecolor} ;
+ StopPage ;
+ \stopMPpositiongraphic
+ \MPpositiongraphic{mpos:bar}{}%
+\stopMPpositionmethod
+
+%D We now reimplement the margin rules handler defined in
+%D \type {core-rul}:
+%D
+%D \setupmarginrules[level=5]
+%D
+%D \startmarginrule[1]
+%D First we set the level at~5. Next we typeset this first
+%D paragraph as a level~1 one. As expected no rule show up.
+%D \stopmarginrule
+%D
+%D \startmarginrule[5]
+%D The second paragraph is a level~5 one. As we can see here,
+%D the marginal rule gets a width according to its level.
+%D \stopmarginrule
+%D
+%D \startmarginrule[8]
+%D It will of course be no surprise that this third paragraph
+%D has a even thicker margin rule. This behavior can be
+%D overruled by specifying the width explictly.
+%D \stopmarginrule
+
+\definesidebar
+ [\v!marge]
+ [\c!lijnkleur=black,
+ \c!lijndikte=\@@kalijndikte,
+ \c!afstand=\dimexpr(\linkermargeafstand-\@@kalijndikte/2)]
+
+\def\complexstartmarginrule[#1]%
+ {\bgroup
+ \ifnum#1<\@@kaniveau\relax
+ \let\stopmarginrule\egroup
+ \else
+ \def\@@kadefaultwidth{#1}%
+ \let\stopmarginrule\dostopmarginrule
+ \@EA\startsidebar\@EA[\@EA\v!marge\@EA]%
+ \fi}
+
+\def\dostopmarginrule
+ {\stopsidebar
+ \egroup}
+
+\protect \endinput
diff --git a/tex/context/base/ppchtex.tex b/tex/context/base/ppchtex.tex
index 474c75c42..9ab0754f5 100644
--- a/tex/context/base/ppchtex.tex
+++ b/tex/context/base/ppchtex.tex
@@ -1158,7 +1158,7 @@
\ifchemicalpicture
\setchemicalpicture{#1}{#2}%
\else
- \doifelse{\@@chemicaloptie}{\v!test}
+ \doifelse\@@chemicaloptie\v!test
{\def\@@chemicalframe{\chemicalframe}}
{\def\@@chemicalframe{}}%
\dosetsubscripts
@@ -1166,7 +1166,7 @@
\setbox4=\hbox{$\@@dochemicalstyle{\@@localchemicalformat C_2^2}$}%
\setbox6=\hbox{$\@@dochemicalstyle{\@@localchemicalformat O}$}% or C
\doresetsubscripts
- \doifnot{\@@chemicalplaats}{\v!intekst}
+ \doifnot\@@chemicalplaats\v!intekst
{\ht2=\ht4
\dp2=\dp4}%
\setbox2=\hbox{\@@chemicalframe{\@@dochemicalcolor\box2}}%
@@ -3166,7 +3166,7 @@ RT##3##4##5=>\processchemicaltextelement{RN}{##3##4##5}{#1}{0}{},
{\dosetsubscripts%
$\@@dochemicalstyle{\@@localchemicalformat\strut##1}$%
\doresetsubscripts}%
- \doifelse{\@@chemicalplaats}{\v!intekst}%
+ \doifelse\@@chemicalplaats\v!intekst
{#1{\dochemicaltext\toptext}}%
{\setbox\chemicalsymbols=\hbox
{\box\chemicalsymbols
@@ -3175,56 +3175,56 @@ RT##3##4##5=>\processchemicaltextelement{RN}{##3##4##5}{#1}{0}{},
#2%
\hbox to 3em{\hss\dochemicaltext{\bottext}\hss}\cr}}}}}
-\def\executechemicalGIVES%
+\def\executechemicalGIVES
{\executechemicalarrow
{\chemicalsinglepicturearrow}% nodig
{\rightarrowfill\cr}}
-\def\executechemicalEQUILIBRIUM%
+\def\executechemicalEQUILIBRIUM
{\executechemicalarrow
{\chemicaldoublepicturearrow}% nodig
{\rightarrowfill\cr\leftarrowfill\cr}}
-\def\executechemicalMESOMERIC%
+\def\executechemicalMESOMERIC
{\executechemicalarrow
{\chemicalsinglepicturearrow}% nodig
{$\leftarrow\hskip-1em$\rightarrowfill\cr}}
\def\executechemicalsign#1[#2]%
- {\doifelse{\@@chemicalplaats}{\v!intekst}
+ {\doifelse\@@chemicalplaats\v!intekst
{\dosetsubscripts
$\@@dochemicalstyle{\@@localchemicalformat#1}$%
\doresetsubscripts}
- {\setbox\chemicalsymbols=\hbox
+ {\setbox\chemicalsymbols\hbox
{\box\chemicalsymbols
\dosetsubscripts
$\@@dochemicalstyle{\@@localchemicalformat#1}$%
\doresetsubscripts}}}
-\def\executechemicalPLUS%
+\def\executechemicalPLUS
{\executechemicalsign{+}}
-\def\executechemicalMINUS%
+\def\executechemicalMINUS
{\executechemicalsign{-}}
-\def\executechemicalEQUAL%
+\def\executechemicalEQUAL
{\executechemicalsign{=}}
\def\executechemicalSPACE[#1]%
- {\doifnot{\@@chemicalplaats}{\v!intekst}%
- {\setbox\chemicalsymbols=\hbox
+ {\doifnot\@@chemicalplaats\v!intekst
+ {\setbox\chemicalsymbols\hbox
{\box\chemicalsymbols
\quad}}}
\def\executechemicalCHEM[#1]%
- {\doifnot{\@@chemicalplaats}{\v!intekst}%
- {\setbox\chemicalsymbols=\hbox
+ {\doifnot\@@chemicalplaats\v!intekst
+ {\setbox\chemicalsymbols\hbox
{\box\chemicalsymbols
$\@@dochemicalstyle{\@@localchemicalformat#1}$}}}
\def\executechemicalTEXT[#1]%
- {\doifnot{\@@chemicalplaats}{\v!intekst}%
- {\setbox\chemicalsymbols=\hbox
+ {\doifnot\@@chemicalplaats\v!intekst
+ {\setbox\chemicalsymbols\hbox
{\box\chemicalsymbols#1}}}
%\def\executechemicalLOW[#1]%
@@ -3362,11 +3362,11 @@ RT##3##4##5=>\processchemicaltextelement{RN}{##3##4##5}{#1}{0}{},
\ifCONTEXT
\def\setchemicalattributes
- {\scratchdimen=\@@chemicalchemicallijndikte
+ {\scratchdimen\@@chemicalchemicallijndikte
\def\chemicalattributes
{withpen pencircle scaled \the\scratchdimen\space
withcolor }%
- \doifelsenothing{\@@chemicalchemicallijnkleur}
+ \doifelsenothing\@@chemicalchemicallijnkleur
{\edef\chemicalattributes{\chemicalattributes black}}
{\edef\chemicalattributes
{\chemicalattributes \MPcolor{\@@chemicalchemicallijnkleur}}}%
@@ -3377,10 +3377,10 @@ RT##3##4##5=>\processchemicaltextelement{RN}{##3##4##5}{#1}{0}{},
\let\@@chemicalkleur\empty
\def\@@dochemicalcolor
- {\doifsomething{\@@chemicalkleur}{\color[\@@chemicalkleur]}}
+ {\doifsomething\@@chemicalkleur{\color[\@@chemicalkleur]}}
\def\@@dochemicalstyle
- {\doconvertfont{\@@chemicalletter}}
+ {\doconvertfont\@@chemicalletter}
\setupchemical
[\c!lijndikte=\linewidth,
@@ -3396,6 +3396,4 @@ RT##3##4##5=>\processchemicaltextelement{RN}{##3##4##5}{#1}{0}{},
\fi
-\protect
-
-\endinput
+\protect \endinput
diff --git a/tex/context/base/regi-grk.tex b/tex/context/base/regi-grk.tex
new file mode 100644
index 000000000..72b732eb8
--- /dev/null
+++ b/tex/context/base/regi-grk.tex
@@ -0,0 +1,117 @@
+%D \module
+%D [ file=regi-grk,
+%D version=2003.03.01,
+%D title=\CONTEXT\ Encoding Macros,
+%D subtitle=Greek,
+%D author=Apostolos Syropoulos,
+%D date=\currentdate,
+%D copyright=PRAGMA-ADE]
+%C
+%C This module is part of the \CONTEXT\ macro||package and is
+%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
+%C details.
+
+\startregime[grk]
+
+%
+% Uppercase Greek letters
+%
+
+\defineactivetoken 193 {\GreekAlpha}
+\defineactivetoken 194 {\GreekBeta}
+\defineactivetoken 195 {\GreekGamma}
+\defineactivetoken 196 {\GreekDelta}
+\defineactivetoken 197 {\GreekEpsilon}
+\defineactivetoken 198 {\GreekZeta}
+\defineactivetoken 199 {\GreekEta}
+\defineactivetoken 200 {\GreekTheta}
+\defineactivetoken 201 {\GreekIota}
+\defineactivetoken 202 {\GreekKappa}
+\defineactivetoken 203 {\GreekLamda}
+\defineactivetoken 204 {\GreekMu}
+\defineactivetoken 205 {\GreekNu}
+\defineactivetoken 206 {\GreekXi}
+\defineactivetoken 207 {\GreekOmicron}
+\defineactivetoken 208 {\GreekPi}
+\defineactivetoken 209 {\GreekRho}
+\defineactivetoken 211 {\GreekSigma}
+\defineactivetoken 212 {\GreekTau}
+\defineactivetoken 213 {\GreekUpsilon}
+\defineactivetoken 214 {\GreekPhi}
+\defineactivetoken 215 {\GreekChi}
+\defineactivetoken 216 {\GreekPsi}
+\defineactivetoken 217 {\GreekOmega}
+
+%
+% Lowercase Greek letters
+%
+
+\defineactivetoken 225 {\Greekalpha}
+\defineactivetoken 226 {\Greekbeta}
+\defineactivetoken 227 {\Greekgamma}
+\defineactivetoken 228 {\Greekdelta}
+\defineactivetoken 229 {\Greekepsilon}
+\defineactivetoken 230 {\Greekzeta}
+\defineactivetoken 231 {\Greeketa}
+\defineactivetoken 232 {\Greektheta}
+\defineactivetoken 233 {\Greekiota}
+\defineactivetoken 234 {\Greekkappa}
+\defineactivetoken 235 {\Greeklamda}
+\defineactivetoken 236 {\Greekmu}
+\defineactivetoken 237 {\Greeknu}
+\defineactivetoken 238 {\Greekxi}
+\defineactivetoken 239 {\Greekomicron}
+\defineactivetoken 240 {\Greekpi}
+\defineactivetoken 241 {\Greekrho}
+\defineactivetoken 242 {\Greekfinalsigma}
+\defineactivetoken 243 {\Greeksigma}
+\defineactivetoken 244 {\Greektau}
+\defineactivetoken 245 {\Greekupsilon}
+\defineactivetoken 246 {\Greekphi}
+\defineactivetoken 247 {\Greekchi}
+\defineactivetoken 248 {\Greekpsi}
+\defineactivetoken 249 {\Greekomega}
+
+%
+% Accented Uppercase Greek letters
+%
+
+\defineactivetoken 182 {\GreekAlphatonos}
+\defineactivetoken 184 {\GreekEpsilontonos}
+\defineactivetoken 185 {\GreekEtatonos}
+\defineactivetoken 186 {\GreekIotatonos}
+\defineactivetoken 188 {\GreekOmicrontonos}
+\defineactivetoken 190 {\GreekUpsilontonos}
+\defineactivetoken 191 {\GreekOmegatonos}
+\defineactivetoken 218 {\GreekIotadialytika}
+\defineactivetoken 219 {\GreekUpsilondialytika}
+
+%
+% Accented Lowercase Greek letters
+%
+
+\defineactivetoken 220 {\Greekalphatonos}
+\defineactivetoken 221 {\Greekepsilontonos}
+\defineactivetoken 222 {\Greeketatonos}
+\defineactivetoken 223 {\Greekiotatonos}
+\defineactivetoken 252 {\Greekomicrontonos}
+\defineactivetoken 253 {\Greekupsilontonos}
+\defineactivetoken 254 {\Greekomegatonos}
+\defineactivetoken 250 {\Greekiotadialytika}
+\defineactivetoken 251 {\Greekupsilondialytika}
+\defineactivetoken 192 {\Greekiotadialytikatonos}
+\defineactivetoken 224 {\Greekupsilondialytikatonos}
+
+%
+% Miscellaneous Greek symbols
+%
+
+\defineactivetoken 171 {\Greekleftquot}
+\defineactivetoken 187 {\Greekrightquot}
+\defineactivetoken 180 {\Greektonos}
+\defineactivetoken 181 {\Greekdialytikatonos}
+\defineactivetoken 162 {\Greekapostrophos}
+
+\stopregime
+
+\endinput
diff --git a/tex/context/base/regi-ini.tex b/tex/context/base/regi-ini.tex
index 07e1f3fb9..0f663a423 100644
--- a/tex/context/base/regi-ini.tex
+++ b/tex/context/base/regi-ini.tex
@@ -1,5 +1,19 @@
-% For the moment regimes are implemented in the enco-ini.tex
-% module, but some day we will move the code here.
+%D \module
+%D [ file=regi-ini,
+%D version=2000.12.27, % 1998.12.03,
+%D title=\CONTEXT\ Regime Macros,
+%D subtitle=Initialization,
+%D author=Hans Hagen,
+%D date=\currentdate,
+%D copyright={PRAGMA / Hans Hagen \& Ton Otten}]
+%C
+%C This module is part of the \CONTEXT\ macro||package and is
+%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
+%C details.
+
+%D For the moment regimes are implemented in \type
+%D {enco-ini.tex} module, but some day we will move the
+%D code here.
% also needed: message
@@ -18,6 +32,8 @@
\def\useregime[#1]%
{\processcommalist[#1]\douseregime}
+\fetchruntimecommand \showregime {regi-run}
+
\protect
\useregime[def,uni,ibm,win,il1,mac]
diff --git a/tex/context/base/regi-mac.tex b/tex/context/base/regi-mac.tex
index 62d79a059..b3c281ec0 100644
--- a/tex/context/base/regi-mac.tex
+++ b/tex/context/base/regi-mac.tex
@@ -3,7 +3,7 @@
%D version=2001.03.18,
%D title=\CONTEXT\ Encoding Macros,
%D subtitle=Mac Encoding,
-%D author={Michel Bovani \& Hans Hagen},
+%D author={Michel Bovani \& Adam Lindsay \& Hans Hagen},
%D date=\currentdate,
%D copyright=PRAGMA-ADE]
%C
@@ -13,104 +13,135 @@
\startregime [mac]
-\defineactivetoken {\Agrave}
-\defineactivetoken {\Aacute}
-\defineactivetoken {\Acircumflex}
-\defineactivetoken {\Atilde}
-\defineactivetoken {\Adiaeresis}
-\defineactivetoken {\Aring} % ?
-\defineactivetoken {\AEligature}
-
-\defineactivetoken {\agrave}
-\defineactivetoken {\aacute}
-\defineactivetoken {\acircumflex}
-\defineactivetoken {\atilde}
-\defineactivetoken {\adiaeresis}
-\defineactivetoken {\aring} % ?
-\defineactivetoken {\aeligature}
-
-\defineactivetoken {\Ccedilla}
-\defineactivetoken {\ccedilla}
-
-\defineactivetoken {\Egrave}
-\defineactivetoken {\Eacute}
-\defineactivetoken {\Ecircumflex}
-\defineactivetoken {\Ediaeresis}
-
-\defineactivetoken {\egrave}
-\defineactivetoken {\eacute}
-\defineactivetoken {\ecircumflex}
-\defineactivetoken {\ediaeresis}
-
-\defineactivetoken {\Igrave}
-\defineactivetoken {\Iacute}
-\defineactivetoken {\Icircumflex}
-\defineactivetoken {\Idiaeresis}
-
-\defineactivetoken {\igrave}
-\defineactivetoken {\iacute}
-\defineactivetoken {\icircumflex}
-\defineactivetoken {\idiaeresis}
-
-\defineactivetoken {\Ntilde}
-\defineactivetoken {\ntilde}
-
-\defineactivetoken {\Ograve}
-\defineactivetoken {\Oacute}
-\defineactivetoken {\Ocircumflex}
-\defineactivetoken {\Otilde}
-\defineactivetoken {\Odiaeresis}
-\defineactivetoken {\OEligature}
-\defineactivetoken {\Oslash} % ?
-
-\defineactivetoken {\ograve}
-\defineactivetoken {\oacute}
-\defineactivetoken {\ocircumflex}
-\defineactivetoken {\otilde}
-\defineactivetoken {\odiaeresis}
-\defineactivetoken {\oeligature}
-\defineactivetoken {\oslash} % ?
-
-\defineactivetoken {\Scaron}
-\defineactivetoken {\scaron}
-\defineactivetoken {\ssharp}
-
-\defineactivetoken {\Ugrave}
-\defineactivetoken {\Uacute}
-\defineactivetoken {\Ucircumflex}
-\defineactivetoken {\Udiaeresis}
-
-\defineactivetoken {\ugrave}
-\defineactivetoken {\uacute}
-\defineactivetoken {\ucircumflex}
-\defineactivetoken {\udiaeresis}
-
-\defineactivetoken {\Yacute}
-\defineactivetoken {\yacute}
-\defineactivetoken {\ydiaeresis}
-\defineactivetoken {\Ydiaeresis}
-
-\defineactivetoken {?`} % ?
-\defineactivetoken {!`} % ?
-\defineactivetoken {\textdag}
-\defineactivetoken {\textddag}
-\defineactivetoken {\paragraphmark}
-\defineactivetoken {\sectionmark}
-\defineactivetoken {\endash}
-\defineactivetoken {\emdash}
-\defineactivetoken {\unknown} % ?
-\defineactivetoken {\copyright}
-\defineactivetoken {\sterling} % ?
-
-\defineactivetoken {\quotedblleft } % {\char44\kern-.1em\char44 } % ?
-\defineactivetoken {\quotedblbase } % {\char96\kern-.1em\char96 } % ?
-\defineactivetoken {\quoteleft}
-\defineactivetoken {\char39 } % ?
-\defineactivetoken {\leftguillemot}
-\defineactivetoken {\rightguillemot}
+\defineactivetoken 128 {\Adiaeresis}
+\defineactivetoken 129 {\Aring}
+\defineactivetoken 130 {\Ccedilla}
+\defineactivetoken 131 {\Eacute}
+\defineactivetoken 132 {\Ntilde}
+\defineactivetoken 133 {\Odiaeresis}
+\defineactivetoken 134 {\Udiaeresis}
+\defineactivetoken 135 {\aacute}
+\defineactivetoken 136 {\agrave}
+\defineactivetoken 137 {\acircumflex}
+\defineactivetoken 138 {\adiaeresis}
+\defineactivetoken 139 {\atilde}
+\defineactivetoken 140 {\aring}
+\defineactivetoken 141 {\ccedilla}
+\defineactivetoken 142 {\eacute}
+\defineactivetoken 143 {\egrave}
+\defineactivetoken 144 {\ecircumflex}
+\defineactivetoken 145 {\ediaeresis}
+\defineactivetoken 146 {\iacute}
+\defineactivetoken 147 {\igrave}
+\defineactivetoken 148 {\icircumflex}
+\defineactivetoken 149 {\idiaeresis}
+\defineactivetoken 150 {\ntilde}
+\defineactivetoken 151 {\oacute}
+\defineactivetoken 152 {\ograve}
+\defineactivetoken 153 {\ocircumflex}
+\defineactivetoken 154 {\odiaeresis}
+\defineactivetoken 155 {\otilde}
+\defineactivetoken 156 {\uacute}
+\defineactivetoken 157 {\ugrave}
+\defineactivetoken 158 {\ucircumflex}
+\defineactivetoken 159 {\udiaeresis}
+\defineactivetoken 160 {\textdag}
+\defineactivetoken 161 {\textdegree}
+\defineactivetoken 162 {\textcent}
+\defineactivetoken 163 {\textsterling}
+\defineactivetoken 164 {\sectionmark}
+\defineactivetoken 165 {\textbullet}
+\defineactivetoken 166 {\paragraphmark}
+\defineactivetoken 167 {\ssharp}
+\defineactivetoken 168 {\registered}
+\defineactivetoken 169 {\copyright}
+\defineactivetoken 170 {\trademark}
+\defineactivetoken 171 {\textacute}
+\defineactivetoken 172 {\textdiaeresis}
+\defineactivetoken 173 {\mathematics\neq}
+\defineactivetoken 174 {\AEligature}
+\defineactivetoken 175 {\Ostroke}
+\defineactivetoken 176 {\mathematics\infty}
+\defineactivetoken 177 {\textpm}
+\defineactivetoken 178 {\mathematics\leq}
+\defineactivetoken 179 {\mathematics\geq}
+\defineactivetoken 180 {\textyen}
+\defineactivetoken 181 {\textmu}
+\defineactivetoken 182 {\mathematics\partial}
+\defineactivetoken 183 {\mathematics\Sigma}
+\defineactivetoken 184 {\mathematics\Pi}
+\defineactivetoken 185 {\mathematics\pi}
+\defineactivetoken 186 {\mathematics\smallint}
+\defineactivetoken 187 {\ordfeminine}
+\defineactivetoken 188 {\ordmasculine}
+\defineactivetoken 189 {\mathematics\Omega}
+\defineactivetoken 190 {\aeligature}
+\defineactivetoken 191 {\ostroke}
+\defineactivetoken 192 {\questiondown}
+\defineactivetoken 193 {\exclamdown}
+\defineactivetoken 194 {\textlognot}
+\defineactivetoken 195 {\mathematics{\sqrt{}}}
+\defineactivetoken 196 {\textflorin}
+\defineactivetoken 197 {\mathematics\approx}
+\defineactivetoken 198 {\mathematics\Delta}
+\defineactivetoken 199 {\leftguillemot}
+\defineactivetoken 200 {\rightguillemot}
+\defineactivetoken 201 {\dots}
+\defineactivetoken 202 {\nonbreakablespace}
+\defineactivetoken 203 {\Agrave}
+\defineactivetoken 204 {\Atilde}
+\defineactivetoken 205 {\Otilde}
+\defineactivetoken 206 {\OEligature}
+\defineactivetoken 207 {\oeligature}
+\defineactivetoken 208 {\endash}
+\defineactivetoken 209 {\emdash}
+\defineactivetoken 210 {\quotedblleft}
+\defineactivetoken 211 {\quotedblright}
+\defineactivetoken 212 {\quoteleft}
+\defineactivetoken 213 {\quoteright}
+\defineactivetoken 214 {\textdiv}
+\defineactivetoken 215 {\mathematics\diamond}
+\defineactivetoken 216 {\ydiaeresis}
+\defineactivetoken 217 {\Ydiaeresis}
+\defineactivetoken 218 {\textfraction}
+\defineactivetoken 219 {\texteuro}
+\defineactivetoken 220 {\guilsingleleft}
+\defineactivetoken 221 {\guilsingleright}
+\defineactivetoken 222 {fi}
+\defineactivetoken 223 {fl}
+\defineactivetoken 224 {\textddag}
+\defineactivetoken 225 {\periodcentered}
+\defineactivetoken 226 {\quotesinglebase}
+\defineactivetoken 227 {\quotedblbase }
+\defineactivetoken 228 {\perthousand}
+\defineactivetoken 229 {\Acircumflex}
+\defineactivetoken 230 {\Ecircumflex}
+\defineactivetoken 231 {\Aacute}
+\defineactivetoken 232 {\Ediaeresis}
+\defineactivetoken 233 {\Egrave}
+\defineactivetoken 234 {\Iacute}
+\defineactivetoken 235 {\Icircumflex}
+\defineactivetoken 236 {\Idiaeresis}
+\defineactivetoken 237 {\Igrave}
+\defineactivetoken 238 {\Oacute}
+\defineactivetoken 239 {\Ocircumflex}
+%defineactivetoken 240 % No definition for Apple logo glyph yet.
+\defineactivetoken 241 {\Ograve}
+\defineactivetoken 242 {\Uacute}
+\defineactivetoken 243 {\Ucircumflex}
+\defineactivetoken 244 {\Ugrave}
+\defineactivetoken 245 {\dotlessi}
+\defineactivetoken 246 {\textcircumflex}
+\defineactivetoken 247 {\texttilde}
+\defineactivetoken 248 {\textmacron}
+\defineactivetoken 249 {\textbreve}
+\defineactivetoken 250 {\textdotaccent}
+\defineactivetoken 251 {\textring}
+\defineactivetoken 252 {\textcedilla}
+\defineactivetoken 253 {\texthungarumlaut}
+\defineactivetoken 254 {\textogonek}
+\defineactivetoken 255 {\textcaron}
\stopregime
-% \enableregime[mac]
-
\endinput
diff --git a/tex/context/base/setupb.tex b/tex/context/base/setupb.tex
index f407f3c4f..d42d1e788 100644
--- a/tex/context/base/setupb.tex
+++ b/tex/context/base/setupb.tex
@@ -730,7 +730,7 @@
\startsetup
\command
- [\e!start\v!typen]
+ [\e!start<<\y!typen>>]
\type
[\c!stp!]
\stopsetup
@@ -1255,7 +1255,7 @@
[\c!number!]
[1]
\variable
- [\c!dikte]
+ [\c!lijndikte]
[\c!dimension!]
[]
\stopsetup
@@ -1286,7 +1286,7 @@
% \type
% [\c!var!]
% \variable
-% [\c!dikte]
+% [\c!lijndikte]
% [\v!klein,\v!middel,\v!groot,\c!dimension!]
% [\v!middel]
% \variable
@@ -5151,9 +5151,12 @@
\startsetup
\command
- [\y!setupitemize]
+ [\y!setupitemgroup]
\type
- [\c!opt!\c!val!\c!opt!\c!vals!\c!opt!\c!vars!]
+ [\c!val!\c!opt!\c!val!\c!opt!\c!vals!\c!opt!\c!vars!]
+ \value
+ [\c!identifier!]
+ []
\value
[\c!number!,\v!elk]
[]
@@ -5260,9 +5263,12 @@
\startsetup
\command
- [\y!startitemize]
+ [\e!start<<\y!itemgroup>>]
\type
- [\c!opt!\c!vals!\c!opt!\c!vars!\c!stp!]
+ [\c!val!\c!opt!\c!vals!\c!opt!\c!vars!\c!stp!]
+ \value
+ [\c!identifier!]
+ []
\value
[a,A,KA,n,N,m,r,R,KR,\c!number!,\v!verder,
\v!standaard,\c!repeat!\v!ruim,\c!repeat!\v!aanelkaar,\v!opelkaar,
@@ -5270,7 +5276,7 @@
\v!kolommen]
[\v!standaard]
\inheritvariables
- [\y!setupitemize]
+ [\y!setupitemgroup]
[]
\stopsetup
@@ -5897,7 +5903,7 @@
\startsetup
\command
- [\e!start\e!uitstellen]
+ [\e!start\v!uitstellen]
\type
[\c!stp!]
\stopsetup
@@ -5921,7 +5927,7 @@
\startsetup
\command
- [\e!start\e!verbergen]
+ [\e!start\v!verbergen]
\type
[\c!stp!]
\stopsetup
@@ -6080,7 +6086,7 @@
\startsetup
\command
- [\e!start\e!buffer]
+ [\e!start<<\y!buffer>>]
\type
[\c!opt!\c!val!\c!stp!]
\value
@@ -6262,7 +6268,7 @@
\startsetup
\command
- [\e!start\e!formule]
+ [\e!start<<\y!formule>>]
\type
[\c!stp!]
\value
@@ -6949,7 +6955,7 @@
\startsetup
\command
- [\e!start\e!tabulate]
+ [\e!start<<\y!tabulate>>]
\type
[\c!opt!\c!val!\c!opt!\c!vars!\c!stp!]
\value
@@ -7353,7 +7359,7 @@
\startsetup
\command
- [\e!start\e!legenda]
+ [\e!start\v!legenda]
\type
[\c!opt!\c!val!\c!tex!{leg}\c!nop!\c!sep!\c!nop!\c!sep!\c!nop!\c!sep!\c!tex!{leg}\c!stp!]
\value
@@ -7372,7 +7378,7 @@
\startsetup
\command
- [\e!start\e!gegeven]
+ [\e!start\v!gegeven]
\type
% [\c!tex!{geg}\c!nop!\c!sep!\c!nop!\c!sep!\c!nop!\c!sep!\c!tex!{geg}\c!stp!]
[\c!tex!{\y!geg}\c!nop!\c!sep!\c!nop!\c!sep!\c!nop!\c!sep!\c!tex!{\y!geg}\c!stp!]
@@ -7805,7 +7811,7 @@
\startsetup
\command
- [\e!start\e!interactiemenu]
+ [\e!start\v!interactiemenu]
\type
[\c!alwint!\c!val!\c!stp!]
\value
@@ -8396,7 +8402,7 @@
\startsetup
\command
- [\e!start\e!commentaar]
+ [\e!start\v!commentaar]
\type
[\c!opt!\c!val!\c!opt!\c!vars!\c!stp!]
\value
diff --git a/tex/context/base/spec-tpd.tex b/tex/context/base/spec-tpd.tex
index ce63603dd..b7ff66081 100644
--- a/tex/context/base/spec-tpd.tex
+++ b/tex/context/base/spec-tpd.tex
@@ -30,7 +30,7 @@
% \box\pdfdestbox
% \fi}
%
-% \def\PDFdestvoffset{2\lineheight} % {1.5\ht\strutbox}
+% \def\PDFdestvoffset{2\lineheight} % {1.5\strutht}
%D \macros
%D {jobsuffix}
diff --git a/tex/context/base/supp-box.tex b/tex/context/base/supp-box.tex
index b32274f38..fd497fe5e 100644
--- a/tex/context/base/supp-box.tex
+++ b/tex/context/base/supp-box.tex
@@ -35,6 +35,19 @@
\ifx\normalvcenter\undefined \let\normalvcenter\vcenter \fi
%D \macros
+%D {strutdp,strutht,strutwd}
+%D
+%D The next shortcuts save memory and keying. The width is
+%D normally zero points (if not, you're in trouble). These
+%D shortcuts can be used like a dimension, opposite to the
+%D core macros \type {\strutdepth} and alike, which are
+%D values.
+
+\def\strutdp{\dp\strutbox}
+\def\strutht{\ht\strutbox}
+\def\strutwd{\wd\strutbox}
+
+%D \macros
%D {resetbox, emptybox}
%D
%D Let's start with an easy one. The next macro hides the
@@ -741,7 +754,7 @@
\reshapingboxtrue
\the\everyshapebox
\normalhbox to \shapesignal{\strut\hss}% plus \strut
- \prevdepth\dp\strutbox} % never \nointerlineskip
+ \prevdepth\strutdp} % never \nointerlineskip
\def\endofshapebox%
{\endgraf
@@ -775,7 +788,7 @@
{\everypar\emptytoks\normalvbox{\strut}}\nobreak
\kern-\lineheight % geen \vskip
\kern-\parskip
- % \vskip-\dp\strutbox
+ % \vskip-\strutdp
\fi\fi\fi
\scratchdimen\dp\newshapebox
\unvbox\newshapebox
@@ -783,8 +796,8 @@
\kern-\scratchdimen % ??
% now \prevdepth=0pt
\ifdone
- \kern\dp\strutbox
- \prevdepth\dp\strutbox
+ \kern\strutdp
+ \prevdepth\strutdp
\fi
\fi
\egroup}
@@ -899,8 +912,8 @@
\normalhbox{\unhbox2}}}%
\ifdim\ht0>\zeropoint
\repeat}%
- \ht\scratchbox\ht\strutbox
- \dp\scratchbox\dp\strutbox
+ \ht\scratchbox\strutht
+ \dp\scratchbox\strutdp
\box\scratchbox
\egroup}
@@ -1009,12 +1022,12 @@
%D \hfuzz\maxdimen
%D \veryraggedright
%D \strut\unhcopy\nextbox}%
-%D \ifdim\nextboxht>\ht\strutbox \else
+%D \ifdim\nextboxht>\strutht \else
%D \setbox\scratchbox\null % overfull and not split
%D \fi
%D \setbox\nextbox=\normalvbox % if omitted: missing brace reported
%D {\splittopskip=\openstrutheight
-%D \setbox\nextbox=\vsplit\nextbox to \ht\strutbox
+%D \setbox\nextbox=\vsplit\nextbox to \strutht
%D \unvbox\nextbox
%D \setbox\nextbox=\lastbox
%D \global\setbox1=\normalhbox
@@ -1065,15 +1078,15 @@
\hskip\zeropoint \!!plus 1\!!fill % \hsize
\fi
\unhcopy0}%
- \ifdim\nextboxht>\ht\strutbox
+ \ifdim\nextboxht>\strutht
\setbox\nextbox\normalvbox % if omitted: missing brace reported
{\splittopskip\openstrutheight
\ifdone
- \setbox\nextbox\vsplit\nextbox to \ht\strutbox
+ \setbox\nextbox\vsplit\nextbox to \strutht
\else
\doloop
- {\setbox0\vsplit\nextbox to \ht\strutbox
- \ifdim\nextboxht>\ht\strutbox \else \exitloop \fi}%
+ {\setbox0\vsplit\nextbox to \strutht
+ \ifdim\nextboxht>\strutht \else \exitloop \fi}%
\fi
\unvbox\nextbox
\setbox\nextbox\lastbox
@@ -1651,8 +1664,8 @@
\ifvoid\unhhedbox
\setbox\hhbox\normalhbox{\strut\normalhboxofvbox\hhbox}%
\fi
- \ht\hhbox\ht\strutbox
- \dp\hhbox\dp\strutbox
+ \ht\hhbox\strutht
+ \dp\hhbox\strutdp
\ifdim\hhboxindent=\zeropoint\else
\setbox\hhbox\normalhbox{\hskip-\hhboxindent\box\hhbox}%
\hhboxindent\zeropoint
@@ -2045,10 +2058,10 @@
{\bgroup
\par
\dimen0\nextboxht
- \nextboxht\ht\strutbox
- \nextboxdp\dp\strutbox
+ \nextboxht\strutht
+ \nextboxdp\strutdp
\normalhbox{\flushnextbox}
- \prevdepth\dp\strutbox
+ \prevdepth\strutdp
\doloop
{\advance\dimen0 -\lineheight
\ifdim\dimen0<\zeropoint
@@ -2389,7 +2402,7 @@
{\ifvmode \ifdim\prevdepth>\zeropoint \kern-\prevdepth \fi \fi}
\def\obeydepth
- {\par \removedepth \ifvmode \kern\dp\strutbox \fi}
+ {\par \removedepth \ifvmode \kern\strutdp \fi}
%D \macros
%D {removebottomthings, removelastskip}
@@ -2409,8 +2422,8 @@
%D strut.
\def\domakestrutofbox
- {\ht\registercount\ht\strutbox
- \dp\registercount\dp\strutbox
+ {\ht\registercount\strutht
+ \dp\registercount\strutdp
\wd\registercount\zeropoint}
\def\makestrutofbox
@@ -2433,8 +2446,8 @@
{\def\next % both direct and {} dimensions
{\dowithnextbox
{\setbox\nextbox\normalhbox{#1\scratchdimen\flushnextbox}%
- \nextboxht\ht\strutbox
- \nextboxdp\dp\strutbox
+ \nextboxht\strutht
+ \nextboxdp\strutdp
\flushnextbox}}%
\afterassignment\next\scratchdimen=#2}
diff --git a/tex/context/base/supp-fun.tex b/tex/context/base/supp-fun.tex
index 352cb7e98..6f324be6b 100644
--- a/tex/context/base/supp-fun.tex
+++ b/tex/context/base/supp-fun.tex
@@ -133,14 +133,14 @@
% \fi
% \setbox0=\hbox
% {\definedfont[#2 at #3]#1{#7}\hskip#4}%
-% \ifdim\dp0>\dp\strutbox % one of those Q's , will be option
-% \setbox2=\hbox{\raise\dp0\hbox{\lower\dp\strutbox\copy0}}%
-% \ht2=\ht0 \dp0=\dp\strutbox \setbox0=\box2
+% \ifdim\dp0>\strutdp % one of those Q's , will be option
+% \setbox2=\hbox{\raise\dp0\hbox{\lower\strutdp\copy0}}%
+% \ht2=\ht0 \dp0=\strutdp \setbox0=\box2
% \fi
-% \setbox0=\hbox
+% \setbox0\hbox
% {\lower#5\box0}%
-% \ht0=\ht\strutbox
-% \dp0=\dp\strutbox
+% \ht0\strutht
+% \dp0\strutdp
% \edef\DroppedIndent{\the\wd0}%
% \edef\DroppedLines {\number#6}%
% \hangindent\DroppedIndent
@@ -174,14 +174,14 @@
% \fi
% \setbox0\hbox
% {\definedfont[#2 at #3]#1{#7}\hskip#4}%
-% \ifdim\dp0>\dp\strutbox % one of those Q's , will be option
-% \setbox2\hbox{\raise\dp0\hbox{\lower\dp\strutbox\copy0}}%
-% \ht2\ht0 \dp0\dp\strutbox \setbox0\box2
+% \ifdim\dp0>\strutdp % one of those Q's , will be option
+% \setbox2\hbox{\raise\dp0\hbox{\lower\strutdp\copy0}}%
+% \ht2\ht0 \dp0\strutdp \setbox0\box2
% \fi
% \setbox0\hbox
% {\lower#5\box0}%
-% \ht0\ht\strutbox
-% \dp0\dp\strutbox
+% \ht0\strutht
+% \dp0\strutdp
% \globaldropcaps\edef\DroppedIndent{\the\wd0}%
% \globaldropcaps\edef\DroppedLines {\number#6}%
% \globaldropcaps\chardef\DroppedStatus2
@@ -215,10 +215,10 @@
\fi
\setbox0\hbox
{\definedfont[#2 at #3]#1{#7}\hskip#4}%
- \ifdim\dp0>\dp\strutbox % one of those Q's , will be option
- \setbox2\hbox{\raise\dp0\hbox{\lower\dp\strutbox\copy0}}%
+ \ifdim\dp0>\strutdp % one of those Q's , will be option
+ \setbox2\hbox{\raise\dp0\hbox{\lower\strutdp\copy0}}%
\ht2\ht0
- \dp0\dp\strutbox
+ \dp0\strutdp
\setbox0\box2
\fi
\setbox0\hbox
@@ -226,8 +226,8 @@
\hskip-\wd0\wd0\zeropoint
\fi
\lower#5\box0}%
- \ht0\ht\strutbox
- \dp0\dp\strutbox
+ \ht0\strutht
+ \dp0\strutdp
\ifnum\DropMode=\plusone
\globaldropcaps\let\DroppedIndent\!!zeropoint
\globaldropcaps\edef\DroppedLines{\number\maxdimen}%
@@ -368,7 +368,7 @@
{\scratchcounter\baselineskip}{#5}}
\def\LineDroppedCaps% command font offset lines
- {\DoLineDroppedCaps{\ht\strutbox}}
+ {\DoLineDroppedCaps{\strutht}}
\def\NiceDroppedCaps% command font offset lines
{\DoLineDroppedCaps{.5\baselineskip}}
diff --git a/tex/context/base/symb-mvs.tex b/tex/context/base/symb-mvs.tex
index f25eeadaf..eb1c4c842 100644
--- a/tex/context/base/symb-mvs.tex
+++ b/tex/context/base/symb-mvs.tex
@@ -3,7 +3,7 @@
% tobias: what is the original and what the berry name?
%D \module
-%D [ file=symb-nav,
+%D [ file=symb-mvs,
%D version=2000.03.30,
%D title=\CONTEXT\ Symbol Libraries,
%D subtitle=Martin Vogels Symbole,
diff --git a/tex/context/base/syst-new.tex b/tex/context/base/syst-new.tex
index 1d2b911b5..f55fb34c3 100644
--- a/tex/context/base/syst-new.tex
+++ b/tex/context/base/syst-new.tex
@@ -552,7 +552,6 @@
\long\xdef\@@expanded{\noexpand#1}%
\let\notexpanded\empty
\@@expanded}
-
% \def\doifdimensionelse#1%
% {\afterassignment\dodoifdimensionelse\scratchdimen=#1pt\relax\empty\empty\empty\empty}
@@ -596,5 +595,9 @@
% \edef\xxxx{\doifnum{2}{2}{yes}} \show \xxxx
% \scratchcounter0 \edef\xxxx{\doifnum{1}{\scratchcounter}{no}} \show \xxxx
% \scratchcounter1 \edef\xxxx{\doifnum{1}{\scratchcounter}{yes}} \show \xxxx
-
+
+\def\appended#1#2#3{\@EA#1\@EA#2\@EA{#2#3}}
+\def\appendvalue #1{\@EA\appended\@EA \def\csname#1\endcsname}
+\def\appendgvalue#1{\@EA\appended\@EA\gdef\csname#1\endcsname}
+
\protect \endinput
diff --git a/tex/context/base/type-enc.tex b/tex/context/base/type-enc.tex
index 10441a464..e2d0d4a14 100644
--- a/tex/context/base/type-enc.tex
+++ b/tex/context/base/type-enc.tex
@@ -20,6 +20,67 @@
% Computer Modern Roman (AMS)
+\starttypescript [all] [computer-modern] [lm]
+
+ % the encoding vector is not yet okay !
+
+ \definefontsynonym [cmb10] [lmb10] [encoding=texnansi]
+ \definefontsynonym [cmbx10] [lmbx10] [encoding=texnansi]
+ \definefontsynonym [cmbx12] [lmbx12] [encoding=texnansi]
+ \definefontsynonym [cmbx5] [lmbx5] [encoding=texnansi]
+ \definefontsynonym [cmbx6] [lmbx6] [encoding=texnansi]
+ \definefontsynonym [cmbx7] [lmbx7] [encoding=texnansi]
+ \definefontsynonym [cmbx8] [lmbx8] [encoding=texnansi]
+ \definefontsynonym [cmbx9] [lmbx9] [encoding=texnansi]
+ \definefontsynonym [cmbxsl10] [lmbxsl10] [encoding=texnansi]
+ \definefontsynonym [cmbxti10] [lmbxti10] [encoding=texnansi]
+ \definefontsynonym [cmcsc10] [lmcsc10] [encoding=texnansi]
+ \definefontsynonym [cmitt10] [lmitt10] [encoding=texnansi]
+ \definefontsynonym [cmr10] [lmr10] [encoding=texnansi]
+ \definefontsynonym [cmr12] [lmr12] [encoding=texnansi]
+ \definefontsynonym [cmr17] [lmr17] [encoding=texnansi]
+ \definefontsynonym [cmr5] [lmr5] [encoding=texnansi]
+ \definefontsynonym [cmr6] [lmr6] [encoding=texnansi]
+ \definefontsynonym [cmr7] [lmr7] [encoding=texnansi]
+ \definefontsynonym [cmr8] [lmr8] [encoding=texnansi]
+ \definefontsynonym [cmr9] [lmr9] [encoding=texnansi]
+ \definefontsynonym [cmsl10] [lmsl10] [encoding=texnansi]
+ \definefontsynonym [cmsl12] [lmsl12] [encoding=texnansi]
+ \definefontsynonym [cmsl8] [lmsl8] [encoding=texnansi]
+ \definefontsynonym [cmsl9] [lmsl9] [encoding=texnansi]
+ \definefontsynonym [cmsltt10] [lmsltt10] [encoding=texnansi]
+ \definefontsynonym [cmss10] [lmss10] [encoding=texnansi]
+ \definefontsynonym [cmss12] [lmss12] [encoding=texnansi]
+ \definefontsynonym [cmss17] [lmss17] [encoding=texnansi]
+ \definefontsynonym [cmss8] [lmss8] [encoding=texnansi]
+ \definefontsynonym [cmss9] [lmss9] [encoding=texnansi]
+ \definefontsynonym [cmssbx10] [lmssbx10] [encoding=texnansi]
+ \definefontsynonym [cmssdc10] [lmssdc10] [encoding=texnansi]
+ \definefontsynonym [cmssi10] [lmssi10] [encoding=texnansi]
+ \definefontsynonym [cmssi12] [lmssi12] [encoding=texnansi]
+ \definefontsynonym [cmssi17] [lmssi17] [encoding=texnansi]
+ \definefontsynonym [cmssi8] [lmssi8] [encoding=texnansi]
+ \definefontsynonym [cmssi9] [lmssi9] [encoding=texnansi]
+ \definefontsynonym [cmtcsc10] [lmtcsc10] [encoding=texnansi]
+ \definefontsynonym [cmti10] [lmti10] [encoding=texnansi]
+ \definefontsynonym [cmti12] [lmti12] [encoding=texnansi]
+ \definefontsynonym [cmti7] [lmti7] [encoding=texnansi]
+ \definefontsynonym [cmti8] [lmti8] [encoding=texnansi]
+ \definefontsynonym [cmti9] [lmti9] [encoding=texnansi]
+ \definefontsynonym [cmtt10] [lmtt10] [encoding=texnansi]
+ \definefontsynonym [cmtt12] [lmtt12] [encoding=texnansi]
+ \definefontsynonym [cmtt8] [lmtt8] [encoding=texnansi]
+ \definefontsynonym [cmtt9] [lmtt9] [encoding=texnansi]
+
+ \definefontsynonym [cmbsl10] [lmbsl10] [encoding=texnansi]
+ \definefontsynonym [cmssbi10] [lmssbi10] [encoding=texnansi]
+ \definefontsynonym [cmssdi10] [lmssdi10] [encoding=texnansi]
+ \definefontsynonym [cmssq8] [lmssq8] [encoding=texnansi]
+ \definefontsynonym [cmssqb8] [lmssqb8] [encoding=texnansi]
+ \definefontsynonym [cmssqbi8] [lmssqbi8] [encoding=texnansi]
+ \definefontsynonym [cmssqi8] [lmssqi8] [encoding=texnansi]
+\stoptypescript
+
\starttypescript [all] [computer-modern] [ec]
\definefontsynonym [cmb10] [aeb10] [encoding=ec,handling=glm]
\definefontsynonym [cmbx10] [aebx10] [encoding=ec,handling=glm]
diff --git a/tex/context/base/type-map.tex b/tex/context/base/type-map.tex
index f1c19dbda..55097b8e7 100644
--- a/tex/context/base/type-map.tex
+++ b/tex/context/base/type-map.tex
@@ -20,6 +20,10 @@
\loadmapfile[original-ams-euler.map]
\stoptypescript
+\starttypescript [map] [lm]
+ \loadmapfile[original-ams-lmr.map]
+\stoptypescript
+
\starttypescript [map] [il2]
\loadmapfile[il2-ams-cmr.map]
\stoptypescript
diff --git a/tex/context/base/x-contml.tex b/tex/context/base/x-contml.tex
index cbe356041..a9adae2bd 100644
--- a/tex/context/base/x-contml.tex
+++ b/tex/context/base/x-contml.tex
@@ -168,9 +168,9 @@
%D \showelements [context] [verbatim]
\defineXMLenvironment [context:verbatim]
- {\startopelkaar
+ {\startpacked
\defineXMLargument[context:line]{\endgraf\type}}
- {\stopopelkaar}
+ {\stoppacked}
\defineXMLenvironment [context:typing]
{\startpacked\defineXMLargument[context:line]{\endgraf\type}}
diff --git a/tex/context/base/x-res-08.tex b/tex/context/base/x-res-08.tex
index 0eb315a7b..c7452d1ee 100644
--- a/tex/context/base/x-res-08.tex
+++ b/tex/context/base/x-res-08.tex
@@ -16,14 +16,15 @@
%D \starttyping
%D <rl:library>
%D <rl:usage>
-%D <rl:type>figure<rr:type>
-%D <rl:state>found|missing<rr:state>
-%D <rl:name>filename<rr:name>
-%D <rl:suffix>filesuffix<rr:suffix>
-%D <rl:width>width in pt<rr:width>
-%D <rl:height>height in pt<rr:height>
+%D <rl:type>figure</rl:type>
+%D <rl:state>found|missing</rl:state>
+%D <rl:name>filename</rl:name>
+%D <rl:suffix>filesuffix</rl:suffix>
+%D <rl:width>width in pt</rl:width>
+%D <rl:height>height in pt</rl:height>
+%D <rl:comment>text</rl:comment>
%D </rl:usage>
-%D <rl:library>
+%D </rl:library>
%D \stoptyping
\unprotect
@@ -47,7 +48,8 @@
\let\figurefilefile \empty
\def\XMLfeedbackresource#1#2%
- {\immediate\write\XMLrllog
+ {\convertcommand\currentresourcecomment\to\currentresourcecomment
+ \immediate\write\XMLrllog
{\writtenXMLelement{\XMLrlprefix usage}%
{\writtenXMLelement{\XMLrlprefix type}{#2}%
\writtenXMLelement{\XMLrlprefix state}{#1}%
@@ -78,6 +80,9 @@
\ifnum\figurefilepage>\zerocount
\writtenXMLelement{\XMLrlprefix page}{\figurefilepage}%
\fi
+\ifx\currentresourcecomment\empty\else
+ \writtenXMLelement{\XMLrlprefix comment}{\currentresourcecomment}%
+\fi
\writtenXMLelement{\XMLrlprefix width}{\figurewidth}%
\writtenXMLelement{\XMLrlprefix height}{\figureheight}}}}
diff --git a/tex/context/base/x-res-09.tex b/tex/context/base/x-res-09.tex
index 8b6421b47..cfe56a5c8 100644
--- a/tex/context/base/x-res-09.tex
+++ b/tex/context/base/x-res-09.tex
@@ -19,35 +19,42 @@
\defineXMLenvironment [rl:usage]
{\bgroup}
- {\setups[rl usage]\egroup}
-
-\defineXMLsave [rl:type] % figure
-\defineXMLsave [rl:state] % found|missing
-\defineXMLsave [rl:file] % filename
-\defineXMLsave [rl:suffix] % filesuffix
-\defineXMLsave [rl:width] % width in pt
-\defineXMLsave [rl:height] % height in pt
-\defineXMLsave [rl:page] % page from file
+ {\setups[rl:usage]%
+ \egroup}
+
+\defineXMLsave [rl:type] % figure
+\defineXMLsave [rl:state] % found|missing
+\defineXMLsave [rl:file] % filename
+\defineXMLsave [rl:suffix] % filesuffix
+\defineXMLsave [rl:comment] % text
+\defineXMLsave [rl:width] % width in pt
+\defineXMLsave [rl:height] % height in pt
+\defineXMLsave [rl:page] % page from file
\def\XMLbpentry#1%
{\PointsToWholeBigPoints{\XMLflush{#1}}\temp\temp bp}
+% \def\XMLrlentry#1#2#3%
+% {\doiftextelse{\XMLflush{#2}}
+% {\NC\bf#1\NC\XMLflush{#2}\doif{#3}{1}{ (\XMLbpentry{#2})}\NC\NR}
+% {}}
+
\def\XMLrlentry#1#2#3%
- {\doiftext{\XMLflush{#2}}
- {\NC\bf#1\NC\XMLflush{#2}\doif{#3}{1}{ (\XMLbpentry{#2})}\NC\NR}%
- \ignorespaces}
-
-\startsetups[rl usage]
-
-\starttabulate
-\XMLrlentry {type} {rl:type} {0}
-\XMLrlentry {state} {rl:state} {0}
-\XMLrlentry {file} {rl:file} {0}
-\XMLrlentry {name} {rl:name} {0}
-\XMLrlentry {suffix} {rl:suffix} {0}
-\XMLrlentry {page} {rl:page} {0}
-\XMLrlentry {width} {rl:width} {1}
-\XMLrlentry {height} {rl:height} {1}
+ {\tableiftextelse{\XMLflush{#2}}
+ {\NC\bf#1\NC\XMLflush{#2}\doif{#3}{1}{ (\XMLbpentry{#2})}\NC\NR}{}}
+
+\startsetups[rl:usage]
+
+\starttabulate[|lw(4.5em)|p|]
+ \XMLrlentry {type} {rl:type} {0}
+ \XMLrlentry {state} {rl:state} {0}
+ \XMLrlentry {file} {rl:file} {0}
+ \XMLrlentry {name} {rl:name} {0}
+ \XMLrlentry {suffix} {rl:suffix} {0}
+ \XMLrlentry {page} {rl:page} {0}
+ \XMLrlentry {width} {rl:width} {1}
+ \XMLrlentry {height} {rl:height} {1}
+ \XMLrlentry {comment}{rl:comment}{0}
\stoptabulate
\stopsetups
diff --git a/tex/context/user/cont-sys.rme b/tex/context/user/cont-sys.rme
index 755101e4e..55d304913 100644
--- a/tex/context/user/cont-sys.rme
+++ b/tex/context/user/cont-sys.rme
@@ -13,6 +13,11 @@
\unprotect
+% If you want some extras, just uncomment the following
+% line:
+%
+% \usemodule[plus]
+%
% Here you can take care of overloading some (style)
% defaults. What goes here, depends on your local system.
%