PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : TeX capacity exceeded



rafael
24-06-2009, 16:13
Bekomme für folgendes Konstrukt die Fehlermeldung: TeX capacity exceeded, sorry [text input levels=50]. Meines Erachstens sind die Befehle korrekt definiert. Vielleicht doch nicht?



\begin{filecontents}{hsgen.sty}%anfang des stylefiles
\RequirePackage[latin1,ansinew]{inputenc}
\RequirePackage[english,ngerman]{babel} %

\newcommand{\vorbereitung}[2]{#1}
\newcommand{\moderation}[2]{#1}
\newcommand{\vorspiel}[1]{%umdefinieren I
\renewcommand{\vorbereitung}[1]{#1}
\renewcommand{\moderation}[1]{}
#1 }
\newcommand{\ablauf}[1]{%umdefinieren II
\renewcommand{\vorbereitung}[1]{}
\renewcommand{\moderation}[1]{#1}
#1 }
\newcommand{\zusammenkunft}[1]{%Vertexten
\section{Vorbereitung} \vorspiel{#1} \section{Ablauf} \ablauf{#1}
}
\end{filecontents}%ende des Stylefiles

\begin{filecontents}{Treffen.tex}%anfang texfile
\vorbereitung{Essen kochen}
\moderation{Über das Leben reden}
\end{filecontents}%ende texfile

\documentclass{scrartcl}%das Dokument
\usepackage{hsgen}

\begin{document}

\zusammenkunft{
\input{Treffen}
}
\end{document}

rafael
24-06-2009, 16:17
Vielleicht kann mir jemand auch eine elegantere Methode aufzeigen, wie Treffen.tex mehrmals durchlaufen wird und jeweils die richtigen Informationen rauszieht.

u_fischer
24-06-2009, 16:57
Naja

\zusammenkunft{\input{Treffen}} führt zu \vorspiel{\renewcommand\vorbereitung[2]{\input{treffen}}\input{Treffen} ...}. Das lädt erneut Treffen, das führt zu \vorbereitung{Essen kochen} was wiederrum \input{Treffen} lädt.... Danach habe ich aufgegeben.

Ich denke du willst eher sowas:

\begin{filecontents}{Treffen.tex}
\vorbereitung{Essen kochen} \moderation{Über das Leben reden}
\end{filecontents}%ende texfile

\documentclass{scrartcl}%

\newcommand\vorbereitung[1]{\def\Vorbereitung{#1}}
\newcommand\moderation[1]{\def\Moderation{#1}}
\newcommand{\zusammenkunft}[1]{%Vertexten
\input{#1}
\section{Vorbereitung}
\Vorbereitung
\section{Ablauf}
\Moderation}

\begin{document}

\zusammenkunft{treffen}

\end{document}

Du kannst dir auch Pakete wie datatools anschauen, falls deine Datei Informationen zu mehreren Treffen enthalten soll.

Ulrike Fischer

rafael
24-06-2009, 19:17
Vielen Dank für die Lösung, die wunschgemäß funktioniert.


Naja
Du kannst dir auch Pakete wie datatools anschauen, falls deine Datei Informationen zu mehreren Treffen enthalten soll.
Ulrike Fischer
ich binde ca 15 externe Dateien ein, die wiederum dieselbe Struktur aufweisen. Dabei soll wie gesagt in der ersten Section alles zur Vorbereitung und in der zweiten alles zur Durchführung. Das klappt mir deiner Lösung meines Erachtens nicht.

Da allerdings mitunter sehr viel Text (mit Formatierung) zum Zuge kommt, hatte ich den Eindruck, dass Datatool (oder besser gesagt die Datenbank) mit dieser Menge nicht klar kommt. Oder vielleicht doch? Dann wäre das sogar noch besser, da ja Zahlen wunderbar verrechnet werden können. Was meinst du?

Grüße
Rafael