diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel/expl3.lua')
-rw-r--r-- | Master/texmf-dist/tex/latex/l3kernel/expl3.lua | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/expl3.lua b/Master/texmf-dist/tex/latex/l3kernel/expl3.lua index 835051a40fe..eeafb132f55 100644 --- a/Master/texmf-dist/tex/latex/l3kernel/expl3.lua +++ b/Master/texmf-dist/tex/latex/l3kernel/expl3.lua @@ -28,6 +28,7 @@ local md5 = md5 local os = os local string = string local tex = tex +local texio = texio local unicode = unicode local abs = math.abs local byte = string.byte @@ -39,10 +40,12 @@ local md5_sum = md5.sum local open = io.open local os_clock = os.clock local os_date = os.date +local os_exec = os.execute local setcatcode = tex.setcatcode local sprint = tex.sprint local cprint = tex.cprint local write = tex.write +local write_nl = texio.write_nl local utf8_char = (utf and utf.char) or unicode.utf8.char local kpse_find = (resolvers and resolvers.findfile) or kpse.find_file local function escapehex(str) @@ -144,3 +147,14 @@ local function strcmp(A, B) end end l3kernel.strcmp = strcmp +local function shellescape(cmd) + local status,msg = os_exec(cmd) + if status == nil then + write_nl("log","runsystem(" .. cmd .. ")...(" .. msg .. ")\n") + elseif status == 0 then + write_nl("log","runsystem(" .. cmd .. ")...executed\n") + else + write_nl("log","runsystem(" .. cmd .. ")...failed " .. (msg or "") .. "\n") + end +end +l3kernel.shellescape = shellescape |