summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex')
-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-ro.mkii25
-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/data-bin.lua14
-rw-r--r--tex/context/base/mkiv/data-inp.lua3
-rw-r--r--tex/context/base/mkiv/grph-img.lua23
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin24898 -> 24911 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin250052 -> 250103 bytes
-rw-r--r--tex/context/base/mkiv/strc-blk.mkiv4
-rw-r--r--tex/context/base/mkiv/util-prs.lua2
-rw-r--r--tex/context/base/mkiv/util-str.lua2
-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/grph-inc.lmt26
-rw-r--r--tex/context/base/mkxl/layo-ini.lmt8
-rw-r--r--tex/context/base/mkxl/lpdf-img.lmt38
-rw-r--r--tex/context/base/mkxl/strc-not.mklx2
-rw-r--r--tex/context/interface/mkii/keys-ro.xml25
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua4
21 files changed, 152 insertions, 36 deletions
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii
index 7853fc50f..a901e296e 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.08.04 17:48}
+\newcontextversion{2021.08.06 01:19}
%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 1dab0354a..99705f3bd 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.08.04 17:48}
+\edef\contextversion{2021.08.06 01:19}
%D For those who want to use this:
diff --git a/tex/context/base/mkii/mult-ro.mkii b/tex/context/base/mkii/mult-ro.mkii
index c6897ce88..50a9ea08f 100644
--- a/tex/context/base/mkii/mult-ro.mkii
+++ b/tex/context/base/mkii/mult-ro.mkii
@@ -79,6 +79,7 @@
\setinterfacevariable{anchor}{anchor}
\setinterfacevariable{and}{and}
\setinterfacevariable{answerarea}{answerarea}
+\setinterfacevariable{append}{append}
\setinterfacevariable{appendices}{apendixuri}
\setinterfacevariable{appendix}{apendix}
\setinterfacevariable{april}{aprilie}
@@ -207,6 +208,8 @@
\setinterfacevariable{fixed}{fixat}
\setinterfacevariable{flexible}{flexibil}
\setinterfacevariable{float}{obiectmobil}
+\setinterfacevariable{flushbackward}{flushbackward}
+\setinterfacevariable{flushforward}{flushforward}
\setinterfacevariable{flushinner}{flushinner}
\setinterfacevariable{flushleft}{flushleft}
\setinterfacevariable{flushouter}{flushouter}
@@ -434,6 +437,7 @@
\setinterfacevariable{postscript}{postscript}
\setinterfacevariable{precedingpage}{precedingpage}
\setinterfacevariable{preference}{preferinta}
+\setinterfacevariable{prepend}{prepend}
\setinterfacevariable{preview}{previzualizare}
\setinterfacevariable{previous}{precedent}
\setinterfacevariable{previousevenpage}{paginaparaprecedenta}
@@ -1236,6 +1240,7 @@
\setinterfaceconstant{splitoffset}{splitoffset}
\setinterfaceconstant{spot}{spot}
\setinterfaceconstant{stack}{stack}
+\setinterfaceconstant{stacking}{stacking}
\setinterfaceconstant{stackname}{stackname}
\setinterfaceconstant{start}{start}
\setinterfaceconstant{starter}{starter}
@@ -1364,6 +1369,8 @@
\setinterfaceelement{load}{incarca}
\setinterfaceelement{local}{local}
\setinterfaceelement{makeup}{makeup}
+\setinterfaceelement{namednotation}{namednotation}
+\setinterfaceelement{namedtyping}{namedtyping}
\setinterfaceelement{next}{urmatorul}
\setinterfaceelement{place}{pune}
\setinterfaceelement{previous}{precedent}
@@ -1532,6 +1539,7 @@
\setinterfacecommand{definereferencelist}{definestelistareferinte}
\setinterfacecommand{defineregister}{definesteregistru}
\setinterfacecommand{definerule}{definesterigla}
+\setinterfacecommand{definesavebuffer}{startsavebuffer}
\setinterfacecommand{definesection}{definestesectiune}
\setinterfacecommand{definesectionblock}{definesteblocsectiune}
\setinterfacecommand{definesorting}{definestesortare}
@@ -1708,6 +1716,9 @@
\setinterfacecommand{moveformula}{moveformula}
\setinterfacecommand{moveongrid}{mutapegrid}
\setinterfacecommand{movesidefloat}{movesidefloat}
+\setinterfacecommand{namedconstruction}{namedconstruction}
+\setinterfacecommand{nameddescription}{nameddescription}
+\setinterfacecommand{namedenumeration}{namedenumeration}
\setinterfacecommand{navigating}{navigating}
\setinterfacecommand{nodimension}{faradimensiune}
\setinterfacecommand{noheaderandfooterlines}{faraliniiantetsisubsol}
@@ -2079,6 +2090,13 @@
\setinterfacecommand{startmakeup}{startmakeup}
\setinterfacecommand{startmarginblock}{startblocmarginal}
\setinterfacecommand{startmarginrule}{startliniemargine}
+\setinterfacecommand{startnamedconstruction}{startnamedconstruction}
+\setinterfacecommand{startnameddescription}{startnameddescription}
+\setinterfacecommand{startnamedenumeration}{startnamedenumeration}
+\setinterfacecommand{startnamedmatrix}{startnamedmatrix}
+\setinterfacecommand{startnamedsection}{startnamedsection}
+\setinterfacecommand{startnamedsubformulas}{startnamedsubformulas}
+\setinterfacecommand{startnamedtyping}{startnamedtyping}
\setinterfacecommand{startnarrower}{startingust}
\setinterfacecommand{startopposite}{startopozit}
\setinterfacecommand{startoverlay}{startoverlay}
@@ -2122,6 +2140,13 @@
\setinterfacecommand{stopmakeup}{stopmakeup}
\setinterfacecommand{stopmarginblock}{stopblocmarginal}
\setinterfacecommand{stopmarginrule}{stopliniemargine}
+\setinterfacecommand{stopnamedconstruction}{stopnamedconstruction}
+\setinterfacecommand{stopnameddescription}{stopnameddescription}
+\setinterfacecommand{stopnamedenumeration}{stopnamedenumeration}
+\setinterfacecommand{stopnamedmatrix}{stopnamedmatrix}
+\setinterfacecommand{stopnamedsection}{stopnamedsection}
+\setinterfacecommand{stopnamedsubformulas}{stopnamedsubformulas}
+\setinterfacecommand{stopnamedtyping}{stopnamedtyping}
\setinterfacecommand{stopnarrower}{stopingust}
\setinterfacecommand{stopopposite}{stopopozit}
\setinterfacecommand{stopoverlay}{stopoverlay}
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index 29108424f..9863f8484 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.08.04 17:48}
+\newcontextversion{2021.08.06 01:19}
%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 aa17074b9..e984d930d 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.08.04 17:48}
+\edef\contextversion{2021.08.06 01:19}
%D Kind of special:
diff --git a/tex/context/base/mkiv/data-bin.lua b/tex/context/base/mkiv/data-bin.lua
index 2bac901ea..f455f7d9a 100644
--- a/tex/context/base/mkiv/data-bin.lua
+++ b/tex/context/base/mkiv/data-bin.lua
@@ -8,7 +8,8 @@ if not modules then modules = { } end modules ['data-bin'] = {
local resolvers = resolvers
local methodhandler = resolvers.methodhandler
-local notfound = resolvers.loaders.notfound
+
+local notfound = resolvers.loaders.notfound
function resolvers.findbinfile(filename,filetype)
return methodhandler('finders',filename,filetype)
@@ -28,3 +29,14 @@ function resolvers.loadbinfile(filename,filetype)
return notfound()
end
end
+
+local notfound = resolvers.cleaners.notfound
+
+function resolvers.cleanupbinfile(filename)
+ local fname = methodhandler('finders',filename)
+ if fname and fname ~= "" then
+ return methodhandler('cleaners',fname)
+ else
+ return notfound()
+ end
+end
diff --git a/tex/context/base/mkiv/data-inp.lua b/tex/context/base/mkiv/data-inp.lua
index 97fb8904b..569a66f4e 100644
--- a/tex/context/base/mkiv/data-inp.lua
+++ b/tex/context/base/mkiv/data-inp.lua
@@ -15,11 +15,14 @@ local registermethod = resolvers.registermethod
local finders = allocate { helpers = { }, notfound = function() end }
local openers = allocate { helpers = { }, notfound = function() end }
local loaders = allocate { helpers = { }, notfound = function() return false, nil, 0 end }
+local tracers = allocate { helpers = { }, notfound = function() end }
registermethod("finders", finders, "uri")
registermethod("openers", openers, "uri")
registermethod("loaders", loaders, "uri")
+registermethod("tracers", tracers, "uri")
resolvers.finders = finders
resolvers.openers = openers
resolvers.loaders = loaders
+resolvers.tracers = tracers
diff --git a/tex/context/base/mkiv/grph-img.lua b/tex/context/base/mkiv/grph-img.lua
index a982965ff..43299a84c 100644
--- a/tex/context/base/mkiv/grph-img.lua
+++ b/tex/context/base/mkiv/grph-img.lua
@@ -24,6 +24,15 @@ local graphics = graphics or { }
local identifiers = { }
graphics.identifiers = identifiers
+local function checkedmethod(filename,method)
+ if method ~= "string" then
+ local found, data = resolvers.loadbinfile(filename)
+ return data, "string"
+ else
+ return filename, method
+ end
+end
+
do
local colorspaces = {
@@ -222,6 +231,7 @@ do
specification.error = "invalid filename"
return specification -- error
end
+ filename, method = checkedmethod(filename,method)
local f = newreader(filename,method)
if not f then
specification.error = "unable to open file"
@@ -454,6 +464,7 @@ do
specification.error = "invalid filename"
return specification -- error
end
+ filename, method = checkedmethod(filename,method)
local f = newreader(filename,method)
if not f then
specification.error = "unable to open file"
@@ -558,6 +569,7 @@ do
specification.error = "invalid filename"
return specification -- error
end
+ filename, method = checkedmethod(filename,method)
local f = newreader(filename,method)
if not f then
specification.error = "unable to open file"
@@ -727,21 +739,18 @@ end
function graphics.identify(filename,filetype)
local identify = filetype and identifiers[filetype]
- if identify then
- return identify(filename)
+ if not identify then
+ identify = identifiers[suffixonly(filename)]
end
- local identify = identifiers[suffixonly(filename)]
if identify then
- identify = identify(filename)
+ return identify(filename)
else
- identify = {
+ return {
filename = filename,
filetype = filetype,
error = "identification failed",
}
end
- -- inspect(identify)
- return identify
end
-- inspect(identifiers.jpg("t:/sources/hacker.jpg"))
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index 873f89595..912ec565f 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 2de5b578b..6c3ca2ec2 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/mkiv/strc-blk.mkiv b/tex/context/base/mkiv/strc-blk.mkiv
index 0b41b6dc2..3541d2852 100644
--- a/tex/context/base/mkiv/strc-blk.mkiv
+++ b/tex/context/base/mkiv/strc-blk.mkiv
@@ -1,4 +1,4 @@
-D \module
+%D \module
%D [ file=strc-blk,
%D version=2008.10.20,
%D title=\CONTEXT\ Structure Macros,
@@ -177,6 +177,6 @@ D \module
\unexpanded\def\processblocks{\doquadrupleempty\strc_blocks_select [process]}
\unexpanded\def\selectblocks {\doquadrupleempty\strc_blocks_select [use]}
-unexpanded\def\doifelseblocksempty{\clf_doifelsestructureblocksempty} % {name}{tag}{criterium}
+\unexpanded\def\doifelseblocksempty{\clf_doifelsestructureblocksempty} % {name}{tag}{criterium}
\protect \endinput
diff --git a/tex/context/base/mkiv/util-prs.lua b/tex/context/base/mkiv/util-prs.lua
index 6d2f8c19e..7e2bf0110 100644
--- a/tex/context/base/mkiv/util-prs.lua
+++ b/tex/context/base/mkiv/util-prs.lua
@@ -681,7 +681,7 @@ local spaces = lpegpatterns.space^0
local dummy = function() end
setmetatableindex(cache,function(t,k)
- local separator = P(k)
+ local separator = S(k) -- was P
local value = (1-separator)^0
local pattern = spaces * C(value) * separator^0 * Cp()
t[k] = pattern
diff --git a/tex/context/base/mkiv/util-str.lua b/tex/context/base/mkiv/util-str.lua
index e58befe30..67146d80f 100644
--- a/tex/context/base/mkiv/util-str.lua
+++ b/tex/context/base/mkiv/util-str.lua
@@ -635,7 +635,7 @@ return function(%s) return %s end
local pattern = Cs(Cc('"') * (
(1-S('"\\\n\r'))^1
+ P('"') / '\\034'
- + P('\\') / '\\020'
+ + P('\\') / '\\092'
+ P('\n') / '\\013'
+ P('\r') / '\\010'
)^0 * Cc('"'))
diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl
index 3b0b1b446..d7196efb4 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.08.04 17:48}
+\newcontextversion{2021.08.06 01:19}
%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 d90cbc657..75388d7b3 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.08.04 17:48}
+\immutable\edef\contextversion{2021.08.06 01:19}
%overloadmode 1 % check frozen / warning
%overloadmode 2 % check frozen / error
diff --git a/tex/context/base/mkxl/grph-inc.lmt b/tex/context/base/mkxl/grph-inc.lmt
index f5784f2db..6700a1171 100644
--- a/tex/context/base/mkxl/grph-inc.lmt
+++ b/tex/context/base/mkxl/grph-inc.lmt
@@ -441,14 +441,14 @@ function figures.setorder(list) -- can be table or string
end
end
-local function guessfromstring(str)
+local function guessfromstring(str,name)
if str then
for i=1,#figures_magics do
local pattern = figures_magics[i]
if lpegmatch(pattern.pattern,str) then
local format = pattern.format
- if trace_figures then
- report_inclusion("file %a has format %a",filename,format)
+ if trace_figures and name then
+ report_inclusion("file %a has format %a",name,format)
end
return format
end
@@ -1023,14 +1023,30 @@ local function locate(request) -- name, format, cache
end
else
local foundname = resolvers.findbinfile(askedname)
- if not foundname or not isfile(foundname) then -- foundname can be dummy
+ -- we need a neutral isfile
+ if foundname then
+ if hashed.scheme == "file" and not isfile(foundname) then
+ foundname = false
+ end
+ end
+ if not foundname then -- foundname can be dummy
if trace_figures then
report_inclusion("unknown url %a",askedname)
end
-- url not found
return register(askedname)
end
- local guessedformat = figures.guess(foundname)
+ -- ok for now but we need a loadbinfile option to emulate a file
+ -- so that we justy share it .. we now rely on os caching of files
+ -- but normally scheme based files are not that large anyway
+ local guessedformat = false
+ if hashed.scheme == "file" then
+ guessedformat = figures.guess(foundname)
+ else
+ -- kind of costly: todo pseudo file and just acccess
+ local found, data = resolvers.loadbinfile(foundname)
+ guessedformat = figures.guessfromstring(data)
+ end
if askedformat ~= guessedformat then
if trace_figures then
report_inclusion("url %a has unknown format",askedname)
diff --git a/tex/context/base/mkxl/layo-ini.lmt b/tex/context/base/mkxl/layo-ini.lmt
index 1570075d9..1919558ed 100644
--- a/tex/context/base/mkxl/layo-ini.lmt
+++ b/tex/context/base/mkxl/layo-ini.lmt
@@ -96,8 +96,12 @@ function layouts.setupcanvas(specification)
canvas.marked = specification.print
--
local copies = specification.copies
- if type(copies) == "number" and copies < 2 then
- canvas.copies = false
+ if type(copies) == "number" then
+ if copies < 2 then
+ canvas.copies = false
+ else
+ canvas.copies = copies
+ end
end
--
local doublesided = specification.doublesided
diff --git a/tex/context/base/mkxl/lpdf-img.lmt b/tex/context/base/mkxl/lpdf-img.lmt
index f937f2ed4..95235959e 100644
--- a/tex/context/base/mkxl/lpdf-img.lmt
+++ b/tex/context/base/mkxl/lpdf-img.lmt
@@ -75,14 +75,36 @@ trackers.register("graphics.backend", function(v) trace = v end)
local injectors = { }
lpdf.injectors = injectors
--- todo: load from a virtual file
+-- local function loadcontent(filename,method)
+-- return method == "string" and filename or loaddata(filename)
+-- end
+
+-- local function newcontent(filename,method)
+-- return newreader(filename,method)
+-- end
-local function loadcontent(filename,method)
- return method == "string" and filename or loaddata(filename)
+local function loadcontent(filename,method,wipe)
+ if method == "string" then
+ return filename
+ else
+ local found, data = resolvers.loadbinfile(filename)
+ if wipe then
+ resolvers.cleanupbinfile(filename)
+ end
+ return data
+ end
end
-local function newcontent(filename,method)
- return newreader(filename,method)
+local function newcontent(filename,method,wipe)
+ if method == "string" then
+ return newreader(filename,method)
+ else
+ local found, data = resolvers.loadbinfile(filename)
+ if wipe then
+ resolvers.cleanupbinfile(filename)
+ end
+ return newreader(data or "", "string")
+ end
end
--
@@ -118,7 +140,7 @@ do
local xsize = specification.xsize
local ysize = specification.ysize
local colordepth = specification.colordepth
- local content = loadcontent(filename,method)
+ local content = loadcontent(filename,method,true)
local xobject = pdfdictionary {
Type = pdfconstant("XObject"),
Subtype = pdfconstant("Image"),
@@ -160,7 +182,7 @@ do
-- todo: set filename
local xsize = specification.xsize
local ysize = specification.ysize
- local content = loadcontent(filename,method)
+ local content = loadcontent(filename,method,true)
local xobject = pdfdictionary {
Type = pdfconstant("XObject"),
Subtype = pdfconstant("Image"),
@@ -972,7 +994,7 @@ do
if not idat then
return
end
- local pngfile = newcontent(filename,method)
+ local pngfile = newcontent(filename,method,true)
if not pngfile then
return
end
diff --git a/tex/context/base/mkxl/strc-not.mklx b/tex/context/base/mkxl/strc-not.mklx
index e9038b1b9..857e7ce24 100644
--- a/tex/context/base/mkxl/strc-not.mklx
+++ b/tex/context/base/mkxl/strc-not.mklx
@@ -305,7 +305,7 @@
\expandafter\strc_notations_start_setups
\else
\expandafter\strc_notations_start_reference
- \fi#1[#2]}
+ \fi#1[#3]}
\let\strc_notations_pickup_yes\relax
diff --git a/tex/context/interface/mkii/keys-ro.xml b/tex/context/interface/mkii/keys-ro.xml
index eb60b4b58..e53fbb198 100644
--- a/tex/context/interface/mkii/keys-ro.xml
+++ b/tex/context/interface/mkii/keys-ro.xml
@@ -82,6 +82,7 @@
<cd:variable name='anchor' value='anchor'/>
<cd:variable name='and' value='and'/>
<cd:variable name='answerarea' value='answerarea'/>
+ <cd:variable name='append' value='append'/>
<cd:variable name='appendices' value='apendixuri'/>
<cd:variable name='appendix' value='apendix'/>
<cd:variable name='april' value='aprilie'/>
@@ -210,6 +211,8 @@
<cd:variable name='fixed' value='fixat'/>
<cd:variable name='flexible' value='flexibil'/>
<cd:variable name='float' value='obiectmobil'/>
+ <cd:variable name='flushbackward' value='flushbackward'/>
+ <cd:variable name='flushforward' value='flushforward'/>
<cd:variable name='flushinner' value='flushinner'/>
<cd:variable name='flushleft' value='flushleft'/>
<cd:variable name='flushouter' value='flushouter'/>
@@ -437,6 +440,7 @@
<cd:variable name='postscript' value='postscript'/>
<cd:variable name='precedingpage' value='precedingpage'/>
<cd:variable name='preference' value='preferinta'/>
+ <cd:variable name='prepend' value='prepend'/>
<cd:variable name='preview' value='previzualizare'/>
<cd:variable name='previous' value='precedent'/>
<cd:variable name='previousevenpage' value='paginaparaprecedenta'/>
@@ -1242,6 +1246,7 @@
<cd:constant name='splitoffset' value='splitoffset'/>
<cd:constant name='spot' value='spot'/>
<cd:constant name='stack' value='stack'/>
+ <cd:constant name='stacking' value='stacking'/>
<cd:constant name='stackname' value='stackname'/>
<cd:constant name='start' value='start'/>
<cd:constant name='starter' value='starter'/>
@@ -1373,6 +1378,8 @@
<cd:element name='load' value='incarca'/>
<cd:element name='local' value='local'/>
<cd:element name='makeup' value='makeup'/>
+ <cd:element name='namednotation' value='namednotation'/>
+ <cd:element name='namedtyping' value='namedtyping'/>
<cd:element name='next' value='urmatorul'/>
<cd:element name='place' value='pune'/>
<cd:element name='previous' value='precedent'/>
@@ -1544,6 +1551,7 @@
<cd:command name='definereferencelist' value='definestelistareferinte'/>
<cd:command name='defineregister' value='definesteregistru'/>
<cd:command name='definerule' value='definesterigla'/>
+ <cd:command name='definesavebuffer' value='startsavebuffer'/>
<cd:command name='definesection' value='definestesectiune'/>
<cd:command name='definesectionblock' value='definesteblocsectiune'/>
<cd:command name='definesorting' value='definestesortare'/>
@@ -1720,6 +1728,9 @@
<cd:command name='moveformula' value='moveformula'/>
<cd:command name='moveongrid' value='mutapegrid'/>
<cd:command name='movesidefloat' value='movesidefloat'/>
+ <cd:command name='namedconstruction' value='namedconstruction'/>
+ <cd:command name='nameddescription' value='nameddescription'/>
+ <cd:command name='namedenumeration' value='namedenumeration'/>
<cd:command name='navigating' value='navigating'/>
<cd:command name='nodimension' value='faradimensiune'/>
<cd:command name='noheaderandfooterlines' value='faraliniiantetsisubsol'/>
@@ -2091,6 +2102,13 @@
<cd:command name='startmakeup' value='startmakeup'/>
<cd:command name='startmarginblock' value='startblocmarginal'/>
<cd:command name='startmarginrule' value='startliniemargine'/>
+ <cd:command name='startnamedconstruction' value='startnamedconstruction'/>
+ <cd:command name='startnameddescription' value='startnameddescription'/>
+ <cd:command name='startnamedenumeration' value='startnamedenumeration'/>
+ <cd:command name='startnamedmatrix' value='startnamedmatrix'/>
+ <cd:command name='startnamedsection' value='startnamedsection'/>
+ <cd:command name='startnamedsubformulas' value='startnamedsubformulas'/>
+ <cd:command name='startnamedtyping' value='startnamedtyping'/>
<cd:command name='startnarrower' value='startingust'/>
<cd:command name='startopposite' value='startopozit'/>
<cd:command name='startoverlay' value='startoverlay'/>
@@ -2134,6 +2152,13 @@
<cd:command name='stopmakeup' value='stopmakeup'/>
<cd:command name='stopmarginblock' value='stopblocmarginal'/>
<cd:command name='stopmarginrule' value='stopliniemargine'/>
+ <cd:command name='stopnamedconstruction' value='stopnamedconstruction'/>
+ <cd:command name='stopnameddescription' value='stopnameddescription'/>
+ <cd:command name='stopnamedenumeration' value='stopnamedenumeration'/>
+ <cd:command name='stopnamedmatrix' value='stopnamedmatrix'/>
+ <cd:command name='stopnamedsection' value='stopnamedsection'/>
+ <cd:command name='stopnamedsubformulas' value='stopnamedsubformulas'/>
+ <cd:command name='stopnamedtyping' value='stopnamedtyping'/>
<cd:command name='stopnarrower' value='stopingust'/>
<cd:command name='stopopposite' value='stopopozit'/>
<cd:command name='stopoverlay' value='stopoverlay'/>
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 415ca193a..472079bfb 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 : 2021-08-04 17:48
+-- merge date : 2021-08-06 01:19
do -- begin closure to overcome local limits and interference
@@ -3474,7 +3474,7 @@ local template=[[
return function(%s) return %s end
]]
local pattern=Cs(Cc('"')*(
- (1-S('"\\\n\r'))^1+P('"')/'\\034'+P('\\')/'\\020'+P('\n')/'\\013'+P('\r')/'\\010'
+ (1-S('"\\\n\r'))^1+P('"')/'\\034'+P('\\')/'\\092'+P('\n')/'\\013'+P('\r')/'\\010'
)^0*Cc('"'))
patterns.escapedquotes=pattern
function string.escapedquotes(s)