[latex3-commits] [l3svn] branch master updated: l3candidates: Add preliminary shell-escape to l3sys

noreply at latex-project.org noreply at latex-project.org
Sat May 27 20:02:34 CEST 2017


This is an automated email from the git hooks/post-receive script.

joseph pushed a commit to branch master
in repository l3svn.

The following commit(s) were added to refs/heads/master by this push:
       new  547b1c2   l3candidates: Add preliminary shell-escape to l3sys
547b1c2 is described below

commit 547b1c2ec89348c5ffbafd74de6b3513c9158cdf
Author: Henri Menke <henri at icp.uni-stuttgart.de>
Date:   Mon May 22 16:52:59 2017 +1200

    l3candidates: Add preliminary shell-escape to l3sys
---
 l3kernel/l3candidates.dtx               |  172 +++++++++++++++++++++++++++++++
 l3kernel/testfiles/m3expl001.luatex.tlg |   17 +++
 l3kernel/testfiles/m3expl001.ptex.tlg   |   17 +++
 l3kernel/testfiles/m3expl001.tlg        |   17 +++
 l3kernel/testfiles/m3expl001.uptex.tlg  |   17 +++
 l3kernel/testfiles/m3expl001.xetex.tlg  |   17 +++
 l3kernel/testfiles/m3expl003.luatex.tlg |   17 +++
 l3kernel/testfiles/m3expl003.ptex.tlg   |   17 +++
 l3kernel/testfiles/m3expl003.tlg        |   17 +++
 l3kernel/testfiles/m3expl003.uptex.tlg  |   17 +++
 l3kernel/testfiles/m3expl003.xetex.tlg  |   17 +++
 11 files changed, 342 insertions(+)

diff --git a/l3kernel/l3candidates.dtx b/l3kernel/l3candidates.dtx
index 627f4eb..55f44a5 100644
--- a/l3kernel/l3candidates.dtx
+++ b/l3kernel/l3candidates.dtx
@@ -506,6 +506,61 @@
 %   random number support this produces an error.
 % \end{function}
 %
+% \begin{variable}[added = 2017-05-22]{\c_sys_shell_escape_int}
+%   This variable exposes the internal triple of the shell escape
+%   status.  The possible values are
+%   \begin{description}
+%   \item[0] Shell escape is disabled
+%   \item[1] Unrestricted shell escape is enabled
+%   \item[2] Restricted shell escape is enabled
+%   \end{description}
+% \end{variable}
+%
+% \begin{function}[added = 2017-05-22, EXP, pTF]{\sys_if_shell:}
+%   \begin{syntax}
+%     \cs{sys_if_shell_p:}
+%     \cs{sys_if_shell:TF} \Arg{true code} \Arg{false code}
+%   \end{syntax}
+%   Performs a check for whether shell escape is enabled.  This will
+%   return true if either of restricted or unrestircted shell escape
+%   is enabled.
+% \end{function}
+%
+% \begin{function}[added = 2017-05-22, EXP, pTF]{\sys_if_shell_unrestricted:}
+%   \begin{syntax}
+%     \cs{sys_if_shell_unrestricted_p:}
+%     \cs{sys_if_shell_unrestricted:TF} \Arg{true code} \Arg{false code}
+%   \end{syntax}
+%   Performs a check for whether \emph{unrestricted} shell escape is
+%   enabled.
+% \end{function}
+%
+% \begin{function}[added = 2017-05-22, EXP, pTF]{\sys_if_shell_restricted:}
+%   \begin{syntax}
+%     \cs{sys_if_shell_restricted_p:}
+%     \cs{sys_if_shell_restricted:TF} \Arg{true code} \Arg{false code}
+%   \end{syntax}
+%   Performs a check for whether \emph{restricted} shell escape is
+%   enabled.  This will return false if unrestricted shell escape is
+%   enabled.  Unrestricted shell escape is not considered a superset
+%   of restricted shell escape in this case.  To find whether any
+%   shell escape is enabled use \cs{sys_if_shell:}.
+% \end{function}
+%
+% \begin{function}[added = 2017-05-22]{\sys_shell_now:n, \sys_shell_now:x}
+%   \begin{syntax}
+%     \cs{sys_shell_now:n} \Arg{tokens}
+%   \end{syntax}
+%   Execute \meta{tokens} through shell escape immediately.
+% \end{macro}
+%
+% \begin{function}[added = 2017-05-22]{\sys_shell_shipout:n, \sys_shell_shipout:x}
+%   \begin{syntax}
+%     \cs{sys_shell_shipout:n} \Arg{tokens}
+%   \end{syntax}
+%   Execute \meta{tokens} through shell escape at shipout.
+% \end{function}
+%
 % \section{Additions to \pkg{l3tl}}
 %
 % \begin{function}[EXP,pTF]{\tl_if_single_token:n}
