So rendern Sie einen Teil eines Dokuments NICHT (reines LaTeX)

So rendern Sie einen Teil eines Dokuments NICHT (reines LaTeX)

Ich habe eine große LaTeX-Datei und möchte den Großteil ihres Inhalts im PDF verbergen, aber die ursprüngliche Nummerierung der Theoreme usw. beibehalten. Etwas Ähnliches wie display:nonein CSS.

Die commentUmgebung hilft dabei nicht, da sie den Inhalt überhaupt nicht verarbeitet. Sie kann nur dazu verwendet werden, Text außerhalb der Theoreme auszublenden.

\hphantomoder \vphantomumschließen Sie Umgebungen nicht wie \begin{theorem}.

Um genauer zu sein, nehmen wir an, ich habe Folgendes:

% I want to hide from here ...
\section{Section 1}
\subsection{Subsection 1.1}
\begin{theorem}
First
\end{theorem}
% ... to here
\begin{theorem}
Second
\end{theorem}

Ich möchte nur den zweiten Satz mit der Originalnummerierung im PDF sehen: Theorem 1.1.2.

Meine Frage ist sehr ähnlichDieses hier, aber der Autor dieser Frage arbeitet mit Sage und die akzeptierte Antwort ist, soweit ich weiß, Sage-spezifisch.

Wenn es keine allgemeine Möglichkeit gibt, diesen Effekt zu erzielen, würde ich mich freuen, wenn es Möglichkeiten gäbe, die folgenden Objekte auszublenden:

  • Abschnitts-/Unterabschnittstitel
  • Theoreme/Lemmas usw.
  • Zahlen

Ich habe auch darüber nachgedacht, die Ausgabe in eine andere Datei (nicht das PDF) „umzuleiten“, aber ich konnte keine Lösung finden.

Die letzte Alternative wäre,Die Zahlen der Theoreme „fest kodieren“, aber das möchte ich vermeiden.

Antwort1

Nur ein Versuch, der funktionieren könnte, wenn alles, was Sie ausschließen möchten, im Argument eines Befehls enthalten ist oder in eine Umgebung eingebettet ist. Und wenn Sie genau wissen, was Sie ausschließen möchten.

Das linke Bild ist ohne Versteck, das rechte mit.

Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben

Die Idee besteht darin, alle Befehle und Umgebungen neu zu definieren, um den Inhalt der Argumente zu übernehmen, aber dennoch die Zählerarithmetik durchzuführen.

\documentclass{article}
\usepackage{environ}
\newtheorem{theorem}{Theorem}
\newenvironment{hide}%
  {\renewcommand\section[1]{\refstepcounter{section}}%
   \renewcommand\subsection[1]{\refstepcounter{subsection}}%
   \RenewEnviron{theorem}{\refstepcounter{theorem}}%
  }%
  {}
\begin{document}
% i want to hide from here ...
\begin{hide}
\section{Section 1}
\subsection{Subsection 1.1}
\begin{theorem}
First
\end{theorem}
\end{hide}
% ... to here
\begin{theorem}
Second
\end{theorem}
\subsection{Subsection 1.2}
\section{Section 2}
\begin{theorem}
Third
\end{theorem}
\end{document}

Antwort2

Wenn Sie dieses Dokument ausführen, die Auskommentierung von „includeonly“ aufheben und es erneut ausführen, erhalten Sie ein einseitiges Dokument mit (nur) Theorem 2 auf Seite 2.

Bildbeschreibung hier eingeben

\begin{filecontents}{zzzz1.tex}
\section{Section 1}
\subsection{Subsection 1.1}
\begin{theorem}
First
\end{theorem}

\end{filecontents}
\begin{filecontents}{zzzz2.tex}
\begin{theorem}
Second
\end{theorem}
\end{filecontents}

\documentclass{article}
\newtheorem{theorem}{Theorem}

%\includeonly{zzzz2}

\begin{document}
% i want to hide from here ...
\include{zzzz1}
% ... to here
\include{zzzz2}
\end{document}

Antwort3

Mir gefällt Gernots Antwort, aber ich hatte bereits damit begonnen, bevor ich seine gesehen habe, also kann ich sie auch gleich posten:

\documentclass{article}
\newif\ifskipstuff

\skipstufffalse
%\skipstufftrue

\usepackage{amsmath}
\begin{document}

\ifskipstuff
    \refstepcounter{section}
    \refstepcounter{subsection}
    \refstepcounter{equation}
\else
    \section{Section 1}
    \subsection{Subsection 1.1}
    \begin{equation}
        First
    \end{equation}
\fi

\section{A Section}
\subsection{Subsection}
\begin{equation}
    Second
\end{equation}

\end{document}

\elseDer Nachteil ist, dass Sie alle Zähler immer manuell erhöhen müssen. Nicht sehr schön (insbesondere, wenn die Klausel viele Dinge enthält) . Vielleicht könnte das noch weiter verfeinert werden ( \ifskipstuffvielleicht indem die Prüfungen in neu definierte Umgebungen aufgenommen werden, sodass sie ihre eigenen Prüfungen durchführen). Der Vorteil ist, dass Sie global festlegen können, ob Sie Ihr Material einschließen möchten oder nicht, indem Sie zwischen \skipstufffalsebzw. wechseln \skipstufftrue. Nun, je nach Anwendungsfall könnte es ein Vorteil sein.

\skipstufftrue:

Abonnieren

\skipstufffalse:

Abonnieren

verwandte Informationen