Meine TeXstudio-Makros

TeXstudio wurde erstellt, um die Arbeit mit LaTeX zu vereinfachen. Eine Möglichkeit ist die Verwendung sogenannter Makros (oder Macros). Mit der Hilfe von Markos kann man umfangreiche Anweisungen ausführen lassen oder LaTeX-Anweisungen in den Quelltext einfügen. In diesem Artikel liste ich solche Markos auf, die ich derzeit verwende. Weitere Möglichkeiten von Makros werden im Handbuch von TeXstudio beschrieben.

Makros können in TeXstudio unter Makros / Makros bearbeiten verwaltet werden. Ich benutze Makros vor allem um LaTeX-Anweisungen direkt beim Tippen in meinen Quelltext einfügen zu lassen. Dazu dienen Auslöseimpulse (Trigger) und deren Abkürzungen (Abbreviations). Legt man z.B. ein Makro mit dem Trigger BILD an, so wird nach der Eingabe von BILD dieser Text durch den definierten LaTeX-Text ersetzt.

Beispiel für die ein benutzerdefiniertes Makro in TeXstudio. Nach dem speichern des Markos werden die Zeichenketten \bild und BILD beim Tippen automatisch durch den angegebenen LaTeX-Text ersetzt.
Beispiel für die ein benutzerdefiniertes Makro in TeXstudio. Nach dem speichern des Markos werden die Zeichenketten \bild und BILD beim Tippen automatisch durch den angegebenen LaTeX-Text ersetzt.

Makro: Bild einfügen

Nach der Eingabe von \bild oder BILD, werden diese Zeichenketten durch LaTeX-Befehle zum Einbinden eines Bildes ersetzt. Damit die unten stehenden Befehle funktionieren, muss in der Präambel das Paket graphicx eingebunden werden (z.B. \usepackage[pdftex]{graphicx}).

Name: Bild einfügen
Trigger: BILD
Abbreviation: \bild
LaTeX-Text:
\begin{figure}
\includegraphics[width=\textwidth]{Bilder/todo.jpg}
\caption{\textbf{XXX.}
XXX.
}
\label{Fig:XXX}
\end{figure}

Makro: Tabelle einfügen

Nach der Eingabe von \tabelle oder TABELLE, werden diese Zeichenketten durch LaTeX-Befehle für eine Tabelle ersetzt. Damit die unten stehenden Befehle funktionieren, müssen in der Präambel zwei Pakete eingebunden werden:

  • \usepackage{tabularx} – Tabelle, die automatisch an die Breite der Seite angepasst werden kann (über ein X bei der Angabe der Ausrichtung innerhalb der Tabelle).
  • \usepackage{booktabs} – Für die Befehle \toprule, \midrule und \bottomrule.
Name: Tabelle einfügen
Trigger: TABELLE
Abbreviation: \tabelle
LaTeX-Text:
\begin{table}
\caption{TabellenTitel}
\label{Tab:Parameter}
\begin{tabularx}{\textwidth}{ llX }
	\toprule
	Parameter & Typical value & Meaning\\
	\midrule
	$XXX$ & $XXX$ & XXX.\\
	$XXX$ & $XXX$ & XXX.\\
	\bottomrule
\end{tabularx}
\end{table}

Weitere Informationen zu Triggern

Trigger werden als Reguläre Ausdrücke interpretiert. Daher können sie deutlich mehr, als nur eine zu ersetzende Zeichenkette definieren:

Wenn dieser Triggertext in einem tex-Dokument geschrieben wird, so wird durch das aktuelle Makro ersetzt.

Wenn der Trigger mit (?<=etwas) anfängt, so passiert dies nur wenn "etwas" vor den restlichen Teil des Triggers geschriben wurde. Da der Triggertext kein einfacher Suchtext, sondern eine regulärer Suchausdruck ist, kann (?<=\S) verwendet werden, um Ersetzungen nach einem Wort und (?<=\s|^) um Ersetzungen vor einem Wort auszulösen. Man kann den speziellen Wert ?txs-start verwenden, um das Skript bei txs start zu starten.

Mathematische Formeln in Glossar-Einträgen verwenden

Ein Glossar hilft dem Leser, auf schnellem Wege eine kurze Erkläung für verwendete Fachbegriffe zu finden. In LaTeX ist es möglich, automatisch ein Glossar erzeugen zu lassen. Dazu erstellt man in der Präambel mit dem Befehl \newglossaryentry{LABEL}{} einen neuen Eintrag, und bindet ihn dann mit dem Befehl \gls{LABEL}, \Gls{LABEL}, \plspl{LABEL} oder \Glspl{LABEL} in den Text ein. Verwendet man allerdings mathematische Formeln im Namen des Glossar-Eintrags, so wird diese Formel in der Überschrift im Glossar nicht fett geschrieben. In diesem Artikel beschreibe ich, wie man Glossar-Einträge mit mathematischen Formeln korrekt formatieren kann.

Zunächst muss in der Präambel das Paket glossaries eingebunden werden.

% Glossaries-Paket sollte nach dem hyperref-Paket geladen werden.
% \usepackage[nonumberlist,acronym,toc,section]{glossaries}
\usepackage[toc]{glossaries}
\makeglossaries

Das Problem

Im Anschluss kann man einen Glossar-Eintrag hinzufügen (Hier z.B. zum Fixations-Index (Fst) aus der F-Statistik):

\newglossaryentry{Fst}{
  name        = {$F_{st}$-Wert},
  description = {Fixations-Index,...},
  sort        = {fst-wert}
}

Nun kann man den Eintrag im Text einbinden:

Ein Text, der den Begriff \gls{Fst} enthält.

Im Text selbst wird der Eintrag korrekt angezeigt:

Link zum Glossar-Eintrag, der in normaler Schriftgröße in den Text eingefügt wurde.
Link zum Glossar-Eintrag, der in normaler Schriftgröße in den Text eingefügt wurde.

In Glossar ist die Formel allerdings nicht Fett geschrieben:

Standardmäßig werden mathematische Formeln in den Überschriften der Glossareinträge nicht fett geschrieben.
Standardmäßig werden mathematische Formeln in den Überschriften der Glossareinträge nicht fett geschrieben.

Ein erster Lösungsversuch

Um nun auch die Formel fett zu schreiben, kann man den Befehl \bm aus dem gleichnamigen Paket (bm) verwenden (siehe auch Stackoverflow):

\usepackage{bm}
 
\newglossaryentry{Fst}{
  name        = {$\bm{F_{st}}$-Wert},
  description = {Fixations-Index,...},
  sort        = {fst-wert}
}

Nun wird auch der Begriff Fst aus der Mathe-Umgebung in der Überschrift des Glossar-Eintrags fett geschrieben:

In der Glossar-Überschrift wird mit Hilfe des Befehls \bm die Formel fett geschrieben.
In der Glossar-Überschrift wird mit Hilfe des Befehls \bm die Formel fett geschrieben.

Allerdings wird Fst nun auch innerhalb des laufenden Textes fett geschrieben:

Unter Umständen wird nach der Formatierung der Formel, die Formel auch im Text fett geschrieben.
Unter Umständen wird nach der Formatierung der Formel, die Formel auch im Text fett geschrieben.

Die Lösung

Nun soll die Formel nur in der Glossar-Überschrift, aber nicht im Text fett geschreiben werden. Dazu fügt man zusätzlich den text-key hinzu, ohne diesen mit \bm zu formatieren (siehe Stackoverflow):

\newglossaryentry{Fst}{
  text        = {$F_{st}$-Wert},
  name        = {$\bm{F_{st}}$-Wert},
  description = {Fixations-Index,...},
  sort        = {fst-wert}
}

Schlussbemerkungen

  • Wenn die Formel am Anfang steht, funktionieren die Befehle für die Großschreibung nicht mehr. \gls und \glspl können problemlos verwendet werden. Verwendet man allerdings \Gls oder \Glspl bekommt man folgende Fehlermeldung:

    ! Extra }, or forgotten $.

  • Wenn man Formeln im Namen des Glossar-Eintrags verwendet, muss man auf jedenfall darauf achten, dass ein Wert für die Sortierung angegeben ist. Das geht mit Hilfe des sort-Schlüssels.

Vervollständigung für eigene LaTeX-Befehle in TeXstudio realisieren

Für einige Aufgaben kann man sich in LaTeX eigene Befehle definieren. So habe ich mir z.B. Befehle für die Referenzierung von Bildern, Tabellen, etc. innerhalb meines Dokumentes definiert. Im Gegensatz zum TeX-eigenen Befehl \ref, wird einem in TeXstudio für den eigenen Befehl standardmäßig keine Liste der vorhandenen Labels angezeigt. In diesem Artikel beschreibe ich, wie man diese erweiterte Code-Vervollständigung für eigene Befehle in TeXstudio aktivieren kann.

