
Ich versuche, aus demselben Quellcode zwei verschiedene Versionen eines Dokuments zu erstellen. Eine der Versionen soll die vertraulichen Teile des Dokuments ausschließen, während die andere Version sie beibehalten soll.
Meine Idee ist, dieTagging-Paketum die beiden unterschiedlichen Versionen zu erstellen, indem Sie einfach das Tag einfügen oder weglassen\usetag{geschlossen}. Wenn ich das Tag weglasse, erhalte ich die unten enthaltenen Fehlermeldungen.
Ich muss es in einer Umgebung oder in Befehlen verwenden, da ich diese Funktion im Dokument mehrmals verwende.
Beispiel
\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}
Fehlermeldungen
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!
Antwort1
Ich glaube, das Paket, das Sie erstellen möchten, existiert bereits: multiaudience
.
Mit diesem Paket können Sie verschiedene Versionen desselben Dokuments für unterschiedliche Zielgruppen erstellen.
In den folgenden Beispielen definiere ich zwei „Zielgruppen“: „öffentlich“ und „vertraulich“.
\SetNewAudience{public}
\SetNewAudience{confidential}
Und ich habe
\begin{shownto}{confidential}
...
\end{shownto}
was vertraulich sein sollte.
Dann stelle ich die gewünschte Zielgruppe ein (Sie können dies auch extern tun, wenn Sie Ihr Dokument kompilieren, siehePaketdokumentation).
Beispielsweise dieser Code:
\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}
erzeugt diese Ausgabe:
während dieser Code (der einzige Unterschied ist \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}
erzeugt diese Ausgabe: