standalone
El manual explica tres formas de utilizar el paquete.
standalone.sty
::\usepackage{standalone}
para usar con una clase no independiente, configuración\standalonefalse
;standalone.cls
::\documentclass{standalone}
para uso independiente, configuración\standalonetrue
;standalone.tex
::\input{standalone}
para usar con otra clase independiente, configurando\standalonetrue
.
Sin embargo, TeX Live no incluye standalone.tex
. Pensando que se trataba de un problema de empaquetado, hice una copia del directorio fuente, que contenía standalone.dtx
y standalone.ins
, y volví a extraer los archivos.
cp -pr source/latex/standalone ~/
pushd ~/standalone
pdflatex standalone.ins
Esto produce standalone.tex
, junto con standalone.cls
,, standalone.cfg
. standalone.sty
Sin embargo, a diferencia de los otros archivos, standalone.tex
está vacío.
total 272K
drwxr-xr-x 2 <username> <username> 4.0K Gor 3 16:26 ./
drwx------ 103 <username> <username> 12K Gor 3 16:32 ../
-rw-r--r-- 1 <username> <username> 902 Gor 3 16:34 standalone.cfg
-rw-r--r-- 1 <username> <username> 27K Gor 3 16:34 standalone.cls
-rw-r--r-- 1 <username> <username> 178K Tach 25 2016 standalone.dtx
-rw-r--r-- 1 <username> <username> 442 Tach 25 2016 standalone.ins
-rw-r--r-- 1 <username> <username> 2.7K Gor 3 16:34 standalone.log
-rw-r--r-- 1 <username> <username> 34K Gor 3 16:34 standalone.sty
-rw-r--r-- 1 <username> <username> 0 Gor 3 16:34 standalone.tex
Presumiblemente, esta es la razón por la que TeX Live no incluye el archivo en absoluto.
Ahora bien, docstrip
en lo que a mí respecta, es un territorio bastante extraño. Sin embargo, .dtx
ciertamente parece que incluye código para standalone.tex
:
% \iffalse
%<*standalone.tex>
% \fi
%
%\iffalse
%<*tex>
% \fi
% \subsection{Simple TeX File}
%
% \begin{macrocode}
%%\ProvidesFile{standalone.tex}[2010/02/28 v0.4 Provides if-switch to show if file is compiled standalone]%
% \end{macrocode}
%
% \begin{macro}{\ifstandalone}
% Provides \cs{ifstandalone} switch which is |\iftrue| if the normal |\documentclass|
% was not yet executed (and subsequently redefined to be |\@twoclasseserror|).
% \begin{macrocode}
\expandafter\ifx\csname ifstandalone\endcsname\relax
\expandafter\newif\csname ifstandalone\endcsname
\expandafter\ifx\csname @twoclasseserror\endcsname\documentclass
\else
\standalonetrue
\fi
\fi
% \end{macrocode}
% \end{macro}
%
% \iffalse
%</tex>
% \fi
%
% \iffalse
%</standalone.tex>
% \fi
%
¿Cómo exactamente debo producir el standalone.tex
archivo para poder compilar lo siguiente y componerlo abc
(de manera innecesariamente tortuosa)? (Consulte la página 18 del manual).
\input{standalone}
\documentclass{article}
\begin{document}
\ifstandalone
abc
\fi
\end{document}
Respuesta1
Es un .ins
archivo estándar y tiene
\file{standalone.tex}{\from{standalone.dtx}{standalone.tex}}%
que sospecho que estaba destinado a ser
\file{standalone.tex}{\from{standalone.dtx}{standalone.tex,tex}}%
con ese cambio
tex standalone.ins
genera todos los archivos, incluidos standalone.tex
los que luego se ven así
%%\ProvidesFile{standalone.tex}[2010/02/28 v0.4 Provides if-switch to show if file is compiled standalone]%
\expandafter\ifx\csname ifstandalone\endcsname\relax
\expandafter\newif\csname ifstandalone\endcsname
\expandafter\ifx\csname @twoclasseserror\endcsname\documentclass
\else
\standalonetrue
\fi
\fi