diff options
author | Hans Hagen <pragma@wxs.nl> | 2021-06-29 23:24:45 +0200 |
---|---|---|
committer | Context Git Mirror Bot <phg@phi-gamma.net> | 2021-06-29 23:24:45 +0200 |
commit | ed04388261fdd19e6cc5661225439df6e042bf41 (patch) | |
tree | 8266ef63cfd71f6ebe06180f0e69695664010f5b | |
parent | 070c533456efeba3c0c97908ab9930f00ae7b61c (diff) | |
download | context-ed04388261fdd19e6cc5661225439df6e042bf41.tar.gz |
2021-06-29 23:13:00
27 files changed, 254 insertions, 65 deletions
diff --git a/context/data/scite/context/lexers/data/scite-context-data-metafun.lua b/context/data/scite/context/lexers/data/scite-context-data-metafun.lua index 1247beaf8..871d459a9 100644 --- a/context/data/scite/context/lexers/data/scite-context-data-metafun.lua +++ b/context/data/scite/context/lexers/data/scite-context-data-metafun.lua @@ -1,4 +1,4 @@ return { ["commands"]={ "loadfile", "loadimage", "loadmodule", "dispose", "nothing", "transparency", "tolist", "topath", "tocycle", "sqr", "log", "ln", "exp", "inv", "pow", "pi", "radian", "tand", "cotd", "sin", "cos", "tan", "cot", "atan", "asin", "acos", "invsin", "invcos", "invtan", "acosh", "asinh", "sinh", "cosh", "tanh", "zmod", "paired", "tripled", "unitcircle", "fulldiamond", "unitdiamond", "fullsquare", "unittriangle", "fulltriangle", "llcircle", "lrcircle", "urcircle", "ulcircle", "tcircle", "bcircle", "lcircle", "rcircle", "lltriangle", "lrtriangle", "urtriangle", "ultriangle", "uptriangle", "downtriangle", "lefttriangle", "righttriangle", "triangle", "smoothed", "cornered", "superellipsed", "randomized", "randomizedcontrols", "squeezed", "enlonged", "shortened", "punked", "curved", "unspiked", "simplified", "blownup", "stretched", "enlarged", "leftenlarged", "topenlarged", "rightenlarged", "bottomenlarged", "crossed", "laddered", "randomshifted", "interpolated", "perpendicular", "paralleled", "cutends", "peepholed", "llenlarged", "lrenlarged", "urenlarged", "ulenlarged", "llmoved", "lrmoved", "urmoved", "ulmoved", "rightarrow", "leftarrow", "centerarrow", "drawdoublearrows", "boundingbox", "innerboundingbox", "outerboundingbox", "pushboundingbox", "popboundingbox", "boundingradius", "boundingcircle", "boundingpoint", "crossingunder", "insideof", "outsideof", "bottomboundary", "leftboundary", "topboundary", "rightboundary", "xsized", "ysized", "xysized", "sized", "xyscaled", "intersection_point", "intersection_found", "penpoint", "bbwidth", "bbheight", "withshade", "withcircularshade", "withlinearshade", "defineshade", "shaded", "shadedinto", "withshadecolors", "withshadedomain", "withshademethod", "withshadefactor", "withshadevector", "withshadecenter", "withshadedirection", "withshaderadius", "withshadetransform", "withshadecenterone", "withshadecentertwo", "withshadestep", "withshadefraction", "withshadeorigin", "shownshadevector", "shownshadeorigin", "shownshadedirection", "shownshadecenter", "cmyk", "spotcolor", "multitonecolor", "namedcolor", "drawfill", "undrawfill", "inverted", "uncolored", "softened", "grayed", "greyed", "onlayer", "along", "graphictext", "loadfigure", "externalfigure", "figure", "register", "outlinetext", "filloutlinetext", "drawoutlinetext", "outlinetexttopath", "checkedbounds", "checkbounds", "strut", "rule", "withmask", "bitmapimage", "colordecimals", "ddecimal", "dddecimal", "ddddecimal", "colordecimalslist", "textext", "thetextext", "rawtextext", "textextoffset", "texbox", "thetexbox", "rawtexbox", "istextext", "rawmadetext", "validtexbox", "onetimetextext", "rawfmttext", "thefmttext", "fmttext", "onetimefmttext", "notcached", "keepcached", "verbatim", "thelabel", "label", "autoalign", "transparent", "withtransparency", "withopacity", "property", "properties", "withproperties", "asgroup", "withpattern", "withpatternscale", "withpatternfloat", "infont", "space", "crlf", "dquote", "percent", "SPACE", "CRLF", "DQUOTE", "PERCENT", "grayscale", "greyscale", "withgray", "withgrey", "colorpart", "colorlike", "readfile", "clearxy", "unitvector", "center", "epsed", "anchored", "originpath", "infinite", "break", "xstretched", "ystretched", "snapped", "pathconnectors", "function", "constructedfunction", "constructedpath", "constructedpairs", "straightfunction", "straightpath", "straightpairs", "curvedfunction", "curvedpath", "curvedpairs", "evenly", "oddly", "condition", "pushcurrentpicture", "popcurrentpicture", "arrowpath", "resetarrows", "tensecircle", "roundedsquare", "colortype", "whitecolor", "blackcolor", "basiccolors", "complementary", "complemented", "resolvedcolor", "normalfill", "normaldraw", "visualizepaths", "detailpaths", "naturalizepaths", "drawboundary", "drawwholepath", "drawpathonly", "visualizeddraw", "visualizedfill", "detaileddraw", "draworigin", "drawboundingbox", "drawpath", "drawpoint", "drawpoints", "drawcontrolpoints", "drawcontrollines", "drawpointlabels", "drawlineoptions", "drawpointoptions", "drawcontroloptions", "drawlabeloptions", "draworiginoptions", "drawboundoptions", "drawpathoptions", "resetdrawoptions", "undashed", "pencilled", "decorated", "redecorated", "undecorated", "passvariable", "passarrayvariable", "tostring", "topair", "format", "formatted", "quotation", "quote", "startpassingvariable", "stoppassingvariable", "eofill", "eoclip", "nofill", "dofill", "fillup", "eofillup", "nodraw", "dodraw", "area", "addbackground", "shadedup", "shadeddown", "shadedleft", "shadedright", "sortlist", "copylist", "shapedlist", "listtocurves", "listtolines", "listsize", "listlast", "uniquelist", "circularpath", "squarepath", "linearpath", "theoffset", "texmode", "systemmode", "texvar", "texstr", "isarray", "prefix", "dimension", "getmacro", "getdimen", "getcount", "gettoks", "setmacro", "setdimen", "setcount", "settoks", "setglobalmacro", "setglobaldimen", "setglobalcount", "setglobaltoks", "positionpath", "positioncurve", "positionxy", "positionpxy", "positionwhd", "positionpage", "positionregion", "positionbox", "positionanchor", "positioninregion", "positionatanchor", "wdpart", "htpart", "dppart", "texvar", "texstr", "inpath", "pointof", "leftof", "rightof", "utfnum", "utflen", "utfsub", "newhash", "disposehash", "inhash", "tohash", "isarray", "prefix", "isobject", "comment", "report", "lua", "lualist", "mp", "MP", "luacall", "mirrored", "mirroredabout", "scriptindex", "newscriptindex", "newcolor", "newrgbcolor", "newcmykcolor", "newnumeric", "newboolean", "newtransform", "newpath", "newpicture", "newstring", "newpair", "mpvard", "mpvarn", "mpvars", "mpvar", "withtolerance" }, - ["internals"]={ "nocolormodel", "greycolormodel", "graycolormodel", "rgbcolormodel", "cmykcolormodel", "shadefactor", "shadeoffset", "textextoffset", "textextanchor", "normaltransparent", "multiplytransparent", "screentransparent", "overlaytransparent", "softlighttransparent", "hardlighttransparent", "colordodgetransparent", "colorburntransparent", "darkentransparent", "lightentransparent", "differencetransparent", "exclusiontransparent", "huetransparent", "saturationtransparent", "colortransparent", "luminositytransparent", "ahvariant", "ahdimple", "ahfactor", "ahscale", "metapostversion", "maxdimensions", "drawoptionsfactor", "dq", "sq", "crossingscale", "crossingoption", "contextlmtxmode", "metafunversion", "minifunversion", "getparameters", "presetparameters", "hasparameter", "hasoption", "getparameter", "getparameterdefault", "getparametercount", "getmaxparametercount", "getparameterpath", "getparameterpen", "getparametertext", "applyparameters", "pushparameters", "popparameters", "definecolor", "anchorxy", "anchorx", "anchory", "anchorht", "anchordp", "anchorul", "anchorll", "anchorlr", "anchorur", "localanchorbox", "localanchorcell", "localanchorspan", "anchorbox", "anchorcell", "anchorspan", "matrixbox", "matrixcell", "matrixspan" }, + ["internals"]={ "nocolormodel", "greycolormodel", "graycolormodel", "rgbcolormodel", "cmykcolormodel", "shadefactor", "shadeoffset", "textextoffset", "textextanchor", "normaltransparent", "multiplytransparent", "screentransparent", "overlaytransparent", "softlighttransparent", "hardlighttransparent", "colordodgetransparent", "colorburntransparent", "darkentransparent", "lightentransparent", "differencetransparent", "exclusiontransparent", "huetransparent", "saturationtransparent", "colortransparent", "luminositytransparent", "ahvariant", "ahdimple", "ahfactor", "ahscale", "metapostversion", "maxdimensions", "drawoptionsfactor", "dq", "sq", "crossingscale", "crossingoption", "contextlmtxmode", "metafunversion", "minifunversion", "getparameters", "presetparameters", "hasparameter", "hasoption", "getparameter", "getparameterdefault", "getparametercount", "getmaxparametercount", "getparameterpath", "getparameterpen", "getparametertext", "applyparameters", "pushparameters", "popparameters", "definecolor", "newrecord", "getrecord", "anchorxy", "anchorx", "anchory", "anchorht", "anchordp", "anchorul", "anchorll", "anchorlr", "anchorur", "localanchorbox", "localanchorcell", "localanchorspan", "anchorbox", "anchorcell", "anchorspan", "matrixbox", "matrixcell", "matrixspan" }, }
\ No newline at end of file diff --git a/context/data/scite/context/scite-context-data-metafun.properties b/context/data/scite/context/scite-context-data-metafun.properties index 2eb79d287..b387d9c60 100644 --- a/context/data/scite/context/scite-context-data-metafun.properties +++ b/context/data/scite/context/scite-context-data-metafun.properties @@ -94,8 +94,8 @@ crossingscale crossingoption contextlmtxmode metafunversion minifunversion \ getparameters presetparameters hasparameter hasoption getparameter \ getparameterdefault getparametercount getmaxparametercount getparameterpath getparameterpen \ getparametertext applyparameters pushparameters popparameters definecolor \ -anchorxy anchorx anchory anchorht anchordp \ -anchorul anchorll anchorlr anchorur localanchorbox \ -localanchorcell localanchorspan anchorbox anchorcell anchorspan \ -matrixbox matrixcell matrixspan +newrecord getrecord anchorxy anchorx anchory \ +anchorht anchordp anchorul anchorll anchorlr \ +anchorur localanchorbox localanchorcell localanchorspan anchorbox \ +anchorcell anchorspan matrixbox matrixcell matrixspan diff --git a/context/data/textadept/context/data/scite-context-data-metafun.lua b/context/data/textadept/context/data/scite-context-data-metafun.lua index 1247beaf8..871d459a9 100644 --- a/context/data/textadept/context/data/scite-context-data-metafun.lua +++ b/context/data/textadept/context/data/scite-context-data-metafun.lua @@ -1,4 +1,4 @@ return { ["commands"]={ "loadfile", "loadimage", "loadmodule", "dispose", "nothing", "transparency", "tolist", "topath", "tocycle", "sqr", "log", "ln", "exp", "inv", "pow", "pi", "radian", "tand", "cotd", "sin", "cos", "tan", "cot", "atan", "asin", "acos", "invsin", "invcos", "invtan", "acosh", "asinh", "sinh", "cosh", "tanh", "zmod", "paired", "tripled", "unitcircle", "fulldiamond", "unitdiamond", "fullsquare", "unittriangle", "fulltriangle", "llcircle", "lrcircle", "urcircle", "ulcircle", "tcircle", "bcircle", "lcircle", "rcircle", "lltriangle", "lrtriangle", "urtriangle", "ultriangle", "uptriangle", "downtriangle", "lefttriangle", "righttriangle", "triangle", "smoothed", "cornered", "superellipsed", "randomized", "randomizedcontrols", "squeezed", "enlonged", "shortened", "punked", "curved", "unspiked", "simplified", "blownup", "stretched", "enlarged", "leftenlarged", "topenlarged", "rightenlarged", "bottomenlarged", "crossed", "laddered", "randomshifted", "interpolated", "perpendicular", "paralleled", "cutends", "peepholed", "llenlarged", "lrenlarged", "urenlarged", "ulenlarged", "llmoved", "lrmoved", "urmoved", "ulmoved", "rightarrow", "leftarrow", "centerarrow", "drawdoublearrows", "boundingbox", "innerboundingbox", "outerboundingbox", "pushboundingbox", "popboundingbox", "boundingradius", "boundingcircle", "boundingpoint", "crossingunder", "insideof", "outsideof", "bottomboundary", "leftboundary", "topboundary", "rightboundary", "xsized", "ysized", "xysized", "sized", "xyscaled", "intersection_point", "intersection_found", "penpoint", "bbwidth", "bbheight", "withshade", "withcircularshade", "withlinearshade", "defineshade", "shaded", "shadedinto", "withshadecolors", "withshadedomain", "withshademethod", "withshadefactor", "withshadevector", "withshadecenter", "withshadedirection", "withshaderadius", "withshadetransform", "withshadecenterone", "withshadecentertwo", "withshadestep", "withshadefraction", "withshadeorigin", "shownshadevector", "shownshadeorigin", "shownshadedirection", "shownshadecenter", "cmyk", "spotcolor", "multitonecolor", "namedcolor", "drawfill", "undrawfill", "inverted", "uncolored", "softened", "grayed", "greyed", "onlayer", "along", "graphictext", "loadfigure", "externalfigure", "figure", "register", "outlinetext", "filloutlinetext", "drawoutlinetext", "outlinetexttopath", "checkedbounds", "checkbounds", "strut", "rule", "withmask", "bitmapimage", "colordecimals", "ddecimal", "dddecimal", "ddddecimal", "colordecimalslist", "textext", "thetextext", "rawtextext", "textextoffset", "texbox", "thetexbox", "rawtexbox", "istextext", "rawmadetext", "validtexbox", "onetimetextext", "rawfmttext", "thefmttext", "fmttext", "onetimefmttext", "notcached", "keepcached", "verbatim", "thelabel", "label", "autoalign", "transparent", "withtransparency", "withopacity", "property", "properties", "withproperties", "asgroup", "withpattern", "withpatternscale", "withpatternfloat", "infont", "space", "crlf", "dquote", "percent", "SPACE", "CRLF", "DQUOTE", "PERCENT", "grayscale", "greyscale", "withgray", "withgrey", "colorpart", "colorlike", "readfile", "clearxy", "unitvector", "center", "epsed", "anchored", "originpath", "infinite", "break", "xstretched", "ystretched", "snapped", "pathconnectors", "function", "constructedfunction", "constructedpath", "constructedpairs", "straightfunction", "straightpath", "straightpairs", "curvedfunction", "curvedpath", "curvedpairs", "evenly", "oddly", "condition", "pushcurrentpicture", "popcurrentpicture", "arrowpath", "resetarrows", "tensecircle", "roundedsquare", "colortype", "whitecolor", "blackcolor", "basiccolors", "complementary", "complemented", "resolvedcolor", "normalfill", "normaldraw", "visualizepaths", "detailpaths", "naturalizepaths", "drawboundary", "drawwholepath", "drawpathonly", "visualizeddraw", "visualizedfill", "detaileddraw", "draworigin", "drawboundingbox", "drawpath", "drawpoint", "drawpoints", "drawcontrolpoints", "drawcontrollines", "drawpointlabels", "drawlineoptions", "drawpointoptions", "drawcontroloptions", "drawlabeloptions", "draworiginoptions", "drawboundoptions", "drawpathoptions", "resetdrawoptions", "undashed", "pencilled", "decorated", "redecorated", "undecorated", "passvariable", "passarrayvariable", "tostring", "topair", "format", "formatted", "quotation", "quote", "startpassingvariable", "stoppassingvariable", "eofill", "eoclip", "nofill", "dofill", "fillup", "eofillup", "nodraw", "dodraw", "area", "addbackground", "shadedup", "shadeddown", "shadedleft", "shadedright", "sortlist", "copylist", "shapedlist", "listtocurves", "listtolines", "listsize", "listlast", "uniquelist", "circularpath", "squarepath", "linearpath", "theoffset", "texmode", "systemmode", "texvar", "texstr", "isarray", "prefix", "dimension", "getmacro", "getdimen", "getcount", "gettoks", "setmacro", "setdimen", "setcount", "settoks", "setglobalmacro", "setglobaldimen", "setglobalcount", "setglobaltoks", "positionpath", "positioncurve", "positionxy", "positionpxy", "positionwhd", "positionpage", "positionregion", "positionbox", "positionanchor", "positioninregion", "positionatanchor", "wdpart", "htpart", "dppart", "texvar", "texstr", "inpath", "pointof", "leftof", "rightof", "utfnum", "utflen", "utfsub", "newhash", "disposehash", "inhash", "tohash", "isarray", "prefix", "isobject", "comment", "report", "lua", "lualist", "mp", "MP", "luacall", "mirrored", "mirroredabout", "scriptindex", "newscriptindex", "newcolor", "newrgbcolor", "newcmykcolor", "newnumeric", "newboolean", "newtransform", "newpath", "newpicture", "newstring", "newpair", "mpvard", "mpvarn", "mpvars", "mpvar", "withtolerance" }, - ["internals"]={ "nocolormodel", "greycolormodel", "graycolormodel", "rgbcolormodel", "cmykcolormodel", "shadefactor", "shadeoffset", "textextoffset", "textextanchor", "normaltransparent", "multiplytransparent", "screentransparent", "overlaytransparent", "softlighttransparent", "hardlighttransparent", "colordodgetransparent", "colorburntransparent", "darkentransparent", "lightentransparent", "differencetransparent", "exclusiontransparent", "huetransparent", "saturationtransparent", "colortransparent", "luminositytransparent", "ahvariant", "ahdimple", "ahfactor", "ahscale", "metapostversion", "maxdimensions", "drawoptionsfactor", "dq", "sq", "crossingscale", "crossingoption", "contextlmtxmode", "metafunversion", "minifunversion", "getparameters", "presetparameters", "hasparameter", "hasoption", "getparameter", "getparameterdefault", "getparametercount", "getmaxparametercount", "getparameterpath", "getparameterpen", "getparametertext", "applyparameters", "pushparameters", "popparameters", "definecolor", "anchorxy", "anchorx", "anchory", "anchorht", "anchordp", "anchorul", "anchorll", "anchorlr", "anchorur", "localanchorbox", "localanchorcell", "localanchorspan", "anchorbox", "anchorcell", "anchorspan", "matrixbox", "matrixcell", "matrixspan" }, + ["internals"]={ "nocolormodel", "greycolormodel", "graycolormodel", "rgbcolormodel", "cmykcolormodel", "shadefactor", "shadeoffset", "textextoffset", "textextanchor", "normaltransparent", "multiplytransparent", "screentransparent", "overlaytransparent", "softlighttransparent", "hardlighttransparent", "colordodgetransparent", "colorburntransparent", "darkentransparent", "lightentransparent", "differencetransparent", "exclusiontransparent", "huetransparent", "saturationtransparent", "colortransparent", "luminositytransparent", "ahvariant", "ahdimple", "ahfactor", "ahscale", "metapostversion", "maxdimensions", "drawoptionsfactor", "dq", "sq", "crossingscale", "crossingoption", "contextlmtxmode", "metafunversion", "minifunversion", "getparameters", "presetparameters", "hasparameter", "hasoption", "getparameter", "getparameterdefault", "getparametercount", "getmaxparametercount", "getparameterpath", "getparameterpen", "getparametertext", "applyparameters", "pushparameters", "popparameters", "definecolor", "newrecord", "getrecord", "anchorxy", "anchorx", "anchory", "anchorht", "anchordp", "anchorul", "anchorll", "anchorlr", "anchorur", "localanchorbox", "localanchorcell", "localanchorspan", "anchorbox", "anchorcell", "anchorspan", "matrixbox", "matrixcell", "matrixspan" }, }
\ No newline at end of file diff --git a/context/data/vscode/extensions/context/syntaxes/context-syntax-mps.json b/context/data/vscode/extensions/context/syntaxes/context-syntax-mps.json index 469656cc1..ea8fc8084 100644 --- a/context/data/vscode/extensions/context/syntaxes/context-syntax-mps.json +++ b/context/data/vscode/extensions/context/syntaxes/context-syntax-mps.json @@ -138,7 +138,7 @@ "name" : "context.string.string.text.mps" }, "shortcut" : { - "match" : "(vrbcatcoderegime|txtcatcoderegime|textextoffset|textextanchor|texcatcoderegime|squared|sq|softlighttransparent|shadeoffset|shadefactor|screentransparent|saturationtransparent|rounded|rgbcolormodel|pushparameters|prtcatcoderegime|presetparameters|popparameters|pen_top|pen_rt|pen_lft|pen_bot|overlaytransparent|notcatcoderegime|normaltransparent|nocolormodel|multiplytransparent|mitered|minifunversion|metapostversion|metafunversion|maxdimensions|matrixspan|matrixcell|matrixbox|luminositytransparent|luacatcoderegime|localanchorspan|localanchorcell|localanchorbox|lightentransparent|labeloffset|join_radius|inicatcoderegime|infinity|huetransparent|hasparameter|hasoption|hardlighttransparent|greycolormodel|graycolormodel|getparametertext|getparameters|getparameterpen|getparameterpath|getparameterdefault|getparametercount|getparameter|getmaxparametercount|exclusiontransparent|epsilon|eps|drawoptionsfactor|dq|dotlabeldiam|ditto|differencetransparent|definecolor|defaultscale|defaultpen|darkentransparent|ctxcatcoderegime|crossingscale|crossingoption|contextlmtxmode|colortransparent|colordodgetransparent|colorburntransparent|cmykcolormodel|charscale|catcoderegime|butt|beveled|bboxmargin|applyparameters|anchory|anchorxy|anchorx|anchorur|anchorul|anchorspan|anchorlr|anchorll|anchorht|anchordp|anchorcell|anchorbox|ahvariant|ahscale|ahlength|ahfactor|ahdimple|ahangle|EOF)(?=[^a-zA-Z\u005C_@!?-ÿ])", + "match" : "(vrbcatcoderegime|txtcatcoderegime|textextoffset|textextanchor|texcatcoderegime|squared|sq|softlighttransparent|shadeoffset|shadefactor|screentransparent|saturationtransparent|rounded|rgbcolormodel|pushparameters|prtcatcoderegime|presetparameters|popparameters|pen_top|pen_rt|pen_lft|pen_bot|overlaytransparent|notcatcoderegime|normaltransparent|nocolormodel|newrecord|multiplytransparent|mitered|minifunversion|metapostversion|metafunversion|maxdimensions|matrixspan|matrixcell|matrixbox|luminositytransparent|luacatcoderegime|localanchorspan|localanchorcell|localanchorbox|lightentransparent|labeloffset|join_radius|inicatcoderegime|infinity|huetransparent|hasparameter|hasoption|hardlighttransparent|greycolormodel|graycolormodel|getrecord|getparametertext|getparameters|getparameterpen|getparameterpath|getparameterdefault|getparametercount|getparameter|getmaxparametercount|exclusiontransparent|epsilon|eps|drawoptionsfactor|dq|dotlabeldiam|ditto|differencetransparent|definecolor|defaultscale|defaultpen|darkentransparent|ctxcatcoderegime|crossingscale|crossingoption|contextlmtxmode|colortransparent|colordodgetransparent|colorburntransparent|cmykcolormodel|charscale|catcoderegime|butt|beveled|bboxmargin|applyparameters|anchory|anchorxy|anchorx|anchorur|anchorul|anchorspan|anchorlr|anchorll|anchorht|anchordp|anchorcell|anchorbox|ahvariant|ahscale|ahlength|ahfactor|ahdimple|ahangle|EOF)(?=[^a-zA-Z\u005C_@!?-ÿ])", "name" : "context.data.shortcut.mps" }, "special" : { diff --git a/doc/context/sources/general/manuals/followingup/followingup-formats.tex b/doc/context/sources/general/manuals/followingup/followingup-formats.tex index 3bf9ea8ab..c0877f1c0 100644 --- a/doc/context/sources/general/manuals/followingup/followingup-formats.tex +++ b/doc/context/sources/general/manuals/followingup/followingup-formats.tex @@ -281,3 +281,79 @@ adds to the format. Convenience has a price. \stopchapter \stopcomponent + +% Some bonus content: + +When processing thousand paragraphs \type {tufte.tex}, staying below 4 seconds +(just over 60 pages per second) all|-|in that looks ok. But it doesn't say that +much. Outputting 1000 pages in 2 seconds tells a bit about the overhead on a page +but again in practice things work out differently. So what do we need to +consider? + +\startitemize + +\startitem + Check what macros and resources are preloaded and what gets always loaded at + runtime. +\stopitem + +\startitem + After a first run it's likely that the operating system has resources in its + cache so start measuring after a few runs. +\stopitem + +\startitem + Best run a test many times and and take the average runtime. +\stopitem + +\startitem + Simple macro performance tests can be faster than in real usage because the + related bytes are in \CPU\ cache memory. So one can only use that to test a + specific improvement (or hit due to added functionality). +\stopitem + +\startitem + The size of the used \TEX\ tree can matter. The file databases need to be + loaded and consulted. +\stopitem + +\startitem + The binary matters: is it optimized, does it load libraries, is it 64 bit or not. +\stopitem + +\startitem + Local and|/|or global font definitions can hit performance and when a style + does many redundant switches it might hit performance. Of course that only is + the case when font switching is adaptive. +\stopitem + +\startitem + The granularity of subsystems impacts performance: advanced color support, + inheritance used in mechanisms, abstraction combined with extensive + support for features, it all matters. +\stopitem + +\startitem + The more features one enables the more it will impact performance as does + preprocessing the input (normalizing, bidi checking, etc). +\stopitem + +\startitem + It matters how the page (and layout) dimensions are defined. Although + language doesn't really play a role (apart from possible hyphenation) + specific scripts might. +\stopitem + +\stopitemize + +These are just a few points, but it might be clear that I don't take comparisons +too serious simply because it's real runs that matter. As long as we're in the +runtime comfort zone we're okay. You can run tests within the domain of a macro +package but comparing macro package makes not that much sense. It can even +backfire, especially when claims were made about what should be or not be in a +kernel (while later violating that) or relying on old stories (or rumors) about a +variant macro package being slow. (The same is true when comparing one's favorite +operating system.) Yes, the \CONTEXT\ format file is huge and performance less +than for instance plain \TEX. If that is a problem and not a virtue then make +sure your own alternative will never end up like that. And just don't come to +conclusions about a system that you don't really know. diff --git a/metapost/context/base/mpxl/mp-luas.mpxl b/metapost/context/base/mpxl/mp-luas.mpxl index 0fea462ff..69474b354 100644 --- a/metapost/context/base/mpxl/mp-luas.mpxl +++ b/metapost/context/base/mpxl/mp-luas.mpxl @@ -275,6 +275,15 @@ permanent getparameters, presetparameters, hasparameter, hasoption, getparameter getparametercount, getmaxparametercount, getparameterpath, getparameterpen, getparametertext, % getparameteroption, applyparameters, pushparameters, popparameters ; +newscriptindex mfun_newrecord ; mfun_newrecord := scriptindex "newrecord" ; +newscriptindex mfun_getrecord ; mfun_getrecord := scriptindex "getrecord" ; + +def newrecord = runscript mfun_newrecord ; enddef ; % semicolon prevents lookahead +def getrecord = runscript mfun_getrecord enddef ; + +permanent + newrecord, getrecord ; + % No vardef's because we need to scan for an assignment too and we'll see % an endgroup otherwise. diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii index 430e4c2a7..85130e123 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.06.27 16:54} +\newcontextversion{2021.06.29 23:10} %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 bc85e355b..60a3d86e2 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.06.27 16:54} +\edef\contextversion{2021.06.29 23:10} %D For those who want to use this: diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv index 28dd93980..d539b2840 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.06.27 16:54} +\newcontextversion{2021.06.29 23:10} %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 d5bef984a..a79fb76a7 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.06.27 16:54} +\edef\contextversion{2021.06.29 23:10} %D Kind of special: diff --git a/tex/context/base/mkiv/lang-ini.lua b/tex/context/base/mkiv/lang-ini.lua index e286233bc..54e5e96f8 100644 --- a/tex/context/base/mkiv/lang-ini.lua +++ b/tex/context/base/mkiv/lang-ini.lua @@ -21,7 +21,7 @@ if not modules then modules = { } end modules ['lang-ini'] = { local type, tonumber, next = type, tonumber, next local utfbyte = utf.byte local format, gsub, gmatch, find = string.format, string.gsub, string.gmatch, string.find -local concat, sortedkeys, sortedpairs, keys, insert = table.concat, table.sortedkeys, table.sortedpairs, table.keys, table.insert +local concat, sortedkeys, sortedhash, keys, insert = table.concat, table.sortedkeys, table.sortedhash, table.keys, table.insert local utfvalues, strip, utfcharacters = string.utfvalues, string.strip, utf.characters local context = context @@ -506,15 +506,6 @@ else return 0 end end - - if CONTEXTLMTXMODE > 0 then - numbers[0] = "null" - registered.null = { - number = 0, - instance = new_language(0), - } - end - end -- not that usefull, global values @@ -590,7 +581,7 @@ languages.logger = languages.logger or { } function languages.logger.report() local result, r = { }, 0 - for tag, l in sortedpairs(registered) do + for tag, l in sortedhash(registered) do if l.loaded then r = r + 1 result[r] = format("%s:%s:%s",tag,l.parent,l.number) diff --git a/tex/context/base/mkiv/luat-cnf.lua b/tex/context/base/mkiv/luat-cnf.lua index 7bb70ce20..a67167bb9 100644 --- a/tex/context/base/mkiv/luat-cnf.lua +++ b/tex/context/base/mkiv/luat-cnf.lua @@ -209,7 +209,7 @@ function texconfig.init() end -CONTEXTLMTXMODE = %s +CONTEXTLMTXMODE = 0 -- we provide a qualified path @@ -256,7 +256,7 @@ local function makestub() end end t[#t+1] = "" - t[#t+1] = format(stub,firsttable,tostring(CONTEXTLMTXMODE or 0)) + t[#t+1] = format(stub,firsttable) io.savedata(name,concat(t,"\n")) logs.newline() end diff --git a/tex/context/base/mkiv/mult-fun.lua b/tex/context/base/mkiv/mult-fun.lua index e9572f983..c0209c89e 100644 --- a/tex/context/base/mkiv/mult-fun.lua +++ b/tex/context/base/mkiv/mult-fun.lua @@ -38,6 +38,9 @@ return { "popparameters", "definecolor", -- + "newrecord", + "getrecord", + -- "anchorxy", "anchorx", "anchory", "anchorht", "anchordp", "anchorul", "anchorll", "anchorlr", "anchorur", diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf Binary files differindex 5bf31dc0f..a238c059b 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 2273d06c0..6b0362e36 100644 --- a/tex/context/base/mkiv/status-lua.pdf +++ b/tex/context/base/mkiv/status-lua.pdf diff --git a/tex/context/base/mkiv/util-tar.lua b/tex/context/base/mkiv/util-tar.lua index 0368a7db5..c8a8536a7 100644 --- a/tex/context/base/mkiv/util-tar.lua +++ b/tex/context/base/mkiv/util-tar.lua @@ -124,7 +124,7 @@ local readers = { return true end, - link = function(t,h) + symbolic = function(t,h) local metadata = t.metadata local filename = h.name local linkname = h.linkname @@ -152,7 +152,7 @@ local skippers = { return fileoffset end, - link = function(t,h) + symbolic = function(t,h) return true end, diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl index 2716055d2..9dc2c1797 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.06.27 16:54} +\newcontextversion{2021.06.29 23:10} %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 4976f4ffe..895f817ae 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.06.27 16:54} +\immutable\edef\contextversion{2021.06.29 23:10} %overloadmode 1 % check frozen / warning %overloadmode 2 % check frozen / error diff --git a/tex/context/base/mkxl/libs-imp-lzma.lmt b/tex/context/base/mkxl/libs-imp-lzma.lmt index 69762a54c..eeecaf353 100644 --- a/tex/context/base/mkxl/libs-imp-lzma.lmt +++ b/tex/context/base/mkxl/libs-imp-lzma.lmt @@ -9,6 +9,8 @@ if not modules then modules = { } end modules ['libs-imp-lzma'] = { -- Instead of linking in libs like this we now do them optional. After all, once -- we start adding more and more stuff statically we en dup with a mess. +-- e:\tex-context\tex\texmf-win64\bin\lib\luametatex\lzma\liblzma.dll + local libname = "lzma" local libfile = "liblzma" diff --git a/tex/context/base/mkxl/lpdf-lmt.lmt b/tex/context/base/mkxl/lpdf-lmt.lmt index fc488297f..f3eea58b4 100644 --- a/tex/context/base/mkxl/lpdf-lmt.lmt +++ b/tex/context/base/mkxl/lpdf-lmt.lmt @@ -2488,7 +2488,9 @@ local openfile, closefile do else f = io.open(filename,"wb") if not f then + report() report("quitting because file %a cannot be opened for writing",filename) + report() os.exit() end -- f:setvbuf("full",64*1024) diff --git a/tex/context/base/mkxl/luat-ini.mkxl b/tex/context/base/mkxl/luat-ini.mkxl index abfe510b1..98095a4de 100644 --- a/tex/context/base/mkxl/luat-ini.mkxl +++ b/tex/context/base/mkxl/luat-ini.mkxl @@ -59,7 +59,8 @@ %D It is nicer for checking with \type {s-system-macros} if we have some meaning: \pushoverloadmode - \let\-\explicitdiscretionary + % \aliased\let\-\explicitdiscretionary + \permanent\protected\def\-{\begingroup\hyphenationmode\explicithyphenationmodecode\explicitdiscretionary\endgroup} \popoverloadmode \ifdefined\n \else \mutable\def\n{n} \fi \ifdefined\r \else \mutable\def\r{r} \fi diff --git a/tex/context/base/mkxl/mlib-run.lmt b/tex/context/base/mkxl/mlib-run.lmt index 82ca32c75..231bd4d20 100644 --- a/tex/context/base/mkxl/mlib-run.lmt +++ b/tex/context/base/mkxl/mlib-run.lmt @@ -214,6 +214,7 @@ function metapost.load(name,method) tolerance = bend_tolerance, math_mode = method, run_script = metapost.runscript, + run_internal = metapost.runinternal, script_error = metapost.scripterror, make_text = metapost.maketext, extensions = 1, diff --git a/tex/context/base/mkxl/mlib-scn.lmt b/tex/context/base/mkxl/mlib-scn.lmt index b64533cae..2fb4e7428 100644 --- a/tex/context/base/mkxl/mlib-scn.lmt +++ b/tex/context/base/mkxl/mlib-scn.lmt @@ -92,9 +92,6 @@ local tokenscanners = nil local scanset = nil local scanparameters = nil -scanners.typescanners = typescanners -scanners.tokenscanners = tokenscanners - scanset = function() -- can be optimized, we now read twice scantoken() if scantoken(true) == rightbrace_code then @@ -165,6 +162,9 @@ table.setmetatableindex(tokenscanners,function() return typescanners[e] or scanexpression end) +scanners.typescanners = typescanners +scanners.tokenscanners = tokenscanners + -- a key like 'color' has code 'declare' local function scanparameters(fenced) @@ -179,18 +179,29 @@ local function scanparameters(fenced) end while true do -- local s = scansymbol() - local s = scansymbol(false,false) + local s = scansymbol(false,false) -- keep expand if s == close then break; elseif s == "," then -- continue else - local t = scantoken(true) - if t == equals_code or t == colon_code then +-- local t = scantoken(true) +-- if t == equals_code or t == colon_code then +-- -- optional equal or : +-- scantoken() +-- else +-- end +-- local kind = scantoken(true) + +-- test: +-- + local kind = scantoken(true) + if kind == equals_code or kind == colon_code then -- optional equal or : scantoken() + local kind = scantoken(true) end - local kind = scantoken(true) + if kind == leftdelimiter_code or kind == tag_code or kind == capsule_code then kind = scanexpression(true) data[s] = (typescanners[kind] or scanexpression)() @@ -381,9 +392,11 @@ end -- todo: -local function getparameter() +local function getparameter(v) local list, n = collectnames() - local v = namespaces + if not v then + v = namespaces + end for i=1,n do local l = list[i] local vl = v[l] @@ -752,6 +765,61 @@ function metapost.setparameterset(namespace,t) namespaces[namespace] = t end +-- This is an experiment for Alan and me. + +local records = { } +local stack = setmetatableindex("table") +local nofrecords = 0 +local interim = 0 + +registerdirect("newrecord", function() + scantoken() -- semicolon + local p = get_parameters() + local n = 0 + if interim > 0 then + records[interim] = p + local top = stack[interim] + if top then + top = stack[interim][#top] + if top then + setmetatableindex(p,top) + end + end + n = interim + interim = 0 + else + nofrecords = nofrecords + 1 + records[nofrecords] = p + n = nofrecords + end + return n +end) + +registerdirect("getrecord", function() + local n = scaninteger() + local v = records[n] + while true do + local t = scansymbol(true) + if t == ";" or t == ")" then + return v + elseif t == "." then + scansymbol() + else + t = scansymbol() + v = v[t] + end + end +end) + +function metapost.runinternal(n,m) + if m == 0 then + insert(stack[n],records[n]) + interim = n + elseif m == 1 then + records[n] = remove(stack[n]) or records[n] + end +end + -- goodies registerdirect("definecolor", function() diff --git a/tex/context/base/mkxl/pack-rul.mkxl b/tex/context/base/mkxl/pack-rul.mkxl index c4e510623..bbfd88bfe 100644 --- a/tex/context/base/mkxl/pack-rul.mkxl +++ b/tex/context/base/mkxl/pack-rul.mkxl @@ -1766,6 +1766,12 @@ % \framed[width=2cm,align=middle,location=lohi] {location\\equals\\lohi} % \framed[width=2cm,align=middle,location=middle] {location\\equals\\middle} % B} +% \vskip2cm +% \ruledhbox +% {A +% \framed[width=2cm,align=middle,location=keep] {location\\equals\\top} +% \framed[width=2cm,align=middle,location=formula {location\\equals\\bottom} +% B} \installframedlocator \v!hanging % best with strut=no *1* / see mail to list by SB {} diff --git a/tex/context/base/mkxl/strc-con.mklx b/tex/context/base/mkxl/strc-con.mklx index 5e0ceb833..a7df2f9cf 100644 --- a/tex/context/base/mkxl/strc-con.mklx +++ b/tex/context/base/mkxl/strc-con.mklx @@ -261,7 +261,7 @@ \currentconstructiontext \endgroup} -\protected\setvalue{\??constructionmainhandler\v!construction}#1% +\protected\defcsname\??constructionmainhandler\v!construction\endcsname#1% {\iftrialtypesetting \else \begingroup \currentconstructionsynchronize % reinstated @@ -270,7 +270,7 @@ \endgroup \fi#1} -\protected\setvalue{\??constructiontexthandler\v!construction}% +\protected\defcsname\??constructiontexthandler\v!construction\endcsname {\begingroup \useconstructionstyleandcolor\c!headstyle\c!headcolor % move to \currentconstructiontext \the\everyconstruction @@ -294,7 +294,7 @@ % \def\resetconstructions % to be used in e.g. footnotes % {\c_strc_constructions_nested_state\zerocount} -\protected\setvalue{\??constructioncommandhandler\v!construction}% +\protected\defcsname\??constructioncommandhandler\v!construction\endcsname {\endgroup} \let\p_strc_constructions_sample \empty diff --git a/tex/context/base/mkxl/strc-not.mklx b/tex/context/base/mkxl/strc-not.mklx index a0691d9f1..0adb23566 100644 --- a/tex/context/base/mkxl/strc-not.mklx +++ b/tex/context/base/mkxl/strc-not.mklx @@ -449,7 +449,10 @@ \c_attr_destination\currentconstructionattribute\relax % todo, whole text \signalcharacter \endgroup - \fi#following} + \fi + \ifconditional\c_strc_notes_flushed\else + #following\relax + \fi} \protected\defcsname\??constructionnotehandler\v!notation:\v!note\endcsname % in the running text {\ifnotesenabled @@ -481,6 +484,8 @@ \global\settrue\postponednote \orelse\ifconditional\inlocalnotes % todo: per note class \global\settrue\postponednote + \orelse\ifconditional\c_strc_notes_flushed + \handlenoteitself\currentnote\currentnotenumber \orelse\ifconditional\c_strc_notes_delayed % probably end notes \else @@ -938,28 +943,49 @@ \installcorenamespace{notelocation} \newconditional\c_strc_notes_delayed +\newconditional\c_strc_notes_flushed + +\protected\def\strc_notes_set_delayed_yes{\settrue \c_strc_notes_delayed\setfalse\c_strc_notes_flushed} +\protected\def\strc_notes_set_delayed_nop{\setfalse\c_strc_notes_delayed\setfalse\c_strc_notes_flushed} +\protected\def\strc_notes_set_delayed_lst{\settrue \c_strc_notes_delayed\settrue \c_strc_notes_flushed} + +\defcsname\??notelocation\v!page\endcsname + {\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_nop + \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_page} + +\defcsname\??notelocation\v!columns\endcsname + {\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_nop + \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_columns} + +\defcsname\??notelocation\v!lastcolumn\endcsname + {\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_nop + \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_lastcolumn} + +\defcsname\??notelocation\v!firstcolumn\endcsname + {\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_nop + \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_firstcolumn} -\protected\def\strc_notes_set_delayed_yes{\settrue \c_strc_notes_delayed} -\protected\def\strc_notes_set_delayed_nop{\setfalse\c_strc_notes_delayed} - -\defcsname\??notelocation\v!page \endcsname{\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_nop - \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_page} -\defcsname\??notelocation\v!columns \endcsname{\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_nop - \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_columns} -\defcsname\??notelocation\v!lastcolumn \endcsname{\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_nop - \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_lastcolumn} -\defcsname\??notelocation\v!firstcolumn\endcsname{\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_nop - \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_firstcolumn} -\defcsname\??notelocation\v!none \endcsname{\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_yes - \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_none} -\defcsname\??notelocation\v!text \endcsname{\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_yes - \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_text} -\defcsname\??notelocation\v!high \endcsname{\letcsname\??notepositionvariant\currentnote\endcsname\strc_notes_set_position_high} -\defcsname\??notelocation\v!bottom \endcsname{\letcsname\??notepositionvariant\currentnote\endcsname\strc_notes_set_position_bottom} - -\defcsname\??notedelayedvariant \??notedelayedvariant \endcsname{\strc_notes_set_delayed_nop} % not let -\defcsname\??notepositionvariant\??notepositionvariant\endcsname{\strc_notes_set_position_bottom} % not let -\defcsname\??notelocationvariant\??notelocationvariant\endcsname{\strc_notes_set_location_page} % not let +\defcsname\??notelocation\v!none\endcsname + {\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_yes + \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_none} + +\defcsname\??notelocation\v!list\endcsname + {\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_lst + \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_none} + +\defcsname\??notelocation\v!text\endcsname + {\letcsname\??notedelayedvariant \currentnote\endcsname\strc_notes_set_delayed_yes + \letcsname\??notelocationvariant\currentnote\endcsname\strc_notes_set_location_text} + +\defcsname\??notelocation\v!high\endcsname + {\letcsname\??notepositionvariant\currentnote\endcsname\strc_notes_set_position_high} + +\defcsname\??notelocation\v!bottom\endcsname + {\letcsname\??notepositionvariant\currentnote\endcsname\strc_notes_set_position_bottom} + +\defcsname\??notedelayedvariant \??notedelayedvariant \endcsname{\strc_notes_set_delayed_nop } % not \let +\defcsname\??notepositionvariant\??notepositionvariant\endcsname{\strc_notes_set_position_bottom} % not \let +\defcsname\??notelocationvariant\??notelocationvariant\endcsname{\strc_notes_set_location_page } % not \let \protected\def\strc_notes_set_delayed {\csname\??notedelayedvariant @@ -1261,7 +1287,9 @@ \begstrut \strc_references_flush_destination_nodes \strc_notes_set_destination_attribute_text - \strc_notes_inject_text\relax + \ifconditional\c_strc_notes_flushed\else + \strc_notes_inject_text\relax + \fi \ifvmode\obeydepth\else\endstrut\fi % \obeydepth is new per 2015-01-10 \strc_constructions_stored_stop %endgroup @@ -1270,6 +1298,8 @@ \protected\def\strc_notes_inject_text % hm main? {\clf_savedlisttitle{\currentconstructionmain}\currentconstructionlistentry\relax} +\installstructurelistprocessor{construction}{\usestructurelistprocessor{section}} + \newsignal\d_strc_notes_signal \newconditional\processingnote diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 48cd432b5..4a2afb265 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-06-27 16:54 +-- merge date : 2021-06-29 23:10 do -- begin closure to overcome local limits and interference |