PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : bestimmte Bereiche "ausblenden"



Gorgonzilla
10-08-2011, 15:33
Hallo,

ich schreibe gerade an einer mathematischen Arbeit und würde gern eine Version meiner Arbeit ohne Beweise haben. D.h. ich möchte, dass die proof-Umgebungen beim Kompilieren ignoriert werden.

Hat jemand eine Idee?

(Ein Minimalbeispiel scheint mir nicht nötig, falls doch liefere ich es nach.)

MfG

mechanicus
10-08-2011, 15:37
(Ein Minimalbeispiel scheint mir nicht nötig, falls doch liefere ich es nach.)
Das ist immer gut:


\newif\ifproofinsert
\proofinserttrue
%\proofinsertfalse
\newsavebox\myproofbox
\ifproofinsert
\else
\renewenvironment{proof}{%
\begin{lrbox}{\myproofbox}%
}{\end{lrbox}}
\fi

ungetestet!!!!

EDIT: \fi ergänzt

Gorgonzilla
10-08-2011, 16:34
Hallo,

danke schon mal für den Code. Ich habe am Ende ein \fi eingefügt, sonst nimmt's der Compiler nicht. Damit bleibt erst mal alles beim Alten. Ich habe jetzt mehrere Varianten durchprobiert, welche Zeile ich auskommentiere und welche nicht. Keine hat der Compiler durchgehen lassen. Also was muss ich ändern, damit die Beweise ausgeblendet werden?

MfG

mechanicus
10-08-2011, 16:37
Hallo,

danke schon mal für den Code. Ich habe am Ende ein \fi eingefügt, sonst nimmt's der Compiler nicht. Damit bleibt erst mal alles beim Alten. Ich habe jetzt mehrere Varianten durchprobiert, welche Zeile ich auskommentiere und welche nicht. Keine hat der Compiler durchgehen lassen. Also was muss ich ändern, damit die Beweise ausgeblendet werden?

MfG

Mache doch ein Minimalbeispiel

Gorgonzilla
10-08-2011, 16:45
So?


\documentclass[a4paper,10pt]{scrartcl}

\usepackage{amsthm}

\begin{document}

\newtheorem{theorem}{Theorem}[section]

\begin{theorem}
Das ist ein Theorem.
\end{theorem}

\begin{proof}
Das ist ein Beweis.
\end{proof}

\end{document}

mechanicus
10-08-2011, 16:48
Und was funktioniert mit meinem Code nicht?

\documentclass[a4paper,10pt]{scrartcl}

\usepackage{amsthm}
\newif\ifproofinsert
%\proofinserttrue
\proofinsertfalse
\newsavebox\myproofbox
\ifproofinsert
\else
\renewenvironment{proof}{%
\begin{lrbox}{\myproofbox}%
}{\end{lrbox}}
\fi
\begin{document}

\newtheorem{theorem}{Theorem}[section]

\begin{theorem}
Das ist ein Theorem.
\end{theorem}

\begin{proof}
Das ist ein Beweis.
\end{proof}

\end{document}

Die Stellschrauben sind rot

Gorgonzilla
10-08-2011, 16:56
Es scheint ein Problem zu geben, wenn ich den Mathemodus innerhalb eines Beweises benutze.


\documentclass[a4paper,10pt]{scrartcl}

\usepackage{amsthm}
\newif\ifproofinsert
%\proofinserttrue
\proofinsertfalse
\newsavebox\myproofbox
\ifproofinsert
\else
\renewenvironment{proof}{%
\begin{lrbox}{\myproofbox}%
}{\end{lrbox}}
\fi
\begin{document}

\newtheorem{theorem}{Theorem}[section]

\begin{theorem}
Das ist ein Theorem.
\end{theorem}

\begin{proof}
Das ist ein Beweis.
\begin{equation*}
x^2+y^2=z^2
\end{equation*}
\end{proof}

\end{document}

Das gibt mir 4 Fehler. In meinem Dokument wird die Kompilierung sogar abgebrochen.

mechanicus
10-08-2011, 17:07
Hi,

habe eine minipage vergessen, da eine einfache box keine Umbrüche erlaubt. Also nächstes mal doch ein Beispiel, so dass wir testen können.


\documentclass[a4paper,10pt]{scrartcl}

\usepackage{amsmath,amsthm}
\newif\ifproofinsert
\proofinserttrue
%\proofinsertfalse
\newsavebox\myproofbox
\ifproofinsert
\else
\renewenvironment{proof}{%
\begin{lrbox}{\myproofbox}\begin{minipage}{\linewi dth}%
}{\end{minipage}\end{lrbox}}
\fi
\begin{document}

\newtheorem{theorem}{Theorem}[section]

\begin{theorem}
Das ist ein Theorem.
\end{theorem}

\begin{proof}
Das ist ein Beweis.
\begin{equation*}
x^2+y^2=z^2
\end{equation*}
\end{proof}

\end{document}

Gorgonzilla
10-08-2011, 17:58
Klappt. Vielen Dank.