diff options
Diffstat (limited to 'tex/context/base')
-rw-r--r-- | tex/context/base/mkii/cont-new.mkii | 2 | ||||
-rw-r--r-- | tex/context/base/mkii/context.mkii | 2 | ||||
-rw-r--r-- | tex/context/base/mkii/mult-fr.mkii | 1 | ||||
-rw-r--r-- | tex/context/base/mkiv/cont-new.mkiv | 2 | ||||
-rw-r--r-- | tex/context/base/mkiv/context.mkiv | 2 | ||||
-rw-r--r-- | tex/context/base/mkiv/lxml-lpt.lua | 4 | ||||
-rw-r--r-- | tex/context/base/mkiv/page-lin.mkvi | 4 | ||||
-rw-r--r-- | tex/context/base/mkiv/status-files.pdf | bin | 23617 -> 23616 bytes | |||
-rw-r--r-- | tex/context/base/mkiv/status-lua.pdf | bin | 248519 -> 248528 bytes | |||
-rw-r--r-- | tex/context/base/mkxl/cont-new.mkxl | 2 | ||||
-rw-r--r-- | tex/context/base/mkxl/context.mkxl | 2 | ||||
-rw-r--r-- | tex/context/base/mkxl/lpdf-tag.lmt | 50 | ||||
-rw-r--r-- | tex/context/base/mkxl/page-lin.mklx | 12 | ||||
-rw-r--r-- | tex/context/base/mkxl/strc-tag.mkxl | 2 |
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 Binary files differindex 751c819da..82fa2f6a3 100644 --- a/tex/context/base/mkiv/status-files.pdf +++ b/tex/context/base/mkiv/status-files.pdf diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf Binary files differindex 0737a3f55..26b23cda0 100644 --- a/tex/context/base/mkiv/status-lua.pdf +++ b/tex/context/base/mkiv/status-lua.pdf 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 |