summaryrefslogtreecommitdiff
path: root/support/cluttex/src/texrunner/checkdriver.lua
diff options
context:
space:
mode:
Diffstat (limited to 'support/cluttex/src/texrunner/checkdriver.lua')
-rw-r--r--support/cluttex/src/texrunner/checkdriver.lua51
1 files changed, 39 insertions, 12 deletions
diff --git a/support/cluttex/src/texrunner/checkdriver.lua b/support/cluttex/src/texrunner/checkdriver.lua
index 65e33b9d21..3b8b94e266 100644
--- a/support/cluttex/src/texrunner/checkdriver.lua
+++ b/support/cluttex/src/texrunner/checkdriver.lua
@@ -26,35 +26,53 @@ local message = require "texrunner.message"
local right_values = {
dvips = {
graphics = "dvips",
- expl3 = "dvips",
+ expl3 = {
+ old = "dvips",
+ new = "dvips",
+ },
hyperref = "dvips",
xypic = "dvips",
},
dvipdfmx = {
graphics = "dvipdfmx",
- expl3 = "dvipdfmx",
+ expl3 = {
+ old = "dvipdfmx",
+ new = "dvipdfmx",
+ },
hyperref = "dvipdfmx",
xypic = "pdf",
},
dvisvgm = {
graphics = "dvisvgm",
- expl3 = "dvisvgm",
+ expl3 = {
+ old = "dvisvgm",
+ new = "dvisvgm",
+ },
},
xetex = {
graphics = "xetex",
- expl3 = "xdvipdfmx",
+ expl3 = {
+ old = "xdvipdfmx",
+ new = "xetex",
+ },
hyperref = "xetex",
xypic = "pdf",
},
pdftex = {
graphics = "pdftex",
- expl3 = "pdfmode",
+ expl3 = {
+ old = "pdfmode",
+ new = "pdftex",
+ },
hyperref = "pdftex",
xypic = "pdf",
},
luatex = {
graphics = "luatex",
- expl3 = "pdfmode",
+ expl3 = {
+ old = "pdfmode",
+ new = "luatex",
+ },
hyperref = "luatex",
xypic = "pdf",
},
@@ -93,18 +111,24 @@ local function checkdriver(expected_driver, filelist)
graphics_driver = "unknown"
end
end
- local expl3_driver = nil -- "pdfmode" | "dvisvgm" | "xdvipdfmx" | "dvipdfmx" | "dvips" | "unknown"
- if loaded["expl3-code.tex"] or loaded["expl3.sty"] or loaded["l3backend-dvips.def"] or loaded["l3backend-dvipdfmx.def"] or loaded["l3backend-xdvipdfmx.def"] or loaded["l3backend-pdfmode.def"] then
+ local expl3_driver = nil -- "pdfmode" | "dvisvgm" | "xdvipdfmx" | "dvipdfmx" | "dvips" | "pdftex" | "luatex" | "xetex" | "unknown"
+ if loaded["expl3-code.tex"] or loaded["expl3.sty"] or loaded["l3backend-dvips.def"] or loaded["l3backend-dvipdfmx.def"] or loaded["l3backend-xdvipdfmx.def"] or loaded["l3backend-pdfmode.def"] or loaded["l3backend-pdftex.def"] or loaded["l3backend-luatex.def"] or loaded["l3backend-xetex.def"] then
if loaded["l3backend-pdfmode.def"] then
- expl3_driver = "pdfmode" -- pdftex, luatex
+ expl3_driver = "pdfmode" -- pdftex, luatex in older l3backend
elseif loaded["l3backend-dvisvgm.def"] then
expl3_driver = "dvisvgm"
elseif loaded["l3backend-xdvipdfmx.def"] then
- expl3_driver = "xdvipdfmx"
+ expl3_driver = "xdvipdfmx" -- xetex in older l3backend
elseif loaded["l3backend-dvipdfmx.def"] then
expl3_driver = "dvipdfmx"
elseif loaded["l3backend-dvips.def"] then
expl3_driver = "dvips"
+ elseif loaded["l3backend-pdftex.def"] then
+ expl3_driver = "pdftex"
+ elseif loaded["l3backend-luatex.def"] then
+ expl3_driver = "luatex"
+ elseif loaded["l3backend-xetex.def"] then
+ expl3_driver = "xetex"
else
-- TODO: driver=latex2e?
expl3_driver = "unknown"
@@ -153,9 +177,12 @@ local function checkdriver(expected_driver, filelist)
message.diag("The driver option for graphics(x)/color is missing or wrong.")
message.diag("Consider setting '", expected.graphics, "' option.")
end
- if expl3_driver ~= nil and expected.expl3 ~= nil and expl3_driver ~= expected.expl3 then
+ if expl3_driver ~= nil and expected.expl3 ~= nil and expl3_driver ~= expected.expl3.old and expl3_driver ~= expected.expl3.new then
message.diag("The driver option for expl3 is missing or wrong.")
- message.diag("Consider setting 'driver=", expected.expl3, "' option when loading expl3.")
+ message.diag("Consider setting 'driver=", expected.expl3.new, "' option when loading expl3.")
+ if expected.expl3.old ~= expected.expl3.new then
+ message.diag("You might need to instead set 'driver=", expected.expl3.old, "' if you are using an older version of expl3.")
+ end
end
if hyperref_driver ~= nil and expected.hyperref ~= nil and hyperref_driver ~= expected.hyperref then
message.diag("The driver option for hyperref is missing or wrong.")