@@ -2006,6 +2061,123 @@
 %    \end{macrocode}
 % \end{macro}
 %
+%
+% \begin{variable}{\c_sys_shell_escape_int}
+%   Expose the engine's shell escape status to the user.
+%    \begin{macrocode}
+\int_const:Nn \c_sys_shell_escape_int
+  {
+    \sys_if_engine_luatex:TF
+      {
+        \luatex_directlua:D
+          {
+            tex.sprint((status.shell_escape~or~os.execute()) .. " ")
+          }
+      }
+      {
+        \pdftex_shellescape:D
+      }
+  }
+%    \end{macrocode}
+% \end{variable}
+%
+% \begin{macro}[EXP, pTF]{\sys_if_shell:}
+%   Performs a check for whether shell escape is enabled.  This will
+%   return true if either of restricted or unrestricted shell escape
+%   is enabled.
+%    \begin{macrocode}
+\prg_new_conditional:Nnn \sys_if_shell: { p , T , F , TF }
+  {
+    \if_int_compare:w \c_sys_shell_escape_int = 0 ~
+      \prg_return_false:
+    \else:
+      \prg_return_true:
+    \fi:
+  }
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}[EXP, pTF]{\sys_if_shell_unrestricted:}
+%   Performs a check for whether \emph{unrestricted} shell escape is
+%   enabled.
+%    \begin{macrocode}
+\prg_new_conditional:Nnn \sys_if_shell_unrestricted: { p , T , F , TF }
+  {
+    \if_int_compare:w \c_sys_shell_escape_int = 1 ~
+      \prg_return_true:
+    \else:
+      \prg_return_false:
+    \fi:
+  }
+%    \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}[EXP, pTF]{\sys_if_shell_unrestricted:}
+%   Performs a check for whether \emph{restricted} shell escape is
+%   enabled.  This will return false if unrestricted shell escape is
+%   enabled.  Unrestricted shell escape is not considered a superset
+%   of restricted shell escape in this case.  To find whether any
+%   shell escape is enabled use \cs{sys_if_shell:}.
+%    \begin{macrocode}
+\prg_new_conditional:Nnn \sys_if_shell_restricted: { p , T , F , TF }
+  {
+    \if_int_compare:w \c_sys_shell_escape_int = 2 ~
+      \prg_return_true:
+    \else:
+      \prg_return_false:
+    \fi:
+  }
+%    \end{macrocode}
+% \end{macro}
+%
+%    \begin{macrocode}
+\tex_chardef:D \c__sys_eighteen = 18 ~
+%    \end{macrocode}
+%
+% \begin{macro}{\sys_shell_now:n}
+%   Execute commands through shell escape immediately.
+%    \begin{macrocode}
+\sys_if_engine_luatex:TF
+  {
+    \cs_new_protected:Npn \sys_shell_now:n #1
+      {
+        \luatex_directlua:D { os.execute(" \luatex_luaescapestring:D { #1 } ") }
+      }
+  }
+  {
+    \cs_new_protected:Npn \sys_shell_now:n #1
+      {
+        \iow_now:Nn \c__sys_eighteen { #1 }
+      }
+  }
+\cs_generate_variant:Nn \sys_shell_now:n { x }
+%    \end{macrocode}
+%   \emph{Note:} We could do this fully-expandably in \LuaTeX, but not
+%   in \pdfTeX.  This should be discussed.
+% \end{macro}
+%
+% \begin{macro}{\sys_shell_shipout:n}
+%   Execute commands through shell escape at shipout.
+%    \begin{macrocode}
+\sys_if_engine_luatex:TF
+  {
+    \cs_new_protected:Npn \sys_shell_shipout:n #1
+      {
+        \luatex_latelua:D { os.execute(" \luatex_luaescapestring:D { #1 } ") }
+      }
+  }
+  {
+    \cs_new_protected:Npn \sys_shell_shipout:n #1
+      {
+        \iow_shipout:Nn \c__sys_eighteen { #1 }
+      }
+  }
+\cs_generate_variant:Nn \sys_shell_shipout:n { x }
+%    \end{macrocode}
+%   \emph{Note:} We could do this fully-expandably in \LuaTeX, but not
+%   in \pdfTeX.  This should be discussed.
+% \end{macro}
+%
 % \subsection{Additions to \pkg{l3tl}}
 %
 %    \begin{macrocode}
diff --git a/l3kernel/testfiles/m3expl001.luatex.tlg b/l3kernel/testfiles/m3expl001.luatex.tlg
index 27c2cfc..b485837 100644
--- a/l3kernel/testfiles/m3expl001.luatex.tlg
+++ b/l3kernel/testfiles/m3expl001.luatex.tlg
@@ -5427,6 +5427,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl001.ptex.tlg b/l3kernel/testfiles/m3expl001.ptex.tlg
index 73766f3..52b1b71 100644
--- a/l3kernel/testfiles/m3expl001.ptex.tlg
+++ b/l3kernel/testfiles/m3expl001.ptex.tlg
@@ -5392,6 +5392,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl001.tlg b/l3kernel/testfiles/m3expl001.tlg
index d89918e..9922068 100644
--- a/l3kernel/testfiles/m3expl001.tlg
+++ b/l3kernel/testfiles/m3expl001.tlg
@@ -5417,6 +5417,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl001.uptex.tlg b/l3kernel/testfiles/m3expl001.uptex.tlg
index 003f864..2354c87 100644
--- a/l3kernel/testfiles/m3expl001.uptex.tlg
+++ b/l3kernel/testfiles/m3expl001.uptex.tlg
@@ -5390,6 +5390,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl001.xetex.tlg b/l3kernel/testfiles/m3expl001.xetex.tlg
index 7476ac1..c7d3b53 100644
--- a/l3kernel/testfiles/m3expl001.xetex.tlg
+++ b/l3kernel/testfiles/m3expl001.xetex.tlg
@@ -5400,6 +5400,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl003.luatex.tlg b/l3kernel/testfiles/m3expl003.luatex.tlg
index 1292d5c..df299a0 100644
--- a/l3kernel/testfiles/m3expl003.luatex.tlg
+++ b/l3kernel/testfiles/m3expl003.luatex.tlg
@@ -5428,6 +5428,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl003.ptex.tlg b/l3kernel/testfiles/m3expl003.ptex.tlg
index f2bcfdc..e7c5af4 100644
--- a/l3kernel/testfiles/m3expl003.ptex.tlg
+++ b/l3kernel/testfiles/m3expl003.ptex.tlg
@@ -5393,6 +5393,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl003.tlg b/l3kernel/testfiles/m3expl003.tlg
index b021fa3..4a4dee6 100644
--- a/l3kernel/testfiles/m3expl003.tlg
+++ b/l3kernel/testfiles/m3expl003.tlg
@@ -5418,6 +5418,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl003.uptex.tlg b/l3kernel/testfiles/m3expl003.uptex.tlg
index 9109005..355e0cb 100644
--- a/l3kernel/testfiles/m3expl003.uptex.tlg
+++ b/l3kernel/testfiles/m3expl003.uptex.tlg
@@ -5391,6 +5391,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...
diff --git a/l3kernel/testfiles/m3expl003.xetex.tlg b/l3kernel/testfiles/m3expl003.xetex.tlg
index 5bd89aa..5b15c71 100644
--- a/l3kernel/testfiles/m3expl003.xetex.tlg
+++ b/l3kernel/testfiles/m3expl003.xetex.tlg
@@ -5401,6 +5401,23 @@ Defining \sys_if_rand_exist:F on line ...
 Defining \sys_if_rand_exist:TF on line ...
 Defining \sys_rand_seed: on line ...
 Defining \sys_gset_rand_seed:n on line ...
+Defining \c_sys_shell_escape_int on line ...
+Defining \sys_if_shell_p: on line ...
+Defining \sys_if_shell:T on line ...
+Defining \sys_if_shell:F on line ...
+Defining \sys_if_shell:TF on line ...
+Defining \sys_if_shell_unrestricted_p: on line ...
+Defining \sys_if_shell_unrestricted:T on line ...
+Defining \sys_if_shell_unrestricted:F on line ...
+Defining \sys_if_shell_unrestricted:TF on line ...
+Defining \sys_if_shell_restricted_p: on line ...
+Defining \sys_if_shell_restricted:T on line ...
+Defining \sys_if_shell_restricted:F on line ...
+Defining \sys_if_shell_restricted:TF on line ...
+Defining \sys_shell_now:n on line ...
+Defining \sys_shell_now:x on line ...
+Defining \sys_shell_shipout:n on line ...
+Defining \sys_shell_shipout:x on line ...
 Defining \tl_if_single_token_p:n on line ...
 Defining \tl_if_single_token:nT on line ...
 Defining \tl_if_single_token:nF on line ...

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the latex3-commits mailing list