summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2012-01-05 19:27:57 +0100
committerHans Hagen <pragma@wxs.nl>2012-01-05 19:27:57 +0100
commit351a9b8969960cc2a1b795a63de1a5a3d3e6e4d9 (patch)
treeea45c7b7d021148f993bf79a79969141f405b092
parent5e5b7116e78d1cb847434ef29a9fed154e49adf9 (diff)
downloadcontext-351a9b8969960cc2a1b795a63de1a5a3d3e6e4d9.tar.gz
beta 2012.01.02 19:23
-rw-r--r--tex/context/base/colo-ini.mkiv25
-rw-r--r--tex/context/base/cont-new.mkii2
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4073 -> 4072 bytes
-rw-r--r--tex/context/base/context-version.pngbin104054 -> 104249 bytes
-rw-r--r--tex/context/base/context.mkii2
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/mlib-pps.lua12
-rw-r--r--tex/context/base/mult-sys.mkiv7
-rw-r--r--tex/context/base/spac-def.mkiv6
-rw-r--r--tex/context/base/spac-hor.mkiv78
-rw-r--r--tex/context/base/spac-ver.mkiv287
-rw-r--r--tex/context/base/status-files.pdfbin24170 -> 24199 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin170106 -> 170104 bytes
-rw-r--r--tex/context/base/status-mkiv.tex8
-rw-r--r--tex/context/base/tabl-xtb.lua48
-rw-r--r--tex/context/base/tabl-xtb.mkvi14
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
18 files changed, 233 insertions, 262 deletions
diff --git a/tex/context/base/colo-ini.mkiv b/tex/context/base/colo-ini.mkiv
index 00181f722..cddefe996 100644
--- a/tex/context/base/colo-ini.mkiv
+++ b/tex/context/base/colo-ini.mkiv
@@ -116,19 +116,13 @@
% \testfeatureonce{100000}{\color[red]{}} % 1.046 => 0.541
-\def\@colored@{@colored@}
-
\unexpanded\def\switchtocolor[#1]{\csname#1\endcsname}
-%unexpanded\def\color [#1]{\groupedcommand{\colo_helpers_activate{#1}}{}}
-
\unexpanded\def\color [#1]{\bgroup
\def\g_color{\colo_helpers_activate{#1}}%
\afterassignment\g_color
\let\nexttoken}
-%unexpanded\def\graycolor [#1]{\groupedcommand{\colo_helpers_set_model\s!gray\colo_helpers_activate{#1}}{}} % special, all embeded also gray
-
\unexpanded\def\graycolor [#1]{\bgroup
\def\g_color{\colo_helpers_set_model\s!gray\colo_helpers_activate{#1}}%
\afterassignment\g_color
@@ -139,19 +133,18 @@
\unexpanded\def\stopcolor {\endgroup}
-%unexpanded\def\colored [#1]{\groupedcommand{\colo_basics_define[\@colored@][#1]\colo_helpers_activate\@colored@}{}}
-
\unexpanded\def\colored [#1]{\bgroup
- \def\g_color{\colo_basics_define[\@colored@][#1]\colo_helpers_activate\@colored@}%
+ \def\g_color{\colo_basics_defined_and_activated{#1}}%
\afterassignment\g_color
\let\nexttoken}
\unexpanded\def\fastcolored[#1]#2{\begingroup % is this command still needed?
- \dodefinefastcolor[\@colored@][#1]%
- \colo_helpers_activate\@colored@
+ \colo_basics_defined_and_activated{#1}%
#2%
\endgroup}
+\unexpanded\def\directcolored[#1]{\colo_basics_defined_and_activated{#1}}
+
%D The following command is obsolete:
@@ -568,6 +561,8 @@
% Since we couple definitions, we could stick to one test. Todo. Same for mpcolor.
+\def\v_colo_dummy_name{d_u_m_m_y}
+
\letvalue{\??colorsetter-}\empty % used?
\letvalue{\??transparencysetter-}\empty % used?
@@ -595,6 +590,10 @@
\csname\??transparencysetter\currentcolorname\endcsname
\fi}
+\def\colo_helpers_activate_dummy
+ {\csname\??colorsetter \v_colo_dummy_name\endcsname
+ \csname\??transparencysetter\v_colo_dummy_name\endcsname}
+
\let\dousecolorparameter\colo_helpers_activate
\unexpanded\def\dousecolorhashparameter#1#2%
@@ -635,6 +634,10 @@
{\ctxcommand{defineprocesscolor("#1","#2",false,\v_colo_freeze_state)}%
\unexpanded\setvalue{#1}{\colo_helpers_activate{#1}}}
+\def\colo_basics_defined_and_activated#1%
+ {\ctxcommand{defineprocesscolor("\v_colo_dummy_name","#1",false,false)}%
+ \colo_helpers_activate_dummy}
+
% Spotcolors used setxvalue but that messes up currentcolor
% and probably no global is needed either but they are global
% at the lua end (true argument) so we keep that if only because
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii
index 01b274991..8a9337707 100644
--- a/tex/context/base/cont-new.mkii
+++ b/tex/context/base/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2011.12.31 18:06}
+\newcontextversion{2012.01.02 19:23}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index e3f7740ab..1cd0e3508 100644
--- a/tex/context/base/cont-new.mkiv
+++ b/tex/context/base/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2011.12.31 18:06}
+\newcontextversion{2012.01.02 19:23}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf
index 3c2201671..b3213bb61 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
diff --git a/tex/context/base/context-version.png b/tex/context/base/context-version.png
index 13328848d..a273c3c82 100644
--- a/tex/context/base/context-version.png
+++ b/tex/context/base/context-version.png
Binary files differ
diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii
index a2c675c0b..77a02c426 100644
--- a/tex/context/base/context.mkii
+++ b/tex/context/base/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2011.12.31 18:06}
+\edef\contextversion{2012.01.02 19:23}
%D For those who want to use this:
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index a84f3fb9d..a19eecf9c 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -23,7 +23,7 @@
%D up and the dependencies are more consistent.
\edef\contextformat {\jobname}
-\edef\contextversion{2012.01.02 17:18}
+\edef\contextversion{2012.01.02 19:23}
%D For those who want to use this:
diff --git a/tex/context/base/mlib-pps.lua b/tex/context/base/mlib-pps.lua
index 1d3798a0c..85766a866 100644
--- a/tex/context/base/mlib-pps.lua
+++ b/tex/context/base/mlib-pps.lua
@@ -736,21 +736,21 @@ local function tx_analyze(object,prescript) -- todo: hash content and reuse them
-- no color
elseif #c == 1 then
if a and t then
- s = format("\\colored[s=%f,a=%f,t=%f]%s",c[1],a,t,s)
+ s = format("\\directcolored[s=%f,a=%f,t=%f]%s",c[1],a,t,s)
else
- s = format("\\colored[s=%f]%s",c[1],s)
+ s = format("\\directcolored[s=%f]%s",c[1],s)
end
elseif #c == 3 then
if a and t then
- s = format("\\colored[r=%f,g=%f,b=%f,a=%f,t=%f]%s",c[1],c[2],c[3],a,t,s)
+ s = format("\\directcolored[r=%f,g=%f,b=%f,a=%f,t=%f]%s",c[1],c[2],c[3],a,t,s)
else
- s = format("\\colored[r=%f,g=%f,b=%f]%s",c[1],c[2],c[3],s)
+ s = format("\\directcolored[r=%f,g=%f,b=%f]%s",c[1],c[2],c[3],s)
end
elseif #c == 4 then
if a and t then
- s = format("\\colored[c=%f,m=%f,y=%f,k=%f,a=%f,t=%f]%s",c[1],c[2],c[3],c[4],a,t,s)
+ s = format("\\directcolored[c=%f,m=%f,y=%f,k=%f,a=%f,t=%f]%s",c[1],c[2],c[3],c[4],a,t,s)
else
- s = format("\\colored[c=%f,m=%f,y=%f,k=%f]%s",c[1],c[2],c[3],c[4],s)
+ s = format("\\directcolored[c=%f,m=%f,y=%f,k=%f]%s",c[1],c[2],c[3],c[4],s)
end
end
context.MPLIBsettext(tx_number,s) -- combine colored in here, saves call
diff --git a/tex/context/base/mult-sys.mkiv b/tex/context/base/mult-sys.mkiv
index ae9513945..2d7ad1eed 100644
--- a/tex/context/base/mult-sys.mkiv
+++ b/tex/context/base/mult-sys.mkiv
@@ -437,13 +437,11 @@
\definesystemvariable {fu} % FontSolution
\definesystemvariable {fw} % simpleFonts by Wolfgang
\definesystemvariable {fx} % FoXet
-\definesystemvariable {gr} % GRid
\definesystemvariable {gb} % Graphic Bitmaps
\definesystemvariable {gi} % Graphic Instance
\definesystemvariable {gv} % Graphic Variable
\definesystemvariable {ha} % HAng
\definesystemvariable {hf} % Helpers Framed
-\definesystemvariable {hs} % HSpace
\definesystemvariable {id} % Index
\definesystemvariable {ih} % InHoudsopgave
\definesystemvariable {il} % stelInvulRegelsin
@@ -513,7 +511,6 @@
\definesystemvariable {si} % SplIt
\definesystemvariable {sl} % SmalLer
\definesystemvariable {sp} % SelecteerPapier
-\definesystemvariable {sr} % SpacehandleR
\definesystemvariable {st} % STickers
\definesystemvariable {sx} % Selector
\definesystemvariable {ta} % TAb
@@ -528,11 +525,7 @@
\definesystemvariable {tt} % TabulaTe
\definesystemvariable {tx} % TeXtflow
\definesystemvariable {ur} % URl
-\definesystemvariable {ut} % strUT
-\definesystemvariable {va} % VspAce
\definesystemvariable {vn} % VoetNoten
-\definesystemvariable {vs} % VSpacing
-\definesystemvariable {wz} % whitespace
\definesystemvariable {xf} % XML File (xtag)
\definesystemvariable {xp} % XML Processing (xtag, so still needed)
\definesystemvariable {za} % layout adapt % ZetspiegelAanpassing
diff --git a/tex/context/base/spac-def.mkiv b/tex/context/base/spac-def.mkiv
index 4ecdc3f25..cdc45d80e 100644
--- a/tex/context/base/spac-def.mkiv
+++ b/tex/context/base/spac-def.mkiv
@@ -86,9 +86,9 @@
[\v!standard,
\v!big]
-\definevspacing[\v!default] [\currentblank]
-\definevspacing[\v!before] [\v!default]
-\definevspacing[\v!inbetween][\v!default]
+\definevspacing[\v!default] [\v!big] % todo: needs to adapt to \setupblank
+\definevspacing[\v!before] [\v!default] % but we need to avoid circular references
+\definevspacing[\v!inbetween][\v!default] % then
\definevspacing[\v!after] [\v!before]
\setupinterlinespace
diff --git a/tex/context/base/spac-hor.mkiv b/tex/context/base/spac-hor.mkiv
index 86e77a423..3001b79bd 100644
--- a/tex/context/base/spac-hor.mkiv
+++ b/tex/context/base/spac-hor.mkiv
@@ -785,46 +785,49 @@
%unexpanded\def\justaperiod {\removeunwantedspaces.}
%unexpanded\def\justacomma {\removeunwantedspaces,}
-\def\ignorecrlf
+\installcorenamespace{hspace}
+
+\unexpanded\def\ignorecrlf
{\let\crlf\justonespace\let\\\crlf}
\unexpanded\def\definehspace
- {\dotripleempty\dodefinehspace}
+ {\dotripleempty\spac_hspaces_define}
-\def\dodefinehspace[#1][#2][#3]% #1 = optional namespace
+\def\spac_hspaces_define[#1][#2][#3]% #1 = optional namespace
{\ifthirdargument
- \setvalue{\??hs#1:#2}{#3}%
+ \setvalue{\??hspace#1:#2}{#3}%
\else
- \setvalue{\??hs:#1}{#2}%
+ \setvalue{\??hspace:#1}{#2}%
\fi}
\unexpanded\def\hspace
- {\dodoubleempty\dohspace}
-
-\def\dohspace[#1][#2]%
- {\ifsecondargument
- \dodohspace[#1][#2]%
- \else\iffirstargument
- \hspace[][#1]%
- \else
- \hspace[][\s!default]%
- \fi\fi}
+ {\dodoubleempty\spac_hspaces_insert}
-\def\dodohspace[#1][#2]%
+\def\spac_hspaces_insert[#1][#2]%
{\ifhmode
\removeunwantedspaces
- \hskip\hspaceamount{#1}{#2}%
+ \hskip % always a skip even when 0pt
+ \ifsecondargument
+ \hspaceamount{#1}{#2}%
+ \else\iffirstargument
+ \hspaceamount\empty{#1}%
+ \else
+ \hspaceamount\empty\s!default
+ \fi\fi
\expandafter\ignorespaces
- \fi}
+ \fi}
\def\hspaceamount#1#2%
- {\executeifdefined{\??hs#1:#2}{\executeifdefined{\??hs:#2}\zeropoint}}
+ {\csname\??hspace
+ \ifcsname\??hspace#1:#2\endcsname#1:#2\else:\v!none\fi
+ \endcsname}
\definehspace [\v!small] [.25\emspaceamount]
\definehspace [\v!medium] [.5\emspaceamount]
\definehspace [\v!big] [1\emspaceamount]
\definehspace [\v!normal] [1\spaceamount]
\definehspace [\v!default] [\spaceamount]
+\definehspace [\v!none] [\zeropoint]
%D Taken from Taco's math module (cq. \AMS\ macros), but
%D adapted to \type {\hspace}:
@@ -884,17 +887,23 @@
%
% do we need \normalspaceprimitive here?
+\installcorenamespace{spaces}
+
\def\installspacehandler#1#2% needs to set \obeyedspace
- {\setvalue{\??sr#1}{#2}}
+ {\setvalue{\??spaces#1}{#2}}
+
+\unexpanded\def\spac_spaces_checked_control{\mathortext\normalspace{\dontleavehmode{\tt\controlspace}}}%
+\unexpanded\def\spac_spaces_checked_normal {\mathortext\normalspace{\dontleavehmode\normalspace}}%
+\unexpanded\def\spac_spaces_checked_fixed {\mathortext\normalspace{\dontleavehmode\fixedspace}}%
\installspacehandler \v!on
{\obeyspaces
- \unexpanded\def\obeyedspace{\mathortext\normalspace{\dontleavehmode{\tt\controlspace}}}%
+ \let\obeyedspace\spac_spaces_checked_control
\let\ =\obeyedspace}
\installspacehandler \v!yes
{\obeyspaces
- \unexpanded\def\obeyedspace{\mathortext\normalspace{\dontleavehmode\normalspace}}%
+ \let\obeyedspace\spac_spaces_checked_normal
\let\ =\obeyedspace}
\installspacehandler \v!off % == default
@@ -904,11 +913,11 @@
\installspacehandler \v!fixed
{\obeyspaces
- \unexpanded\def\obeyedspace{\mathortext\normalspace{\dontleavehmode\fixedspace}}%
+ \let\obeyedspace\spac_spaces_checked_fixed
\let\ =\obeyedspace}
\def\activatespacehandler#1%
- {\executeifdefined{\??sr#1}{\activatespacehandler\v!off}}
+ {\csname\??spaces\ifcsname\??spaces#1\endcsname#1\else\v!off\fi\endcsname}
\appendtoks
\normalspaces % to be sure
@@ -925,18 +934,15 @@
%D
%D \typebuffer \getbuffer
-% unexpanded is important here as it prevents premature expansion in
-% e.g. \normalexpanded{\egroup\sortingparameter\c!next}
-
\unexpanded\def\autoinsertnextspace
- {\futurelet\nexttoken\doautoinsertnextspace}
+ {\futurelet\nexttoken\spac_spaces_auto_insert_next}
-\def\doautoinsertnextspace
+\def\spac_spaces_auto_insert_next
{\ctxcommand{autonextspace("\meaning\nexttoken")}} % todo, just consult nexttoken at the lua end
%D Moved from bib module:
-\def\outdented#1%
+\unexpanded\def\outdented#1%
{\hskip-\hangindent#1\relax}
%D Beware: due to char-def this becomes an active character but that
@@ -949,19 +955,19 @@
% TODO (but used in languages):
-\unexpanded\def\textormathglue#1#2#3% cleaned up one
+\unexpanded\def\spac_glues_text_or_math#1#2%
{\begingroup
\ifmmode
- \mskip#1#2%
+ \mskip#1%
\else
- \scratchdimen#1\hspaceamount\empty{#3}%
+ \scratchdimen#1\hspaceamount\empty{#2}%
\scratchskip\scratchdimen\!!plus.5\scratchdimen\!!minus.3\scratchdimen
\hskip\scratchskip
\fi
\endgroup}
-\def\thinglue {\textormathglue+\thinmuskip 1}
-\def\medglue {\textormathglue+\medmuskip 2}
-\def\thickglue{\textormathglue+\thickmuskip3}
+\unexpanded\def\thinglue {\spac_glues_text_or_math\thinmuskip \v!small}
+\unexpanded\def\medglue {\spac_glues_text_or_math\medmuskip \v!medium}
+\unexpanded\def\thickglue{\spac_glues_text_or_math\thickmuskip\v!big}
\protect \endinput
diff --git a/tex/context/base/spac-ver.mkiv b/tex/context/base/spac-ver.mkiv
index 5725ceb4f..4a37b0a3a 100644
--- a/tex/context/base/spac-ver.mkiv
+++ b/tex/context/base/spac-ver.mkiv
@@ -30,14 +30,6 @@
\fi \fi
\relax}
-\def\linedistance {\normalskipamount}
-\def\appliedblankskip{\skipfactor\linedistance}
-\def\lastblankskip {\blankskip}
-\def\currentblank {\v!big}
-\def\oldprevdepth {\prevdepth}
-\def\newprevdepth {-1001pt}
-\def\mindimen {1sp} % was: 0.00002pt
-
%D There are two ways to influence the interline spacing. The
%D most general and often most consistent way is using
%D
@@ -115,6 +107,8 @@
% \let\normallineheight\askedbodyfontinterlinespace
% \fi}
+\let\currentrelativeinterlinespace\empty
+
\unexpanded\def\setupspecifiedinterlinespace[#1]%
{\getparameters[\??it\currentinterlinespace][#1]%
\dosetupspecifiedinterlinespaceindeed}
@@ -136,14 +130,14 @@
\setfontparameters % redundant, can be \setstrut, test first
\updateraggedskips} % yes indeed
-\let\currentrelativeinterlinespace\empty
+\installcorenamespace{interlinespacerelative}
-\setvalue{\??it::\v!on }{\oninterlineskip}
-\setvalue{\??it::\v!off }{\offinterlineskip}
-\setvalue{\??it::\v!reset}{\let\currentrelativeinterlinespace\empty
- \let\setrelativeinterlinespace\relax
- \setfontparameters}
-\setvalue{\??it::\v!auto }{\let\setrelativeinterlinespace\dosetrelativeinterlinespace}
+\setvalue{\??interlinespacerelative\v!on }{\oninterlineskip}
+\setvalue{\??interlinespacerelative\v!off }{\offinterlineskip}
+\setvalue{\??interlinespacerelative\v!reset}{\let\currentrelativeinterlinespace\empty
+ \let\setrelativeinterlinespace\relax
+ \setfontparameters}
+\setvalue{\??interlinespacerelative\v!auto }{\let\setrelativeinterlinespace\dosetrelativeinterlinespace}
\def\dosetspecifiedrelativeinterlinespace#1% fragile?
{\doifdimenstringelse{#1}
@@ -155,8 +149,8 @@
{\processcommalist[#1]\dosetuprelativeinterlinespace}
\def\dosetuprelativeinterlinespace#1%
- {\ifcsname\??it::#1\endcsname
- \csname\??it::#1\endcsname
+ {\ifcsname\??interlinespacerelative#1\endcsname
+ \csname\??interlinespacerelative#1\endcsname
\else
\dosetspecifiedrelativeinterlinespace{#1}%
\fi}
@@ -254,8 +248,14 @@
\let\switchtointerlinespace\setuplocalinterlinespace
\definecomplexorsimple\setupinterlinespace
-
-\def\removelastskip
+
+%D Helpers
+
+\newskip \s_spac_lastskip
+\newdimen\d_spac_prevdepth
+\newcount\c_spac_spacefactor
+
+\unexpanded\def\removelastskip
{\ifvmode\ifdim\lastskip=\zeropoint\else\vskip-\lastskip\fi\fi}
\def\doifoutervmode
@@ -269,25 +269,25 @@
\expandafter\gobbleoneargument
\fi}
-\def\dosomebreak#1%
+\unexpanded\def\dosomebreak#1%
{\doifoutervmode
- {\scratchskip\lastskip
+ {\s_spac_lastskip\lastskip
\removelastskip
#1\relax
- \ifdim\scratchskip=\zeropoint
+ \ifdim\s_spac_lastskip=\zeropoint
% avoid interference with footnotes
\else
- \vskip\scratchskip
+ \vskip\s_spac_lastskip
\fi}}
-
-\def\packed
+
+\unexpanded\def\packed
{\nointerlineskip}
-\def\godown[#1]%
+\unexpanded\def\godown[#1]%
{\relax
\ifhmode\endgraf\fi
\ifvmode\nointerlineskip\vskip#1\relax\fi}
-
+
\unexpanded\def\smallskip{\vskip\smallskipamount}
\unexpanded\def\medskip {\vskip\medskipamount}
\unexpanded\def\bigskip {\vskip\bigskipamount}
@@ -324,33 +324,36 @@
%D Made slightly more readable:
-\unexpanded\def\vglue {\afterassignment\spac_vglue_indeed\scratchskip=}
-\unexpanded\def\hglue {\afterassignment\spac_hglue_indeed\scratchskip=}
+\unexpanded\def\vglue {\afterassignment\spac_helpers_vglue_indeed\s_spac_lastskip=}
+\unexpanded\def\hglue {\afterassignment\spac_helpers_hglue_indeed\s_spac_lastskip=}
\unexpanded\def\topglue{\nointerlineskip\vglue-\topskip\vglue}
-\def\spac_vglue_indeed
+\def\spac_helpers_vglue_indeed
{\par
- \scratchdimen\prevdepth
+ \d_spac_prevdepth\prevdepth
\hrule\!!height\zeropoint
\nobreak
- \vskip\scratchskip
- \prevdepth\scratchdimen}
+ \vskip\s_spac_lastskip
+ \prevdepth\d_spac_prevdepth}
-\def\spac_hglue_indeed
+\def\spac_helpers_hglue_indeed
{\dontleavehmode % \leavevmode
- \scratchcounter\spacefactor
+ \c_spac_spacefactor\spacefactor
\vrule\!!width\zeropoint
\nobreak
- \hskip\scratchskip
- \spacefactor\scratchcounter}
+ \hskip\s_spac_lastskip
+ \spacefactor\c_spac_spacefactor}
%D We adapt plain's \type {\removelastskip} a bit:
\unexpanded\def\removelastskip % also in supp-box
{\ifvmode\ifzeropt\lastskip\else\vskip-\lastskip\fi\fi}
-\newskip\ctxparskip \ctxparskip\zeropoint
+% The whitespace handler.
+\installcorenamespace{whitespacemethod}
+
+\newskip \ctxparskip \ctxparskip\zeropoint
\newconditional \flexiblewhitespace \settrue\flexiblewhitespace
\def\currentwhitespace{\zeropoint}
@@ -372,8 +375,8 @@
\newconstant\baselinegridmode % option in layout / 1=permit_half_lines
\def\spac_whitespace_setup % quick test for no list
- {\ifcsname\??wz:\currentwhitespace\endcsname
- \csname\??wz:\currentwhitespace\endcsname
+ {\ifcsname\??whitespacemethod\currentwhitespace\endcsname
+ \csname\??whitespacemethod\currentwhitespace\endcsname
\else
\expandafter\processcommalist\expandafter[\currentwhitespace]\spac_whitespace_setup_method % can be raw
\fi\relax
@@ -406,7 +409,7 @@
\fi
\fi}
-\unexpanded\def\definewhitespacemethod[#1]#2{\setvalue{\??wz:#1}{#2}}
+\unexpanded\def\definewhitespacemethod[#1]#2{\setvalue{\??whitespacemethod#1}{#2}}
\definewhitespacemethod [\v!fix] {}
\definewhitespacemethod [\v!fixed] {\setfalse\flexiblewhitespace}
@@ -422,8 +425,8 @@
\definewhitespacemethod [\s!default] {\simplesetupwhitespace}
\def\spac_whitespace_setup_method#1%
- {\ifcsname\??wz:#1\endcsname
- \csname\??wz:#1\endcsname
+ {\ifcsname\??whitespacemethod#1\endcsname
+ \csname\??whitespacemethod#1\endcsname
\else
\ctxparskip#1\fi
\relax}
@@ -431,7 +434,7 @@
% \definewhitespacemethod [\s!unknown] {\ctxparskip\commalistelement\relax}
%
% \def\spac_whitespace_setup_method#1%
-% {\csname\??wz:\ifcsname\??wz:#1\endcsname#1\else\s!unknown\endcsname\relax}
+% {\csname\??whitespacemethod\ifcsname\??whitespacemethod#1\endcsname#1\else\s!unknown\endcsname\relax}
\unexpanded\def\nowhitespace{\vspacing[\v!nowhite]}
\unexpanded\def\whitespace {\vspacing[\v!white]}
@@ -442,16 +445,16 @@
% van pas bij het plaatsen van (mogelijk lege) lijsten.
\newconditional\noblankinpacked
-\newcount\packeddepth
+\newcount \c_spac_packed_level
\unexpanded\def\startpacked
- {\dosingleempty\spac_start_packed}
+ {\dosingleempty\spac_packed_start}
-\def\spac_start_packed[#1]% nesting afvangen
- {\global\advance\packeddepth\plusone
+\def\spac_packed_start[#1]% nesting afvangen
+ {\global\advance\c_spac_packed_level\plusone
\par
- \ifnum\packeddepth=\plusone \ifvmode
- \bgroup
+ \ifnum\c_spac_packed_level=\plusone \ifvmode
+ \begingroup
\whitespace % not combined
\blank[\v!disable]%
\doifelse{#1}\v!blank\setfalse\settrue\noblankinpacked
@@ -460,22 +463,18 @@
\unexpanded\def\stoppacked
{\par
- \ifnum\packeddepth=\plusone \ifvmode
- \egroup
+ \ifnum\c_spac_packed_level=\plusone \ifvmode
+ \endgroup
\fi \fi
- \global\advance\packeddepth\minusone}
+ \global\advance\c_spac_packed_level\minusone}
\unexpanded\def\startunpacked
{\blank
- \bgroup}
+ \begingroup}
\unexpanded\def\stopunpacked
- {\egroup
+ {\endgroup
\blank}
-
-% De onderstaande macro's moeten nog eens nader worden uitgewerkt.
-% Ze spelen een rol bij de spatiering rond omkaderde teksten
-% en/of boxen zonder diepte.
% \prevdepth crosses pageboundaries!
%
@@ -784,25 +783,6 @@
% treatment; tests with using an attribute so far have shown that
% it's slower because testing the attribute takes time too
-\newdimen\tempstrutdimen
-
-% \unexpanded\def\dosetstrut
-% {\let\strut\normalstrut
-% \tempstrutdimen\dimexpr\strutht+\strutdp-\lineheight\relax
-% \ifabsnum\tempstrutdimen<\plustwo
-% % compensate rounding error /- 1sp to avoid too many
-% % 1sp baselineskips in for instance verbatim
-% \strutht\dimexpr\strutht-\tempstrutdimen\relax
-% \fi
-% \edef\strutheight{\the\strutht}% maybe better \number\strutht sp
-% \edef\strutdepth {\the\strutdp}%
-% \ifdim\strutwidth=\zeropoint
-% \dosetstruthide
-% \else
-% \dosetstrutvide
-% \fi
-% \struttotal\dimexpr\strutht+\strutdp\relax}
-
\unexpanded\def\dosetstrut
{\let\strut\normalstrut
\ifabsnum\dimexpr\strutht+\strutdp-\lineheight\relax<\plustwo
@@ -816,19 +796,19 @@
\edef\strutheight{\the\strutht}%
\edef\strutdepth {\the\strutdp}%
\ifdim\strutwidth=\zeropoint
- \dosetstruthide
+ \spac_struts_set_hide
\else
- \dosetstrutvide
+ \spac_struts_set_vide
\fi}
-\unexpanded\def\dosetstruthide
+\def\spac_struts_set_hide
{\setbox\strutbox\normalhbox
{\vrule
\!!width \zeropoint
\!!height\strutht
\!!depth \strutdp}}
-\unexpanded\def\dosetstrutvide
+\def\spac_struts_set_vide
{\setbox\strutbox\normalhbox
{\normalhbox to \zeropoint
{% \hss % new, will be option
@@ -842,16 +822,19 @@
%D strut; occasionally a one scaled point difference can show
%D up with the lineheight.
-% experiment
+% This is more efficient (less callbacks):
-\newbox\emptystrutbox \setbox\emptystrutbox\emptyhbox
+\newbox\b_spac_struts_empty \setbox\b_spac_struts_empty\emptyhbox
-\unexpanded\def\dosetstruthide
- {\setbox\strutbox\copy\emptystrutbox
+\def\spac_struts_set_hide
+ {\setbox\strutbox\copy\b_spac_struts_empty
\ht\strutbox\strutht
\dp\strutbox\strutdp}
-\unexpanded\def\strut{\relax\dontleavehmode\copy\strutbox} % still callbacks for \hbox{\strut}
+\unexpanded\def\strut % still callbacks for \hbox{\strut}
+ {\relax
+ \dontleavehmode
+ \copy\strutbox}
\let\normalstrut\strut
@@ -867,19 +850,21 @@
%D Beware: using an unknown value results in char struts.
+\installcorenamespace{struts}
+
\unexpanded\def\setupstrut
- {\dosingleempty\spac_strut_setup}
+ {\dosingleempty\spac_struts_setup}
-\def\spac_strut_setup[#1]%
- {\ifcsname\??ut:#1\endcsname
- \csname\??ut:#1\endcsname % these are defined later
+\def\spac_struts_setup[#1]%
+ {\ifcsname\??struts#1\endcsname
+ \csname\??struts#1\endcsname % these are defined later
\else
\setcharstrut{#1}%
\fi}
\def\synchronizestrut#1% no [] parsing, faster for internal
- {\ifcsname\??ut:#1\endcsname
- \csname\??ut:#1\endcsname
+ {\ifcsname\??struts#1\endcsname
+ \csname\??struts#1\endcsname
\else
\setcharstrut{#1}%
\fi}
@@ -924,24 +909,24 @@
{\relax\ifcase\strutht
% \ignorespaces % maybe
\else
- \spac_strut_beg
+ \spac_struts_beg
\fi}
-\def\spac_strut_beg
+\def\spac_struts_beg
{\ifconditional\sigstruts
- \spac_strut_beg_signal
+ \spac_struts_beg_signal
\else
- \spac_strut_beg_normal
+ \spac_struts_beg_normal
\fi
\ignorespaces}
-\def\spac_strut_beg_signal
+\def\spac_struts_beg_signal
{\noindent\horizontalstrut
\normalpenalty\plustenthousand
\normalhskip-\strutsignal
\normalhskip\strutsignal}
-\def\spac_strut_beg_normal
+\def\spac_struts_beg_normal
{\strut
\normalpenalty\plustenthousand
\normalhskip\zeropoint}
@@ -951,18 +936,18 @@
\ifcase\strutht
% \removeunwantedspaces % maybe
\else
- \spac_strut_end
+ \spac_struts_end
\fi
\fi}
-\def\spac_strut_end
+\def\spac_struts_end
{\ifconditional\sigstruts
- \spac_strut_end_signal
+ \spac_struts_end_signal
\else
- \spac_strut_end_normal
+ \spac_struts_end_normal
\fi}
-\def\spac_strut_end_signal
+\def\spac_struts_end_signal
{\ifdim\lastskip=\strutsignal
\unskip
\unskip
@@ -974,7 +959,7 @@
\strut
\fi}
-\def\spac_strut_end_normal
+\def\spac_struts_end_normal
{\removeunwantedspaces
\normalpenalty\plustenthousand
\normalhskip\zeropoint
@@ -1007,19 +992,19 @@
\setstrut}
\ifdefined\setfontparameters \else
- \def\setfontparameters{\the\everybodyfont}
+ \def\setfontparameters{\the\everybodyfont}
\fi
%D Keyword based strutting:
-\letvalue{\??ut:\v!yes }\setstrut % \setvalue{\??ut:\v!yes }{\setstrut}
-\letvalue{\??ut:\v!auto }\setautostrut % \setvalue{\??ut:\v!auto }{\setautostrut}
-\letvalue{\??ut:\v!no }\setnostrut % \setvalue{\??ut:\v!no }{\setnostrut}
-\letvalue{\??ut:\v!cap }\setcapstrut % \setvalue{\??ut:\v!cap }{\setcapstrut}
-\letvalue{\??ut:\v!fit }\setfontstrut % \setvalue{\??ut:\v!fit }{\setfontstrut}
-\letvalue{\??ut:\v!line }\setstrut % \setvalue{\??ut:\v!line }{\setstrut}
-\letvalue{\??ut:\s!default}\setstrut % \setvalue{\??ut:\s!default}{\setstrut}
-\letvalue{\??ut:\empty }\setstrut % \setvalue{\??ut:\empty }{\setstrut}
+\letvalue{\??struts\v!yes }\setstrut % \setvalue{\??struts\v!yes }{\setstrut}
+\letvalue{\??struts\v!auto }\setautostrut % \setvalue{\??struts\v!auto }{\setautostrut}
+\letvalue{\??struts\v!no }\setnostrut % \setvalue{\??struts\v!no }{\setnostrut}
+\letvalue{\??struts\v!cap }\setcapstrut % \setvalue{\??struts\v!cap }{\setcapstrut}
+\letvalue{\??struts\v!fit }\setfontstrut % \setvalue{\??struts\v!fit }{\setfontstrut}
+\letvalue{\??struts\v!line }\setstrut % \setvalue{\??struts\v!line }{\setstrut}
+\letvalue{\??struts\s!default}\setstrut % \setvalue{\??struts\s!default}{\setstrut}
+\letvalue{\??struts\empty }\setstrut % \setvalue{\??struts\empty }{\setstrut}
%D Handy:
@@ -1050,7 +1035,7 @@
\lineskip\the\lineskip
\lineskiplimit\the\lineskiplimit
\noexpand\edef\noexpand\minimumlinedistance{\the\dimexpr\minimumlinedistance}%
- \let\noexpand\offinterlineskip\noexpand\normaloffinterlineskip}}
+ \let\noexpand\offinterlineskip\noexpand\normaloffinterlineskip}} % \noexpand not needed
\unexpanded\def\nopushinterlineskip
{\let\oninterlineskip\setnormalbaselines}
@@ -1175,10 +1160,10 @@
%D To be checked:
-\ifx\savedstrutbox\undefined \newbox\savedstrutbox \fi
+\newbox\b_spac_struts_saved
-\def\savestrut {\setbox\savedstrutbox\copy\strutbox}
-\def\savedstrut{\copy \savedstrutbox}
+\unexpanded\def\savestrut {\setbox\b_spac_struts_saved\copy\strutbox}
+\unexpanded\def\savedstrut{\copy \b_spac_struts_saved}
%D Good old blank redone:
@@ -1193,6 +1178,8 @@
% TODO: NAMED SNAPPERS
+\installcorenamespace{gridsnappers}
+
\newskip \bodyfontlineheight
\newdimen \bodyfontstrutheight
\newdimen \bodyfontstrutdepth
@@ -1216,7 +1203,7 @@
\ifcsname\currentsnapper\endcsname \else
\setevalue\currentsnapper{\ctxlua{builders.vspacing.definesnapmethod("#1","#2")}}%
\fi
- \setevalue{\??gr:#1}{\attribute\snapmethodattribute\csname\currentsnapper\endcsname\space}}
+ \setevalue{\??gridsnappers#1}{\attribute\snapmethodattribute\csname\currentsnapper\endcsname\space}}
\unexpanded\def\definegridsnapping
{\dodoubleargument\dodefinegridsnapping}
@@ -1230,14 +1217,14 @@
\def\setsnapvalue#1%
{%\gridsnappingtrue
- \ifcsname\??gr:#1\endcsname\csname\??gr:#1\endcsname\fi}
+ \ifcsname\??gridsnappers#1\endcsname\csname\??gridsnappers#1\endcsname\fi}
\def\autosetsnapvalue#1%
- {\ifcsname\??gr:#1\endcsname
- \csname\??gr:#1\endcsname
+ {\ifcsname\??gridsnappers#1\endcsname
+ \csname\??gridsnappers#1\endcsname
\else
\installsnapvalues\s!dummy{#1}%
- \csname\??gr:\s!dummy\endcsname
+ \csname\??gridsnappers\s!dummy\endcsname
\fi}
% \installsnapvalues{loose} {\v!maxdepth:0.8,\v!maxheight:0.8,\v!strut}
@@ -1570,16 +1557,18 @@
% % % % we can move much to lua once we can expand there % % % %
+\installcorenamespace{vspacingamount}
+
\unexpanded\def\definevspacingamount
{\dotripleempty\dodefinevspacingamount}
\def\dodefinevspacingamount[#1][#2][#3]% can be combined
- {\setvalue{\??vs:#1}{\ifgridsnapping#3\else#2\fi}%
+ {\setvalue{\??vspacingamount#1}{\ifgridsnapping#3\else#2\fi}%
\ctxlua{builders.vspacing.setskip("#1")}}
\def\addpredefinedblankskip#1#2%
{\settrue\someblankdone
- \advance\blankskip#1\dimexpr\csname\??vs:#2\endcsname\relax}
+ \advance\blankskip#1\dimexpr\csname\??vspacingamount#2\endcsname\relax}
\def\addaskedblankskip#1#2%
{\settrue\someblankdone
@@ -1690,72 +1679,46 @@
%D care as it does {\em not} work in tandem with the other spacing
%D commands.
+\installcorenamespace{vspace}
+
\unexpanded\def\definevspace
{\dotripleempty\dodefinevspace}
\def\dodefinevspace[#1][#2][#3]%
{\ifthirdargument
- \setvalue{\??va#1:#2}{#3}%
+ \setvalue{\??vspace#1:#2}{#3}%
\else
- \setvalue{\??va:#1}{#2}%
+ \setvalue{\??vspace:#1}{#2}%
\fi}
-\letvalue{\??va#1:\s!unknown}\zeropoint
+\letvalue{\??vspace#1:\s!unknown}\zeropoint
\unexpanded\def\vspace
{\dodoubleempty\dovspace}
-% \def\dovspace[#1][#2]%
-% {\par
-% \ifvmode
-% \removelastskip
-% \vskip
-% \ifsecondargument
-% \vspaceamount{#1}{#2}%
-% \else\iffirstargument
-% \vspaceamount\empty{#1}%
-% \else
-% \vspaceamount\empty\s!default
-% \fi\fi
-% \relax
-% \fi}
-
-% \def\vspaceamount#1#2%
-% {\csname\??va
-% \ifcsname\??va#1:#2\endcsname
-% #1:#2%
-% \else\ifcsname\??va:#2\endcsname
-% :#2%
-% \else
-% :\s!unknown
-% \fi\fi
-% \endcsname}
-
-% alternative
-
\def\dovspace[#1][#2]%
{\par
\ifvmode
\removelastskip
\vskip
- \csname\??va
+ \csname\??vspace
\ifsecondargument
- \ifcsname\??va#1:#2\endcsname
+ \ifcsname\??vspace#1:#2\endcsname
#1:#2%
- \else\ifcsname\??va:#2\endcsname
+ \else\ifcsname\??vspace:#2\endcsname
:#2%
\else
:\s!unknown
\fi\fi
\else\iffirstargument
- \ifcsname\??va:#1\endcsname
+ \ifcsname\??vspace:#1\endcsname
:#1%
\else
:\s!unknown
\fi
\else
- \ifcsname\??va:\s!default\endcsname
- :\s!default%
+ \ifcsname\??vspace:\s!default\endcsname
+ :\s!default
\else
:\s!unknown
\fi
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index edb16ac2f..896cfc66a 100644
--- a/tex/context/base/status-files.pdf
+++ b/tex/context/base/status-files.pdf
Binary files differ
diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf
index 3da3b1812..ead91c158 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/status-mkiv.tex b/tex/context/base/status-mkiv.tex
index c4ea94046..82a737f43 100644
--- a/tex/context/base/status-mkiv.tex
+++ b/tex/context/base/status-mkiv.tex
@@ -58,6 +58,12 @@
if preloaded then
+ for i=1,#preloaded do
+ preloaded[i].order = i
+ end
+
+ table.sort(preloaded,function(a,b) return a.filename < b.filename end)
+
context.starttabulate { "|Tr|Tl|Tl|l|p|" }
context.NC() -- context.bold("order")
context.NC() context.bold("file")
@@ -68,7 +74,7 @@
for i=1,#preloaded do
local module = preloaded[i]
local status = module.status
- context.NC() context(i)
+ context.NC() context(module.order)
context.NC() context(module.filename)
context.NC() context(module.marktype)
context.NC() if status == "unknown" then context.bold(status) else context(status) end
diff --git a/tex/context/base/tabl-xtb.lua b/tex/context/base/tabl-xtb.lua
index 2dd53accd..2f422578e 100644
--- a/tex/context/base/tabl-xtb.lua
+++ b/tex/context/base/tabl-xtb.lua
@@ -169,10 +169,10 @@ function xtables.initialize_reflow_width()
local r = data.currentrow
local c = data.currentcolumn + 1
local drc = data.rows[r][c]
- drc.nx = texcount.x_table_nx
- drc.ny = texcount.x_table_ny
+ drc.nx = texcount.c_tabl_x_nx
+ drc.ny = texcount.c_tabl_x_ny
local distances = data.distances
- local distance = texdimen.x_table_distance
+ local distance = texdimen.d_tabl_x_distance
if distance > distances[c] then
distances[c] = distance
end
@@ -190,7 +190,7 @@ function xtables.set_reflow_width()
while row[c].span do -- can also be previous row ones
c = c + 1
end
- local tb = texbox.x_table_box
+ local tb = texbox.b_tabl_x
local drc = row[c]
--
drc.list = true -- we don't need to keep the content around as we're in trial mode (no: copy_node_list(tb))
@@ -270,19 +270,19 @@ function xtables.initialize_reflow_height()
for x=1,drc.nx-1 do
w = w + widths[c+x]
end
- texdimen.x_table_width = w
+ texdimen.d_tabl_x_width = w
local dimensionstate = drc.dimensionstate or 0
if dimensionstate == 1 or dimensionstate == 3 then
-- width was fixed so height is known
- texcount.x_table_skip_mode = 1
+ texcount.c_tabl_x_skip_mode = 1
elseif dimensionstate == 2 then
-- height is enforced
- texcount.x_table_skip_mode = 1
+ texcount.c_tabl_x_skip_mode = 1
elseif data.autowidths[c] then
-- width has changed so we need to recalculate the height
- texcount.x_table_skip_mode = 0
+ texcount.c_tabl_x_skip_mode = 0
else
- texcount.x_table_skip_mode = 1
+ texcount.c_tabl_x_skip_mode = 1
end
end
@@ -294,7 +294,7 @@ function xtables.set_reflow_height()
-- while row[c].span do -- we could adapt drc.nx instead
-- c = c + 1
-- end
- local tb = texbox.x_table_box
+ local tb = texbox.b_tabl_x
local drc = row[c]
if data.fixedrows[r] == 0 then -- and drc.dimensionstate < 2
local heights, height = data.heights, tb.height
@@ -333,9 +333,9 @@ function xtables.initialize_construct()
h = h + heights[r+y]
d = d + depths[r+y]
end
- texdimen.x_table_width = w
- texdimen.x_table_height = h + d
- texdimen.x_table_depth = 0
+ texdimen.d_tabl_x_width = w
+ texdimen.d_tabl_x_height = h + d
+ texdimen.d_tabl_x_depth = 0
end
function xtables.set_construct()
@@ -348,7 +348,7 @@ function xtables.set_construct()
-- end
local drc = row[c]
-- this will change as soon as in luatex we can reset a box list without freeing
- drc.list = copy_node_list(texbox.x_table_box)
+ drc.list = copy_node_list(texbox.b_tabl_x)
-- c = c + drc.nx - 1
-- data.currentcolumn = c
end
@@ -660,11 +660,11 @@ function xtables.construct()
[body_mode] = body,
}
if #body == 0 then
- texsetcount("global","x_table_state",0)
- texsetdimen("global","x_table_final_width",0)
+ texsetcount("global","c_tabl_x_state",0)
+ texsetdimen("global","d_tabl_x_final_width",0)
else
- texsetcount("global","x_table_state",1)
- texsetdimen("global","x_table_final_width",body[1][1].width)
+ texsetcount("global","c_tabl_x_state",1)
+ texsetdimen("global","d_tabl_x_final_width",body[1][1].width)
end
end
@@ -821,7 +821,7 @@ function xtables.flush(directives) -- todo split by size / no inbetween then ..
results[foot_mode] = { }
end
results[body_mode] = { }
- texsetcount("global","x_table_state",0)
+ texsetcount("global","c_tabl_x_state",0)
else
-- some is left so footer is delayed
-- todo: try to flush a few more lines
@@ -835,7 +835,7 @@ function xtables.flush(directives) -- todo split by size / no inbetween then ..
else
-- todo: try to fit more of body
end
- texsetcount("global","x_table_state",2)
+ texsetcount("global","c_tabl_x_state",2)
end
else
if firstsize > vsize then
@@ -846,10 +846,10 @@ function xtables.flush(directives) -- todo split by size / no inbetween then ..
bodystart = bodystart + 1
end
end
- texsetcount("global","x_table_state",2) -- 1
+ texsetcount("global","c_tabl_x_state",2) -- 1
end
else
- texsetcount("global","x_table_state",0)
+ texsetcount("global","c_tabl_x_state",0)
end
data.bodystart = bodystart
data.bodystop = bodystop
@@ -895,7 +895,7 @@ function xtables.flush(directives) -- todo split by size / no inbetween then ..
results[head_mode] = { }
results[body_mode] = { }
results[foot_mode] = { }
- texsetcount("global","x_table_state",0)
+ texsetcount("global","c_tabl_x_state",0)
end
end
@@ -910,7 +910,7 @@ end
function xtables.next_row()
local r = data.currentrow + 1
- data.modes[r] = texcount.x_table_mode
+ data.modes[r] = texcount.c_tabl_x_mode
data.currentrow = r
data.currentcolumn = 0
end
diff --git a/tex/context/base/tabl-xtb.mkvi b/tex/context/base/tabl-xtb.mkvi
index f8900e2d1..1f5ce8a18 100644
--- a/tex/context/base/tabl-xtb.mkvi
+++ b/tex/context/base/tabl-xtb.mkvi
@@ -89,7 +89,7 @@
\newcount\c_tabl_x_nx
\newcount\c_tabl_x_ny
\newcount\c_tabl_x_mode
-\newbox \b_tabl_x_box
+\newbox \b_tabl_x
\newcount\c_tabl_x_state % 0=empty 1=content 3=splitleft
\newdimen\d_tabl_x_final_width
\newcount\c_tabl_x_nesting
@@ -401,7 +401,7 @@
{\hsize.25\maxdimen} % let's be reasonable
\unexpanded\def\tabl_x_start_cell_reflow_width_yes[#settings]%
- {\setbox\b_tabl_x_box\hbox\bgroup
+ {\setbox\b_tabl_x\hbox\bgroup
\ifnum\c_tabl_x_nesting>\plusone
\letxtableparameter\c!width \v!fit % overloads given width
\letxtableparameter\c!height\v!fit % overloads given height
@@ -430,7 +430,7 @@
\tabl_x_set_hsize}
\unexpanded\def\tabl_x_start_cell_reflow_width_nop
- {\setbox\b_tabl_x_box\hbox\bgroup
+ {\setbox\b_tabl_x\hbox\bgroup
\ifnum\c_tabl_x_nesting>\plusone
\letxtableparameter\c!width \v!fit % overloads given width
\letxtableparameter\c!height\v!fit % overloads given height
@@ -450,7 +450,7 @@
\ctxcommand{x_table_set_reflow_width()}}
\unexpanded\def\tabl_x_start_cell_reflow_height_yes[#settings]%
- {\setbox\b_tabl_x_box\hbox\bgroup
+ {\setbox\b_tabl_x\hbox\bgroup
\ctxcommand{x_table_init_reflow_height()}%
\ifcase\c_tabl_x_skip_mode % can be sped up
\ifnum\c_tabl_x_nesting>\plusone
@@ -464,7 +464,7 @@
\fi}
\unexpanded\def\tabl_x_start_cell_reflow_height_nop
- {\setbox\b_tabl_x_box\hbox\bgroup
+ {\setbox\b_tabl_x\hbox\bgroup
\ctxcommand{x_table_init_reflow_height()}%
\ifcase\c_tabl_x_skip_mode % can be sped up
\ifnum\c_tabl_x_nesting>\plusone
@@ -486,7 +486,7 @@
\unexpanded\def\tabl_x_start_cell_construct_yes[#settings]%
{\dostarttagged\t!tablecell\empty % can't we just tag the box
- \setbox\b_tabl_x_box\hbox\bgroup
+ \setbox\b_tabl_x\hbox\bgroup
\setupcurrentxtable[#settings]%
\letxtableparameter\c!width \d_tabl_x_width % overloads given width
\letxtableparameter\c!height\d_tabl_x_height % overloads given height
@@ -497,7 +497,7 @@
\unexpanded\def\tabl_x_start_cell_construct_nop
{\dostarttagged\t!tablecell\empty % can't we just tag the box
- \setbox\b_tabl_x_box\hbox\bgroup
+ \setbox\b_tabl_x\hbox\bgroup
\letxtableparameter\c!width \d_tabl_x_width % overloads given width
\letxtableparameter\c!height\d_tabl_x_height % overloads given height
\ctxcommand{x_table_init_construct()}%
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 443916f93..25176c36c 100644
--- a/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/tex/generic/context/luatex/luatex-fonts-merged.lua
@@ -1,6 +1,6 @@
-- merged file : luatex-fonts-merged.lua
-- parent file : luatex-fonts.lua
--- merge date : 12/31/11 18:06:27
+-- merge date : 01/02/12 19:23:09
do -- begin closure to overcome local limits and interference