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.