Beim tippen des LaTeX-Befehls \ref stellt TeXstudio standardmäßig eine Liste  der vorhandenen labels zur Verfügung (hier: Fig:test). In wenigen Schritten kann man diese Liste auch beim tippen von eigenen Befehlen anzeigen lassen.
Beim tippen des LaTeX-Befehls \ref stellt TeXstudio standardmäßig eine Liste der vorhandenen labels zur Verfügung (hier: Fig:test). In wenigen Schritten kann man diese Liste auch beim tippen von eigenen Befehlen anzeigen lassen.
  1. Ich nutze z.B. für Referenzen auf Bilder einen eigenen Befehl (\fig). Dieser Befehl schreibt mir bei der Referenzierung nicht nur die Nummer, sondern auch gleich ein „Fig. “ vor diese Nummer (siehe auch LaTeX: Labels and Cross-referencing). Dazu verwende ich in der Präambel folgende Zeilen:

    \newcommand{\tab}[1]{{\sc Table~\ref{#1}}}
    \newcommand{\eq}[1]{{\sc Equation~\ref{#1}}}
    \newcommand{\fig}[1]{{\sc Figure~\ref{#1}}}	% z.B. für Fig. 2
    \newcommand{\figE}[2]{{\sc Figure~\ref{#1}#2}}	% z.B. für Fig. 2A
     
    \newcommand{\chap}[1]{{\sc Chapter~\ref{#1}}}
    \newcommand{\sect}[1]{{\sc Section~\ref{#1}}}
    \newcommand{\subsect}[1]{{\sc Subsection~\ref{#1}}}
    \newcommand{\lst}[1]{{\sc Listing~\ref{#1}}}
    \newcommand{\itm}[1]{{\sc Item~\ref{#1}}}
  2. Um nun beim tippen des Befehls \fig oder \tab ebenfalls eine Liste der labels angezeigt zu bekommen, kann man Befehle in sogenannten CWL-Dateien anlegen. Eine sehr gute Beschreibung des CWL-Formates findet man in der TeXstudio-Dokumentation (lokal).

    Ich habe mir eine Datei sven.cwl mit folgendem Inhalt angelegt:

    # Kommentarzeile
    \tab{key}#r
    \eq{key}#r
    \fig{key}#r
    \figE{key}{teil}#r
    
    \tab{key}#r
    \chap{key}#r
    \sect{key}#r
    \subsect{key}#r
    \lst{key}#r
    \itm{key}#r
    
  3. Im Anschluss habe ich die Datei in mein lokales Konfigurationsverzeichnis für TeXstudio kopiert. Unter Ubuntu Linux ist das standardmäßig: /home/username/.config/textstudio (bzw. ~/.config/textstudio)
  4. Die CWL-Datei habe ich dann in den Einstellungen von TeXstudio aktiviert:
    Die eigenen CWL-Dateien müssen noch in den Einstellungen von TeXstudio aktiviert werden.
    Die eigenen CWL-Dateien müssen noch in den Einstellungen von TeXstudio aktiviert werden.
  5. Im Anschluss wird auch für eigene Befehle (hier: \fig, \figE, \eq und \tab) eine Liste von verfügbaren labels angezeigt.

    Mit Hilfe von CWL-Dateien kann auch für eigene Befehle z.B. eine Liste bekannter labels in der Autovervollständigung angezeigt werden.
    Mit Hilfe von CWL-Dateien kann auch für eigene Befehle z.B. eine Liste bekannter labels in der Autovervollständigung angezeigt werden.

LaTeX: Im PDF anzeigen, dass ein Eintrag zum Index hinzugefügt wurde

Wenn man einen langen Text schreibt, vergisst man gelegentlich (an der richtigen Stelle) einen Eintrag zum Glossar hinzuzufügen. Bei der späteren Durchsicht des PDF-Dokumentes kann man leider nicht erkennen, an welchen Stellen Einträge zum Glossar hinzugefügt wurden. Das kann man dadurch ändern, dass man den Befehl \index neu definiert (siehe auch StackExchange).

Durch Änderung des Befehls \index kann im Text angezeigt werden, an welchen Stellen ein Eintrag zum Index hinzugefügt wurde.
Durch Änderung des Befehls \index kann im Text angezeigt werden, an welchen Stellen ein Eintrag zum Index hinzugefügt wurde.
  1. Am Aufruf des Befehls \index innerhalb des Textes muss nichts geändert werden:

    Der Begriff Allel\index{allel} wird zum Index hinzugefügt.
  2. Zunächst muss der ursprüngliche \index-Befehl zwischengespeichert werden (hier in \indexAlt):

    \let\indexAlt\index
  3. Im Anschluss kann mit Hilfe des gespeicherten alten Index-Befehls der Index-Befehl neu definiert werden. In diesem Falle wird im Text ein schwarzes Quadrat an jeder Stelle angezeigt, an der ein Eintrag zum Index hinzugefügt wird:

    \def\index{$\blacksquare$\indexAlt}

    Der Befehl \blacksquare stammt aus dem Paket amssymb und kann über folgenden Befehl in der Präambel verfügbar gemacht werden:

    \usepackage{amssymb}

Zeilenumbrüche und Absätze in LaTeX

In LaTeX gibt es mehrere Möglichkeiten „in die nächste Zeile zu springen“.

Zum einen kann ein Text in inhaltliche Einheiten („Absätze“) eingeteilt werden. Absätze zeichnen sich in der Regel dadurch aus, dass die erste Zeile eingerückt ist, und ein einen Abstand zwischen zwei Absätzen gibt. Absätze können entweder durch eine einfache Leerzeile oder durch den Befehl \par erzeugt werden:

1
2
3
4
Text des ersten Absatzes. Die erste Zeile des ersten Absatzes eines Kapitels/Section,... ist in der Regel nicht eingerückt.
 
Text des zweiten Absatzes. Dieser wird durch eine leere Zeile nach dem ersten Absatz erzeugt.\par
Text des dritten Absatzes. Dieser wird durch den Befehl \\par erzeugt.

Eine weitere Möglichkeit, die man allerdings nur in Ausnahmefällen verwenden sollte, sind Zeilenumbrüche. Diese teilen den Text nicht in logische Abschnitte ein, sondern veranlassen LaTeX nur in die nächste Zeile zu springen. Eine Einrückung der ertsen Zeile oder ein Abstand zum vorhergehenden Text erfolgt nicht. Mir fällt auch kein Beispiel ein, in dem ein Zeilenumbruch innerhalb eines laufenden Textes sinnvoll verwendet werden kann. Man kann einen Zeilenumbruch durch die Befehle \\ und \newline erzeugen.

1
ErsteZeile\\zweite Zeile\newline dritte Zeile\newline{}vierte Zeile

Mit \linebreak hat man zudem die Möglichkeit, LaTeX einen Zeilenumbruch nahezulegen (siehe auch goLaTeX und Befehls-Glossar auf WikiBooks).

Einträge ohne Nummerierung zum Inhaltsverzeichnis hinzufügen

Manchmal möchte man Einträge für Kapitel im Inhaltsverzeichnis finden, allerdings ohne Nummerierung. Haufig findet man dies für Anhänge, Danksagungen, etc., da diese nicht zum eigentlichen Inhalt der Arbeit gehören.

In der Regel teilt man dazu die Arbeit in verschiedene Bereiche ein (siehe auch WikiBooks):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
\begin{document}
\frontmatter    % Römische Seitenzahlen, Chapter ohne Nummerierung
% Titelseite, Summaries, Inhaltsverzeichnis,...
 
\mainmatter     % Nummerierte Chapter, Arabische Seitenzahlen
% Einleitung, Methoden, Ergebnisse, Diskussion, (Referenzen),...
 
\appendix       % Chapter beginnen mit einem Buchstaben
% Anhänge, (Glossar, Index),...
 
\backmatter     % Chapter ohne Nummerierung
% Danksagung, ERklärung, Lebenslauf,...
 
\end{document}

Wer diese Einteilung nicht nutzen möchte, kann auch manuell Einträge zum Inhaltsverzeichnis („table of contents“, TOC) hinzufügen. Dazu erstellt man mit Hilfe des * einen Eintrag, der nicht zum Inhaltsverzeichnis hinzugefügt wird. Im Anschluss fügt man den Eintrag manuell hinzu

\chapter{Anhang}
\addcontentsline{toc}{chapter}{Anhang}

Aktuelle Jahreszahl in einem LaTeX-Dokument anzeigen

In LaTeX kann man das aktuelle Datum in einen Text einfügen. In der Präambel findet man z.B. häufig die Angabe:

\date{\today}

Dieser Befehl fügt in den Titel des Dokumentes das aktuelle Datum ein, z.B. October 2, 2013.

Manchmal möchte man allerdings nur die aktuelle Jahreszahl, den Monat oder den Tag in das Dokument einfügen. Diese Zahlen sind in den TeX-Primitiven \year, \month, \day gespeichert und können mit Hilfe von \the oder \number in das Dokument eingefügt werden.

\documentclass[a4paper]{article}
\usepackage[english,ngerman]{babel}
\begin{document}
%
% Die Ausgabe von \today ist abhängig von der Sprache:
Deutsche Ausgabe: \today
\selectlanguage{english}\\
Englische Ausgabe: \today \\
%
% Einzelne Werte einfügen
Aktueller Tag: \the\day\\
Aktueller Monat: \the\month\\
Aktuelles Jahr: \the\year
\end{document}

Weitere Beispiele und Details finden sich auf WikiBooks.org.

Befehle die ich häufig in der LaTeX-Präambel verwende

Seit ich mit LaTeX begonnen habe, habe ich viele Pakete kennengelernt und eigene Befehle entwickelt. Alle haben irgendwo einen Platz in der Präambel gefunden. Problematisch wird es, wenn ich mit alten LaTex-Dokumenten arbeite, in denen ich bestimmte Befehle noch nicht verwendet habe. Oder wenn ich die Präambel eines Dokumentes kopiere, in dem unnötige Pakete eingebunden werden. Oftmals vergesse ich auch altenative Parameter, die man für ein Paket verwenden kann.

Da das alles sehr lästig ist, beginne ich jetzt diese Liste mit Befehlen aus meinen Präambeln. Dabei stelle ich kurz vor, warum ich ein Paket verwende und welche Prameter man verwenden kann.

Als allgemeine Einleitung zu LaTeX eigenet sich auf jedenfall „The not so Short Introduction to LaTeX„, die es in einer Kurzfassung auch auf deutsch gibt.

Dokumententyp

  1. 1
    
    \documentclass[a4paper,twoside,12pt]{scrartcl}

    Mit dieser Zeile wird der Dokumententyp scrartcl verwendet. Häufig verwendete Dokumententypen sind:

    • article – Kurze Artikel
    • report – Lange Berichte
    • book – Bücher
    • scrartcl – Kurze Artikel (KOMA Script)
    • scrreprt – Lange Berichte (KOMA Script)
    • scrbook – Bücher (KOMA Script)

    KOMA-Script erlaubt eine bessere Anpassung z.B. an DIN-Formate.
    Wichtige Optionen sind der Dokumententypen sind:

    • a4paper – DIN-A4 als Seitengröße verwenden (Andere: letterpaper)
    • twoside – Doppelseitigen Satz verwenden (Standard: oneside)
    • 12pt – Angabe der Schriftgröße in Punkten (Standard: 10pt)
    • titlepage – Nach dem Dokumententitel eine neue Seite beginnen (Standard bei book und report; bei article ist der Standard notitlepage)
    • twocolumn – Teile die Seiten in zwei Spalten auf (Standard: onecolumn)
    • openright, openany – Sollen Kapitel immer auf der rechten Seite begonnen werden?
  2. 1
    
    \pagestyle{headings}

    In LaTeX gibt es drei verschiedene Seitenlayouts:

    • plain – Setze die Seitenzahl zentriert unten auf die Seite.
    • headings – Zeige Seitenzahl und Kapitelnamen in der Kopfzeile jeder Seite an.
    • empty – Zeige weder Seitenzahlen, noch Kapitelnamen an.

Sprache und Zeichensatz

  1. 1
    
    \usepackage[english]{babel}

    Verschiedene Sprachen haben auch verschiedene Trennungsregeln. Unter anderem werden diese in Paket babel definiert.

    • english – englische Trennungsregeln verwenden
    • ngerman – deutsche Trennungsregeln verwenden (neue Rechtschreibung)
    • german – deutsche Trennungsregeln verwenden (alte Rechtschreibung)
    • ngerman,english – deutsche und englische Trennungsregeln laden (z.B. bei mehrsprachigen Dokumenten). Im Dokument die aktiven Trennungsregeln umschalten mit:
      \selectlanguage{ngerman}
  2. 1
    2
    3
    
    \usepackage{ucs}              % Unicode (u.A. UTF-8) hinzuladen!
    \usepackage[utf8x]{inputenc}  % Verwende UTF-8 als Zeichensatz.
    \usepackage[T1]{fontenc}      % Trennung von Umlauten ermöglichen(?)

    Sofern man Sonderzeichen aus mehreren Sprachen in einem Dokument verwendet (z.B. Sonderzeichen in den Autorennamen der Literaturliste), sollte man den Unicode-Zeichensatz UTF-8 als Zeichensatz seines Dokumentes verwenden. Das Dokument selbst sollte dann auch in diesem Zeichensatz gespeichert werden. Man sollte auch beachten, dass zusätzliche Dokumente wie .bib-Dateien auch im UTF-8 Zeichensatz gespeichert werden müssen. Im Referenzmanager JabRef kann man unter file / database properties / encoding UTF-8 einstellen!

Beispiel

Ein Dokument mit den oben beschriebenen Werten für die Präambel könnte folgendermaßen aussehen:

1
2
3
4
5
6
7
8
9
10
11
12
% Dokumententyp
\documentclass[a4paper,twoside,12pt]{scrartcl}
\pagestyle{headings}
% Sprache und Zeichensatz
\usepackage[english]{babel}
\usepackage{ucs}              % Unicode (u.A. UTF-8) hinzuladen!
\usepackage[utf8x]{inputenc}  % Verwende UTF-8 als Zeichensatz.
\usepackage[T1]{fontenc}      % Trennung von Umlauten ermöglichen(?)
 
\begin{document}
Text
\end{document}

LaTeX-Datei in mehrere Dateien aufteilen

Abschlussarbeiten oder Publikationen können oft viel Text enthalten. Große LaTeX-Dateien werden allerdings sehr schnell unübersichtlich. Daher kann man z.B. Kapitel, Deckblätter, Glossare,… in eigene Dateien auslagern. Diese Dateien werden dann in einer Haupt-Datei wieder zusammengeführt, indem man sie mit dem Befehl \input() einbindet. Im Vergleich zu include() kann input():

  • innerhalb der Präambel verwendet werden (z.B. für ein Glossar)
  • innerhalb einer mit input() eingefügten Datei verwendet werden (Verschachtelung)
  • verwendet werden, ohne das zwingend ein Zeilenumbruch erfolgt

(siehe dazu auch: Vergleich von input und include).

Angenommen die Abschlussarbeit befindet sich in der Datei arbeit.tex. Diese könnte z.B. folgenden Inhalt haben:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
\documentclass[12pt,twoside]{article}
 
\title{Meine Abschlussarbeit}
\author{Max Mustermann}
\date{\today}
 
\begin{document}
 
\maketitle
\tableofcontents{}
 
\input{einleitung}    % binde die Datei einleitung.tex ein
\input{methoden}      % binde die Datei methoden.tex ein
% ... (weitere Dateien Einbinden)
 
\end{document}

In diesem Falle muss es zwei weitere Dateien geben: einleitung.tex und methoden.tex.
Diese beiden Dateien entahlten die Inhalte, die mit Hilfe der Datei arbeit.tex zusammengefügt werden.
In der Datei einleitung.tex könnte Folgendes stehen:

1
2
3
% !TEX root = arbeit.tex
\section{Einleitung}
Einführung in die Thematik dieser Arbeit.

In der Datei methoden.tex könnte z.B. folgender Inhalt stehen:

1
2
3
% !TEX root = arbeit.tex
\section{Methoden}
Verwendete Methoden.

Die einzelnen Dateien für die Sections haben dabei keine eigene Präambel und kein eigenes \begin{document}. Arbeitet man also an einer dieser Dateien und startet aus seinem Editor heraus latex/pdflatex für diese Datei, bekommt man in der Regel eine Fehlermeldung:

! LaTeX Error: Missing \begin{document}.

Daher sollte man zu Beginn jeder Datei die Zeile % !TEX root = arbeit.tex hinzufügen. Diese Zeile teilt LaTeX mit, welches die Haupt-Datei (root = Wurzel) der Arbeit ist. Im Anschluss verwendet LaTeX anstatt der aktuellen Datei immer die Haupt-Datei (hier: arbeit.tex) zum setzen und nicht die aktuell bearbeitete Datei.
Siehe dazu auch codepills.