summaryrefslogtreecommitdiff
path: root/tex/context/base
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base')
-rw-r--r--tex/context/base/mkii/cont-new.mkii2
-rw-r--r--tex/context/base/mkii/context.mkii2
-rw-r--r--tex/context/base/mkii/mult-fr.mkii1
-rw-r--r--tex/context/base/mkiv/cont-new.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkiv2
-rw-r--r--tex/context/base/mkiv/lxml-lpt.lua4
-rw-r--r--tex/context/base/mkiv/page-lin.mkvi4
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin23617 -> 23616 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin248519 -> 248528 bytes
-rw-r--r--tex/context/base/mkxl/cont-new.mkxl2
-rw-r--r--tex/context/base/mkxl/context.mkxl2
-rw-r--r--tex/context/base/mkxl/lpdf-tag.lmt50
-rw-r--r--tex/context/base/mkxl/page-lin.mklx12
-rw-r--r--tex/context/base/mkxl/strc-tag.mkxl2
14 files changed, 57 insertions, 28 deletions
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii
index 5f88118e5..ddc6e4c94 100644
--- a/tex/context/base/mkii/cont-new.mkii
+++ b/tex/context/base/mkii/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2021.07.16 21:58}
+\newcontextversion{2021.07.21 19:51}
%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/mkii/context.mkii b/tex/context/base/mkii/context.mkii
index f82269d66..f51879ef6 100644
--- a/tex/context/base/mkii/context.mkii
+++ b/tex/context/base/mkii/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2021.07.16 21:58}
+\edef\contextversion{2021.07.21 19:51}
%D For those who want to use this:
diff --git a/tex/context/base/mkii/mult-fr.mkii b/tex/context/base/mkii/mult-fr.mkii
index de20eb6f0..0390fcdbc 100644
--- a/tex/context/base/mkii/mult-fr.mkii
+++ b/tex/context/base/mkii/mult-fr.mkii
@@ -1236,6 +1236,7 @@
\setinterfaceconstant{splitoffset}{decalagepartage}
\setinterfaceconstant{spot}{tondirect}
\setinterfaceconstant{stack}{pile}
+\setinterfaceconstant{stacking}{stacking}
\setinterfaceconstant{stackname}{nompile}
\setinterfaceconstant{start}{début}
\setinterfaceconstant{starter}{demarreur}
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index f805e1f8d..668a2bb71 100644
--- a/tex/context/base/mkiv/cont-new.mkiv
+++ b/tex/context/base/mkiv/cont-new.mkiv
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2021.07.16 21:58}
+\newcontextversion{2021.07.21 19:51}
%D This file is loaded at runtime, thereby providing an excellent place for hacks,
%D patches, extensions and new features. There can be local overloads in cont-loc
diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv
index 11f827ce2..c49efc796 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -45,7 +45,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2021.07.16 21:58}
+\edef\contextversion{2021.07.21 19:51}
%D Kind of special:
diff --git a/tex/context/base/mkiv/lxml-lpt.lua b/tex/context/base/mkiv/lxml-lpt.lua
index 9e4b475fb..78a9fca2e 100644
--- a/tex/context/base/mkiv/lxml-lpt.lua
+++ b/tex/context/base/mkiv/lxml-lpt.lua
@@ -635,7 +635,9 @@ local builtin = {
match = "(ll.mi or 1)",
namespace = "ll.ns",
ns = "ll.ns",
-
+ -- new
+ -- attribute = "ll.at",
+ -- at = "ll.at",
}
local lp_builtin = lpeg.utfchartabletopattern(builtin)/builtin * ((spaces * P("(") * spaces * P(")"))/"")
diff --git a/tex/context/base/mkiv/page-lin.mkvi b/tex/context/base/mkiv/page-lin.mkvi
index e355e3e60..3a54d1ef5 100644
--- a/tex/context/base/mkiv/page-lin.mkvi
+++ b/tex/context/base/mkiv/page-lin.mkvi
@@ -352,7 +352,9 @@
\def\page_lines_add_numbers_to_box#box#column#max#nesting%
{\bgroup
- \strc_tags_enable_indeed
+ \ifconditional\c_strc_tags_enabled
+ \strc_tags_enable_indeed
+ \fi
\b_page_lines_number #box\relax
\c_page_lines_column #column\relax
\c_page_lines_last_column#max\relax
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index 751c819da..82fa2f6a3 100644
--- a/tex/context/base/mkiv/status-files.pdf
+++ b/tex/context/base/mkiv/status-files.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf
index 0737a3f55..26b23cda0 100644
--- a/tex/context/base/mkiv/status-lua.pdf
+++ b/tex/context/base/mkiv/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl
index 8c029b2e4..70b47d75d 100644
--- a/tex/context/base/mkxl/cont-new.mkxl
+++ b/tex/context/base/mkxl/cont-new.mkxl
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2021.07.16 21:58}
+\newcontextversion{2021.07.21 19:51}
%D This file is loaded at runtime, thereby providing an excellent place for hacks,
%D patches, extensions and new features. There can be local overloads in cont-loc
diff --git a/tex/context/base/mkxl/context.mkxl b/tex/context/base/mkxl/context.mkxl
index 9b1e70180..67ecc671c 100644
--- a/tex/context/base/mkxl/context.mkxl
+++ b/tex/context/base/mkxl/context.mkxl
@@ -29,7 +29,7 @@
%D {YYYY.MM.DD HH:MM} format.
\immutable\edef\contextformat {\jobname}
-\immutable\edef\contextversion{2021.07.16 21:58}
+\immutable\edef\contextversion{2021.07.21 19:51}
%overloadmode 1 % check frozen / warning
%overloadmode 2 % check frozen / error
diff --git a/tex/context/base/mkxl/lpdf-tag.lmt b/tex/context/base/mkxl/lpdf-tag.lmt
index 21f5b246d..8c76ca694 100644
--- a/tex/context/base/mkxl/lpdf-tag.lmt
+++ b/tex/context/base/mkxl/lpdf-tag.lmt
@@ -81,6 +81,8 @@ local parent_ref -- delayed
local root -- delayed
local names = { }
local tree = { }
+local firstintree = false
+local lastintree = false
local elements = { }
local structurestags = structures.tags
@@ -137,9 +139,14 @@ local function finishstructure()
if root and #structure_kids > 0 then
local nums = pdfarray()
local n = 0
- for i=1,#tree do
- n = n + 1 ; nums[n] = i - 1
- n = n + 1 ; nums[n] = pdfreference(pdfflushobject(tree[i]))
+ for i=firstintree,lastintree do
+ local ti = tree[i]
+ if ti then
+ n = n + 1 ; nums[n] = i - 1
+ n = n + 1 ; nums[n] = pdfreference(pdfflushobject(ti))
+ else
+ report_tags("beware: missing page %i in tree", i)
+ end
end
local parenttree = pdfdictionary {
Nums = nums
@@ -191,6 +198,19 @@ local function initializepage()
pagenum = texgetcount("realpageno")
pageref = pdfreference(pdfpagereference(pagenum))
list = pdfarray()
+ -- hm, can be later than 1
+ if not firstintree then
+ if pagenum > 1 then
+ report_tags("beware: first page in tree is %i", pagenum)
+ end
+ firstintree = pagenum
+ lastintree = pagenum
+ end
+ if pagenum > lastintree then
+ lastintree = pagenum
+ else
+ report_tags("beware: page order problem in tree at page %i", pagenum)
+ end
tree[pagenum] = list -- we can flush after done, todo
end
@@ -382,19 +402,19 @@ function nodeinjections.addtags(head)
for n, id in nextnode, head do
if id == glyph_code then
-- maybe also disc
-if getchar(n) ~= 0 then
- local at = getattr(n,a_tagged) or false -- false: pagebody or so, so artifact
- -- if not at then
- -- range = nil
- -- elseif ...
- if last ~= at then
- range = { at, "glyph", n, n, list } -- attr id start stop list
- ranges[#ranges+1] = range
- last = at
- elseif range then
- range[4] = n -- stop
+ if getchar(n) ~= 0 then
+ local at = getattr(n,a_tagged) or false -- false: pagebody or so, so artifact
+ -- if not at then
+ -- range = nil
+ -- elseif ...
+ if last ~= at then
+ range = { at, "glyph", n, n, list } -- attr id start stop list
+ ranges[#ranges+1] = range
+ last = at
+ elseif range then
+ range[4] = n -- stop
+ end
end
-end
elseif id == hlist_code or id == vlist_code then
local at = getattr(n,a_image)
if at then
diff --git a/tex/context/base/mkxl/page-lin.mklx b/tex/context/base/mkxl/page-lin.mklx
index 3b3a3d71b..5a1dc2e60 100644
--- a/tex/context/base/mkxl/page-lin.mklx
+++ b/tex/context/base/mkxl/page-lin.mklx
@@ -344,7 +344,9 @@
\def\page_lines_add_numbers_to_box#box#column#max#nesting%
{\bgroup
- \strc_tags_enable_indeed
+ \ifconditional\c_strc_tags_enabled
+ \strc_tags_enable_indeed
+ \fi
\b_page_lines_number #box\relax
\c_page_lines_column #column\relax
\c_page_lines_last_column#max\relax
@@ -466,13 +468,13 @@
\dostoptagged}%
\dostoptagged}
-\setuvalue{\??linenumberinghandler\v!left}%
+\protected\defcsname\??linenumberinghandler\v!left\endcsname
{\page_line_handle_left\p_align\leftmarginwidth\leftmargindistance}
-\setuvalue{\??linenumberinghandler\v!right}%
+\protected\defcsname\??linenumberinghandler\v!right\endcsname
{\page_line_handle_right\p_align\rightmarginwidth\rightmargindistance}
-\setuvalue{\??linenumberinghandler\v!inner}%
+\protected\defcsname\??linenumberinghandler\v!inner\endcsname
{\ifodd\realpageno
\ifx\p_align\v!inner
\page_line_handle_left\v!flushleft\leftmarginwidth\leftmargindistance
@@ -491,7 +493,7 @@
\fi
\fi}
-\setuvalue{\??linenumberinghandler\v!outer}%
+\protected\defcsname\??linenumberinghandler\v!outer\endcsname
{\ifodd\realpageno
\ifx\p_align\v!inner
\page_line_handle_right\v!flushleft\leftmarginwidth\leftmargindistance
diff --git a/tex/context/base/mkxl/strc-tag.mkxl b/tex/context/base/mkxl/strc-tag.mkxl
index 96371b6b5..55f8125f8 100644
--- a/tex/context/base/mkxl/strc-tag.mkxl
+++ b/tex/context/base/mkxl/strc-tag.mkxl
@@ -335,6 +335,8 @@
{\enforced\let\getelementtag \donothing
\enforced\let\setupelementuserproperties\gobbletwooptionals}
+\strc_tags_disable
+
%D The triggers:
\newtoks\everyenableelements