summaryrefslogtreecommitdiff
path: root/tex/context/base
diff options
context:
space:
mode:
authorMarius <mariausol@gmail.com>2011-09-17 10:40:15 +0300
committerMarius <mariausol@gmail.com>2011-09-17 10:40:15 +0300
commit32956188684f3f0bd1cc077a6870fdd57fea0cfc (patch)
tree740208d07a5e6ab91a5a30e723fcc3e93c83114f /tex/context/base
parent0c9823815b15cad63d4b9827205a605192e8cd81 (diff)
downloadcontext-32956188684f3f0bd1cc077a6870fdd57fea0cfc.tar.gz
beta 2011.09.17 09:40
Diffstat (limited to 'tex/context/base')
-rw-r--r--tex/context/base/anch-pgr.mkiv11
-rw-r--r--tex/context/base/colo-ini.lua1
-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.pdfbin4094 -> 4090 bytes
-rw-r--r--tex/context/base/context-version.pngbin106550 -> 105912 bytes
-rw-r--r--tex/context/base/context.mkii2
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/mult-aux.mkiv9
-rw-r--r--tex/context/base/mult-de.mkii2
-rw-r--r--tex/context/base/mult-def.lua6
-rw-r--r--tex/context/base/mult-en.mkii2
-rw-r--r--tex/context/base/mult-fr.mkii2
-rw-r--r--tex/context/base/mult-it.mkii2
-rw-r--r--tex/context/base/mult-low.lua20
-rw-r--r--tex/context/base/mult-nl.mkii2
-rw-r--r--tex/context/base/mult-pe.mkii2
-rw-r--r--tex/context/base/mult-ro.mkii2
-rw-r--r--tex/context/base/node-bck.lua2
-rw-r--r--tex/context/base/node-bck.mkiv2
-rw-r--r--tex/context/base/node-rul.mkiv23
-rw-r--r--tex/context/base/pack-box.mkiv2
-rw-r--r--tex/context/base/pack-rul.mkiv6
-rw-r--r--tex/context/base/page-flt.mkiv4
-rw-r--r--tex/context/base/page-mul.mkiv20
-rw-r--r--tex/context/base/page-one.mkiv22
-rw-r--r--tex/context/base/page-set.mkiv12
-rw-r--r--tex/context/base/status-files.pdfbin23935 -> 23919 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin162353 -> 162348 bytes
-rw-r--r--tex/context/base/strc-flt.mkiv242
-rw-r--r--tex/context/base/strc-num.mkiv14
-rw-r--r--tex/context/base/strc-sbe.mkiv22
-rw-r--r--tex/context/base/syst-aux.mkiv5
33 files changed, 192 insertions, 253 deletions
diff --git a/tex/context/base/anch-pgr.mkiv b/tex/context/base/anch-pgr.mkiv
index f052b4ddb..af99602c7 100644
--- a/tex/context/base/anch-pgr.mkiv
+++ b/tex/context/base/anch-pgr.mkiv
@@ -558,12 +558,17 @@
\iftracepositions show_multi_pars \else draw_multi_pars \fi ;
\stopuseMPgraphic
-\startuseMPgraphic{mpos:par:sideline}{linecolor,lineoffset}
+\startuseMPgraphic{mpos:par:sideline}{linecolor,lineoffset,linewidth}
+ begingroup ; save p ; picture p ;
for i=1 upto nofmultipars :
- fill leftboundary multipars[i]
+ p := image ( fill leftboundary multipars[i]
shifted (-\MPvar{lineoffset},0)
- rightenlarged 1mm withcolor \MPvar{linecolor} ;
+ rightenlarged \MPvar{linewidth} withcolor \MPvar{linecolor} ;
+ ) ;
+ setbounds p to multipars[i] ;
+ draw p ;
endfor ;
+ endgroup ;
\stopuseMPgraphic
\startMPpositionmethod{mpos:par:columnset}
diff --git a/tex/context/base/colo-ini.lua b/tex/context/base/colo-ini.lua
index 4ad564213..5e504e388 100644
--- a/tex/context/base/colo-ini.lua
+++ b/tex/context/base/colo-ini.lua
@@ -30,7 +30,6 @@ local gettexattribute = tex.getattribute
local a_color = attributes.private('color')
local a_transparency = attributes.private('transparency')
local a_colorspace = attributes.private('colormodel')
-local a_background = attributes.private('background')
local register_color = colors.register
local attributes_list = attributes.list
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii
index b73bd2cb1..b6c35d923 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.09.15 19:53}
+\newcontextversion{2011.09.17 09:40}
%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 7dd01c0d4..9ee827ce1 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.09.15 19:53}
+\newcontextversion{2011.09.17 09:40}
%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 e58e270c6..781926a10 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 716a502de..ca5f0a5e2 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 2a07bf7e6..04eb70d4e 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.09.15 19:53}
+\edef\contextversion{2011.09.17 09:40}
%D For those who want to use this:
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index 76ccaceb5..5bb9eb360 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2011.09.15 19:53}
+\edef\contextversion{2011.09.17 09:40}
%D For those who want to use this:
diff --git a/tex/context/base/mult-aux.mkiv b/tex/context/base/mult-aux.mkiv
index 01c186589..0e71ad661 100644
--- a/tex/context/base/mult-aux.mkiv
+++ b/tex/context/base/mult-aux.mkiv
@@ -64,14 +64,15 @@
% todo: add (relaxed) postsetup and postdefine hooks, just after the everys
-\unexpanded\def\doinstallparameterhandler#1#2#3#4#5#6#7#8%
+\unexpanded\def\doinstallparameterhandler#1#2#3#4#5#6#7#8#9%
{\ifx#2\relax\let#2\empty\fi
\def#3##1{\csname#4{#1#2}{##1}\endcsname}%
\def#4##1##2{\ifcsname##1:##2\endcsname##1:##2\else\expandafter#5\csname##1:\s!parent\endcsname{##2}\fi}%
\def#5##1##2{\ifx##1\relax\s!empty\else#4{##1}{##2}\fi}% is {} needed around ##1 ?
\def#6##1##2{\csname#4{#1##1}{##2}\endcsname}%
\def#7##1{\detokenize\expandafter\expandafter\expandafter{\csname#1:##1\endcsname}}% always root
- \def#8##1{\csname\ifcsname#1#2:##1\endcsname#1#2:##1\else\s!empty\fi\endcsname}}
+ \def#8##1{\csname\ifcsname#1#2:##1\endcsname#1#2:##1\else\s!empty\fi\endcsname}%
+ \def#9##1{\csname\ifcsname#1:##1\endcsname#1:##1\else\s!empty\fi\endcsname}}
\unexpanded\def\installparameterhandler#1#2%
{\normalexpanded
@@ -83,7 +84,8 @@
\expandafter\noexpand\csname do#2parentparameter\endcsname
\expandafter\noexpand\csname named#2parameter\endcsname
\expandafter\noexpand\csname detokenized#2parameter\endcsname
- \expandafter\noexpand\csname strict#2parameter\endcsname}}
+ \expandafter\noexpand\csname strict#2parameter\endcsname
+ \expandafter\noexpand\csname root#2parameter\endcsname}}
\unexpanded\def\doinstallparameterhashhandler#1#2#3#4#5#6#7%
{\ifx#2\relax\let#2\empty\fi
@@ -325,4 +327,3 @@
{\writestatus\m!system{chain: [ \doshowparentchain{#1#2}]}}
\protect
-
diff --git a/tex/context/base/mult-de.mkii b/tex/context/base/mult-de.mkii
index 0f78b568d..6fcbc3463 100644
--- a/tex/context/base/mult-de.mkii
+++ b/tex/context/base/mult-de.mkii
@@ -499,6 +499,8 @@
\setinterfacevariable{unavailable}{nichtverfuegbar}
\setinterfacevariable{underbar}{unterstrichen}
\setinterfacevariable{underbars}{unterstreichen}
+\setinterfacevariable{understrike}{understrike}
+\setinterfacevariable{understrikes}{understrikes}
\setinterfacevariable{unit}{einheit}
\setinterfacevariable{units}{einheiten}
\setinterfacevariable{unknown}{unbekannt}
diff --git a/tex/context/base/mult-def.lua b/tex/context/base/mult-def.lua
index 1144dba22..28ebeb7ac 100644
--- a/tex/context/base/mult-def.lua
+++ b/tex/context/base/mult-def.lua
@@ -11271,6 +11271,12 @@ return {
["pe"]="میله‌ها‌رو",
["ro"]="supralinie",
},
+ ["understrike"]={
+ ["en"]="understrike",
+ },
+ ["understrikes"]={
+ ["en"]="understrikes",
+ },
["overstrike"]={
["cs"]="preskrtnuto",
["de"]="durchgestrichen",
diff --git a/tex/context/base/mult-en.mkii b/tex/context/base/mult-en.mkii
index f36227e25..a5e01fdb8 100644
--- a/tex/context/base/mult-en.mkii
+++ b/tex/context/base/mult-en.mkii
@@ -499,6 +499,8 @@
\setinterfacevariable{unavailable}{unavailable}
\setinterfacevariable{underbar}{underbar}
\setinterfacevariable{underbars}{underbars}
+\setinterfacevariable{understrike}{understrike}
+\setinterfacevariable{understrikes}{understrikes}
\setinterfacevariable{unit}{unit}
\setinterfacevariable{units}{units}
\setinterfacevariable{unknown}{unknown}
diff --git a/tex/context/base/mult-fr.mkii b/tex/context/base/mult-fr.mkii
index 2c583bbf3..89efb4bfb 100644
--- a/tex/context/base/mult-fr.mkii
+++ b/tex/context/base/mult-fr.mkii
@@ -499,6 +499,8 @@
\setinterfacevariable{unavailable}{indisponible}
\setinterfacevariable{underbar}{souslignetout}
\setinterfacevariable{underbars}{sousligne}
+\setinterfacevariable{understrike}{understrike}
+\setinterfacevariable{understrikes}{understrikes}
\setinterfacevariable{unit}{unite}
\setinterfacevariable{units}{unites}
\setinterfacevariable{unknown}{inconnu}
diff --git a/tex/context/base/mult-it.mkii b/tex/context/base/mult-it.mkii
index 2a971812f..4acba1e28 100644
--- a/tex/context/base/mult-it.mkii
+++ b/tex/context/base/mult-it.mkii
@@ -499,6 +499,8 @@
\setinterfacevariable{unavailable}{nondisponibile}
\setinterfacevariable{underbar}{sottolinea}
\setinterfacevariable{underbars}{sottolinee}
+\setinterfacevariable{understrike}{understrike}
+\setinterfacevariable{understrikes}{understrikes}
\setinterfacevariable{unit}{unita}
\setinterfacevariable{units}{unita}
\setinterfacevariable{unknown}{ignoto}
diff --git a/tex/context/base/mult-low.lua b/tex/context/base/mult-low.lua
index 051303349..91fb4baf8 100644
--- a/tex/context/base/mult-low.lua
+++ b/tex/context/base/mult-low.lua
@@ -39,9 +39,22 @@ return {
--
"uprotationangle", "rightrotatioangle", "downrotatioangle", "leftrotatioangle",
--
+ -- maybe a different class
+ --
+ "startmode", "stopmode", "startnotmode", "stopnotmode", "doifmode", "doifmodeelse", "doifnotmode",
+ "startenvironment", "stopenvironment", "environment",
+ "startcomponent", "stopcomponent", "component",
+ "startproduct", "stopproduct", "product",
+ "startproject", "stopproject", "project",
+ "starttext", "stoptext"
},
["helpers"] = {
--
+ "startsetups", "stopsetups",
+ "startxmlsetups", "stopxmlsetups",
+ "starttexdefinition", "stoptexdefinition",
+ "starttexcode", "stoptexcode",
+ --
"newcount", "newdimen", "newskip", "newmuskip", "newbox", "newtoks", "newread", "newwrite", "newmarks", "newinsert", "newattribute", "newif",
"newlanguage", "newfamily", "newfam", "newhelp", -- not used
--
@@ -77,7 +90,7 @@ return {
--
"tracingall", "tracingnone", "loggingall",
--
- "appendtoks", "prependtoks", "appendtotoks", "prependtotoks",
+ "appendtoks", "prependtoks", "appendtotoks", "prependtotoks", "to",
--
"endgraf", "empty", "null", "space", "obeyspaces", "obeylines", "normalspace",
--
@@ -100,11 +113,6 @@ return {
"processcommalist", "processcommacommand", "quitcommalist", "quitprevcommalist",
"processaction", "processallactions", "processfirstactioninset", "processallactionsinset",
--
- "startsetups", "stopsetups",
- "startxmlsetups", "stopxmlsetups",
- "starttexdefinition", "stoptexdefinition",
- "starttexcode", "stoptexcode",
- --
"unexpanded", "expanded", "startexpanded", "stopexpanded", "protected", "protect", "unprotect",
--
"firstofoneargument",
diff --git a/tex/context/base/mult-nl.mkii b/tex/context/base/mult-nl.mkii
index 3cae35da7..361c30db0 100644
--- a/tex/context/base/mult-nl.mkii
+++ b/tex/context/base/mult-nl.mkii
@@ -499,6 +499,8 @@
\setinterfacevariable{unavailable}{nietbeschikbaar}
\setinterfacevariable{underbar}{onderstreep}
\setinterfacevariable{underbars}{onderstrepen}
+\setinterfacevariable{understrike}{understrike}
+\setinterfacevariable{understrikes}{understrikes}
\setinterfacevariable{unit}{eenheid}
\setinterfacevariable{units}{eenheden}
\setinterfacevariable{unknown}{onbekend}
diff --git a/tex/context/base/mult-pe.mkii b/tex/context/base/mult-pe.mkii
index 43ad6b122..0ea8547af 100644
--- a/tex/context/base/mult-pe.mkii
+++ b/tex/context/base/mult-pe.mkii
@@ -499,6 +499,8 @@
\setinterfacevariable{unavailable}{غیرموجود}
\setinterfacevariable{underbar}{میله‌زیر}
\setinterfacevariable{underbars}{میله‌‌های‌زیر}
+\setinterfacevariable{understrike}{understrike}
+\setinterfacevariable{understrikes}{understrikes}
\setinterfacevariable{unit}{واحد}
\setinterfacevariable{units}{واحدها}
\setinterfacevariable{unknown}{ناشناس}
diff --git a/tex/context/base/mult-ro.mkii b/tex/context/base/mult-ro.mkii
index 50274c1d3..47a6cd401 100644
--- a/tex/context/base/mult-ro.mkii
+++ b/tex/context/base/mult-ro.mkii
@@ -499,6 +499,8 @@
\setinterfacevariable{unavailable}{nedisponibil}
\setinterfacevariable{underbar}{sublinie}
\setinterfacevariable{underbars}{sublinii}
+\setinterfacevariable{understrike}{understrike}
+\setinterfacevariable{understrikes}{understrikes}
\setinterfacevariable{unit}{unitate}
\setinterfacevariable{units}{unitati}
\setinterfacevariable{unknown}{necunoscut}
diff --git a/tex/context/base/node-bck.lua b/tex/context/base/node-bck.lua
index e1e4d4652..a0044eb78 100644
--- a/tex/context/base/node-bck.lua
+++ b/tex/context/base/node-bck.lua
@@ -31,7 +31,7 @@ local a_transparency = attributes.private('transparency')
local a_colorspace = attributes.private('colormodel')
local a_background = attributes.private('background')
-local function add_backgrounds(head) -- boxes, inline will be done too
+local function add_backgrounds(head)
local id = head.id
if id == vlist_code or id == hlist_code then
local current = head.list
diff --git a/tex/context/base/node-bck.mkiv b/tex/context/base/node-bck.mkiv
index f53584396..50f27aec6 100644
--- a/tex/context/base/node-bck.mkiv
+++ b/tex/context/base/node-bck.mkiv
@@ -20,7 +20,7 @@
\registerctxluafile{node-bck}{1.001}
-\def\doinitializeboxbackgrounds
+\def\doinitializeboxbackgrounds % will move to lua
{\ctxlua{nodes.tasks.enableaction("shipouts","nodes.handlers.backgrounds")}%
\glet\doinitializeboxbackgrounds\donothing}
diff --git a/tex/context/base/node-rul.mkiv b/tex/context/base/node-rul.mkiv
index cf94ac5e0..0978a650e 100644
--- a/tex/context/base/node-rul.mkiv
+++ b/tex/context/base/node-rul.mkiv
@@ -119,13 +119,15 @@
{\groupedcommand{\dodoruled{#1}}\relax}
\def\dodoruled
- {\ctxlua{nodes.rules.enable()}%
+ {\ctxlua{nodes.rules.enable()}% will be moved to lua
\glet\dodoruled\dodoruledindeed
\dodoruled}
-\def\dodoruledindeed#1% maybe reverse the 1000
- {\advance\csname\??on:#1:c\endcsname\plusone % local ?
+\def\dodoruledindeed#1% maybe reverse the 1000 (also maybe use more attributes instead of settings)
+ {\edef\currentbar{#1}%
+ \advance\csname\??on:#1:c\endcsname\plusone % local ?
\scratchcounter\csname\??on:#1:c\endcsname
+ \dosetbarattributes\c!foregroundstyle\c!foregroundcolor
\attribute\ruledattribute\numexpr
1000*\scratchcounter
+\csname\??on#1\ifcsname\??on#1:\number\scratchcounter\s!parent\endcsname:\number\scratchcounter\fi:a\endcsname
@@ -158,6 +160,7 @@
\c!offset=0, % upwards, replaces: topoffset bottomoffset
\c!dy=0,
\c!max=3,
+ \c!style=,
\c!rulethickness=.1,
\c!order=\v!foreground,
\c!unit=ex, % so now we are relative
@@ -166,13 +169,23 @@
% \definebar[touchbar] [\c!method=0,\c!dy=-0.4,\c!offset=-0.0]
% \definebar[touchbars] [touchbar] [\c!continue=\v!yes]
-\definebar[\v!overstrike] [\c!method=0,\c!dy= 0.4,\c!offset= 0.5,\c!continue=\v!yes]
+\definebar[\v!overstrike] [\c!method=0,\c!dy=0.4,\c!offset=0.5,\c!continue=\v!yes]
\definebar[\v!underbar] [\c!method=1,\c!dy=-0.4,\c!offset=-0.3,\c!continue=\v!yes]
-\definebar[\v!overbar] [\c!method=1,\c!dy= 0.4,\c!offset= 1.8,\c!continue=\v!yes]
+\definebar[\v!overbar] [\c!method=1,\c!dy=0.4,\c!offset=1.8,\c!continue=\v!yes]
+
+\definebar
+ [\v!understrike]
+ [\c!method=0,
+ \c!offset=1.375,
+ \c!rulethickness=2.5,
+ \c!continue=\v!yes,
+ \c!order=\v!background,
+ \c!color=lightgray]
\definebar[\v!overstrikes] [\v!overstrike] [\c!continue=\v!no]
\definebar[\v!underbars] [\v!underbar] [\c!continue=\v!no]
\definebar[\v!overbars] [\v!overbar] [\c!continue=\v!no]
+\definebar[\v!understrikes][\v!understrike][\c!continue=\v!no]
% we want these always so ...
diff --git a/tex/context/base/pack-box.mkiv b/tex/context/base/pack-box.mkiv
index 7c755ee7f..9fab9c434 100644
--- a/tex/context/base/pack-box.mkiv
+++ b/tex/context/base/pack-box.mkiv
@@ -585,7 +585,7 @@
{\dowithnextbox % we could use a local setlayer command (no doif..empty) which also saves a nextbox
{\setlayer[#1][\c!width=\nextboxwd,\c!height=\nextboxht,#2,\c!offset=\!!zeropoint]{\flushnextbox}}%
% \hbox\framed[\c!location=\v!normal,#2]}% could be a fast one (no #2,\c!offset=\defaultframeoffset)
- \hbox\localframedwithsettings[][\c!location=\v!normal,#2]}%
+ \hbox\normalframedwithsettings[\c!location=\v!normal,#2]}% fast call (no arg check)
\def\setlayertext
{\dotripleempty\dosetlayertext}
diff --git a/tex/context/base/pack-rul.mkiv b/tex/context/base/pack-rul.mkiv
index face31209..ebadf90e0 100644
--- a/tex/context/base/pack-rul.mkiv
+++ b/tex/context/base/pack-rul.mkiv
@@ -625,6 +625,12 @@
\unexpanded\def\setupframed
{\dodoubleempty\dosetupframed}
+\unexpanded\def\normalframedwithsettings
+ {\bgroup
+ \advance\framednesting\plusone
+ \expandafter\let\csname\??ol:\the\framednesting\s!parent\endcsname\??ol
+ \dolocalframed[\??ol:\the\framednesting]}
+
% we can consider setting the parent of the regular framed to
% something else in the otr so that we isolate it there
diff --git a/tex/context/base/page-flt.mkiv b/tex/context/base/page-flt.mkiv
index e182c1695..504e2b032 100644
--- a/tex/context/base/page-flt.mkiv
+++ b/tex/context/base/page-flt.mkiv
@@ -143,9 +143,9 @@
\exitloop
\else
\def\currentfloat{#1}%
- \blank[\@@bkspacebefore]%
+ \blank[\rootfloatparameter\c!spacebefore]%
\box\floatbox
- \blank[\@@bkspaceafter]
+ \blank[\rootfloatparameter\c!spaceafter]
\fi}}
%D The following code is in transition as we don't want to break the
diff --git a/tex/context/base/page-mul.mkiv b/tex/context/base/page-mul.mkiv
index 6589e63bb..46fc28189 100644
--- a/tex/context/base/page-mul.mkiv
+++ b/tex/context/base/page-mul.mkiv
@@ -1341,7 +1341,7 @@
\getcolumnstatus\column\count255\total\dimen0\goal\dimen2\\%
\dofloatsgetinfo\s!text
\setbox\scratchbox\vbox % tricky met objecten ?
- {\blank[\@@bkspacebefore]
+ {\blank[\rootfloatparameter\c!spacebefore]
\snaptogrid\vbox{\vskip\floatheight}}% copy?
\advance\dimen0\dimexpr\ht\scratchbox+2\openlineheight+.5\lineheight\relax\relax % needed because goal a bit higher
\ifdim\dimen0>\dimen2
@@ -1374,7 +1374,7 @@
% dropped ?
\else
\setbox2\vbox
- {\blank[\@@bkspacebefore]
+ {\blank[\rootfloatparameter\c!spacebefore]
\snaptogrid\vbox{\vskip\floatheight}}%
\advance\dimen0 \ht2
\ifdim\dimen0>\dimen2
@@ -1385,7 +1385,7 @@
\global\setbox\currenttopcolumnbox\vbox
{\snaptogrid\vbox{\box\floatbox}
\whitespace % nodig ?
- \blank[\@@bkspaceafter]}%
+ \blank[\rootfloatparameter\c!spaceafter]}%
\dimen4=\htdp\currenttopcolumnbox
\global\advance\vsize -\dimen4
\advance\dimen4 -\pagegoal
@@ -1402,12 +1402,12 @@
\par
\ifdim\prevdepth<\zeropoint \else % anders bovenaan kolom witruimte
\nobreak
- \blank[\@@bkspacebefore]
+ \blank[\rootfloatparameter\c!spacebefore]
\nobreak
\fi
\dofloatsflush\s!text{1}%
\flushfloatbox
- \blank[\@@bkspaceafter]
+ \blank[\rootfloatparameter\c!spaceafter]
\fi
\fi
\fi
@@ -1444,7 +1444,7 @@
{\copy\currenttopcolumnbox
\hbox{\vphantom{\vskip\floatheight}}}% known from previous
\whitespace % nodig ?
- \blank[\@@bkspaceafter]}%
+ \blank[\rootfloatparameter\c!spaceafter]}%
\else
\dofloatsgetinfo\s!text
\ifdim\floatwidth>\hsize
@@ -1462,7 +1462,7 @@
\global\setbox\floatbox\hbox to \finalcolumntextwidth{\hss\box\floatbox\hss}%
\fi % otherwise the graphic may disappear
\global\setbox\floatbox\hbox to \dimen0
- {\processaction[\@@bklocation] % how easy to forget
+ {\processaction[\rootfloatparameter\c!location] % how easy to forget
[ \v!left=>\box\floatbox\hss,
\v!right=>\hss\box\floatbox,
\s!default=>\hss\box\floatbox\hss,
@@ -1482,7 +1482,7 @@
{\box\currenttopcolumnbox % was copy
\box\floatbox}
\whitespace % nodig ?
- \blank[\@@bkspaceafter]}%
+ \blank[\rootfloatparameter\c!spaceafter]}%
\fi
\dimen6\htdp\currenttopcolumnbox
\fi
@@ -1511,9 +1511,9 @@
\forgetall
% no check for width
\dogetfloat
- \blank[\@@bkspacebefore]
+ \blank[\rootfloatparameter\c!spacebefore]
\snaptogrid\vbox{\copy\floatbox}
- \blank[\@@bkspaceafter]
+ \blank[\rootfloatparameter\c!spaceafter]
\egroup
\else
\exitloop
diff --git a/tex/context/base/page-one.mkiv b/tex/context/base/page-one.mkiv
index e1e47abcd..ec22dca72 100644
--- a/tex/context/base/page-one.mkiv
+++ b/tex/context/base/page-one.mkiv
@@ -190,11 +190,11 @@
\noffloatinserts\zerocount
\let\totaltopinserted\!!zeropoint
\OTRONEdodosettopinserts
- \ifnum\@@bknbottom=\zerocount
- \ifnum\@@bknlines>\zerocount
+ \ifnum\rootfloatparameter\c!nbottom=\zerocount
+ \ifnum\rootfloatparameter\c!nlines>\zerocount
\ifdim\totaltopinserted>\zeropoint\relax
- \ifdim\dimexpr\@@bknlines\lineheight+\totaltopinserted\relax>\textheight
- \showmessage\m!floatblocks8\@@bknlines
+ \ifdim\dimexpr\rootfloatparameter\c!nlines\lineheight+\totaltopinserted\relax>\textheight
+ \showmessage\m!floatblocks8\rootfloatparameter\c!nlines
\vfilll\eject
\fi
\fi
@@ -221,11 +221,11 @@
\kern-\lineskip\par
\prevdepth\maxdimen
\else
- %\blank[-\@@bkspaceafter,\@@bkspacebefore]% inserts can't look back
+ %\blank[-\rootfloatparameter\c!spaceafter,\rootfloatparameter\c!spacebefore]% inserts can't look back
\betweenfloatblanko
\fi
\flushfloatbox
- \blank[\@@bkspaceafter]}%
+ \blank[\rootfloatparameter\c!spaceafter]}%
\ifsomefloatwaiting
\advance\noffloatinserts \plusone
\else
@@ -261,7 +261,7 @@
\ifdim\botinserted<\pagegoal\relax
\insert\botins
{\forgetall
- \blank[\@@bkspacebefore]%
+ \blank[\rootfloatparameter\c!spacebefore]%
\flushfloatbox}%
\ifsomefloatwaiting
\advance\noffloatinserts \plusone
@@ -289,7 +289,7 @@
\OTRONEdosettopinserts
\OTRONEdosetbotinserts
\ifsomefloatwaiting
- \doif\@@bkcache\v!no\doflushfloats
+ \doif\rootfloatparameter\c!cache\v!no\doflushfloats
\fi
\fi}
@@ -520,18 +520,18 @@
\topskipcorrection % [xx] new: see icare topbleed
\kern-\lineskip\par\prevdepth\maxdimen
\else
- %\blank[-\@@bkspaceafter,\@@bkspacebefore]% inserts can't look back
+ %\blank[-\rootfloatparameter\c!spaceafter,\rootfloatparameter\c!spacebefore]% inserts can't look back
\betweenfloatblanko
\fi
\flushfloatbox
- \blank[\@@bkspaceafter]}%
+ \blank[\rootfloatparameter\c!spaceafter]}%
\doinsertfloatinfo}
\def\OTRONEsomebotsfloat[#1]%
{\global\advance\botinserted\dimexpr\ht\floatbox+\dp\floatbox+\floattopskip\relax
\insert\botins
{\forgetall
- \blank[\@@bkspacebefore]%
+ \blank[\rootfloatparameter\c!spacebefore]%
\flushfloatbox}%
%\global\nofloatpermittedtrue
\doinsertfloatinfo}
diff --git a/tex/context/base/page-set.mkiv b/tex/context/base/page-set.mkiv
index 3c0993db4..7ef196d53 100644
--- a/tex/context/base/page-set.mkiv
+++ b/tex/context/base/page-set.mkiv
@@ -2022,14 +2022,14 @@
\noffloatinserts\zerocount
\let\totaltopinserted\!!zeropoint
\OTRSETdodosettopinserts
- \ifnum\@@bknbottom=\zerocount
- \ifnum\@@bknlines>\zerocount
+ \ifnum\rootfloatparameter\c!nbottom=\zerocount
+ \ifnum\rootfloatparameter\c!nlines>\zerocount
\ifdim\totaltopinserted>\zeropoint\relax
\dimen0\lineheight
- \dimen0=\@@bknlines\dimen0
+ \dimen0=\rootfloatparameter\c!nlines\dimen0
\advance\dimen0 \totaltopinserted\relax
\ifdim\dimen0>\textheight % \vsize %%%%%%%%% \textheight
- \showmessage\m!floatblocks8{\@@bknlines}%
+ \showmessage\m!floatblocks8{\rootfloatparameter\c!nlines}%
\vfilll\eject
\fi
\fi
@@ -2056,7 +2056,7 @@
\betweenfloatblanko % inserts can't look back
\fi
\flushfloatbox
- \blank[\@@bkspaceafter]}%
+ \blank[\rootfloatparameter\c!spaceafter]}%
\global\advance\topinserted \ht\scratchbox\relax
\ifdim\topinserted>\vsize % was \textheight\relax
\OTRSETresavebox\floatbox
@@ -2098,7 +2098,7 @@
\ifdim\botinserted<\pagegoal\relax
\insert\botins
{\forgetall
- \blank[\@@bkspacebefore]%
+ \blank[\rootfloatparameter\c!spacebefore]%
\flushfloatbox}%
\ifsomefloatwaiting
\advance\noffloatinserts \plusone
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 37e8ae081..c2bd7d806 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 b150b502d..26089e691 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/strc-flt.mkiv b/tex/context/base/strc-flt.mkiv
index fbedab659..7511a2a79 100644
--- a/tex/context/base/strc-flt.mkiv
+++ b/tex/context/base/strc-flt.mkiv
@@ -24,68 +24,17 @@
\unexpanded\def\placefloats{\doflushfloats} % keep this one
-\let\currentfloat\empty
+\installframedcommandhandler \??fl {float} \??fl
+\installframedcommandhandler \??kj {floatcaption} \??kj
-\def\letfloatparameter #1{\expandafter\let\csname\??fl\currentfloat#1\endcsname}
-
-\def\floatparameter #1{\csname\dofloatparameter{\??fl\currentfloat}#1\endcsname}
-\def\floatsharedparameter#1{\csname \??fl #1\endcsname}
-\def\floatparameterhash #1{\dofloatparameterhash {\??fl\currentfloat}#1}
-
-\def\dofloatparameter #1#2{\ifcsname#1#2\endcsname#1#2\else\expandafter\dofloatparentparameter \csname#1\s!parent\endcsname#2\fi}
-\def\dofloatparameterhash#1#2{\ifcsname#1#2\endcsname #1\else\expandafter\dofloatparentparameterhash\csname#1\s!parent\endcsname#2\fi}
-
-\def\dofloatparentparameter #1#2{\ifx#1\relax\s!empty\else\dofloatparameter #1#2\fi}
-\def\dofloatparentparameterhash#1#2{\ifx#1\relax \else\dofloatparameterhash#1#2\fi}
-
-\def\detokenizedfloatparameter#1{\detokenize\expandafter\expandafter\expandafter{\csname\??fl\currentfloat#1\endcsname}}
-
-\def\dosetfloatattributes#1#2% style color
- {\edef\fontattributehash {\floatparameterhash#1}%
- \edef\colorattributehash{\floatparameterhash#2}%
- \ifx\fontattributehash \empty\else\dosetfontattribute \fontattributehash #1\fi
- \ifx\colorattributehash\empty\else\dosetcolorattribute\colorattributehash#2\fi}
-
-\def\floatcaptionparameter #1{\csname\dofloatcaptionparameter{\??kj\currentfloat}#1\endcsname}
-\def\floatcaptionparameterhash#1{\dofloatcaptionparameterhash {\??kj\currentfloat}#1}
-
-\def\dofloatcaptionparameter #1#2{\ifcsname#1#2\endcsname#1#2\else\expandafter\dofloatcaptionparentparameter \csname#1\s!parent\endcsname#2\fi}
-\def\dofloatcaptionparameterhash#1#2{\ifcsname#1#2\endcsname #1\else\expandafter\dofloatcaptionparentparameterhash\csname#1\s!parent\endcsname#2\fi}
-
-\def\dofloatcaptionparentparameter #1#2{\ifx#1\relax\s!empty\else\dofloatcaptionparameter #1#2\fi}
-\def\dofloatcaptionparentparameterhash#1#2{\ifx#1\relax \else\dofloatcaptionparameterhash#1#2\fi}
-
-\def\detokenizedcaptionparameter#1{\detokenize\expandafter\expandafter\expandafter{\csname\??kj\currentfloat#1\endcsname}}
-
-\def\dosetfloatcaptionattributes#1#2% style color
- {\edef\fontattributehash {\floatcaptionparameterhash#1}%
- \edef\colorattributehash{\floatcaptionparameterhash#2}%
- \ifx\fontattributehash \empty\else\dosetfontattribute \fontattributehash #1\fi
- \ifx\colorattributehash\empty\else\dosetcolorattribute\colorattributehash#2\fi}
+\let\setupfloats \setupfloat
+\let\setupcaption \setupfloatcaption
+\let\setupcaptions\setupfloatcaption
\def\dohandlenextfloatindent
{\checknextindentation[\floatparameter\c!indentnext]%
\dorechecknextindentation}
-%D The two shared (parent) definitions:
-
-% todo: everysetupfloat everysetupcaption for all floats
-
-\unexpanded\def\setupfloats {\dosingleargument\dosetupfloats} % was \??bk
-\unexpanded\def\setupcaptions{\dosingleargument\dosetupcaptions}
-
-\let\alldefinedfloats\empty
-
-\def\doprocessallfloats#1%
- {\def\doprocesssomefloat##1{\def\currentfloat{##1}#1}%
- \processcommacommand[\alldefinedfloats]\doprocesssomefloat}
-
-\def\dosetupfloats [#1]{\getparameters[\??fl][#1]\doprocessallfloats{\the\everysetupfloat}}
-\def\dosetupcaptions[#1]{\getparameters[\??kj][#1]\doprocessallfloats{\the\everysetupcaption}}
-
-% \def\dosetupfloats [#1]{\getparameters[\??fl][#1]}
-% \def\dosetupcaptions[#1]{\getparameters[\??kj][#1]}
-
\setupcaptions
[\c!location=\v!bottom,
\c!grid=,
@@ -137,20 +86,20 @@
\c!strut=\v!no,
\c!radius=.5\bodyfontsize,
\c!corner=\v!rectangular,
- \c!background=,
- \c!backgroundcolor=,
+ %\c!background=,
+ %\c!backgroundcolor=,
\c!backgroundoffset=\!!zeropoint,
- \c!topframe=,
- \c!bottomframe=,
- \c!leftframe=,
- \c!rightframe=,
+ %\c!topframe=,
+ %\c!bottomframe=,
+ %\c!leftframe=,
+ %\c!rightframe=,
\c!frameoffset=\!!zeropoint,
- \c!before=,
- \c!after=,
+ %\c!before=,
+ %\c!after=,
\c!spacebefore=\v!big,
\c!spaceafter=\v!big,
- \c!sidespacebefore=\floatsharedparameter\c!spacebefore,
- \c!sidespaceafter=\floatsharedparameter\c!spaceafter,
+ \c!sidespacebefore=\rootfloatparameter\c!spacebefore,
+ \c!sidespaceafter=\rootfloatparameter\c!spaceafter,
\c!sidealign=\v!normal,
\c!textmethod=\ifgridsnapping2\else0\fi, % 0=raw 1=safe (.99pg) 2=tight (-1pt) % THIS WILL CHANGE
\c!sidemethod=\ifgridsnapping2\else1\fi, % 0=raw 1=safe (.99pg) 2=tight (-1pt) % THIS WILL CHANGE
@@ -167,71 +116,26 @@
\c!ntop=2,
\c!nbottom=0,
\c!nlines=4,
- \c!local=,
- \c!bottombefore=, % e.g. \vfill
- \c!bottomafter=,
- \c!default=, % default location
+ %\c!local=,
+ %\c!bottombefore=, % e.g. \vfill
+ %\c!bottomafter=,
+ %\c!default=, % default location
\c!numbering=\v!yes]
-\def\@@bknumbering {\floatsharedparameter\c!numbering } % global one
-\def\@@bkspaceafter {\floatsharedparameter\c!spaceafter } % global one
-\def\@@bkspacebefore{\floatsharedparameter\c!spacebefore} % global one
-\def\@@bknbottom {\floatsharedparameter\c!nbottom } % global one
-\def\@@bkntop {\floatsharedparameter\c!ntop } % global one
-\def\@@bknlines {\floatsharedparameter\c!nlines } % global one
-\def\@@bkmargin {\floatsharedparameter\c!margin } % global one
-\def\@@bkcache {\floatsharedparameter\c!cache } % global one
-\def\@@bklocation {\floatsharedparameter\c!location }
-
-% float
-%
-% [%\c!width=8\lineheight, % 15\bodyfontsize,
-% %\c!height=6\lineheight, % 10\bodyfontsize,
-% \c!offset=\v!overlay,
-% \c!width=\v!fit,
-% \c!height=\v!fit,
-% \c!minwidth=,
-% \c!maxwidth=,
-% \c!maxheight=,
-% \c!criterium=,
-% % inherited
-% \c!pageboundaries=,
-% \c!default=]%
-
-% number
-%
-% [\c!text=#1,
-% \c!location=\v!intext,
-% \c!way=\floatcaptionparameter\c!way,
-% \c!blockway=\floatcaptionparameter\c!blockway,
-% \c!sectionnumber=\floatcaptionparameter\c!sectionnumber,
-% \c!conversion=\floatcaptionparameter\c!conversion]%
-
%D Individial settings:
-\unexpanded\def\setupfloat {\dodoubleargument\dosetupfloat}
-\unexpanded\def\setupcaption{\dodoubleargument\dosetupcaption}
-
-\newtoks\everysetupfloat
-\newtoks\everysetupcaption
-
-\def\dosetupfloat[#1][#2]%
- {\def\docommand##1{\getparameters[\??fl##1][#2]\def\currentfloat{##1}\the\everysetupfloat}%
- \processcommalist[#1]\docommand}
-
-\def\dosetupcaption[#1][#2]%
- {\def\docommand##1{\getparameters[\??kj##1][#2]\def\currentfloat{##1}\the\everysetupcaption}%
- \processcommalist[#1]\docommand}
-
-\presetstructurecountersetup\setupcaptions\sharedstructurecounterparameter
+\presetstructurecountersetup\setupcaption\sharedstructurecounterparameter
\appendtoks
+ \let\currenfloat\currentcaption
\dostructurecountersetup\currentfloat\floatcaptionparameter
\docheckstructurecountersetup\currentfloat
-\to \everysetupcaption
+\to \everysetupfloatcaption
%D Definitions:
+\let\saveddefinefloat\definefloat
+
\unexpanded\def\definefloat
{\dotripleempty\dodefinefloat}
@@ -244,28 +148,22 @@
\dododefinefloat[#1][#1]%
\fi\fi}
-\presetlocalframed[\??fl]
-
\def\dododefinefloat[#1][#2]%
- {\inheritlocalframed[\??fl#1][\??fl]%
+ {\definefloatcaption[#1]%
\definestructurecounter[#1]%
- \addtocommalist{#1}\alldefinedfloats
- \setupfloat[#1][\s!parent=\??fl]%
- \setupcaption[#1][\s!parent=\??kj]%
\definelist[#1]%
\presetlabeltext[#1=\Word{#1}~]%
\presetheadtext[#2=\Word{#2}]%
- \dodefinefloatcommands[#1][#2]%
- }% \newnodelocation{\v!float\@@thenumber{#1}}}
+ \saveddefinefloat[#1]%
+ \dodefinefloatcommands[#1][#2]}
\def\redodefinefloat[#1][#2][#3]%
- {\inheritlocalframed[\??fl#1][\??fl#3]%
- \setupfloat[#1][\s!parent=\??fl#3]%
- \setupcaption[#1][\s!parent=\??kj#3]%
+ {\definefloatcaption[#1][#3]%
\definestructurecounter[#1][#3]%
\definelist[#1][#3]%
\presetlabeltext[#1=\Word{#3}~]%
\presetheadtext[#2=\Word{#2}]%
+ \saveddefinefloat[#1][#3]%
\dodefinefloatcommands[#1][#2]}
\def\dodefinefloatcommands[#1][#2]%
@@ -287,10 +185,10 @@
\def\doemptyfloatblock#1%
{\framed
[\c!frame=\v!on,
- \c!width=\floatsharedparameter\c!width,
- \c!height=\floatsharedparameter\c!height,
+ \c!width=\rootfloatparameter\c!width,
+ \c!height=\rootfloatparameter\c!height,
\c!location=\v!normal,
- \c!offset=\floatsharedparameter\c!offset]%
+ \c!offset=\rootfloatparameter\c!offset]%
{\getmessage\m!floatblocks{12}\empty}}
%D Data. We can generalize this to lists.
@@ -299,7 +197,6 @@
\newif\ifnofloatnumber
\newif\ifemptyfloatcaption
-\def\getfloatparameters {\getparameters[\??fl\currentfloat]}
\def\getcaptionparameters{\getparameters[\??kj\currentfloat]}
\installstructurelistprocessor{float}{\usestructurelistprocessor{number+title}}
@@ -312,18 +209,6 @@
\def\thecurrentfloatnumber
{\ifnofloatcaption \else \ifnofloatnumber \else
\ifx\currentfloatnumber\relax\else
-% \dostarttagged\t!floatlabel\empty
-% \labeltexts\currentfloat
-% {\dostoptagged
-% \dostarttagged\t!floatnumber\empty
-% \ctxlua{structures.lists.savedprefixednumber("\currentfloat",\currentfloatnumber)}%
-% \thecurrentfloatnumbersuffix
-% \dostoptagged
-% \dostarttagged\t!floatlabel\empty}%
-% \dostoptagged
-% \taggedlabeltexts\currentfloat\currentfloat
-% {\ctxlua{structures.lists.savedprefixednumber("\currentfloat",\currentfloatnumber)}%
-% \thecurrentfloatnumbersuffix}%
\namedtaggedlabeltexts
\t!floatlabel \currentfloat
\t!floatnumber\currentfloat
@@ -525,7 +410,7 @@
\fi}
\def\tracefloatnumber#1%
- {\doifnot{\floatsharedparameter\c!numbering}\v!nocheck{\tagnodelocation{\v!float\@@thenumber{#1}}}}
+ {\doifnot{\rootfloatparameter\c!numbering}\v!nocheck{\tagnodelocation{\v!float\@@thenumber{#1}}}}
\newconditional\retainfloatnumber
@@ -533,7 +418,7 @@
{\xdef\floatcaptionnumber{#1}%
\doifelsenodelocation{\v!float\@@thenumber{#1}}
\donothing {\nodelocationmode\zerocount}%
- \doifelse{\floatsharedparameter\c!numbering}\v!nocheck
+ \doifelse{\rootfloatparameter\c!numbering}\v!nocheck
{\incrementnumber[#1]%
\makesectionnumber[#1]%
\ifconditional\retainfloatnumber\decrementnumber[#1]\fi}
@@ -595,6 +480,7 @@
\unexpanded\def\docomplexplacefloat[#1][#2]% [#3]#4%
{\edef\currentfloat{#1}%
+ \let\currentfloatcaption\currentfloat
\doifnothing\currentfloat{\let\currentfloat\v!figure}% hack
\doifelsenothing{#2}
{\edef\floatlocation{\floatparameter\c!default}}
@@ -823,7 +709,7 @@
{float}%
\getcaptionparameters
\floatcaptionparameter
- \detokenizedcaptionparameter
+ \detokenizedfloatcaptionparameter
\relax
\relax
\relax
@@ -908,14 +794,14 @@
\global\sidefloatextrashift\zeropoint
\doifassignmentelse{#1}%
{\bgroup
- \getparameters[\??fl][\c!x=\zeropoint,\c!y=\zeropoint,#1]%
+ \getparameters[\??fl\??fl][\c!x=\zeropoint,\c!y=\zeropoint,#1]%
\ifgridsnapping
\getnoflines\@@fly
\global\sidefloatdownshift\noflines\lineheight
\else
- \global\sidefloatdownshift\@@fly
+ \global\sidefloatdownshift\@@fl@@fly
\fi
- \global\sidefloatextrashift\@@flx
+ \global\sidefloatextrashift\@@fl@@flx
\egroup}
{\movedownsidefloat[#1]}}
@@ -1026,8 +912,16 @@
\flushsidefloats % hoort eigenlijk niet hier
\docomplexplacefloat[#1][\v!text,#2,\v!left][#3]}
+\def\docomplexreserveblock#1#2%
+ {\begingroup
+ \edef\currentfloat{#1}%
+ \let\currentfloatcaption\currentfloat
+ \setupcurrentfloat[#2]%
+ \inheritedfloatframed{#1}%
+ \endgroup}
+
\long\def\docomplexreserveblock[#1][#2][#3][#4]#5%
- {\getvalue{\e!place#1}[#3][#4]{#5}{\localframed[\??fl#1][#2]{#1}}}
+ {\getvalue{\e!place#1}[#3][#4]{#5}{\docomplexreserveblock{#1}{#2}{#1}}}
\def\docomplexstartreservetextblock[#1][#2][#3][#4]%
{\flushsidefloats % hoort eigenlijk niet hier
@@ -1070,38 +964,38 @@
\global#1\ht\scratchbox}}}
\def\calculatefloatskips
- {{\docalculatefloatskip\floattopskip{\floatsharedparameter\c!spacebefore}%
- \docalculatefloatskip\floatbottomskip{\floatsharedparameter\c!spaceafter}%
- \docalculatefloatskip\sidefloattopskip{\floatsharedparameter\c!sidespacebefore}%
- \docalculatefloatskip\sidefloatbottomskip{\floatsharedparameter\c!sidespaceafter}%
+ {{\docalculatefloatskip\floattopskip{\rootfloatparameter\c!spacebefore}%
+ \docalculatefloatskip\floatbottomskip{\rootfloatparameter\c!spaceafter}%
+ \docalculatefloatskip\sidefloattopskip{\rootfloatparameter\c!sidespacebefore}%
+ \docalculatefloatskip\sidefloatbottomskip{\rootfloatparameter\c!sidespaceafter}%
\gdef\sidefloattopoffset{\openstrutdepth}% was \def
- \global\floatsideskip\floatsharedparameter\c!margin
+ \global\floatsideskip\rootfloatparameter\c!margin
\global\sidefloatleftshift\floatparameter\c!leftmargindistance
\global\sidefloatrightshift\floatparameter\c!rightmargindistance
- \global\noftopfloats\floatsharedparameter\c!ntop\relax
- \global\nofbotfloats\floatsharedparameter\c!nbottom\relax}}
+ \global\noftopfloats\rootfloatparameter\c!ntop\relax
+ \global\nofbotfloats\rootfloatparameter\c!nbottom\relax}}
% beter de laatste skip buiten de \insert uitvoeren,
% bovendien bij volle flush onder baseline.
% \def\betweenfloatblanko% assumes that spaceafter is present
% {\bgroup
-% \setbox0\vbox{\strut\blank[\floatsharedparameter\c!spacebefore]\strut}%
-% \setbox2\vbox{\strut\blank[\floatsharedparameter\c!spaceafter]\strut}%
+% \setbox0\vbox{\strut\blank[\rootfloatparameter\c!spacebefore]\strut}%
+% \setbox2\vbox{\strut\blank[\rootfloatparameter\c!spaceafter]\strut}%
% \ifdim\ht0>\ht2
-% \blank[-\floatsharedparameter\c!spaceafter,\floatsharedparameter\c!spacebefore]%
+% \blank[-\rootfloatparameter\c!spaceafter,\rootfloatparameter\c!spacebefore]%
% \fi
% \egroup}
\def\betweenfloatblanko% assumes that spaceafter is present
- {\blank[\floatsharedparameter\c!spacebefore]} % or v!back,....
+ {\blank[\rootfloatparameter\c!spacebefore]} % or v!back,....
\def\doplacefloatbox
{%\forgetall % NO
\whitespace
- \blank[\floatsharedparameter\c!spacebefore]
+ \blank[\rootfloatparameter\c!spacebefore]
\flushfloatbox
- \blank[\floatsharedparameter\c!spaceafter]}
+ \blank[\rootfloatparameter\c!spaceafter]}
\ifdefined\someherefloat\else \let\someherefloat\doplacefloatbox \fi
\ifdefined\someslotfloat\else \let\someslotfloat\doplacefloatbox \fi
@@ -1123,7 +1017,7 @@
\global\floatwidth\wd\floatbox
\global\floatheight\ht\floatbox % forget about the depth
\global\advance\floattextwidth -\floatwidth
- \global\advance\floattextwidth -\floatsharedparameter\c!margin\relax % was \tfskipsize
+ \global\advance\floattextwidth -\rootfloatparameter\c!margin\relax % was \tfskipsize
\doifinsetelse\v!tall{#1}
{\floattextheight\pagegoal
\advance\floattextheight -\pagetotal
@@ -1184,12 +1078,12 @@
\box\floattext}}%
\baselinecorrection
\whitespace
- \blank[\floatsharedparameter\c!spacebefore]%
+ \blank[\rootfloatparameter\c!spacebefore]%
\doifnotinset\v!tall{#1}%
{\dp\floatbox\openstrutdepth}% dp\strutbox}% % toegevoegd
\box\floatbox
\dostoptagged
- \blank[\floatsharedparameter\c!spaceafter]%
+ \blank[\rootfloatparameter\c!spaceafter]%
\endgroup % **
% \dostoptagged
\doinsertfloatinfo}
@@ -1252,10 +1146,10 @@
{\placesomeherefloat[#1]}}}}
\def\borderedfloatbox
- {\localframed
- [\??fl\currentfloat]
- [\c!location=\v!normal,\c!width=\wd\floatbox,\c!height=\htdp\floatbox]
- {\box\floatbox}}
+ {\begingroup
+ \setupcurrentfloat[\c!location=\v!normal,\c!width=\v!fit,\c!height=\v!fit]%
+ \inheritedfloatframed{\box\floatbox}%
+ \endgroup}
\newbox\tempfloatbox
diff --git a/tex/context/base/strc-num.mkiv b/tex/context/base/strc-num.mkiv
index 675fb2127..2fd8d3e72 100644
--- a/tex/context/base/strc-num.mkiv
+++ b/tex/context/base/strc-num.mkiv
@@ -171,13 +171,13 @@
\unexpanded\def\incrementedstructurecounter[#1]{\ctxcommand{incrementedstructurecounter("\@@thestructurecounter{#1}",1, 1)}}
\unexpanded\def\decrementedstructurecounter[#1]{\ctxcommand{incrementedstructurecounter("\@@thestructurecounter{#1}",1,-1)}}
-\unexpanded\def\setsubstructurecounter {\dodoubleargument\dosetsubstructurecounter}
-\unexpanded\def\setsubstructurecounterown {\dodoubleargument\dosetsubstructurecounterown}
-\unexpanded\def\resetsubstructurecounter {\dodoubleargument\doresetsubstructurecounter}
-\unexpanded\def\restartsubstructurecounter {\dodoubleargument\dorestartsubstructurecounter}
-\unexpanded\def\incrementsubstructurecounter {\dodoubleargument\doincrementsubstructurecounter}
-\unexpanded\def\decrementsubstructurecounter {\dodoubleargument\dodecrementsubstructurecounter}
- \def\rawsubstructurecounter {\dodoubleargument\dorawsubstructurecounter}
+\unexpanded\def\setsubstructurecounter {\dodoubleargument\dosetsubstructurecounter}
+\unexpanded\def\setsubstructurecounterown {\dodoubleargument\dosetsubstructurecounterown}
+\unexpanded\def\resetsubstructurecounter {\dodoubleargument\doresetsubstructurecounter}
+\unexpanded\def\restartsubstructurecounter {\dodoubleargument\dorestartsubstructurecounter}
+\unexpanded\def\incrementsubstructurecounter{\dodoubleargument\doincrementsubstructurecounter}
+\unexpanded\def\decrementsubstructurecounter{\dodoubleargument\dodecrementsubstructurecounter}
+ \def\rawsubstructurecounter {\dodoubleargument\dorawsubstructurecounter}
\def\dosetsubstructurecounter [#1][#2]#3{\ctxcommand{setstructurecounter ("\@@thestructurecounter{#1}",#2,\number#3)}}
\def\dosetsubstructurecounterown [#1][#2]#3{\ctxcommand{setownstructurecounter ("\@@thestructurecounter{#1}",#2,"#3")}}
diff --git a/tex/context/base/strc-sbe.mkiv b/tex/context/base/strc-sbe.mkiv
index fda7f3981..a98b67885 100644
--- a/tex/context/base/strc-sbe.mkiv
+++ b/tex/context/base/strc-sbe.mkiv
@@ -102,15 +102,15 @@
%D \starttyping
%D \startsectionblockenvironment[frontpart]
-%D \setuppagenumbering[conversion=romannumerals]
+%D \setupnumber[userpage][numberconversion=romannumerals,start=1]
%D \stopsectionblockenvironment
%D
%D \startsectionblockenvironment[bodypart]
-%D \setuppagenumber[number=1]
+%D \setupnumber[userpage][numberconversion=numbers,start=1]
%D \stopsectionblockenvironment
%D
-%D \startsectionblockenvironment[frontpart]
-%D \setuppagenumbering[conversion=character]
+%D \startsectionblockenvironment[backpart]
+%D \setupnumber[userpage][numberconversion=numbers,start=1]
%D \stopsectionblockenvironment
%D
%D \starttext
@@ -124,18 +124,6 @@
{\dosingleargument\dostartsectionblockenvironment}
\def\dostartsectionblockenvironment[#1]% evt \pushendofline \popendofline
- {\long\def\do##1##2{\setsectionblockenvironment{#1}{##1##2}}%
- %\grabuntil{\e!stop\v!sectionblockenvironment}{\sectionblockparameter{\s!do#1}}}
- \grabuntil{\e!stop\v!sectionblockenvironment}{\csname\??sb\s!do#1\endcsname}}
-
-% this will become: (we ran in parallel for a while during transition)
-
-\setvalue{\e!start\v!sectionblockenvironment}%
- {\dosingleargument\dostartsectionblockenvironment}
-
-\def\dostartsectionblockenvironment[#1]% evt \pushendofline \popendofline
- {\long\def\do##1##2{\setsectionblockenvironment{#1}{##1##2}}%
- %\grabuntil{\e!stop\v!sectionblockenvironment}{\sectionblockparameter{\s!do#1}}}
- \grabuntil{\e!stop\v!sectionblockenvironment}{\csname\??sb\s!do#1\endcsname}}
+ {\grabuntil{\e!stop\v!sectionblockenvironment}{\setsectionblockenvironment{#1}}}
\protect \endinput
diff --git a/tex/context/base/syst-aux.mkiv b/tex/context/base/syst-aux.mkiv
index 408a290ad..a0f32c713 100644
--- a/tex/context/base/syst-aux.mkiv
+++ b/tex/context/base/syst-aux.mkiv
@@ -349,6 +349,8 @@
%D \type{\:} becomes a delimiter of the longer named
%D \type{\reinspectnextcharacter}.
+% try: \expandafter\def\firstofoneargument{\reinspect_next_character} {...}
+
\let\next\:
\def\:{\let\blankspace= } \:
@@ -362,6 +364,9 @@
\def\:{\reinspect_next_bgroup_character}
\expandafter\def\: {\let\if_next_blank_space_token\iftrue\futurelet\nexttoken\inspect_next_bgroup_character}
+\def\:{\reinspect_next_parenthesis_character}
+\expandafter\def\: {\let\if_next_blank_space_token\iftrue\futurelet\nexttoken\inspect_next_parenthesis_character}
+
\let\:\next
%D \macros