Wenn man folgendes Beispiel durchlaufen lässt, erhält man eine zweite tex-Datei. Lässt man die durchlaufen, so stehen die Anmerkungen auf den "richtigen" Seiten. Voraussetzung ist allerdings, dass die Anmerkungen zu einer Seite nie länger als eine Seite sind.
Jetzt kann man das einfach in zwei Durchläufen drucken oder mit pdfpages kombinieren. Was derzeit fehlt, sind eventuelle Leerseiten im Notizbereich am Ende des Dokuments. Ich dachte mir, dass man die nicht braucht.
Code:
\documentclass{article}
\usepackage{marginnote}
\newwrite\notefile
\AtBeginDocument{%
\openout\notefile \jobname-note.tex
\write\notefile{\expandafter\detokenize\expandafter{\notepreamble}}%
\write\notefile{%
\string\makeatletter^^J%
\string\newcounter{Note}^^J%
\string\newcommand\string\Note[2]{%
\string\@whilenum \string\value{page}<\string#1 \string\do{%
\string\null\string\newpage
}%
\string\stepcounter{Note}%
\string\paragraph*{\string\theNote:}%
\string#2
}%
\string\makeatother^^J%
\string\pagestyle{empty}^^J%
\string\begin{document}}%
\AtEndDocument{%
\write\notefile{\string\end{document}}%
\closeout\notefile
}%
}
\newcounter{Note}
\newcommand*{\Note}[1]{%
\stepcounter{Note}%
\marginnote{$\longrightarrow$ \theNote}%
\write\notefile{\string\Note{\thepage}{\detokenize{#1}}}%
}
\makeatletter
\newcommand*\notepreamble{\documentclass{article}}
\makeatother
\usepackage{lipsum}
\begin{document}
\lipsum\Note{erste Notiz}
\lipsum\Note{zweite Notiz}
\lipsum
\lipsum\Note{dritte Notiz}
\lipsum
\end{document}
Übrigens würde ich nicht zuviel weiteren Code in \notepreamble hinzufügen, sondern dort ggf. eher mit \input eine Datei mit der Präambel laden und diese Datei per filecontents-Umgebung erzeugen. Ich habe das mehr für einfache Dinge wie die Änderung der Klasse vorgesehen.
Lesezeichen