Compilar dos versiones del documento.

Compilar dos versiones del documento.

Estoy intentando crear dos versiones diferentes de un documento a partir del mismo código fuente. Una de las versiones debe excluir las partes confidenciales del documento mientras que la otra versión debe conservarlas.

Mi idea es laPaquete de etiquetadopara crear las dos versiones diferentes simplemente incluyendo u omitiendo la etiqueta\usetag{cerrado}. Cuando omito la etiqueta, aparecen los mensajes de error incluidos en la parte inferior.

Necesito usarlo en un entorno o comandos ya que uso esta función muchas veces durante el documento.

Ejemplo

\documentclass{article}

%%%%% Other packeges used in project %%%%%
\usepackage[english]{babel} % danske overskrifter
\usepackage[utf8]{inputenc} % Skal passe til editorens indstillinger
\usepackage[sfdefault]{roboto}
\usepackage[T1]{fontenc} % fonte (output)
\usepackage{lmodern} % vektor fonte
\usepackage{graphicx} % indsættelse af billeder
\usepackage{epstopdf} %Tilfj "--enable-write18" i argumentet for LaTex build. Dette vil konvertere .eps figurer til pdf-format
\usepackage{subfigure}
\usepackage{a4wide}
\usepackage{hhline}
\usepackage{xcolor}
\usepackage{lastpage}
\usepackage{hyperref}
\hypersetup{colorlinks=true, linkcolor=blue}
\usepackage{forloop}
\usepackage{eso-pic}% http://ctan.org/pkg/eso-pic
\usepackage{longtable}
\usepackage{float}
\usepackage{enumitem}

%%%%% Packege Which I'm trying to implement %%%%%
\usepackage{tagging}

%%%%% Blind Text %%%%%
\usepackage{blindtext}

%%%%% Code %%%%%
%\usetag{closed}

\newenvironment{myenvironment}
{
    \color{gray}
    \begin{taggedblock}{closed}
}
{ 
    \end{taggedblock}
}


\begin{document}

\section{This is public}
\blindtext

\begin{myenvironment}
\section{This is Confidential}
\blindtext
\end{myenvironment}

\section{This is public again}
\blindtext

\end{document}

Error de mensajes

Runaway argument?

! File ended while scanning use of \next.
<inserted text> 
                \par 
<*> main.tex

I suspect you have forgotten a `}', causing me
to read past where you wanted me to stop.
I'll try to recover; but if the error is serious,
you'd better type `E' or `X' now and fix your file.

 main.tex



Emergency stop.

<*> main.tex

*** (job aborted, no legal \end found)


Here is how much of TeX's memory you used:
 8935 strings out of 492164
 135695 string characters out of 6125314
 242536 words of memory out of 5000000
 13108 multiletter control sequences out of 15000+600000
 18746 words of font info for 18 fonts, out of 8000000 for 9000
 1141 hyphenation exceptions out of 8191
 39i,0n,40p,886b,321s stack positions out of 5000i,500n,10000p,200000b,80000s
!  ==> Fatal error occurred, no output PDF file produced!

Respuesta1

Creo que el paquete que estás intentando crear ya existe: multiaudience.

Con este paquete, puedes generar diferentes versiones del mismo documento para diferentes audiencias.

En los siguientes ejemplos, defino dos "audiencias": "pública" y "confidencial".

\SetNewAudience{public}
\SetNewAudience{confidential}

Y lo puse en

\begin{shownto}{confidential}
...
\end{shownto}

lo que debería ser confidencial.

Luego configuro la audiencia que quiero (puedes hacerlo también externamente, cuando estés compilando tu documento, mira ladocumentación del paquete).

Por ejemplo, este código:

\documentclass{article}
%%%%% Other packages used in project %%%%%
\usepackage[english]{babel} % danske overskrifter
\usepackage[utf8]{inputenc} % Skal passe til editorens indstillinger
\usepackage[sfdefault]{roboto}
\usepackage[T1]{fontenc} % fonte (output)
\usepackage{lmodern} % vektor fonte
\usepackage{graphicx} % indsættelse af billeder
\usepackage{epstopdf} %Tilfj "--enable-write18" i argumentet for LaTex build. Dette vil konvertere .eps figurer til pdf-format
\usepackage{subfigure}
\usepackage{a4wide}
\usepackage{hhline}
\usepackage{xcolor}
\usepackage{lastpage}
\usepackage{hyperref}
\hypersetup{colorlinks=true, linkcolor=blue}
\usepackage{forloop}
\usepackage{eso-pic}% http://ctan.org/pkg/eso-pic
\usepackage{longtable}
\usepackage{float}
\usepackage{enumitem}

\usepackage{multiaudience}
\SetNewAudience{public}
\SetNewAudience{confidential}

%%%%% Blind Text %%%%%
\usepackage{blindtext}

\begin{document}
\DefCurrentAudience{public}

\section{This is public}
\blindtext

\begin{shownto}{confidential}
\section{This is Confidential}
\blindtext
\end{shownto}

\section{This is public again}
\blindtext

\end{document}

produce esta salida:

ingrese la descripción de la imagen aquí

mientras que este código (la única diferencia es \DefCurrentAudience{confidential}):

\documentclass{article}
%%%%% Other packages used in project %%%%%
\usepackage[english]{babel} % danske overskrifter
\usepackage[utf8]{inputenc} % Skal passe til editorens indstillinger
\usepackage[sfdefault]{roboto}
\usepackage[T1]{fontenc} % fonte (output)
\usepackage{lmodern} % vektor fonte
\usepackage{graphicx} % indsættelse af billeder
\usepackage{epstopdf} %Tilfj "--enable-write18" i argumentet for LaTex build. Dette vil konvertere .eps figurer til pdf-format
\usepackage{subfigure}
\usepackage{a4wide}
\usepackage{hhline}
\usepackage{xcolor}
\usepackage{lastpage}
\usepackage{hyperref}
\hypersetup{colorlinks=true, linkcolor=blue}
\usepackage{forloop}
\usepackage{eso-pic}% http://ctan.org/pkg/eso-pic
\usepackage{longtable}
\usepackage{float}
\usepackage{enumitem}

\usepackage{multiaudience}
\SetNewAudience{public}
\SetNewAudience{confidential}

%%%%% Blind Text %%%%%
\usepackage{blindtext}

\begin{document}
\DefCurrentAudience{confidential}

\section{This is public}
\blindtext

\begin{shownto}{confidential}
\section{This is Confidential}
\blindtext
\end{shownto}

\section{This is public again}
\blindtext

\end{document}

produce esta salida:

ingrese la descripción de la imagen aquí

información relacionada