Sie sind hier

Inhaltsverzeichnis aus TOC Datei erstellen?

Hallo,

die Dissertationsrichtlinie meiner Universität gibt mir vor, daß ich neben der eigentlichen Dissertation (nehmen wir an, Dateiname Dissertation.tex) als PDF auch eine "Leseprobe" (nehmen wir an, Dateiname Leseprobe.tex) als PDF einreichen muß, die das Titelblatt, das vollständige Inhaltsverzeichnis der eigentlichen Dissertation sowie ausgewählte Kapitel enthält.

Bis auf das Inhaltsverzeichnis kein Problem (da die einzelnen Kapitel und Titel eh in eigene Dateien ausgegliedert sind und per \input eingebunden werden.

Kopfschmerzen bereitet mir ist, das Inhaltsverzeichnis der Dissertation in die Leseprobe zu bekommen.

Mein Ansatz, zuerst LaTeX für die Dissertation.tex laufen zu lassen und dann in der Leseprobe.tex per

\include{Dissertation.toc}

das Inhaltsverzeichnis der Dissertation einzulesen scheitert, da

  1. In der Dissertation.toc aufgrund der Mehrsprachigkeit meines Dokuments mehrere \select@language{languagename} enthalten sind, die nicht korrekt verarbeitet werden
  2. der Satz nicht mit dem des eigentlichen Inhaltsverzeichnisses übereinstimmt

Wer kann mich auf den richtigen Weg bringen?

Vielen Dank im Voraus!
Christian

P.S.: Ich bin mir nicht sicher, ob ein Minimalbeispiel für diese Problemstellung vonnöten ist, liefere aber gerne bei Bedarf eines nach.

Bild von Markus Kohm

Es stellt sich die Frage, ob nicht ein gänzlich anderer Ansatz genauso gut wäre: Die gewünschten Seiten aus der Arbeit mit Hilfe von pdftk (oder einem anderen PDF-Bearbeitungsprogramm) oder LaTeX und pdfpages in eine neue Datei schreiben.

Vorteile:

  • Querverweise in nicht enthaltene Teile des Dokuments bleiben aufgelöst. Es wird also aus »siehe Kapitel 3« nicht etwas »siehe Kapitel ??« oder gar »siehe ??«, nur weil Kapitel&nbasp;3 nicht in der Leseprobe enthalten ist.
  • Der Umbruch bleibt exakt erhalten, ohne dass man darauf achten muss, dass man nicht im einen Header eine Einstellung verändert hat, oder durch das vorgenannte Problem Umbruchänderungen entstehen.
  • Die Nummerierung der Leseproben entspricht dem Original, ohne dass man sie ggf. händisch korrigiert.

Nachteil:

  • Je nach Methode zerbrechen anklickbare Querverweise, führen dann also ins Leere oder sind nicht mehr anklickbar.
  • Man muss entweder manuell oder durch zusätzliche Anweisungen im Hauptdokument die Seiten auswählen, die ins neue Dokument sollen, statt dass man einfach ganze Dateien auswählt.

Den zweiten Nachteil kann man dadurch entschärfen, dass man die Seiten im Hauptdokument in eine Zwischendatei schreiben lässt. So könnte man etwas wie (ungetestet)

\newwrite\selectionfile\openout\selectionfile selection.tex
\newcommand*{\startselection}{%
  \write\selectionfile{\noexpand\newselection{\thepage}}%
}%
\newcommand*{\endselection}{%
  \write\selectionfile{{\thepage}}%
}%

in die Präambel des Hauptdokuments packen und dann die Anfänge der Auswahlen mit \startselection und die Enden mit \endselection markieren. Das funktioniert so aber nur, wenn nur arabische Seitenzahlen verwendet werden!

Das Selektionsdokument könnte dann so aussehen (ungetestet):

\documentclass{article}
\usepackage{pdfpages}
\newcommand*{\newselection}[2]{%
  \includepdf[pages=#1-#2]{<Hauptdokumentname>}%
}
\begin{document}
\input{selection.tex}
\end{document}

Will man noch Verschiebungen oder sonst irgendwelche Änderungen an der Selektion, so ändert man nur beispielsweise die Optionen von \includepdf in der Definition von \newselection.

Wenn Du hingegen bei Deiner Lösung bleiben willst, dann brauchst Du etwas, wie (ungetestet):

\newcommand*{\InputTOCFile}[1]{%
  \begingroup
    \makeatletter
    \input{#1}
  \endgroup
}

Die Gruppe ist dabei sehr wichtig, damit Definitionen und Umschaltungen wie \select@language in ihrer Auswirkung auf die Datei beschränkt bleiben. Das \makeatletter findest Du in der De-TeX-FAQ.

Comments for "Inhaltsverzeichnis aus TOC Datei erstellen?" abonnieren