From 2956fe45a7fd41b8f84ccec8edcba66a3445e6e9 Mon Sep 17 00:00:00 2001 From: Context Git Mirror Bot Date: Thu, 25 Feb 2016 14:15:08 +0100 Subject: 2016-02-25 14:02:00 --- tex/context/base/context-version.pdf | Bin 4168 -> 4172 bytes tex/context/base/mkiv/back-pdf.mkiv | 8 ++- tex/context/base/mkiv/cont-new.mkiv | 2 +- tex/context/base/mkiv/context.mkiv | 2 +- tex/context/base/mkiv/grph-rul.lua | 38 +++++------ tex/context/base/mkiv/lpdf-ano.lua | 26 ++++---- tex/context/base/mkiv/mlib-run.lua | 15 +++-- tex/context/base/mkiv/mult-fun.lua | 2 +- tex/context/base/mkiv/status-files.pdf | Bin 9038 -> 9064 bytes tex/context/base/mkiv/status-lua.pdf | Bin 261033 -> 267224 bytes tex/context/base/mkiv/strc-itm.mkvi | 2 +- tex/context/base/mkiv/strc-mat.mkiv | 73 ++++++++++++++++++--- tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 13 files changed, 116 insertions(+), 54 deletions(-) (limited to 'tex') diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf index c8b24df0d..db62d2f0f 100644 Binary files a/tex/context/base/context-version.pdf and b/tex/context/base/context-version.pdf differ diff --git a/tex/context/base/mkiv/back-pdf.mkiv b/tex/context/base/mkiv/back-pdf.mkiv index c4aaacc9b..93e6af0b3 100644 --- a/tex/context/base/mkiv/back-pdf.mkiv +++ b/tex/context/base/mkiv/back-pdf.mkiv @@ -136,10 +136,11 @@ \unexpanded\def\dostartrotation#1% {\forcecolorhack - \clf_pdfstartrotation#1\relax} + \clf_pdfstartrotation#1\relax} % todo: implement without Q q \unexpanded\def\dostoprotation - {\clf_pdfstoprotation} + {\clf_pdfstoprotation + \forcecolorhack} % scaling @@ -148,7 +149,8 @@ \clf_pdfstartscaling rx #1 ry #2\relax} \unexpanded\def\dostopscaling - {\clf_pdfstopscaling} + {\clf_pdfstopscaling + \forcecolorhack} % mirroring diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv index a5c077c88..9b95cfa8c 100644 --- a/tex/context/base/mkiv/cont-new.mkiv +++ b/tex/context/base/mkiv/cont-new.mkiv @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2016.02.24 11:19} +\newcontextversion{2016.02.25 14:00} %D This file is loaded at runtime, thereby providing an excellent place for %D hacks, patches, extensions and new features. diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv index b116e336a..2bf4d34c5 100644 --- a/tex/context/base/mkiv/context.mkiv +++ b/tex/context/base/mkiv/context.mkiv @@ -39,7 +39,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2016.02.24 11:19} +\edef\contextversion{2016.02.25 14:00} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/mkiv/grph-rul.lua b/tex/context/base/mkiv/grph-rul.lua index 4ca36b677..5d3cb8ad5 100644 --- a/tex/context/base/mkiv/grph-rul.lua +++ b/tex/context/base/mkiv/grph-rul.lua @@ -55,33 +55,31 @@ do return v end) - local makecode = utilities.templates.replacer [[ - beginfig(1); - RuleWidth := %width% ; - RuleHeight := %height% ; - RuleDepth := %depth% ; - RuleThickness := %line% ; - RuleFactor := %factor% ; - RuleOffset := %offset% ; - def RuleColor = %color% enddef ; - %data%; - endfig ; - ]] + local replacer = utilities.templates.replacer local predefined = { - ["fake:word"] = [[ -fill unitsquare xscaled RuleWidth yscaled RuleHeight withcolor RuleColor ; -draw (0,RuleDepth+RuleThickness/2) -- (RuleWidth,RuleDepth+RuleThickness/2) withpen pencircle scaled RuleThickness withcolor white ; + ["fake:word"] = replacer [[ +FakeWord(%width%,%height%,%depth%,%line%,%color%); ]], - ["fake:rule"] = [[ -fill unitsquare xscaled RuleWidth yscaled RuleHeight withcolor RuleColor ; + ["fake:rule"] = replacer[[ +FakeRule(%width%,%height%,%depth%,%line%,%color%); ]], + ["fake:rest"] = replacer [[ +RuleWidth := %width% ; +RuleHeight := %height% ; +RuleDepth := %depth% ; +RuleThickness := %line% ; +RuleFactor := %factor% ; +RuleOffset := %offset% ; +def RuleColor = %color% enddef ; +%data%; + ]] } ruleactions.mp = function(p,h,v,i,n) - local name = p.name - local code = makecode { - data = name and predefined[name] or p.data or "", + local name = p.name or "fake:rest" + local code = (predefined[name] or predefined["fake:rest"]) { + data = p.data or "", width = p.width * bpfactor, height = p.height * bpfactor, depth = p.depth * bpfactor, diff --git a/tex/context/base/mkiv/lpdf-ano.lua b/tex/context/base/mkiv/lpdf-ano.lua index f4f5f1a8e..42e3c3b10 100644 --- a/tex/context/base/mkiv/lpdf-ano.lua +++ b/tex/context/base/mkiv/lpdf-ano.lua @@ -495,14 +495,15 @@ local function pdflinkinternal(internal,page) local used = usedinternals[internal] if used == defaultview or used == true then return pagereferences[page] + else + if type(internal) ~= "string" then + internal = autoprefix .. internal + end + return pdfdictionary { + S = pdf_goto, + D = internal, + } end - if type(internal) ~= "string" then - internal = autoprefix .. internal - end - return pdfdictionary { - S = pdf_goto, - D = internal, - } else return pagereferences[page] end @@ -515,11 +516,12 @@ local function pdflinkname(destination,internal,page) local used = usedinternals[internal] if used == defaultview then -- or used == true then return pagereferences[page] + else + return pdfdictionary { + S = pdf_goto, + D = destination, + } end - return pdfdictionary { - S = pdf_goto, - D = destination, - } elseif method == v_name then -- flaginternals[internal] = true -- for bookmarks and so return pdfdictionary { @@ -752,7 +754,7 @@ runners["inner"] = function(var,actions) local name = nil local method = references.innermethod local vi = var.i - local page = var.page + local page = var.r if vi then local vir = vi.references if vir then diff --git a/tex/context/base/mkiv/mlib-run.lua b/tex/context/base/mkiv/mlib-run.lua index f20461bbb..8109cff2d 100644 --- a/tex/context/base/mkiv/mlib-run.lua +++ b/tex/context/base/mkiv/mlib-run.lua @@ -601,10 +601,17 @@ do function metapost.simple(format,code) -- even less than metapost.quickcanddirty local mpx = metapost.format(format or "metafun","metafun") -- metapost.setoutercolor(2) - metapost.process(mpx,code,false,flusher,false,false,1,true) -- last true is plugmode ! - local stream = concat(result," ") - result = nil -- cleanup - return stream, width, height, depth + metapost.process(mpx, + { "beginfig(1);", code, "endfig;" }, + false, flusher, false, false, 1, true -- last true is plugmode ! + ) + if result then + local stream = concat(result," ") + result = nil -- cleanup + return stream, width, height, depth + else + return "", 0, 0, 0 + end end end diff --git a/tex/context/base/mkiv/mult-fun.lua b/tex/context/base/mkiv/mult-fun.lua index 63cbe1a82..76a2ab915 100644 --- a/tex/context/base/mkiv/mult-fun.lua +++ b/tex/context/base/mkiv/mult-fun.lua @@ -126,7 +126,7 @@ return { "passvariable", "passarrayvariable", "tostring", "format", "formatted", "startpassingvariable", "stoppassingvariable", -- - "eofill", "eoclip", "nofill", + "eofill", "eoclip", "nofill", "fillup", "eofillup", "area", -- "addbackground", diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf index 6a35797d3..0b2a283e6 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 202123eb8..1dc7bb32f 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/mkiv/strc-itm.mkvi b/tex/context/base/mkiv/strc-itm.mkvi index b826413b2..e8b47babe 100644 --- a/tex/context/base/mkiv/strc-itm.mkvi +++ b/tex/context/base/mkiv/strc-itm.mkvi @@ -1586,7 +1586,7 @@ \fi \fi \noindent % no \dontleavehmode - \hbox to \dimexpr\availablehsize/\scratchcounter\relax{\collecteditemgroupitem}% + \hbox to \dimexpr\availablehsize/\scratchcounter\relax{\collecteditemgroupitem\hss}% \endgroup} \def\strc_itemgroups_collected_flush diff --git a/tex/context/base/mkiv/strc-mat.mkiv b/tex/context/base/mkiv/strc-mat.mkiv index 6bf9b149b..5bfad81eb 100644 --- a/tex/context/base/mkiv/strc-mat.mkiv +++ b/tex/context/base/mkiv/strc-mat.mkiv @@ -885,10 +885,10 @@ \unexpanded\def\formulanumber {\strc_formulas_number} % for the moment -\def\strc_formulas_number +\unexpanded\def\strc_formulas_number {\dosingleempty\strc_formulas_number_again} -\def\strc_formulas_number_again[#1]% +\unexpanded\def\strc_formulas_number_again[#1]% {\def\currentformulareference{#1}% \strc_formulas_number_indeed} @@ -902,27 +902,80 @@ \setfalse\c_strc_formulas_increment \dosingleempty\strc_formulas_place} -\def\strc_formulas_place[#1]% +\unexpanded\def\strc_formulas_place[#1]% {\def\currentplaceformulareference{#1}% \let\currentplaceformulasuffix\empty \doifelsenextbgroup\strc_formulas_place_yes\strc_formulas_place_nop} % [ref]{} -\def\strc_formulas_place_yes#1% +\unexpanded\def\strc_formulas_place_yes#1% {\def\currentplaceformulasuffix{#1}% \strc_formulas_place_nop} -\def\strc_formulas_place_nop +\unexpanded\def\strc_formulas_place_nop {\doifelsenextchar$\strc_formulas_place_pickup\strc_formulas_place_indeed} % [ref]$$ [ref]\start -\def\strc_formulas_place_indeed +\unexpanded\def\strc_formulas_place_indeed {\strc_formulas_place_numbering} -\def\strc_formulas_place_pickup$$#1$$% +\unexpanded\def\strc_formulas_place_pickup$$#1$$% {\strc_formulas_place_numbering \strc_formulas_start_formula{}#1\strc_formulas_stop_formula} -\let\startplaceformula\placeformula -\let\stopplaceformula \relax +% \let\startplaceformula\placeformula +% \let\stopplaceformula \relax + +% \startplaceformula \startformula e=mc^2 \stopformula \stopplaceformula +% \startplaceformula[-] \startformula e=mc^2 \stopformula \stopplaceformula +% \startplaceformula[x] \startformula e=mc^2 \stopformula \stopplaceformula +% \startplaceformula[reference=foo] \startformula e=mc^2 \stopformula \stopplaceformula +% \startplaceformula[title=whatever] \startformula e=mc^2 \stopformula \stopplaceformula +% \startplaceformula[suffix=x] \startformula e=mc^2 \stopformula \stopplaceformula + +\unexpanded\def\startplaceformula{\dosingleempty\strc_formulas_start_place} +\unexpanded\def\stopplaceformula {\strc_formulas_stop_place} + +\let\currentplaceformulareference\empty +\let\currentplaceformulasuffix \empty + +\def\strc_formulas_start_place + {\begingroup + \global\settrue\c_strc_formulas_inside_place + \iffirstargument + \expandafter\strc_formulas_start_place_yes + \else + \expandafter\strc_formulas_start_place_nop + \fi} + +\def\strc_formulas_start_place_yes[#1]% + {\doifassignmentelse{#1}\strc_formulas_start_place_parameters\strc_formulas_start_place_reference[#1]} + +\def\strc_formulas_start_place_nop + {\let\currentplaceformulareference\empty + \let\currentplaceformulasuffix \empty + \strc_formulas_place_nop} + +\def\strc_formulas_start_place_reference[#1]% + {\edef\currentplaceformulareference{#1}% + \let\currentplaceformulasuffix\empty + %\doifelsenextbgroup\strc_formulas_place_yes\strc_formulas_place_nop} % [ref]{} + \strc_formulas_place_nop} + +\def\strc_formulas_start_place_parameters[#1]% + {\letdummyparameter\c!name \empty + \letdummyparameter\c!reference\empty + \letdummyparameter\c!suffix \empty + \getdummyparameters[#1]% + \edef\currentplaceformulatitle {\dummyparameter\c!title}% + \edef\currentplaceformulareference{\dummyparameter\c!reference}% + \edef\currentplaceformulasuffix {\dummyparameter\c!suffix}% + \ifx\currentplaceformulatitle\empty\else + \normalexpanded{\setformulalistentry{\currentplaceformulatitle}}% + \fi + \doifelsenextbgroup\strc_formulas_place_yes\strc_formulas_place_nop} % [ref]{} + +\def\strc_formulas_stop_place + {\relax + \endgroup} % to be checked @@ -955,7 +1008,7 @@ \unexpanded\def\placenamedformula {\dosingleempty\strc_formulase_place_named} -\def\strc_formulase_place_named +\unexpanded\def\strc_formulase_place_named {\iffirstargument \expandafter\strc_formulase_place_named_yes \else diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 7c784a440..51d289527 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 : 02/24/16 11:19:40 +-- merge date : 02/25/16 14:00:07 do -- begin closure to overcome local limits and interference -- cgit v1.2.3