
LaTeX
eignet sich sehr gut zum Anpassen der Nummerierung – und noch wichtiger, der Verweise darauf – beim Einfügen neuer Kapitel, Abschnitte usw.
In juristischen Dokumenten (und Büchern) werden diese Dinge zumindest hier in Deutschland häufig so eingefügt, dass die vorherige Nummerierung beibehalten wird, aber die Nummer vor der Einfügung gefolgt von einem kleinen Buchstaben (a, b, c, ...) verwendet wird, um anzuzeigen, dass sich etwas geändert hat (entweder in letzter Minute oder – was der wirklich wichtige Fall ist – gegenüber einer früheren Ausgabe).
Da ich dachte, dass es selten vorkommt, dass mehr als eine zusätzliche aufeinanderfolgende Fußnote vorkommt, habe ich den folgenden (unglaublich groben und schmutzigen) Hack ausprobiert, der im MWE gezeigt wird:
\documentclass{article}
\newcommand{\myextrafootnote}[1]{\renewcommand{\thefootnote}{\arabic{footnote}a}\footnote[\thefootnote]{#1}\renewcommand{\thefootnote}{\arabic{footnote}}}%
\begin{document}
This is the old text\footnote{foo}, followed by the new insert\myextrafootnote{New Exciting Stuff!!}, followed by the old next one.\footnote{bar}
\end{document}
Leider funktioniert es nicht so, wie ich es mir erhofft hatte. Die Fußnoten selbst sehen zwar so aus, wie sie sollten:
der Text erhält den zusätzlichena
Auchdirekt vor dem Fußnotenzeichen hinzugefügt: wie hier gezeigt:
Im Idealfall würde das natürlich a
auch von einer Art Zähler kommen (das habe ich auch versucht, aber es führte zu vielen Fehlermeldungen über fehlende Argumente, also habe ich es aufgegeben und beschlossen, lieber die Experten zu fragen...), alsoWennwenn mehr als eine zusätzliche, aufeinanderfolgende Fußnote hinzugefügt würde, würde es immer noch korrekt funktionieren [und weniger grob sein als jetzt].
Antwort1
Das optionale Argument des \footnote
Befehls erwartet einganze Zahlenthält die Nummer der Fußnote, nicht die Textdarstellung dieser Nummer. Sie sollten also verwenden
\footnote[\value{footnote}]{#1}
anstatt
\footnote[\thefootnote]{#1}
Zusatz
Woher kommt also das zusätzliche „a“? Um dies zu verstehen, untersuchen wir Schritt für Schritt, wie der fehlerhafte Code
\footnote[\thefootnote]{#1}
wird von TeX verarbeitet. Das Makro \thefootnote
wird (in dem Kontext, in dem der OP es verwendet hat) zu erweitert 1a
, sodass (La)TeX das Äquivalent von sieht
\footnote[1a]{...}
Aber wie bereits gesagt, wird erwartet, dass das optionale Argument einen Integer-Wert enthält; dieser Integer-Wert wird lokal einem dedizierten Zähler (entweder footnote
oder mpfootnote
, je nach Kontext) innerhalb des \@xfootnote
internen Befehls zugewiesen. Der Code für diese Zuweisung ist (entspricht)
<counter> = #1\relax
das wird in unserem Fall
<counter> = 1a\relax
Das a
beendet jedoch die Integer-Konstante 1
und damit auch die Zuweisung; an dieser Stelle a
wird das Token als Befehl interpretiert, ein „a“-Zeichen horizontal zu setzen (dh, der aktuelle) Modus. Und hier sind wir.
Antwort2
Hier ist zusätzlich ein extrastuff
Zähler vorhanden, der bei jeder \myextrafootnote
Verwendung weitergeschaltet wird.
Mehr als Additionen sind auf diesem Wege allerdings 26
nicht möglich, da \alph{extrastuff}
verwendet wird.
Falls Sie noch mehr Ergänzungen benötigen, alphalph
ist das Paket zur Erhöhung der Zählerleistung hilfreich!
\documentclass{book}
\newcounter{extrastuff}[chapter]
\newcommand{\myextrafootnote}[1]{%
\stepcounter{extrastuff}%
\begingroup
\renewcommand{\thefootnote}{\arabic{footnote}\alph{extrastuff}}%
\footnote[\value{footnote}]{#1}%
\endgroup
}%
\begin{document}
This is the old text\footnote{foo}, followed by the new insert\myextrafootnote{New Exciting Stuff!!}, followed by the old next one.\footnote{bar}
New however is this text\myextrafootnote{Really new Exciting Stuff!!}, followed by the old next one.\footnote{foobar}
\end{document}
Aktualisieren
Zurücksetzen extrastuff
mit Fußnotenzähler:
\documentclass{book}
\newcounter{extrastuff}[footnote]
\newcommand{\myextrafootnote}[1]{%
\stepcounter{extrastuff}%
\begingroup
\renewcommand{\thefootnote}{\arabic{footnote}\alph{extrastuff}}%
\footnote[\value{footnote}]{#1}%
\endgroup
}%
\begin{document}
This is the old text\footnote{foo}, followed by the new insert\myextrafootnote{New Exciting Stuff!!}, now for something completely different\myextrafootnote{Other top secret content}, followed by the old next one.\footnote{bar}
New however is this text\myextrafootnote{Really new Exciting Stuff!!}, followed by the old next one.\footnote{foobar}
\end{document}
Antwort3
Dies ist ein schönes Beispiel für kurzfristiges Denken. Ihre Lösung wird mehr Probleme verursachen, als sie löst. Wie werden Sie neue Fußnoten einer nächsten Revision kennzeichnen?
Wenn Sie die Änderungen zwischen zwei Revisionen eines Dokuments anzeigen müssen, stellen Sie einen »Diff« zwischen document-version-1.tex und document-version-2.tex bereit, wobei letztere die neueste Revision ist.
Bitte schauen Sie sich an latexdiff
, Sie erhalten das Handbuch, indem Sie es texdoc latexdiff
in ein Konsolenfenster eingeben. Im Grunde ist es nur
latexdiff document-version-1.tex document-version-2.tex > document-diff.tex
Öffnen und kompilieren Sie anschließend document-diff.tex. Das PDF enthält alle Änderungen.
Sie können Farben und Markierungen für Löschungen und Hinzufügungen auswählen. Ich bevorzuge etwas wie
\providecommand{\DIFadd}[1]{{\protect\color{blue}#1}} %DIF PREAMBLE
\providecommand{\DIFdel}[1]{{\protect\color{red}\protect\scriptsize{#1}}}
in die Präambel von document-diff.tex.
Dies hat den Vorteil, dass die Unterschiede zwischen zwei Versionen eines Dokuments deutlich angezeigt werden. Jetzt und bei jeder zukünftigen Überarbeitung.
Wenn Sie viele Revisionen erwarten, sollten Sie ein Versionskontrollsystem wie Git und dann Latexbatchdiff verwenden, siehe hier:https://tex.stackexchange.com/a/44092/4736