texlive[61539] Master/texmf-dist: iexec (8jan22)
commits+karl at tug.org
commits+karl at tug.org
Sat Jan 8 22:35:48 CET 2022
Revision: 61539
http://tug.org/svn/texlive?view=revision&revision=61539
Author: karl
Date: 2022-01-08 22:35:47 +0100 (Sat, 08 Jan 2022)
Log Message:
-----------
iexec (8jan22)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/iexec/DEPENDS.txt
trunk/Master/texmf-dist/doc/latex/iexec/iexec.pdf
trunk/Master/texmf-dist/doc/latex/iexec/iexec.tex
trunk/Master/texmf-dist/tex/latex/iexec/iexec.sty
Modified: trunk/Master/texmf-dist/doc/latex/iexec/DEPENDS.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/iexec/DEPENDS.txt 2022-01-08 21:35:20 UTC (rev 61538)
+++ trunk/Master/texmf-dist/doc/latex/iexec/DEPENDS.txt 2022-01-08 21:35:47 UTC (rev 61539)
@@ -1,2 +1,3 @@
hard shellesc
+hard pgfkeys
hard xkeyval
Modified: trunk/Master/texmf-dist/doc/latex/iexec/iexec.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/iexec/iexec.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/iexec/iexec.tex 2022-01-08 21:35:20 UTC (rev 61538)
+++ trunk/Master/texmf-dist/doc/latex/iexec/iexec.tex 2022-01-08 21:35:47 UTC (rev 61539)
@@ -27,7 +27,7 @@
\usepackage{ffcode}
\title{\ff{iexec}: \LaTeX{} Package \\ for Inputable Shell Executions}
\author{Yegor Bugayenko}
-\date{0.4.1 2022/01/02}
+\date{0.5.0 2022/01/08}
\begin{document}
\pagenumbering{gobble}
\raggedbottom
@@ -66,7 +66,7 @@
second optional argument of \ff{\char`\\iexec} (the default value is \ff{iexec.tmp}):
\begin{ffcode}
-Today is \iexec[date.txt]{date +\%e-\%b-\%Y | tr -d '\\n'}.
+Today is \iexec[stdout=date.txt]{date +\%e-\%b-\%Y | tr -d '\\n'}.
\end{ffcode}
The tailing part of the command here removes all ends-of-line.
@@ -75,6 +75,14 @@
want this to happen, use \ff{trace} package option: all files will remain
in the directory.
+There are a few options you can provide for the \ff{\char`\\iexec} command:
+
+\begin{itemize}
+ \item \ff{trace}: to prevent the deletion of the file;
+ \item \ff{stdout=...}: to set the name of the file where the standard output of the command will be saved;
+ \item \ff{quiet}: to prevent including of the content into the document.
+\end{itemize}
+
More details about this package you can find
in the \ff{yegor256/iexec} GitHub repository.
Modified: trunk/Master/texmf-dist/tex/latex/iexec/iexec.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/iexec/iexec.sty 2022-01-08 21:35:20 UTC (rev 61538)
+++ trunk/Master/texmf-dist/tex/latex/iexec/iexec.sty 2022-01-08 21:35:47 UTC (rev 61539)
@@ -21,29 +21,55 @@
% SOFTWARE.
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{iexec}[2022/01/02 0.4.1 Inputable Shell Executions]
+\ProvidesPackage{iexec}[2022/01/08 0.5.0 Inputable Shell Executions]
\RequirePackage{shellesc}
+\RequirePackage{pgfkeys}
+\RequirePackage{xkeyval}
-\RequirePackage{xkeyval}
\makeatletter\newif\ifiexec at trace
\DeclareOptionX{trace}{\iexec at tracetrue}
\ProcessOptionsX\relax\makeatother
-\makeatletter\newcommand\iexec[2][iexec.tmp]{%
- \ifnum\pdfshellescape=1\else
- \PackageError{iexec}{You must run latex with --shell-escape option}{}
- \fi
+\makeatletter\pgfkeys{
+ /iexec/.is family,
+ /iexec,
+ stdout/.estore in = \iexec at stdout,
+ stdout/.default = iexec.tmp,
+ trace/.estore in = \iexec at traceit,
+ quiet/.estore in = \iexec at quiet,
+ stdout
+}\makeatother
+
+\makeatletter\newcommand\iexec[2][]{%
+ \pgfkeys{/iexec, #1}%
+ \ifnum\pdfshellescape=1\else%
+ \PackageError{iexec}{You must run latex with --shell-escape option}{}%
+ \fi%
\begingroup%
- \let\%\@percentchar%
- \let\\\@backslashchar%
- \let\{\@charlb%
- \let\}\@charrb%
- \ShellEscape{#2 > #1}%
- \message{iexec: [#2 > #1]}%
+ \let\%\@percentchar%
+ \let\\\@backslashchar%
+ \let\{\@charlb%
+ \let\}\@charrb%
+ \ShellEscape{#2 > \iexec at stdout}%
+ \message{iexec: [#2 > \iexec at stdout]}%
\endgroup%
- \input{#1}%
- \ifiexec at trace\else\ShellEscape{rm #1}\fi%
+ \ifdefined\iexec at quiet
+ \message{iexec: Due to 'quiet' we didn't read the content of '\iexec at stdout'}%
+ \else%
+ \input{\iexec at stdout}%
+ \message{iexec: The content of '\iexec at stdout' was included into the document}%
+ \fi%
+ \ifiexec at trace%
+ \message{iexec: Due to package option 'trace', the file '\iexec at stdout' was not deleted}%
+ \else%
+ \ifdefined\iexec at traceit%
+ \message{iexec: Due to 'trace' option, the file '\iexec at stdout' was not deleted}%
+ \else%
+ \ShellEscape{rm \iexec at stdout}%
+ \message{iexec: The file '\iexec at stdout' was deleted}%
+ \fi%
+ \fi%
}\makeatother
\endinput
More information about the tex-live-commits
mailing list.