Ohne zusätzliche Kennzeichnung oder Einbindung von Paketen werden Sonderzeichen bei der Interpretation einfach ausgelassen. Dazu zählen sämtliche Umlaute, “nationale” Anführungszeichen, usw. LaTeX-Steuerbefehle müssen zwingen gekennzeichnet (maskiert) werden, ansonsten wirft der Interpreter eine Fehlermeldung aus.
1. Steuerbefehle
LaTeX-Steuerbefehle (Backslash, Unterstrich, Kaufmanns-Und, rechteckige / spitze / geschweifte Klammern, …) müssen grundsätzlich gekennzeichnet werden, wenn sie als normales Textzeichen verwendet werden sollen. Dazu muss in den meisten Fällen vor dem Steuerbefehl ein Backslash eingefügt werden. Liste mit reservierten Befehlszeichen, die maskiert werden müssen.
2. Umlaute
Möchte man keine Pakete einbinden lassen sich Umlaute über \”u, \”a bzw. \”o maskieren: Backslash + doppelte Anführungszeichen + Umlaut-Buchstabe.
Wer Umlaute ohne Maskierung (mittels Backslash) direkt eingeben will, muss ein bis zwei Pakete einbinden. Der erste Schritt umfasst das Festlegen der Eingabekodierung. Je nach Betriebssystem und verwendetem Editor muss eine andere Option im Paket “inputenc” ausgewählt werden. Hier kann man entweder in den Dokumenteinstellungen nachschauen, welche Kodierung das Programm verwendet oder ein wenig mit den häufigsten Fällen experimentieren. Eine gute Übersicht zur Eingabekodierung ist in den Wikibooks.
\usepackage{ucs} % Oft benötigt für Unicode auf Linux
\usepackage[utf8]{inputenc} % Neuere Installation im Linux-Bereich
Anschließend muss of noch die Ausgabekodierung mit dem Paket fontenc festgelegt werden (siehe unten).
Bindet man das Paket “babel” ein, welches allgemein empfehlenswert ist für Trennungsregeln und andere typographische Besonderheiten der dt. Sprache, so verkürzt sich das Setzen von Umlauten auf das Anführungszeichen + Umlaut-Buchstabe (“u wird zu ü):
3. Sonderzeichen
Ohne die Verwendung von Zusatzpaketen, müssen Sonderzeichen, die Bestandteil des auszugebenden Texts sein sollen, gekennzeichnet werden. Dazu gehören insbesondere Anführungszeichen, phonetische Zeichen, usw. Meist ist auch noch das Einbinden diverser Packages (textcomp, fontenc) nötig. Eine umfangreiche Liste mit Sonderzeichen und entsprechender Maskierung hilft beim umschreiben. Paragraph 1.2 enthält Querverweise zu den am häufigsten nachgefragten Zeichen.
Das Paket “textcomp” erlaubt den Zugriff auf zahlreiche Sonderzeichen, die häufiger verwendet werden. Darüber hinaus sollte das Character-Encoding (Zeichensatzkodierung) über das Paket “fontenc” auf die Option “T1″ eingestellt sein. Die Zeichensatzkodierung kann man sich vorstellen wie eine lange Tabelle, die jedem Zeichen einen numerischen Wert zuweist. So kann der Interpreter des LaTeX-Code entscheiden, welches Zeichen bei der Ausgabe darzustellen ist. Für den englischsprachigen Raum reicht OT1 als Kodierung, im europäischen Raum mit bspw. dt. Umlauten muss T1 verwendet werden.
Das Eurosymbol kann mit unterschiedlichen Paketen eingebunden werden. Das textcomp-Package enthält viele Sonderzeichen, aber leider nur ein inoffizielles Euro-Symbol. Das offizielle Zeichen für den Euro enthält das Paket eurosym.
| Ausgabe | LaTeX | Hinweis |
| € | \euro | \usepackage{eurosym} einbinden |
| 2,56 € | \EUR{2,56} | \usepackage[right]{eurosym} einbinden, als Option [right] oder [left] zum Ausrichten des Euro-Zeichens vor oder nach der Zahl |
4. Beispiel
Im folgenden ein kurzes vollfunktionsfähiges Beispiel mit den häufigsten Sonderzeichen:
\usepackage[applemac]{inputenc}
% Encoding entsprechend anpassen! Hier: TeXshop auf dem Mac mit “MacOS Lateinisch”
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{textcomp}
\usepackage{eurosym}
\begin{document}
\section{Allgemeines}
Die Kosten belaufen sich auf \$600 (\EUR{450}) je Stunde bei der Kanzlei Meister \& Meister. \S154 HGB setzt 50\% Eigenkapital-Quote voraus.\\Im Verzeichnis $\backslash$home$\backslash$\textasciitilde maxmustermann$\backslash$ befinden sich alle Dokumente — auch Bilder und Musik.
\section{Gummibärchen}
Jeder wahre Gummibärchen-Gourmet wird mich verstehen. Ebenfall phantasieanregend können sie eingesetzt werden zum Aufbau verschiedener »Orgiengruppen- Modelle« oder als »Demonstrationsobjekt für wirbellose Tiere«. Abgesehen vom diabolischen Lustgewinn müßte man die Bärchen gar nicht zerreißen. Sie sind ja durchscheinend. Zu behaupten, daß sich im Gummibärchen das Wesen aller Dinge offenbart, finde ich keinesfalls als gewagt.
\end{document}
Output als Bild:
Im folgenden Bild sind zwei Probleme rot markiert: Zwischen den einzelnen Überschriften und den Seitenzahlen sollen Punkte bis zum Tabstop für die Zahl stehen. Nach Änderung der Schriftart und Ebenentiefe, befindet sich die Nummerierung nicht mehr bündig am Text der Vorzeile. Außerdem ist der Abstand zwischen den Punkten zu hoch.
Die Abstandsformatierung des Inhaltsverzeichnisses kann man durch Einbinden des Pakets Titletoc verändern.
Der Befehl “titlecontents” überlässt einem die Kontrolle über alle Abstände im Inhaltsverzeichnis. Für jeden Abschnitt lassen sich eigene Formatierungen festlegen. Im ersten Beispiel für Chapter: Der Text der Überschrift beginnt 1.5em rechts vom Rand. Über jeder Chapter-Überschrift wird eine Leerzeile in Höhe von einem Pica eingefügt (\addvspace{1pc}). Text wird fett gedruckt (\bfseries). Die Nummerierung wird vom Textbeginn um 1.5em nach links geschoben (\contentslabel{1.5em}). Zwischen den letzten Buchstaben und der Seitenzahl werden Punkte im Abstand von 0.3 Pica gesetzt (\titlerule*[0.3pc]{.}). Anschließend die Seitenzahl.
\titlecontents{chapter}[1.5em]{\addvspace{1pc}\bfseries}{\contentslabel{1.5em}}{}{\titlerule*[0.3pc]{.}\contentspage}
\titlecontents{section}[3.7em]{}{\contentslabel{2.2em}}{}{\titlerule*[0.3pc]{.}\contentspage}
\titlecontents{subsection}[6.7em]{}{\contentslabel{2.95em}}{}{\titlerule*[0.3pc]{.}\contentspage} \titlecontents{subsubsection}[10.6em]{}{\contentslabel{3.8em}}{}{\titlerule*[0.3pc]{.}\contentspage}
\titlecontents{paragraph}[15.25em]{}{\contentslabel{4.6em}}{}{\titlerule*[0.3pc]{.}\contentspage}
Striche oder Punkte zwischen Überschrift und Seitenzahl
Mit dem Befehl \titlerule*[⟨Abstand der Punkte⟩]{⟨Füllmaterial⟩} kann man die Punkte setzen. Falls man statt Punkten, Striche oder andere Zeichen setzen, muss man das “Füllmaterial” mit dem jeweiligen Zeichen ersetzen. Folgender Code muss in \titlecontents{…}[...]{…}{…}{…}{⟨hier⟩} in der letzten Klammer stehen
Keine Seitenzahl im Inhaltsverzeichnis
Durch das Löschen von “\contentspage” im Befehl “\titlecontents” kann man die Seitenzahlen aus dem Inhaltsverzeichnis entfernen.
Unterschiedliche Formatierung für “spätere” Einträge im Inhaltsverzeichnis
Vor und nach jeder Überschrift kann das Format der Überschrift im Inhaltsverzeichnis geändert werden. Siehe dazu das Minimalbeispiel als Bild:
Der LaTeX-Code zum Bild:
% —– Start: Angaben zur Formatierung von Überschriften —– %
\usepackage{titletoc}
\titlecontents{chapter}[1.5em]{\addvspace{1pc}\bfseries}{\contentslabel{1.5em}}
{\hspace*{-1.5em}}{\titlerule*[0.3pc]{.}\contentspage}
\titlecontents{section}[3.7em]{}{\contentslabel{2.2em}}{}
{\titlerule*[0.3pc]{.}\contentspage}
\titlecontents{subsection}[6.7em]{}{\contentslabel{2.95em}}{}
{\titlerule*[0.3pc]{.}\contentspage}
\titlecontents{subsubsection}[10.6em]{}{\contentslabel{3.8em}}{}
{\titlerule*[0.3pc]{.}\contentspage}
\titlecontents{paragraph}[15.25em]{}{\contentslabel{4.6em}}{}
{\titlerule*[0.3pc]{.}\contentspage}
\setcounter{tocdepth}{4}
\setcounter{secnumdepth}{4}
% —– Ende: Angaben zur Formatierung von Überschriften —– %
\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\chapter{Inhaltsüberschrift}
\blindtext[4]
\section{Abschnittstext}
\blindtext[3]
\subsection{Unterabschnitt}
\blindtext[2]
\subsubsection{Unter-Unterabschnitt}
\blindtext[5]
\subsubsection{Unter-Unterabschnitt}
\blindtext[9]
\titlecontents{subsubsection}[10.6em]{}{\contentslabel{3.8em}}{}
{\titlerule*[0.3pc]{\_\_}\contentspage}
\subsubsection{Unter-Unterabschnitt}
\blindtext[3]
\titlecontents{subsubsection}[10.6em]{}{\contentslabel{3.8em}}{}
{\titlerule*[0.3pc]{\_\_}}
\subsubsection{Unter-Unterabschnitt}
\blindtext[4]
\section{Abschnittstext}
\blindtext[2]
\section{Abschnittstext}
\blindtext[1]
\subsection{Unterabschnitt}
\blindtext[8]
\chapter{Inhaltsüberschrift}
\blindtext[2]
\titlecontents{section}[6.7em]{}{\contentslabel{2.95em}}{}
{\titlerule*[0.6pc]{—}\contentspage}
\section{Abschnittstext}
\blindtext[1]
\titlecontents{section}[6.7em]{}{\contentslabel{2.95em}}{}{}
\section{Abschnittstext}
\blindtext[9]
\end{document}
Hinweis zum Anfang: Dokumentklasse ist scrbook. Zur automatischen arabischen oder römischen Nummerierung siehe vorheriger Post.
Wie binde ich ein Inhaltsverzeichnis ein?
Eine einzige Zeile an der Stelle des Dokuments, wo es auftauchen soll, reicht. Anschließend ein \clearpage (bzw. \cleardoublepage) um den Hauptteil auf der nächsten Seite beginnen zu lassen.
Wie füge ich manuell eine Zeile in das Inhaltsverzeichnis ein?
Über die Liste kann man festlegen welches Verzeichnis ergänzt werden soll: Inhaltsverzeichnis (toc), Abbildungsverzeichnis (lof), Tabellenverzeichnis (lot). Die Ebene legt fest, in welcher Art die zusätzliche Zeile formatiert werden soll: Als Kapitel (chapter), Abschnitt (section), usw… Der Eintrag ist der tatsächliche Text im Inhaltsverzeichnis. Soll dem Eintrag ein Zeichen vorangestellt werden, so geschieht dies mit \protect\numberline{⟨Zeichen⟩}
\addcontentsline{toc}{chapter}{Inhaltsverzeichnis}
% Dem Inhaltsverzeichnis wird der Eintrag “Inhaltsverzeichnis” hinzugefügt
\addcontentsline{toc}{chapter}{\protect\numberline{\#}Inhaltsverzeichnis}
% Eine Raute wird dem Eintrag vorangestellt
Vergleichbar mit \addcontentsline ist \addcontents. Bei letzterem kann man die Ebene nicht festlegen.
Tiefe des Inhaltsverzeichnisses festlegen
Wieviele Ebenen das Inhaltsverzeichnis tief ist, legt die Variable “tocdepth” fest. Im Beispiel wird die Kaskadierung des Inhaltsverzeichnisses nur um eine Ebene erweitert. Der Standardwert wird von 3 auf 4 erhöht, d.h. die Überschriften mit der Auszeichnung “subsubsection” werden nun auch mitaufgenommen. Dabei entsteht ein weiteres Problem: In der Standardeinstellung ist die Nummerierung nur bis zur subsection. Folglich fehlt sowohl im Fließtext als auch im Inhaltsverzeichnis die Nummerierung vor der Überschrift. Über eine Steigerung des Werts für “secnumdepth” kann man dies auf “subsubsections” erweitern.
\setcounter{tocdepth}{4} % Das Verzeichnis wird vier Ebenen tief
\setcounter{secnumdepth}{4} % Nummerierung bei subsubsection
Überschrift aus dem Inhaltsverzeichnis ausschließen
Ein Stern nach der jeweiligen Definition der Überschrift verhindert, dass der Eintrag im Inhaltsverzeichnis auftaucht.
Zwei Schritte sind nötig um ein TeX-Dokument auf dem Mac zu erstellen. Erstens einen Editor zum Schreiben der tatsächlichen Inhalte und zweitens eine TeX-Distribution, die aus dem “rohen” Textdokument ein korrekt formatiertes PDF / PS erzeugt.
Editor – Eigentlich reicht ein ganz normaler Texteditor schon vollkommen aus. Bei MacOS X dabei ist TextEdit. Schöner sind natürlich Programme, welche die Syntax einfärben und so vom tatsächlichen Text trennen. Ich verwende SubEthaEdit (Kollaborationsfunktion) oder TextMate. Wer sich nur auf den Text konzentrieren will, solle mal WriteRoom unter die Lupe nehmen. Echte graphische Oberflächen (Front-Ends) gibt es auch: Ich verwende primär TeXShop (Teil der MacTeX-Distribution).
Distribution – Wer sich mit der Kommandozeile rumschlagen will, dem sei TeX Live ans Herz gelegt. Die bequeme und aus meiner Sicht auch bessere (i.e. schneller, einfacher) Variante ist der MacTeX-Installer. Der Download von der Hauptseite ist meist extrem langsam. Auf den Mirrorseiten hosten auch einige deutsche Unis das Paket.
Auch hier der Hinweis: Dokumentklasse ist scrbook.
Kein Punkt nach der letzten Ziffer in der Nummerierung
Soll sowohl im Inhaltsverzeichnis als auch in den jeweiligen Überschriften im Textteil kein Punkt nach der letzten Ziffer erscheinen, muss man nur die Optionen in der Dokumentklasse verändern:
Arabische und römische Seitenzahlen wechseln oder abschnittsweise mischen? Stil der Seitenzahlen ändern
Soll beispielsweise alles bis zum Textteil in römischen Ziffern nummeriert werden, dann muss nur der Befehl \pagenumbering{⟨Ziffernstil⟩} eingefügt werden. Dann wird ab der Umformatierung in der neuen Darstellung weitergezählt.
\pagenumbering{arabic} % Arabische Ziffern.
\input{hauptteil.tex}
\end{document}
Verwendet man \frontmatter, \mainmatter und \backmatter als Trenner, so werden automatisch die Seitenzahlen entsprechend geändert. Eine weitere Abänderung muss nur erfolgen, wenn man bspw. auf große römische Zahlen umsteigen will.
Tricky wird das Ganze erst, wenn man nach dem Hauptteil mit den römischen Ziffern weiterzählen lassen will. Beispiel: Also Inhaltsverzeichnis wäre Seite I-III, Textteil Seite 1-25 und Anhang Seite IV-X.
Leider setzt der Befehl \pagenumbering die Seitenzahl zurück. Um nun bei IV weiterzählen zu lassen, setzt man die Seitenzahl nach dem \pagenumbering Befehl via \setcounter. Man kann sich nun aber auch einen automatischen Seitenzähler einrichten, der bei jeder Änderung der römischen Zahlen im ersten Teil am Schluss korrekt weiterzählt.
Zuerst erstellt man eine eigene Variable mit \newcounter vor \begin{document}. Dessen Wert setzt man am Ende des Abschnitts mit den römischen Ziffern über den Befehl \setcounter. Im letzten Teil ruft man den eigenen Seitenzähler auf und setzt damit den Wert des „echten“ Seitenzählers.
\begin{document}
\pagenumbering{Roman}
\input{verzeichnisse.tex}
\clearpage % neue Seite
\setcounter{romanPagenumber}{\value{page}} % eigener Seitenzähler erhält
% den Wert der aktuellen Seite
\pagenumbering{arabic}
\input{hauptteil.tex}
\clearpage
\pagenumbering{Roman}
\setcounter{page}{\theromanPagenumber} % echten Seitenzähler ändern
\input{anhang.tex}
\clearpage
\end{document}
Als Neuling im Bereich LaTeX stolpere ich noch fast täglich über Hindernisse, die einem das Leben schon schwer machen können. Daher ab heute in unregelmäßigen Abständen kurze FAQs zu trivialen aber oft nervigen Problemen. Die Standard-Dokumentklasse ist im folgenden immer scrbook.
1. Alle Überschriften im Textteil sollen gleich aussehen!
Mit dem Package titlesec (Dokumentation) lassen sich Überschriften nahezu beliebig formatieren.Der Befehl \titleformat wirkt sich auf die reine Textformatierung aus. Im Beispiel sind die Überschriften: Eine Schriftgrößer größer, fett markiert, hängende Seitenzahlen, vollständige Nummerierung.
2. Wie entferne ich den Freiraum über Überschriftenklasse „chapter“?
Wird eine neues Kapitel angelegt, dann ist die Vorlage so eingestellt, dass die Überschrift zur Klasse “chapter” ein paar Zentimenter nach unten geschoben wird. Um das wieder auszugleichen, kann man über \titlespacing den Leerraum (vertical space) über der Überschrift eliminieren. Mit einem negativen Wert um die 3em im Platz oberhalb steht die Überschrift am Anfang der Seite. Im Beispiel weiter unten ist auch die exakte Syntaxerklärung für Abstände vor und nach Überschriften.
% \titleformat{⟨Überschriftenklasse⟩}[Absatzformatierung⟩]{⟨Textformatierung⟩} {⟨Nummerierung⟩}{⟨Abstand zwischen Nummerierung und Überschriftentext⟩}{⟨Code vor der Überschrift⟩}[⟨Code nach der Überschrift⟩]
\titleformat{\chapter}[hang]{\large\bfseries}{\thechapter\quad}{0pt}{}
\titleformat{\section}[hang]{\large\bfseries}{\thesection\quad}{0pt}{}
\titleformat{\subsection}[hang]{\large\bfseries}{\thesubsection\quad}{0pt}{}
\titleformat{\subsubsection}[hang]{\large\bfseries}{\thesubsubsection\quad}{0pt}{}
\titleformat{\paragraph}[hang]{\large\bfseries}{\theparagraph\quad}{0pt}{}
% \titlespacing{⟨Überschriftenklasse⟩}{⟨Linker Einzug⟩}{⟨Platz oberhalb⟩}{⟨Platz unterhalb⟩}[⟨rechter Einzug⟩]
\titlespacing{\chapter}{0pt}{-3em}{6pt}
\titlespacing{\section}{0pt}{6pt}{6pt}
\titlespacing{\subsection}{0pt}{6pt}{6pt}
\titlespacing{\subsubsection}{0pt}{6pt}{6pt}
\titlespacing{\paragraph}{0pt}{6pt}{6pt}
Update: 3. Wie ersetze ich die Standardschrift mit Adobe Times (New Roman)
Die folgenden Pakete einbinden. Siehe auch das LaTeX-Sündenregister. Eine Übersicht über veraltete Befehle und Pakete.