Modularisierung und Projektstruktur

Inhalt

Aufteilen eines Dokuments in mehrere Dateien

Dateien nachladen

\input{Dateiname} lädt die Datei Dateiname nach, als würde ihr Inhalt an der Stelle des \input-Befehls eingesetzt.

Kapitel auslagern

  • \include{Dateiname} ist für den Spezialfall gedacht, dass Dateiname ein volles Kapitel des Dokuments enthält (bei Dokumentklassen ohne Kapitelstruktur nicht anwendbar).

  • Am Anfang und Ende wird automatisch eine neue Seite begonnen.

  • Für jedes eingebundene Kapitel wird eine separate .aux Datei angelegt.

  • Mit \includeonly{Datei1,Datei2,…} (in der Präambel) kann ausgewählt werden, welche Kapitel tatsächlich gesetzt werden. Das Inhaltsverzeichnis, Referenzen etc. bleiben dabei auch von nicht eingebundenen Kapiteln korrekt!

Projektstruktur

Projektverzeichnis

  • Für eine größere Arbeit kann es sinnvoll sein, sie in mehrere Einzeldateien und Verzeichnisse aufzuteilen, besonders wenn sie von mehreren Personen bearbeitet wird

  • Es gibt keine Vorgaben, aber es empfiehlt sich eine Hauptdatei sowie eine Datei für jedes Kapitel zu haben, und ein oder mehrere Verzeichnisse für Bilder.

Vorschlag:

bachelorarbeit_xyz_v1/ bachelorarbeit_xyz.tex bachelorarbeit_xyz.sty bachelorarbeit_xyz-definitionen.tex fotos/ diagramme/ plots/ bib/ kapitel1/ kapitel1.tex kapitel2/ kapitel2.tex anhang/ anhang.tex

Versionskontrolle

Mit einem Versionskontrollsystem wie git kann man LaTeX-Projekte sicher verwalten, besonders wenn mehrere Personen parallel Änderungen vornehmen.

Versionskontrolle über git init, git add, git commit, git push, git pull.

.gitignore Datei listet Dateimuster, die nicht zur Versionskontrolle gehören:

*.aux *.glo *.idx *.log *.toc *.ist *.acn *.acr *.alg *.bbl *.blg *.dvi *.glg *.gls *.ilg *.ind *.lof *.lot *.maf *.mtc *.mtc1 *.out *.synctex.gz

Dateipfade

Grafikdateien

Möchte man, dass eingebundene Bilder in speziellen Pfaden gefunden werden (nicht nur unterhalb des Verzeichnisses in dem TeX aufgerufen wurde, kann man die (zusätzlich) erlaubten Suchpfade einstellen:

\graphicspath{{Pfad1/}{Pfad2/}}

Die „doppelten Klammern“ müssen auch dann angegeben werden wenn nur ein Pfad einǵestellt wird!

Nicht den abschließenden / vergessen! Der Pfad darf . (aktuelles Verzeichnis) und .. (Elternverzeichnis) enthalten.

Einbinden von PDF-Seiten

  • \usepackage[ Optionen ]{pdfpages}

  • texdoc pdfpages

  • \includepdf[Optionen]{Dateiname}

Pakete erstellen

  • Datei bachelorarbeit_xyz.sty

  • \ProvidesPackage{bachelorarbeit_xyz}[2019/10/16 Paket für die Bachelorarbeit von xyz]

  • Wichtig: Befehle mit@ im Namen dürfen benutzt werden!

  • \RequirePackage

  • \DeclareOption

  • texdoc clsguide

Aufgabe *

  • Erstellen Sie für sich ein Projektverzeichnis und die oben genannten Verzeichnisse und Dateien für eine Bachelorarbeit.

  • Erstellen Sie ein Paket mit Ihren eigenen Anpassungen.

  • Verteilen Sie die bereits erstellten Inhalte passend auf die einzelnen Dateien oder verwenden Sie Blindtext.

  • Die Arbeit sollte über die folgenden Abschnitte mit entsprechenden Beispielinhalten verfügen:

    • Inhaltsverzeichnis

    • Abbildungsverzeichnis

    • Tabellenverzeichnis

    • Listing-Verzeichnis

    • Literaturverzeichnis

    • Symbolverzeichnis

    • Glossar

    • Index

  • Verwenden Sie \include um die einzelnen Kapitel einzubinden, und testen Sie die Verarbeitung einzelner Kapitel mit \inludeonly.

  • Legen Sie ein Versionskontroll-Repository für Ihre Arbeit an.