texlive[46042] Master/texmf-dist: pst-node (10dec17)
commits+karl at tug.org
commits+karl at tug.org
Mon Dec 11 23:24:10 CET 2017
Revision: 46042
http://tug.org/svn/texlive?view=revision&revision=46042
Author: karl
Date: 2017-12-11 23:24:10 +0100 (Mon, 11 Dec 2017)
Log Message:
-----------
pst-node (10dec17)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-article.pdf
trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-handout.pdf
trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-trans.pdf
trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.pdf
trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch.pdf
trunk/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.dtx
trunk/Master/texmf-dist/tex/latex/beamerswitch/beamerswitch.cls
Modified: trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-article.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-handout.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example-trans.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch-example.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/beamerswitch/beamerswitch.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.dtx 2017-12-11 22:23:56 UTC (rev 46041)
+++ trunk/Master/texmf-dist/source/latex/beamerswitch/beamerswitch.dtx 2017-12-11 22:24:10 UTC (rev 46042)
@@ -228,7 +228,7 @@
%<class>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<class>\ProvidesClass{beamerswitch}
%<*class>
- [2017/05/22 v1.2 Convenient mode selection in Beamer documents]
+ [2017/12/10 v1.3 Convenient mode selection in Beamer documents]
%</class>
%<*driver>
\documentclass[12pt]{article}
@@ -827,17 +827,59 @@
\cs{jobname}.
\end{docCommand}
-See the \hyperref[sec:switching]{Implementation} section below for the
-default definition. Again, if you want to pre-define this to do something else,
-you have to do it before loading the class:
+By default, \cs{BeamerswitchSpawn} checks which \LaTeX\ engine you are running,
+and then runs the matching one of \cs{SpawnedPDFTeX}, \cs{SpawnedXeTeX},
+\cs{SpawnedLuaTeX}, or if all the tests fail, \cs{SpawnedTeX}, with the converted
+\cs{jobname}. These commands all add an engine-selecting option to a base
+command, \cs{SpawnedCompiler}, which by default is \pkg{latexmk} with synctex
+enabled, shell escape disabled and interaction set to batch mode. See the
+\hyperref[sec:switching]{Implementation} section below for details.
+Any of these commands can be pre-defined to something else, depending on what
+you want to do. So, for example, if you want to change the base \pkg{latexmk}
+options, pre-define \cs{SpawnedCompiler} to \texttt{latexmk} plus your chosen
+options:
+
\begin{dispListing}
-\newcommand{\BeamerswitchSpawn}[1]{%
- \ShellEscape{...}%
+\newcommand*{\SpawnedCompiler}{%
+ latexmk -silent -shell-escape -interaction=nonstopmode}
+\documentclass{beamerswitch}
+\end{dispListing}
+
+If you want to switch to using \texttt{rubber}, say, pre-define
+\cs{SpawnedPDFTeX} and friends accordingly (perhaps taking advantage of
+\cs{SpawnedCompiler} to reduce repetition):
+
+\begin{dispListing}
+\newcommand*{\SpawnedCompiler}{rubber -q --synctex}
+\newcommand*{\SpawnedPDFTeX}{\SpawnedCompiler -m pdftex}
+\newcommand*{\SpawnedXeTeX}{\SpawnedCompiler -m xelatex}
+\documentclass{beamerswitch}
+\end{dispListing}
+
+If you don't need the engine selection routine provided, simply pre-define
+\cs{BeamerswitchSpawn} to do whatever you need it to do:
+
+\begin{dispListing}
+\newcommand*{\BeamerswitchSpawn}[1]{%
+ \ShellEscape{... -jobname=\jobname#1 \jobname}%
}
\documentclass{beamerswitch}
\end{dispListing}
+If you want to use \pkg{arara} to compile everything, the class options won't
+help you as \pkg{arara} does not let you change \cs{jobname}s on the command line.
+That's no problem, though, because you can do it manually within your list of
+directives:
+
+\begin{dispListing}
+% arara: lualatex
+% arara: lualatex: { options: "-jobname beamerswitch-example-article" }
+% arara: lualatex: { options: "-jobname beamerswitch-example-handout" }
+% arara: lualatex: { options: "-jobname beamerswitch-example-trans" }
+\documentclass{beamerswitch}
+\end{dispListing}
+
\subsection{Improving compatibility}
\begin{docKey}{nohyperref}{}{no value, initially unset}
@@ -1059,6 +1101,14 @@
modes. The available \meta{options} are listed below.
\end{docCommand}
+\begin{docKey}{frametitles}{=\val{para}\textbar\val{margin}\textbar\val{none}}{no default, initially \val{para}}
+ In \key{article} mode, affects how frame titles are printed. By default,
+ \pkg{beamerarticle} prints them as paragraph headings, represented by
+ the value \docValue{para}. To have them printed in the margin (using
+ \cs{marginpar}), use \docValue{margin}. To omit them altogether, use the value
+ \docValue{none}.
+\end{docKey}
+
\begin{docKey}{maketitle}{}{no value, initially unset}
In \key{article} mode, adjusts the \cs{maketitle} routine:
\begin{itemize}
@@ -1084,14 +1134,6 @@
\end{dispListing}
\end{docKey}
-\begin{docKey}{frametitles}{=\val{para}\textbar\val{margin}\textbar\val{none}}{no default, initially \val{para}}
- In \key{article} mode, affects how frame titles are printed. By default,
- \pkg{beamerarticle} prints them as paragraph headings, represented by
- the value \docValue{para}. To have them printed in the margin (using
- \cs{marginpar}), use \docValue{margin}. To omit them altogether, use the value
- \docValue{none}.
-\end{docKey}
-
\section{Tips for further configuration}
There are some other ways to customize the behaviour of the various modes.
@@ -1305,7 +1347,13 @@
% \end{macro}
% \end{macro}
%
+% \changes{v1.3}{2017/12/10}{Decompose \cs{BeamerswitchSpawn} into further configurable macros.}
% \begin{macro}{BeamerswitchSpawn}
+% \begin{macro}{SpawnedTeX}
+% \begin{macro}{SpawnedPDFTeX}
+% \begin{macro}{SpawnedXeTeX}
+% \begin{macro}{SpawnedLuaTeX}
+% \begin{macro}{SpawnedCompiler}
% We provide a special routine for spawning new \LaTeX\ processes. We allow
% for the possibility of the user overriding this routine with another one,
% perhaps using a different automation tool; it should take one argument, being
@@ -1312,17 +1360,22 @@
% the jobname suffix.
%
% \begin{macrocode}
+\providecommand{\SpawnedCompiler}{latexmk -silent -synctex=1 -interaction=batchmode }
+\providecommand{\SpawnedTeX}{\SpawnedCompiler}
+\providecommand{\SpawnedPDFTeX}{\SpawnedCompiler -pdf }
+\providecommand{\SpawnedLuaTeX}{\SpawnedCompiler -pdflua }
+\providecommand{\SpawnedXeTeX}{\SpawnedCompiler -pdfxe }
\providecommand{\BeamerswitchSpawn}[1]{%
\ifbool{PDFTeX}{%
- \ShellEscape{latexmk -silent -pdf -synctex=1 -interaction=batchmode -jobname=\jobname#1 \jobname}
+ \ShellEscape{\SpawnedPDFTeX -jobname=\jobname#1 \jobname}
}{%
\ifbool{LuaTeX}{%
- \ShellEscape{latexmk -silent -lualatex -synctex=1 -interaction=batchmode -jobname=\jobname#1 \jobname}
+ \ShellEscape{\SpawnedLuaTeX -jobname=\jobname#1 \jobname}
}{%
\ifbool{XeTeX}{%
- \ShellEscape{latexmk -silent -xelatex -synctex=1 -interaction=batchmode -jobname=\jobname#1 \jobname}
+ \ShellEscape{\SpawnedXeTeX -jobname=\jobname#1 \jobname}
}{%
- \ShellEscape{latexmk -silent -synctex=1 -interaction=batchmode -jobname=\jobname#1 \jobname}
+ \ShellEscape{\SpawnedTeX -jobname=\jobname#1 \jobname}
}%
}%
}%
@@ -1329,6 +1382,11 @@
}
% \end{macrocode}
% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
%
% We check for special jobnames and use them to override the above mode-related
% options. Note that if this happens, the \key{also*} options are ignored.
Modified: trunk/Master/texmf-dist/tex/latex/beamerswitch/beamerswitch.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/beamerswitch/beamerswitch.cls 2017-12-11 22:23:56 UTC (rev 46041)
+++ trunk/Master/texmf-dist/tex/latex/beamerswitch/beamerswitch.cls 2017-12-11 22:24:10 UTC (rev 46042)
@@ -15,7 +15,7 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesClass{beamerswitch}
- [2017/05/22 v1.2 Convenient mode selection in Beamer documents]
+ [2017/12/10 v1.3 Convenient mode selection in Beamer documents]
\RequirePackage{xkeyval,xkvltxp,etoolbox,xstring,shellesc,iftex}
\define at boolkey[DC]{beamerswitch}{beamer}[true]{%
\ifbool{DC at beamerswitch@beamer}{%
@@ -68,17 +68,22 @@
\providecommand*{\TransSuffix}{-trans}
\providecommand*{\HandoutSuffix}{-handout}
\providecommand*{\ArticleSuffix}{-article}
+\providecommand{\SpawnedCompiler}{latexmk -silent -synctex=1 -interaction=batchmode }
+\providecommand{\SpawnedTeX}{\SpawnedCompiler}
+\providecommand{\SpawnedPDFTeX}{\SpawnedCompiler -pdf }
+\providecommand{\SpawnedLuaTeX}{\SpawnedCompiler -pdflua }
+\providecommand{\SpawnedXeTeX}{\SpawnedCompiler -pdfxe }
\providecommand{\BeamerswitchSpawn}[1]{%
\ifbool{PDFTeX}{%
- \ShellEscape{latexmk -silent -pdf -synctex=1 -interaction=batchmode -jobname=\jobname#1 \jobname}
+ \ShellEscape{\SpawnedPDFTeX -jobname=\jobname#1 \jobname}
}{%
\ifbool{LuaTeX}{%
- \ShellEscape{latexmk -silent -lualatex -synctex=1 -interaction=batchmode -jobname=\jobname#1 \jobname}
+ \ShellEscape{\SpawnedLuaTeX -jobname=\jobname#1 \jobname}
}{%
\ifbool{XeTeX}{%
- \ShellEscape{latexmk -silent -xelatex -synctex=1 -interaction=batchmode -jobname=\jobname#1 \jobname}
+ \ShellEscape{\SpawnedXeTeX -jobname=\jobname#1 \jobname}
}{%
- \ShellEscape{latexmk -silent -synctex=1 -interaction=batchmode -jobname=\jobname#1 \jobname}
+ \ShellEscape{\SpawnedTeX -jobname=\jobname#1 \jobname}
}%
}%
}%
More information about the tex-live-commits
mailing list