rafael
07-02-2011, 13:41
Um zu einem Vortrag ein ahndout mit wichtigen Überschriften, Zitaten usw. zu erstellen, möchte ich aus dem Text gewisse Daten in eine "handout.txt" schreiben, die am Ende zu einem Handout zusammengesetzt werden.
Ein ähnliches Problem findet sich in Latex-hacks von Anselm Lingnau (http://books.google.de/books?id=MPQvrjGGJWIC&pg=PA42&lpg=PA42&dq=anselm+lingau+l%C3%B6sungen&source=bl&ots=akLvbgCcez&sig=yPUtQImpllQzJQzLGRPcgh3vSAc&hl=de&ei=eudPTfbqOcuSswaKl5zDAg&sa=X&oi=book_result&ct=result&resnum=1&ved=0CBoQ6AEwAA#v=onepage&q&f=false)
Das Problem besteht allerdings, dass die Daten sowohl in den Fließtext als auch in die externe Datei geschrieben werden sollen.
Mit "Environ" habe ich das Problem nicht auf Anhieb lösen können.
Hier mal ein nicht lauffähiges Beispiel:
\documentclass{scrartcl}
%\RequirePackage{environ}%damit funktionierte es auch nicht
\RequirePackage{verbatim}
\makeatletter
\newwrite\hand@out
\immediate\openout\hand@out=handout.txt
\newenvironment{handoutwrite}[1]%
{ \@bsphack
\let\do\@makeother\dospecials\catcode`\^^M\active
\def\verbatim@processline{%
\immediate\write\hand@out{\the\verbatim@line}}%
\immediate\write\hand@out{\string \begin{handouting}}%
\verbatim@start}%
{\immediate\write\hand@out{\end{handouting}}\@esph ack}
\newcommand*{\includehandout}{%
\immediate\closeout\hand@out
\cleardoublepage
\InputIfFileExists{handout.txt}
}
\makeatother
%%%anwendung im Text
\newcommand{\myquote}[1]{%
%%%im Text
\begin{quotation}#1\end{quotation}
%%%%externe Datei
\begin{handoutwrite}\begin{quotation}#1\end{quotat ion}\end{handoutwrite}
}
\begin{document}
jetzt kommt ein Zitat, welches später auch auf dem Handout stehen soll:
\myquote{Dies ist ein Testzitat}
\includehandout
\end{document}
Ein ähnliches Problem findet sich in Latex-hacks von Anselm Lingnau (http://books.google.de/books?id=MPQvrjGGJWIC&pg=PA42&lpg=PA42&dq=anselm+lingau+l%C3%B6sungen&source=bl&ots=akLvbgCcez&sig=yPUtQImpllQzJQzLGRPcgh3vSAc&hl=de&ei=eudPTfbqOcuSswaKl5zDAg&sa=X&oi=book_result&ct=result&resnum=1&ved=0CBoQ6AEwAA#v=onepage&q&f=false)
Das Problem besteht allerdings, dass die Daten sowohl in den Fließtext als auch in die externe Datei geschrieben werden sollen.
Mit "Environ" habe ich das Problem nicht auf Anhieb lösen können.
Hier mal ein nicht lauffähiges Beispiel:
\documentclass{scrartcl}
%\RequirePackage{environ}%damit funktionierte es auch nicht
\RequirePackage{verbatim}
\makeatletter
\newwrite\hand@out
\immediate\openout\hand@out=handout.txt
\newenvironment{handoutwrite}[1]%
{ \@bsphack
\let\do\@makeother\dospecials\catcode`\^^M\active
\def\verbatim@processline{%
\immediate\write\hand@out{\the\verbatim@line}}%
\immediate\write\hand@out{\string \begin{handouting}}%
\verbatim@start}%
{\immediate\write\hand@out{\end{handouting}}\@esph ack}
\newcommand*{\includehandout}{%
\immediate\closeout\hand@out
\cleardoublepage
\InputIfFileExists{handout.txt}
}
\makeatother
%%%anwendung im Text
\newcommand{\myquote}[1]{%
%%%im Text
\begin{quotation}#1\end{quotation}
%%%%externe Datei
\begin{handoutwrite}\begin{quotation}#1\end{quotat ion}\end{handoutwrite}
}
\begin{document}
jetzt kommt ein Zitat, welches später auch auf dem Handout stehen soll:
\myquote{Dies ist ein Testzitat}
\includehandout
\end{document}