Expansion eines Makros ohne Ausgabe

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


mrpiggi
Forum-Anfänger
Forum-Anfänger
Beiträge: 18
Registriert: Mi 3. Apr 2013, 17:42

Expansion eines Makros ohne Ausgabe

Beitrag von mrpiggi »

Hallo,

ich möchte gerne ein Makro im Dokument expandieren, ohne das dieses ausgegeben wird. Hintergrund ist, dass ich für eine Titelseite neue Felder definiert habe und ich die Fußnoten daraus extrahieren möchte. Momentan mache ich das, indem ich das Makro in eine Box expandiere, diese aber nicht aufrufe. Die Lösung funktioniert auch, allerdings wollte ich wissen, ob es evtl. eine elegantere Lösung gibt.
\documentclass{minimal}
\begin{document}
\makeatletter

\newcommand*\@bla{}
\newcommand*\@thx{}
\newcommand*\bla[1]{\gdef\@bla{#1}}
\bla{abc\thanks{text}}
\begingroup
\global\let\@thx\relax%
\def\thanks#1{\gdef\@thx{#1}}%
\setbox0\vbox{\@bla}%
%\let\thanks\@gobble%
%Inhalt: \@bla
\endgroup

Fußnote: \ifx\@thx\relax <leer>\else\@thx\fi

\makeatother
\end{document}
Grüße
Falk

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Für mich sieht die Lösung eigentlich gut aus :)

Grüße
Clemens
Paketauthor

Antworten