From 1ed71134fe156d6cd7bc35f6ec5941f9844014ad Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Fri, 11 Nov 2005 00:00:00 +0100 Subject: stable 2005.11.11 --- tex/context/base/cont-sys.ori | 2 + tex/context/base/core-ntb.tex | 2 +- tex/context/base/core-reg.tex | 48 +++++++++++--------- tex/context/base/font-ini.tex | 12 +++++ tex/context/base/symb-glm.tex | 1 + tex/context/base/syst-gen.tex | 93 +++++++++++++++++++++++++++------------ tex/context/base/type-map.tex | 7 +-- tex/context/interface/keys-ro.xml | 2 +- tex/context/user/cont-sys.rme | 2 + 9 files changed, 116 insertions(+), 53 deletions(-) (limited to 'tex') diff --git a/tex/context/base/cont-sys.ori b/tex/context/base/cont-sys.ori index a74614bd1..99434e471 100644 --- a/tex/context/base/cont-sys.ori +++ b/tex/context/base/cont-sys.ori @@ -82,6 +82,8 @@ \resetmapfiles +% more recent versions of pdftex support map loading on each page + \donefalse \ifx\pdftexversion\undefined \else \ifnum\number\pdftexversion>119 \donetrue \fi \fi \ifdone diff --git a/tex/context/base/core-ntb.tex b/tex/context/base/core-ntb.tex index 31f641600..61bd6e342 100644 --- a/tex/context/base/core-ntb.tex +++ b/tex/context/base/core-ntb.tex @@ -399,7 +399,7 @@ %D \framed[offset=overlay]\bgroup %D \setupTABLE[column][2][align=left]% %D \setupTABLE[column][3][align=right]% -%D \bTABLE[margindistance=2cm,leftmargindistance=.3cm,margindistance=.5cm] +%D \bTABLE[columndistance=2cm,leftmargindistance=.3cm,rightmargindistance=.5cm] %D \bTR \bTH[nc=3] Table head\eTH \eTR %D \bTR \bTD[nc=2] AB\eTD \bTD C\eTD \eTR %D \bTR \bTD[nc=2,align=left] AB\eTD \bTD C\eTD \eTR diff --git a/tex/context/base/core-reg.tex b/tex/context/base/core-reg.tex index 431cee6b9..010aa4d42 100644 --- a/tex/context/base/core-reg.tex +++ b/tex/context/base/core-reg.tex @@ -129,33 +129,41 @@ \def\writetoregister[#1]% to be documented {\doregister{#1}} -\def\startregister - {\dodoubleargument\dostartregister} +% \def\startregister +% {\dodoubleargument\dostartregister} + +% \def\dostartregister[#1][#2]#3% +% {\chardef\registerpagestatus\plustwo +% \def\currentregister{#1}% +% \setgvalue{\??id#1\??id#2}{\dodostopregister[#1][#2]{#3}}% +% \donoregister[#2]{#3}} -%\def\dostartregister[#1][#2]#3% -% {\chardef\registerpagestatus=2 -% \def\currentregister{#1}% -% \setgvalue{\??id#1\??id#2}{\dodostopregister[#1][#2]{#3}}% -% \complexdoregister[#2]{#3}} +\def\startregister + {\dotripleempty\dostartregister} -\def\dostartregister[#1][#2]#3% - {\chardef\registerpagestatus2 +\def\dostartregister[#1][#2][#3]#4% + {\chardef\registerpagestatus\plustwo \def\currentregister{#1}% - \setgvalue{\??id#1\??id#2}{\dodostopregister[#1][#2]{#3}}% - \donoregister[#2]{#3}} + \setgvalue{\??id#1\??id#2}{\dodostopregister[#1][#3]{#4}}% + \dodoregister[#3]{}{#4}} \def\stopregister {\dodoubleargument\dostopregister} \def\dostopregister[#1][#2]% - {\getvalue{\??id#1\??id#2}\setgvalue{\??id#1\??id#2}{}} + {\getvalue{\??id#1\??id#2}\letgvalue{\??id#1\??id#2}\relax} + +% \def\dodostopregister[#1][#2]% +% {\chardef\registerpagestatus\plusthree +% \def\currentregister{#1}% +% \donoregister[#2]} -\def\dodostopregister[#1][#2]% - {\chardef\registerpagestatus3 +\def\dodostopregister[#1][#2]#3% + {\chardef\registerpagestatus\plusthree \def\currentregister{#1}% - \donoregister[#2]} + \dodoregister[#2]{}{#3}} % key altnum entry -\def\complexdozieregister[#1]#2#3% +\def\complexdoseeregister[#1]#2#3% {\begingroup \thisisnextinternal\s!ind \ifduplicate\getlastregisterentry{#2}\fi @@ -177,12 +185,12 @@ {\asciiregisterentryC} % {\sectionformat}}}% \endgroup - \registerinfo{> zie}{#2}% + \registerinfo{> see}{#2}% \GotoPar} -\def\dozieregister#1% +\def\doseeregister#1% {\def\currentregister{#1}% - \complexorsimpleempty\dozieregister} + \complexorsimpleempty\doseeregister} \def\dowritetoregister[#1]% % de twee-traps-aanroep is nodig {\edef\currentregister{#1}% % om gebruik van \ExpandBothAfter @@ -896,7 +904,7 @@ \setvalue{\e!coupled#1}{\dolinkedregister{#1}}% \setvalue{\s!set#1}{\dosetregister{#1}}% \setvalue{\s!reset#1}{\doresetregister{#1}}% - \setvalue{\e!see#1}{\dozieregister{#1}}% + \setvalue{\e!see#1}{\doseeregister{#1}}% \setvalue{\e!place#1}{\placeregister[#1]}% \setvalue{\e!complete#1}{\completeregister[#1]}% \setvalue{\e!setup#1\e!endsetup}[##1]{\getparameters[\??id#1][##1]}} diff --git a/tex/context/base/font-ini.tex b/tex/context/base/font-ini.tex index b2007ee31..ae27c1b6f 100644 --- a/tex/context/base/font-ini.tex +++ b/tex/context/base/font-ini.tex @@ -3441,6 +3441,18 @@ \def\dosetmathfont {\def\rm{\fam\mrfam}\dodosetmathfont} +\def\enableencodinginmath + {\appendtoks + \everyhbox{\mr\everyhbox\emptytoks}% + \everyvbox{\mr\everyvbox\emptytoks}% + \to \everymath} + +% \enableencodinginmath % too untested to enable by default + +%D \startyping +%D $\cases{& \ccaron}$ $x=\hbox{\ccaron $x=\hbox{\ccaron}$}$ +%D \stoptyping + %D The font specific features are bound to the filename. \def\updatefontparameters diff --git a/tex/context/base/symb-glm.tex b/tex/context/base/symb-glm.tex index cd7c05dbd..63ac4ed26 100644 --- a/tex/context/base/symb-glm.tex +++ b/tex/context/base/symb-glm.tex @@ -14,6 +14,7 @@ %D Watch the \type {x} before the local symbols. \loadmapfile [ec-public-lm.map] +% \loadmapfile [ec-lm.map] % this used to be: % diff --git a/tex/context/base/syst-gen.tex b/tex/context/base/syst-gen.tex index c4f42d24e..8c8a58465 100644 --- a/tex/context/base/syst-gen.tex +++ b/tex/context/base/syst-gen.tex @@ -3002,25 +3002,9 @@ \def\undoassign[#1][#2]{\p!doassign\doresetvalue#1\@relax@#2==\empty\@relax@} %D When someone asked on the mailing list if it's possible to -%D use the current value of a parameter, Taco posted a small module -%D which is included here. Instead of redefining \type {\getparameters} -%D as well, we opt for using \type {\expanded}; see examnple below. - -%D This variant redefines the parameter assignment engine in \CONTEXT\ -%D so that the special macro \type {\currentvalue} can be used to get -%D at the current value of the parameter to be assigned to. If the -%D parameter is not set, it's expansion will be empty. -%D -%D Example document: -%D -%D \startbuffer -%D \getparameters[a][b=d] -%D \expanded{\getparameters[a][b=c\currentvalue]} -%D \framed{\ab} -%D \stopbuffer -%D \typebuffer -%D -%D Gives: \getbuffer +%D use the current value of a parameter, Taco posted a small module. His +%D method had the disadvantage of making all assignments expanded and thereby +%D fragile. The following alternative uses a prefix. %D \macros{currentvalue} %D @@ -3030,17 +3014,19 @@ \let\currentvalue\empty -%D \macros{p!doassignwithcurrent} -%D -%D The next definition does the work of re-creating -%D the expandable \type{\currentvalue} again and again. -%D The macro is \type{\let} instead of \type{\def}-ed -%D because that is a little easier on resources, and -%D faster as well. +\def\p!n!doassign#1#2\@relax@#3=#4=#5#6\@relax@% normal + {\ifx#5\empty + \@EA\xshowassignerror + \else\ifx#5=% + \@EAEAEA#1% + \else + \@EAEAEA\xshowassignerror + \fi\fi + {#2}{#3}{#4}} \beginTEX -\def\p!doassign#1#2\@relax@#3=#4=#5#6\@relax@ +\def\p!e!doassign#1#2\@relax@#3=#4=#5#6\@relax@ {\ifx#5\empty \@EA\xshowassignerror \else\ifx#5=% @@ -3059,7 +3045,7 @@ \beginETEX -\def\p!doassign#1#2\@relax@#3=#4=#5#6\@relax@ +\def\p!e!doassign#1#2\@relax@#3=#4=#5#6\@relax@ {\ifx#5\empty \@EA\xshowassignerror \else\ifx#5=% @@ -3076,6 +3062,57 @@ \endETEX +%D We default to: + +\let\p!doassign\p!n!doassign + +%D Here are the initializers. Later we will apply them. + +\def\doset@p@expanded + {\let\dosetpvalue \dosetevalue % expand values + \let\p!doassign \p!e!doassign % provide \currentvalue + \let\reset@p@expanded\doreset@p@expanded} % reset afterwards + +\def\doreset@p@expanded + {\let\currentvalue \empty % prevent carry over + \let\dosetpvalue \dosetvalue % don't expand + \let\p!doassign \p!n!doassign % don't provide \currentvalue + \let\set@p@expanded \relax % don't prepare + \let\reset@p@expanded\relax} % speed up next round + +\doreset@p@expanded \def\expandparameters{\let\set@p@expanded\doset@p@expanded} + +%D We overload some previously defined macros: + +\def\getparameters{\dogetparameters\dosetpvalue} + +\let\dosetpvalue\dosetvalue % normal behaviour + +%D \macros {expandparameters} +%D +%D Example usage: +%D +%D \startbuffer +%D \getparameters[taco][name=taco] +%D \convertcommand\taconame\to\ascii \ascii +%D \expandparameters \getparameters[taco][name=\currentvalue\space hoekwater] +%D \convertcommand\taconame\to\ascii \ascii +%D \getparameters[taco][name=\currentvalue\space hoekwater] +%D \convertcommand\taconame\to\ascii \ascii +%D \stopbuffer +%D +%D \typebuffer +%D \startlines +%D \getbuffer +%D \stoplines + +%D Here we hook in the code: + +\def\xdogetparameters#1]% + {\set@p@expanded + \xprocesscommaitem#1,],\@relax@ + \reset@p@expanded} + %D \macros %D {getemptyparameters} %D diff --git a/tex/context/base/type-map.tex b/tex/context/base/type-map.tex index e69571bc2..ddcacfee0 100644 --- a/tex/context/base/type-map.tex +++ b/tex/context/base/type-map.tex @@ -64,10 +64,11 @@ \starttypescript [map] [modern,modern-vari,modern-cond,computer-modern,latin-modern,latin-modern-vari,latin-modern-cond,] [ec,texnansi,qx,t5] % this was what we had at the start and what fits best into our naming scheme - % \loadmapfile[\typescriptthree-public-lm.map] + % well, all those changes in lm gave too many user problem reports so i revert to: + \loadmapfile[\typescriptthree-public-lm.map] % this one also fits into the naming scheme but has been dropped by the distributers - \loadmapfile[\typescriptthree-lm.map] - % this is what teh latest distributions provide + % \loadmapfile[\typescriptthree-lm.map] + % this is what the latest distributions provide % \loadmapfile[lm-\typescriptthree.map] % maybe some day \stoptypescript diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml index 6df62d311..29497e15a 100644 --- a/tex/context/interface/keys-ro.xml +++ b/tex/context/interface/keys-ro.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/user/cont-sys.rme b/tex/context/user/cont-sys.rme index a74614bd1..99434e471 100644 --- a/tex/context/user/cont-sys.rme +++ b/tex/context/user/cont-sys.rme @@ -82,6 +82,8 @@ \resetmapfiles +% more recent versions of pdftex support map loading on each page + \donefalse \ifx\pdftexversion\undefined \else \ifnum\number\pdftexversion>119 \donetrue \fi \fi \ifdone -- cgit v1.2.3