diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3build/l3build.lua')
-rw-r--r-- | Master/texmf-dist/tex/latex/l3build/l3build.lua | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/Master/texmf-dist/tex/latex/l3build/l3build.lua b/Master/texmf-dist/tex/latex/l3build/l3build.lua index f6a58a0a1c4..f75a96959be 100644 --- a/Master/texmf-dist/tex/latex/l3build/l3build.lua +++ b/Master/texmf-dist/tex/latex/l3build/l3build.lua @@ -17,8 +17,8 @@ --]] -- Version information: should be identical to that in l3build.dtx -release_date = "2016/06/22" -release_ver = "6641" +release_date = "2016/10/19" +release_ver = "6730" -- "module" is a deprecated function in Lua 5.2: as we want the name -- for other purposes, and it should eventually be 'free', simply @@ -110,7 +110,7 @@ typesetexe = typesetexe or "pdflatex" unpackexe = unpackexe or "tex" zipexe = "zip" -checkopts = checkopts or "-interaction=batchmode" +checkopts = checkopts or "-interaction=nonstopmode" cmdchkopts = cmdchkopts or "-interaction=batchmode" typesetopts = typesetopts or "-interaction=nonstopmode" unpackopts = unpackopts or "" @@ -611,7 +611,7 @@ function allmodules(target) end local release = "" if optrelease then - release = " --release=" .. release[1] + release = " --release=" .. optrelease[1] end local errorlevel = run( i, @@ -792,8 +792,19 @@ function formatlog(logfile, newfile, engine) if checksearch then line = string.gsub(line, "%(.*/([%w-]+%.[%w-]+)%)?%s*$", "(../%1") end - -- Zap map loading of map - line = string.gsub(line, "%{%w?:?[%w/%-]*/pdftex%.map%}", "") + -- Deal with the map line: some wrapping then a zap + if string.match(lastline, "*pdftex%.map") then + print("MAP ELONG") + line = lastline .. line + lastline = "" + end + if string.match(line, "%{[^%}]*pdftex%.map%}") then + if string.match(line, "pdftex%.map%}%s*%(") and + not string.match(line, "%)%s*$") then + return "", line + end + end + line = string.gsub(line, "%{[^%}]*/pdftex%.map%}", "") -- Deal with the fact that "(.aux)" may have still a leading space line = string.gsub(line, "^ %(%.aux%)", "(.aux)") -- Merge all of .fd data into one line so will be removed later @@ -881,6 +892,7 @@ function formatlualog(logfile, newfile) -- Find \discretionary or \whatsit lines: -- These may come back later if string.match(line, "^%.+\\discretionary$") or + string.match(line, "^%.+\\discretionary %(penalty 50%)$") or string.match(line, "^%.+\\discretionary50%|$") or string.match(line, "^%.+\\discretionary50%| replacing $") or string.match(line, "^%.+\\whatsit$") then @@ -891,6 +903,8 @@ function formatlualog(logfile, newfile) if string.match(line, "^%.+\\mathon$") then return line, line end + -- LuaTeX has a flexible output box + line = string.gsub(line,"\\box\\outputbox", "\\box255") -- LuaTeX identifies spaceskip glue line = string.gsub(line,"%(\\spaceskip%) ", " ") -- Remove 'display' at end of display math boxes: @@ -934,9 +948,15 @@ function formatlualog(logfile, newfile) local function boxprefix(s) return string.gsub(string.match(s, "^(%.+)"), "%.", "%%.") end + -- 'Recover' some discretionary data + if string.match(lastline, "^%.+\\discretionary %(penalty 50%)$") and + string.match(line, boxprefix(lastline) .. "%.= ") then + return string.gsub(line, "%.= ", ""),"" + end -- Where the last line was a discretionary, looks for the -- info one level in about what it represents if string.match(lastline, "^%.+\\discretionary$") or + string.match(lastline, "^%.+\\discretionary %(penalty 50%)$") or string.match(lastline, "^%.+\\discretionary50%|$") or string.match(lastline, "^%.+\\discretionary50%| replacing $") then local prefix = boxprefix(lastline) @@ -958,6 +978,8 @@ function formatlualog(logfile, newfile) if string.match(lastline, "^%.+\\discretionary50%|$") then lastline = string.gsub(lastline, "50%|$", "") end + -- Remove some info that TeX90 lacks + lastline = string.gsub(lastline, " %(penalty 50%)$", "") -- A normal (TeX90) discretionary: -- add with the line break reintroduced return lastline .. os_newline .. line, "" |