Text mit Fußnoten reformatieren

Editoren wie TexWorks, TeXmaker, TeXstudio, TeXnicCenter, Kile, LyX, vi, Emacs und Co.


serox

Text mit Fußnoten reformatieren

Beitrag von serox »

Hallo!

Ich habe folgendes Problem: Ich möchte einen von einer Website kopierten Text gerne mit LaTeX reformatieren. Der Text liegt im Editor in Absätze gegliedert vor. Die Schwierigkeit sind die Fußnoten.

Der Text sieht z.B. so aus:

Dies[1] ist ein Text[2].
BlaBlabla

[1] Fußnote 1
[2] Fußnote 2

Wie könnte ich es am besten anstellen, die Fußnotenzeichen im Text ([1] etc.) durch den eigentlichen Fußnotentext zu ersetzen, sodass ich das Ganze mit \footnote formatieren kann. Da der Text nicht nur ein paar Fußnoten enthält, wäre es schön, das irgendwie automatisch hinzukriegen.

Irgendwelche Ideen?

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Kopiere die ganzen Fußnotentexte in eine eigene Datei. Versuche mit etwas Suchen/Ersetzen oder sed-Magie (ich weiß nicht, wie fitt Du in so etwas bist) die Fußnoten in Befehle umzuwandeln, beispielsweise »[1] Das ist eine Fußnote.« in »\NeueFussNote{1}{Das ist eine Fußnote.}« Dann definiere beispielsweise:
\newcommand*{\NeueFussNote}[2]{%
  \@namedef{FussNote@#1}{#2}%
}
\newcommand*{\SetzeFussNote}[1]{%
  \footnote{\@nameuse{FussNote@#1}}%
}
Jetzt kannst Du die neue Datei unmittelbar nach \begin{document} (damit babel zum Zuge kommt) per \input einlesen und hast danach die Fußnoten in Makros gespeichert. Jetzt musst Du nur noch die Fußnotenverweise im Text durch »\SetzeFussNote{1}« etc. ersetzen.

Das funktioniert natürlich nur, wenn die Fußnoten eindeutig nummeriert sind. Anderenfalls wird es ein klein wenig aufwändiger. Dann muss man die Fußnoten mit einem Zähler automatisch durchnummerieren lassen, um sie eindeutig zu machen.

Bezüglich des @ ist ggf. die Erklärung zu \makeatletter zu beachten.

serox

Beitrag von serox »

Es funktioniert wunderbar. Die Ersetzungen habe ich relativ einfach mit Vim hinbekommen.
Vielen Dank für die schnelle und kompetente Hilfe!

Antworten