From c3a4b56ae20890538fedd2d4f119b8db501544cf Mon Sep 17 00:00:00 2001 From: Context Git Mirror Bot Date: Fri, 17 Apr 2015 02:15:04 +0200 Subject: 2015-04-17 02:05:00 --- tex/context/base/back-pdf.mkiv | 7 ++- tex/context/base/colo-ini.lua | 21 ++++--- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4190 -> 4181 bytes tex/context/base/context.mkiv | 2 +- tex/context/base/meta-ini.mkiv | 8 +-- tex/context/base/page-imp.mkiv | 2 +- tex/context/base/publ-ini.lua | 69 +++++++++++++-------- tex/context/base/status-files.pdf | Bin 24484 -> 24470 bytes tex/context/base/status-lua.pdf | Bin 250292 -> 250291 bytes tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 11 files changed, 69 insertions(+), 44 deletions(-) diff --git a/tex/context/base/back-pdf.mkiv b/tex/context/base/back-pdf.mkiv index ef004fb4e..38de4bbfd 100644 --- a/tex/context/base/back-pdf.mkiv +++ b/tex/context/base/back-pdf.mkiv @@ -267,7 +267,12 @@ \unexpanded\def\dostartclipping#1#2#3% we can move this to lua and only set a box here {\PointsToBigPoints{#2}\width \PointsToBigPoints{#3}\height - \meta_grab_clip_path{#1}\width\height{0 0 m \width\space 0 l \width \height l 0 \height l}% + \meta_grab_clip_path{#1}\width\height{% + 0 0 m % + \width\space 0 l % + \width\space \height\space l % + 0 \height\space l% + }% \pdfliteral{q 0 w \MPclippath\space W n}} \unexpanded\def\dostopclipping diff --git a/tex/context/base/colo-ini.lua b/tex/context/base/colo-ini.lua index 0b3110d57..1065aadc0 100644 --- a/tex/context/base/colo-ini.lua +++ b/tex/context/base/colo-ini.lua @@ -14,8 +14,10 @@ local lpegmatch, lpegpatterns = lpeg.match, lpeg.patterns local formatters = string.formatters local trace_define = false trackers.register("colors.define",function(v) trace_define = v end) +local trace_pgf = false trackers.register("colors.pgf", function(v) trace_pgf = v end) local report_colors = logs.reporter("colors","defining") +local report_pgf = logs.reporter("colors","pgf") local attributes = attributes local backends = backends @@ -990,24 +992,27 @@ do local function pgfxcolorspec(model,ca) -- {}{}{colorspace}{list} -- local cv = attributes.colors.values[ca] local cv = colorvalues[ca] + local str if cv then if model and model ~= 0 then model = model else model = forcedmodel(cv[1]) end - if model == 2 then - return formatters["{gray}{%1.3f}"](cv[2]) - elseif model == 3 then - return formatters["{rgb}{%1.3f,%1.3f,%1.3f}"](cv[3],cv[4],cv[5]) + if model == 3 then + str = formatters["{rgb}{%1.3f,%1.3f,%1.3f}"](cv[3],cv[4],cv[5]) elseif model == 4 then - return formatters["{cmyk}{%1.3f,%1.3f,%1.3f,%1.3f}"](cv[6],cv[7],cv[8],cv[9]) - else - return formatters["{gray}{%1.3f}"](cv[2]) + str = formatters["{cmyk}{%1.3f,%1.3f,%1.3f,%1.3f}"](cv[6],cv[7],cv[8],cv[9]) + else -- there is no real gray + str = formatters["{rgb}{%1.3f,%1.3f,%1.3f}"](cv[2],cv[2],cv[2]) end else - return "{gray}{0}" + str = "{rgb}{0,0,0}" + end + if trace_pgf then + report_pgf("model %a, string %a",model,str) end + return str end implement { diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index 406cad1e8..93f95a7df 100644 --- a/tex/context/base/cont-new.mkiv +++ b/tex/context/base/cont-new.mkiv @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2015.04.16 23:16} +\newcontextversion{2015.04.17 02:03} %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/context-version.pdf b/tex/context/base/context-version.pdf index 063fa19b3..fb33b3fd5 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/context.mkiv b/tex/context/base/context.mkiv index 2f650dfe4..5f3187eee 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -39,7 +39,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2015.04.16 23:16} +\edef\contextversion{2015.04.17 02:03} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/meta-ini.mkiv b/tex/context/base/meta-ini.mkiv index 6e23411f9..c3b94f899 100644 --- a/tex/context/base/meta-ini.mkiv +++ b/tex/context/base/meta-ini.mkiv @@ -426,10 +426,10 @@ \unexpanded\def\meta_grab_clip_path#1#2#3#4% #4 is alternative (called in backend code) {\begingroup -% \edef\width {#2\space}\let\overlaywidth \width -% \edef\height{#3\space}\let\overlayheight\height - \d_overlay_width #2\onebasepoint\edef\width {\the\d_overlay_width \space}% - \d_overlay_height#3\onebasepoint\edef\height{\the\d_overlay_height\space}% + \edef\width {#2}% \let\overlaywidth \width + \edef\height{#3}% \let\overlayheight\height + \d_overlay_width #2\onebasepoint + \d_overlay_height#3\onebasepoint \edef\currentMPclip{#1}% \ifcsname\??mpclip\currentMPclip\endcsname \meta_grab_clip_path_indeed diff --git a/tex/context/base/page-imp.mkiv b/tex/context/base/page-imp.mkiv index 3f5afeb40..198a98229 100644 --- a/tex/context/base/page-imp.mkiv +++ b/tex/context/base/page-imp.mkiv @@ -362,7 +362,7 @@ \installpagearrangement 2TOPSIDE {\dosetuparrangement{1}{2}{4}{2}{3}% \pusharrangedpageTWOTOPSIDE\poparrangedpagesTWOTOPSIDE\handlearrangedpageTOP} - + \def\filluparrangedpages % beware: \realpageno is 1 ahead {\ifarrangingpages \scratchcounter\numexpr\realpageno-\plusone\relax diff --git a/tex/context/base/publ-ini.lua b/tex/context/base/publ-ini.lua index 3716c07b7..2855399db 100644 --- a/tex/context/base/publ-ini.lua +++ b/tex/context/base/publ-ini.lua @@ -39,12 +39,14 @@ local report = logs.reporter("publications") local report_cite = logs.reporter("publications","cite") local report_list = logs.reporter("publications","list") local report_reference = logs.reporter("publications","reference") +local report_shorts = logs.reporter("publications","shorts") local trace = false trackers.register("publications", function(v) trace = v end) local trace_cite = false trackers.register("publications.cite", function(v) trace_cite = v end) local trace_missing = false trackers.register("publications.cite.missing", function(v) trace_missing = v end) local trace_references = false trackers.register("publications.cite.references", function(v) trace_references = v end) local trace_detail = false trackers.register("publications.detail", function(v) trace_detail = v end) +local trace_shorts = false trackers.register("publications.shorts", function(v) trace_shorts = v end) publications = publications or { } local datasets = publications.datasets @@ -995,7 +997,13 @@ do end local ay, by = a[3], b[3] if ay ~= by then - return ay < by + -- bah, bah, bah + local an, bn = tonumber(ay), tonumber(by) + if an and bn then + return an < bn + else + return ay < by + end end return a[4] < b[4] end @@ -1079,35 +1087,42 @@ do end end end - for short, tags in next, shorts do -- ordered ? - local done = #tags > 0 - -- now we assign the suffixes, unless we have only one reference - if done then - sort(tags,shortsorter) - local n = #tags - if n > 1 then - for i=1,n do - local tag = tags[i][1] - local detail = details[tag] - local suffix = numbertochar(i) - local entry = luadata[tag] - local year = entry.year - detail.short = short - detail.suffix = suffix - if year then - detail.suffixedyear = year .. suffix - end - end - end - else - local tag = tags[1][1] - local detail = details[tag] - local entry = luadata[tag] - local year = entry.year - detail.short = short + -- for short, tags in next, shorts do -- ordered ? + for short, tags in sortedhash(shorts) do -- ordered ? + local n = #tags + if n == 0 then + -- skip + elseif n == 1 then + local tagdata = tags[1] + local tag = tagdata[1] + local detail = details[tag] + local entry = luadata[tag] + local year = entry.year + detail.short = short if year then detail.suffixedyear = year end + if trace_shorts then + report_shorts("year %a, suffix %a, short %a, tag %a",year or "-","-",short,tag) + end + elseif n > 1 then + sort(tags,shortsorter) + for i=1,n do + local tagdata = tags[i] + local tag = tagdata[1] + local detail = details[tag] + local suffix = numbertochar(i) + local entry = luadata[tag] + local year = entry.year + detail.short = short + detail.suffix = suffix + if year then + detail.suffixedyear = year .. suffix + end + if trace_shorts then + report_shorts("year %a, suffix %a, short %a, tag %a",year or "-",suffix or "-",short,tag) + end + end end end end diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index 792d11412..aca61ed08 100644 Binary files a/tex/context/base/status-files.pdf and b/tex/context/base/status-files.pdf differ diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf index 6334ced95..cbd2c0acb 100644 Binary files a/tex/context/base/status-lua.pdf and b/tex/context/base/status-lua.pdf differ diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 0e289b235..9c644c813 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 : luatex-fonts-merged.lua -- parent file : luatex-fonts.lua --- merge date : 04/16/15 23:16:42 +-- merge date : 04/17/15 02:03:30 do -- begin closure to overcome local limits and interference -- cgit v1.2.3