From c677baac37632308600b5108b586f80246056c74 Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Tue, 7 Mar 2023 00:19:30 +0100 Subject: 2023-03-06 23:17:00 --- tex/context/base/mkii/cont-new.mkii | 2 +- tex/context/base/mkii/context.mkii | 2 +- tex/context/base/mkii/mult-cs.mkii | 2 ++ tex/context/base/mkiv/cont-new.mkiv | 2 +- tex/context/base/mkiv/context.mkiv | 2 +- tex/context/base/mkiv/lpdf-nod.lua | 26 ++++++++++-------- tex/context/base/mkiv/status-files.pdf | Bin 24648 -> 24647 bytes tex/context/base/mkiv/status-lua.pdf | Bin 266020 -> 266011 bytes tex/context/base/mkxl/cont-new.mkxl | 2 +- tex/context/base/mkxl/context.mkxl | 2 +- tex/context/base/mkxl/lpdf-lmt.lmt | 20 +++++++++++--- tex/context/base/mkxl/math-noa.lmt | 2 ++ tex/context/base/mkxl/strc-mat.lmt | 30 +++++++++++++++++++++ tex/context/base/mkxl/strc-mat.mkxl | 2 +- tex/context/interface/mkii/keys-cs.xml | 2 ++ tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 16 files changed, 76 insertions(+), 22 deletions(-) create mode 100644 tex/context/base/mkxl/strc-mat.lmt diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii index aeb112d22..cf16f7947 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{2023.03.06 14:44} +\newcontextversion{2023.03.06 23:15} %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 6905179fe..a8623d2ce 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{2023.03.06 14:44} +\edef\contextversion{2023.03.06 23:15} %D For those who want to use this: diff --git a/tex/context/base/mkii/mult-cs.mkii b/tex/context/base/mkii/mult-cs.mkii index b8c7f3fda..8d7da543b 100644 --- a/tex/context/base/mkii/mult-cs.mkii +++ b/tex/context/base/mkii/mult-cs.mkii @@ -832,6 +832,7 @@ \setinterfaceconstant{exitoffset}{exitoffset} \setinterfaceconstant{expansion}{expanzen} \setinterfaceconstant{export}{export} +\setinterfaceconstant{extradata}{extradata} \setinterfaceconstant{extras}{extras} \setinterfaceconstant{factor}{faktor} \setinterfaceconstant{fallback}{fallback} @@ -955,6 +956,7 @@ \setinterfaceconstant{lastpage}{poslednistrana} \setinterfaceconstant{lastpagesep}{lastpagesep} \setinterfaceconstant{lastpubsep}{lastpubsep} +\setinterfaceconstant{lasttextseparator}{lasttextseparator} \setinterfaceconstant{layout}{layout} \setinterfaceconstant{left}{vlevo} \setinterfaceconstant{leftclass}{leftclass} diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv index 0abf3e46e..b62b775ad 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{2023.03.06 14:44} +\newcontextversion{2023.03.06 23:15} %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 cb0821994..860d411a5 100644 --- a/tex/context/base/mkiv/context.mkiv +++ b/tex/context/base/mkiv/context.mkiv @@ -49,7 +49,7 @@ %D {YYYY.MM.DD HH:MM} format. \edef\contextformat {\jobname} -\edef\contextversion{2023.03.06 14:44} +\edef\contextversion{2023.03.06 23:15} %D Kind of special: diff --git a/tex/context/base/mkiv/lpdf-nod.lua b/tex/context/base/mkiv/lpdf-nod.lua index 6702ed506..ce7cbd5c3 100644 --- a/tex/context/base/mkiv/lpdf-nod.lua +++ b/tex/context/base/mkiv/lpdf-nod.lua @@ -69,18 +69,22 @@ end -- We only define this for testing as we don't need it: -local lateliteralnode = register(new_node(whatsit_code, lateliteralwhatsit_code)) - -function nodepool.lateliteral(mode,str) - local t = copy_node(lateliteralnode) - if str then - setfield(t,"mode",literals[mode] and mode or pageliteral_code) - setdata(t,str) - else - setfield(t,"mode",pageliteral_code) - setdata(t,mode) +if lateliteralwhatsit_code then + + local lateliteralnode = register(new_node(whatsit_code, lateliteralwhatsit_code)) + + function nodepool.lateliteral(mode,str) + local t = copy_node(lateliteralnode) + if str then + setfield(t,"mode",literals[mode] and mode or pageliteral_code) + setdata(t,str) + else + setfield(t,"mode",pageliteral_code) + setdata(t,mode) + end + return t end - return t + end local savenode = register(new_node(whatsit_code, savewhatsit_code)) diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf index 28a82c9a9..66f1aba27 100644 Binary files a/tex/context/base/mkiv/status-files.pdf and b/tex/context/base/mkiv/status-files.pdf differ diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf index ef3a87add..f78a5e548 100644 Binary files a/tex/context/base/mkiv/status-lua.pdf and b/tex/context/base/mkiv/status-lua.pdf differ diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl index 78ec6d63d..f693cbb59 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{2023.03.06 14:44} +\newcontextversion{2023.03.06 23:15} %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 24619c289..f5bf1803c 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{2023.03.06 14:44} +\immutable\edef\contextversion{2023.03.06 23:15} %overloadmode 1 % check frozen / warning %overloadmode 2 % check frozen / error diff --git a/tex/context/base/mkxl/lpdf-lmt.lmt b/tex/context/base/mkxl/lpdf-lmt.lmt index 1d47c1620..f443632b8 100644 --- a/tex/context/base/mkxl/lpdf-lmt.lmt +++ b/tex/context/base/mkxl/lpdf-lmt.lmt @@ -2130,6 +2130,20 @@ local finalize do local f_group = formatters["Gp%d"] local f_image = formatters["Im%d"] + local function checkedbox(mediabox,otherbox,what) + if otherbox and #mediabox == 4 and #otherbox == 4 then + local done = false + if otherbox[1] < mediabox[1] then done = true ; otherbox[1] = mediabox[1] end + if otherbox[2] < mediabox[2] then done = true ; otherbox[2] = mediabox[2] end + if otherbox[3] > mediabox[3] then done = true ; otherbox[3] = mediabox[3] end + if otherbox[4] > mediabox[4] then done = true ; otherbox[4] = mediabox[4] end + if done then + report("limiting %a to 'MediaBox'",what) + end + end + return otherbox + end + finalize = function(driver,details) if not details then @@ -2226,9 +2240,9 @@ else -- Indirect objects don't work in all viewers. - if TrimBox then pageattributes.TrimBox = pdfsharedobject(TrimBox ) end - if CropBox then pageattributes.CropBox = pdfsharedobject(CropBox ) end - if BleedBox then pageattributes.BleedBox = pdfsharedobject(BleedBox) end + if TrimBox then pageattributes.TrimBox = pdfsharedobject(checkedbox(bbox,TrimBox,"TrimBox")) end + if CropBox then pageattributes.CropBox = pdfsharedobject(checkedbox(bbox,CropBox,"CropBox")) end + if BleedBox then pageattributes.BleedBox = pdfsharedobject(checkedbox(bbox,BleedBox,"BleedBox")) end end diff --git a/tex/context/base/mkxl/math-noa.lmt b/tex/context/base/mkxl/math-noa.lmt index 4a0cb5744..6ccda30f3 100644 --- a/tex/context/base/mkxl/math-noa.lmt +++ b/tex/context/base/mkxl/math-noa.lmt @@ -2492,6 +2492,8 @@ end do + -- do we need this + local traversehlist = nuts.traversers.hlist local texgetdimen = tex.getdimen diff --git a/tex/context/base/mkxl/strc-mat.lmt b/tex/context/base/mkxl/strc-mat.lmt new file mode 100644 index 000000000..3b2458eac --- /dev/null +++ b/tex/context/base/mkxl/strc-mat.lmt @@ -0,0 +1,30 @@ +if not modules then modules = { } end modules ['strc-mat'] = { + version = 1.001, + comment = "companion to strc-mat.mkiv", + author = "Hans Hagen, PRAGMA-ADE, Hasselt NL", + copyright = "PRAGMA ADE / ConTeXt Development Team", + license = "see context related readme files" +} + +local structures = structures + +local lists = structures.lists +local sections = structures.sections +local helpers = structures.helpers +----- formulas = structures.formulas --reserved + +function helpers.formulanumber(data,spec) + if data then + local formulanumber = data.formulanumber + if formulanumber then + sections.number(data,spec,"formulanumber","formulanumber","number") + end + end +end + +function lists.formulanumber(name,n,spec) + local result = lists.result + if result then + helpers.formulanumber(result[n]) + end +end diff --git a/tex/context/base/mkxl/strc-mat.mkxl b/tex/context/base/mkxl/strc-mat.mkxl index 516e82190..6abc4b2cb 100644 --- a/tex/context/base/mkxl/strc-mat.mkxl +++ b/tex/context/base/mkxl/strc-mat.mkxl @@ -13,7 +13,7 @@ \writestatus{loading}{ConTeXt Structure Macros / Math Numbering} -\registerctxluafile{strc-mat}{} +\registerctxluafile{strc-mat}{autosuffix} % -- we have potential for captions % -- this module will use the commandhandler diff --git a/tex/context/interface/mkii/keys-cs.xml b/tex/context/interface/mkii/keys-cs.xml index 14f82227a..45f3ddf7a 100644 --- a/tex/context/interface/mkii/keys-cs.xml +++ b/tex/context/interface/mkii/keys-cs.xml @@ -838,6 +838,7 @@ + @@ -961,6 +962,7 @@ + diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index a66ee0752..b7a72ccc0 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 : c:/data/develop/context/sources/luatex-fonts-merged.lua -- parent file : c:/data/develop/context/sources/luatex-fonts.lua --- merge date : 2023-03-06 14:44 +-- merge date : 2023-03-06 23:15 do -- begin closure to overcome local limits and interference -- cgit v1.2.3