ubuntuusers.de

ubuntuusers.deWikiLaTeX

LaTeX

./tex_logo.png TeX (Aussprache: [tɛχ], „tech“) ist ein Drucksatzsystem, mit dem sich Texte formatieren lassen. Dazu wird ein Text erstellt und die einzelnen Formatierungselemente – anders als in den gängigen Textverarbeitungsprogrammen üblich – direkt in den Quelltext geschrieben. TeX wandelt den Text dann in ein nach typographischen Regeln gestaltetes Dokument um. Erklärtes Ziel ist es, Texte – die als einfache, „reine“ Textdokumente vorliegen – sehr lange Zeit darstellbar zu halten, ohne dabei abhängig von Betriebssystemen, Dateiformaten oder kommender Computer-Technologie zu sein. Ein weiterer Schwerpunkt von TeX liegt auf der Möglichkeit, komplexe Strukturen wie mathematische Formeln, Grafiken und ähnliches in einer Qualität darzustellen, die derjenigen professioneller Setzer nicht nachsteht.

In vielerlei Hinsicht ist TeX mit der „Hyper Text Markup Language“ (HTML) vergleichbar, allerdings ist es wesentlich leistungsfähiger. Anstelle der HTML-Tags werden Makros (Befehle, Variablen und bei LaTeX auch Umgebungen) für die Formatierungen eingesetzt. Neben den bestehenden Befehlen können neue Befehle definiert, bestehende verändert und Formatierungen im gesamten (Quell-)Text ausgetauscht werden.

Zur Darstellung des fertigen Dokuments wird anders als bei HTML kein Browser verwendet, sondern das TeX-Dokument durch einen Compiler (Übersetzungsprogramm) übersetzt, dessen Ausgabeformat geräte- und betriebssystemunabhängig ist. Das traditionelle Ausgabeformat heißt DVI (Device Independent). DVI-Dateien lassen sich (ggf. in das PDF-Format umgewandelt) anzeigen, ausdrucken und im Netzwerk verteilen. Der für die Übersetzung verwendete Compiler heißt TeX. In zunehmendem Maße wird jedoch auf DVI zugunsten von PDF verzichtet: Durch einen Compiler namens pdfTeX wird direkt eine PDF-Datei erzeugt, ohne dass das DVI-Format an der Übersetzung beteiligt wäre. Neben dem Compiler spielen die so genannten Makros eine herausragende Rolle bei der Formatierung mit TeX. Aus ihnen wurden die „Anwenderbefehle“ konstruiert, die später in TeX- und LaTeX-Dokumenten vom Autor zur Formatierung verwendet werden.

LaTeX

./latex-logo.png Einen Schritt weiter geht LaTeX (Aussprache: [ˈlaːtɛχ], „latech“). Diese Software wurde auf Basis von TeX Anfang der achtziger Jahre entwickelt. Zu ca. 99% wurden Features von TeX verwendet, zu etwa einem Prozent setzt LaTeX frei verfügbare Zusatzprogramme ein, mit denen beispielsweise Stichwörter für den Index sortiert werden können. Es handelt sich bei LaTeX um eine Sammlung von Makros, die neben der reinen Formatierung auch noch die logische Struktur von Texten berücksichtigen. Dies ist der Grund, warum heute Aufsätze, Briefe, Diplomarbeiten, Memos usw. bis hin zu Büchern und Sammelbänden (mehrerer Autoren) mit LaTeX aufgesetzt werden; für diese Dokumente erforderlichen Befehle existieren bereits oder lassen sich leicht aus den vorhandenen ableiten. Außerdem vereinfacht LaTeX die Formatierungen durch die Einführung von Umgebungen. Das grundlegende Layout eines Dokumentes (Dateiendung: .tex) wird bei LaTeX durch die „Dokumentenklasse“ festgelegt, mit zusätzlichen Makropaketen können noch nicht verfügbare Befehle hinzugeladen werden. Die wesentliche Aufgabe eines Autors beschränkt sich dann darauf, den Text zu erstellen.

Ein kompilierbares Latex-Dokument sieht in seiner Grundstruktur immer dem folgenden Beispiel (bzw. „Minimalbeispiel{de}) ähnlich:

1
2
3
4
5
6
7
\documentclass[a4paper]{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}

\begin{document} 
Ein \textit{Minimalbeispiel} sieht so aus.
\end{document}

(Es handelt sich im konkreten Fall um ein Dokument, das nur aus einem Satz besteht und in dem ein Wort, „Minimalbeispiel“, kursiv gedruckt werden soll.) Eine kurze Einführung in LaTeX inklusive einiger weiterer Beispiele findet man in diesem Wiki-Artikel sowie auf den unter Links aufgeführten Seiten.

LaTeX setzt eine LaTeX-Distribution und einen Editor voraus. Die Installation einer solchen LaTeX-Arbeitsumgebung wird im Folgenden beschrieben:

Distributionen

Voraussetzung der Verwendung von LaTeX ist eine funktionierende LaTeX-Distribution. Diese stellt alle benötigten Komponenten (Pakete, Compiler, Hilfen und vieles mehr) zur Verfügung. (Alternativen zu TeX Live {en}, der üblichen Distribution unter Linux, findet man auf der Dante-Homepage {de}.)

TeX Live

Die TeX-Live-Distribution enthält alle wichtigen TeX-Anwendungen, Makro-Pakete und Schriften. Die Latex-Distributionen pdfTex und XeTeX sind ebenfalls integriert worden.

Installation aus den Paketquellen

TeX Live wird mit den folgenden Paketen installiert [1]:

  • texlive (Beinhaltet ein vollständiges TeX-System mit zusätzlichen Schriften und häufig benutzten LaTeX-Paketen.)

  • texlive-doc-de (Optional, enthält die deutsche Dokumentation zu TeX Live. Darin sind auch eine FAQ-Liste, der LaTeX-Katalog und sonstige Informationen enthalten.)

  • texlive-latex-extra (Optional, installiert viele zusätzliche LaTeX-Pakete.)

  • texlive-lang-german (Optional, enthält die deutsche Sprachunterstützung.)

Wiki/Vorlagen/Installbutton/button.png

Paketliste zum Kopieren:

sudo apt-get install texlive texlive-doc-de texlive-latex-extra texlive-lang-german 

sudo aptitude install texlive texlive-doc-de texlive-latex-extra texlive-lang-german 

Will man eine minimale Installation vornehmen und die restlichen Pakete bei Bedarf installieren, wählt man das Paket:

  • texlive-base

Wiki/Vorlagen/Installbutton/button.png

Für eine komplette Installation von TeX Live wählt man das Paket:

  • texlive-full (universe)

Wiki/Vorlagen/Installbutton/button.png

Achtung!

Achtung: Bei der Installation von texlive-full werden mehrere hundert Megabyte heruntergeladen, weil alle Sprachdateien installiert werden.

Manuelle Installation

Da die durch Ubuntu-/Debian-Pakete zur Verfügung gestellten Pakete den Latex-Paketen auf dem CTAN-Server häufig eine gewisse Zeit hinterherhinken, kann es sich für erfahrene Benutzer empfehlen, TeX Live manuell zu installieren; dies gilt besonders für Nutzer, die XeTeX oder LuaTeX benutzen möchten oder sonstige aktuelle Pakete benötigen.

Dazu folgt hier eine Anleitung, die im Diskussionsforum zu dieser Seite entwickelt wurde. Obwohl einige Schritte über eine grafische Oberfläche ausgeführt werden könnten, wird hier nur das Vorgehen über das Terminal beschrieben:

  • Zunächst muss sichergestellt werden, dass alle TeX-Live-Pakete aus den Ubuntu-Paketquellen deinstalliert sind (über Synaptic nach „texlive“ suchen).

  • Alle folgenden Schritte müssen als Superuser ausgeführt werden. (Um nicht immer sudo eingeben zu müssen, kann man zu Beginn der Installation mit sudo su die Superuser-Rechte erlangen; das Installationsscript unten funktioniert zudem nicht mit einem vorangestellten sudo).

  • Bestimmte benötigte Pakete installieren:

    apt-get install tex-common texinfo equivs perl-tk perl-doc 
  • Installations-Script install-tl-unx.tar.gz hier {en} herunterladen (zum Beispiel in das eigenen Home-Verzeichnis).

  • Das tar.gz-Archiv entpacken.

  • Ins vorher entpackte Script-Verzeichnis wechseln:

    cd /home/user/install-tl...  
  • Terminalfenster maximieren (damit beim folgenden Installationsscript alle Optionen sichtbar sind):

  • ./install-tl 
  • Menüpunkt „Options“ wählen: O - Enter.

  • Menüpunkt „create symlinks in standard directories“ wählen: L - Enter.

  • Die drei darauf folgenden Anfragen für Pfadänderungen mit Enter bestätigen (also die Vorgaben annehmen).

  • Zurück ins Hauptmenu: R - Enter.

  • Falls nicht alle Sprachen unterstützt werden sollen (z. B. um Speicherplatz zu sparen), kann man Sprachen im Untermenu L an-/abwählen.

  • Im Menü des Installationsscripts kann außerdem festgelegt werden, wenn nicht die volle TeX-Live-Distribution (2,5 GB) installiert werden soll, sondern nur eine kleinere Untermenge von Paketen.

  • Schließlich, zum Installieren: I - Enter.

Anschließend muss man apt-get mitteilen, dass zu diversen Paketen in den Ubuntu-Paketquellen nun äquivalente Pakete vorhanden sind, dass es diese also nicht mit Paketen aus den Paketquellen aktualisieren soll. Die folgenden Schritte müssen immer noch als Superuser ausgeführt werden:

  • mkdir /tmp/tl-equivs 
  • cd /tmp/tl-equivs 
  • equivs-control texlive-local 
  • gedit texlive-local 
  • Den Inhalt dieser Datei einfügen: debian-control-ex.txt. (Es kann auch noch die Jahrzahl angepasst werden, da diese Datei etwas veraltet ist; dies ist aber nicht zwingend notwendig.)

  • Datei speichern und gedit schliessen. Dann:

  • equivs-build texlive-local 
  • Durch den vorherigen Befehl wurde ein Debian-Pakete (.deb) erstellt. Dieses wird schließlich installiert (Hier muss überprüft werden, wie die Datei genau heißt):

    dpkg -i texlive-local_2011-1~1_all.deb 

Die Bedienung des mitgelieferten Paketmanagers tlmgr ist relativ simpel. Die Optionen lassen sich mit folgendem Befehl anzeigen:

tlmgr --help 

Die so installierte TeX-Live-Installation kann dann mit dem Paketmanager direkt vom CTAN-Server aktualisiert werden.

sudo tlmgr update --self --all 

Eine Anleitung dazu gibt es hier und hier.

Andere LaTeX-Distributionen und -Pakete

pdfTeX

TeX und LaTeX erzeugen ein DVI-Dokument. Das später entwickelte pdfTeX dagegen gibt ein PDF-Dokument aus. Diese Distribution ist in TeX Live als Paket integriert.

XeTeX

Neben typographischen Feinheiten wie automatischen Ligaturen können in XeTeX asiatische Zeichen direkt in den Text eingegeben werden. Auch diese Distribution ist in TeX Live als Paket integriert worden. Mehr Informationen finden sich hier.

MiKTeX

Falls sich ein bestimmtes benötigtes LaTeX-Paket nicht in den Ubuntu-Quellen befindet, muss man sich dieses von Hand herunterladen und installieren. Um diesen Prozess einfacher zu gestalten, kann man den MiKTeX Package Manager benutzen.

Um MiKTeX nur zum Installieren fehlender Pakete in TeX Live zu verwenden, muss in jedem Befehl [3] das livetex-Verzeichnis angegeben werden:

mpm --update-db --install-root=/usr/share/texmf-texlive/ 

Eine Übersicht über die weiteren Optionen gibt es hier: MiKTeX Package Manager.

LuaTeX

LuaTeX {en} ist als Nachfolger von TeX geplant und soll in den nächsten Jahren fertiggestellt werden.

Manuelle Paketinstallation

Benötigte LaTeX-Pakete finden

LaTeX-Pakete sind nicht mit den Paketen aus der Paketverwaltung zu verwechseln, wenn auch Pakete der Paketverwaltung LaTeX-Pakete enthalten können. Um nun herauszufinden, welches Installationspaket das gesuchte LaTeX-Paket enthält, kann man auf der Seite Ubuntu packages {en} den Inhalt der Ubuntu-Pakete durchsuchen {en}. Noch einfacher geht es mit den Kommandozeilen-Werkzeugen apt-cache und apt-file wie es unter apt-get beschrieben ist.

Man lädt sich das gewünschte LaTeX-Paket z.B. vom Comprehensive TeX Archive Network {en} herunter, danach entpackt [4] und kopiert man es mit Root-Rechten in dem Ordner /usr/share/texmf/tex/latex und führt zum Schluss folgenden Befehl [3] zur Aktualisierung der Tex-Bibliothek aus:

sudo texhash 

oder

sudo mktexlsr 

Jeder Benutzer kann eigene Pakete (z. B. mypackage.sty) in seinem TeX-Verzeichnis ~/texmf/tex/latex ablegen (keine Rootrechte nötig), wobei auch hier die Unterverzeichnisse wichtig sind (TeX-Verzeichnisbaum) und auch hier erst die TeX-Bibliothek aktualisiert werden muss, damit die Dateien beim Kompilieren gefunden werden:

texhash ~/texmf 

oder

mktexlsr ~/texmf 

Man erkennt die erfolgreiche Aktualisierung an der Datei ls-R im texmf-Verzeichnis.

Manuelle Paketaktualisierung mit Ubuntu-Paketen

Aktualisierungen von LaTeX-Paketen werden auf CTAN {en} häufiger bereitgestellt als sie in den Ubuntu-Paketen berücksichtigt werden können. Neben der oben beschriebenen, aufwendigen manuellen Installation kann man sich teilweise auch .deb-Pakete von aktuellen Ubuntu-Versionen installieren. Dabei sollte man aber die Paketabhängigkeiten kontrollieren.

Verbesserte Schriftarten bei T1-Kodierung

Die Standardkodierung von Schriften in Latex ist OT1 (Original-Tex-Encoding), eine 7-bit-Kodierung, die somit nur 128 Zeichen darstellen kann. Verwendet man die Schriftkodierung T1 (Cork-Kodierung mit 8 bit also 256 Zeichen) mittels \usepackage[T1]{fontenc}, werden alle Zeichen aus den west- sowie den osteuropäischen Sprachen mit lateinischem Alphabet unterstützt. Dann werden z.B. Umlaute als eine Einheit gesetzt (und nicht aus zwei Einheiten, nämlich Vokal plus zwei Punkte).

Als T1-Zeichensatzkodierung verwendet LaTeX standardmäßig die EC-Schriften (Extended Computer Modern), die Bitmap-Fonts sind und deshalb am Bildschirm zum Teil etwas unscharf bzw. verpixelt aussehen. Durch die Installation des Paketes

  • cm-super (universe)

Wiki/Vorlagen/Installbutton/button.png

stehen die cm-super Schriften, die PostScript-Type-1-Schriften (das sind Vektorgraphik-Schriften) sind, zur Verfügung. Dieses Paket stellt die „Typ 1 Computer Modern Schriftarten“ in verschiedenen Kodierungen (OT1, T1 Cork, TS1, kyrillisch) bereit. Sind die cm-super-Schriften installiert, werden sie bei T1-Kodierung automatisch von Latex geladen, wodurch die Schrift auf Geräten mit unterschiedlicher Auflösung scharf erscheint.

Als Alternative kann man statt der EC- oder cm-super- die Latin_Modern-(LM-)Schriften verwenden, die ebenfalls PostScript-Type-1-Schriften sind. Diese lädt man nach \usepackage[T1]{fontenc} durch das Kommando \usepackage{lmodern}. Die Latin-Modern-Schriften unterstützen die folgenden Kodierungen: OT1, T1 Cork, QX, T5.

Editoren

Eine Auflistung der gängigsten Editoren, die LaTeX unterstützen, findet man im Artikel LaTeX-Editoren.

Ergänzende Programme und Klassen

LaTeX Beamer

LaTeX Beamer ist eine Klasse, die speziell zur Erstellung von Präsentationen entwickelt wurde. Das zugehörige Paket heißt:

  • latex-beamer (universe)

Wiki/Vorlagen/Installbutton/button.png

Weitere Informationen und Anleitungen findet man unter Links.

LaTeXDraw und Dia

LaTeXDraw stellt eine Umgebung mit verschiedensten Formen bereit, um Grafiken für LaTeX einfach und ohne großes Vorwissen zu erstellen. Eine Alternative dazu stellt Dia dar.

LaTeX Symbols Selector

LaTeX Symbols Selector ist ein Hilfsprogramm zur Auswahl der unter LaTeX zur Verfügung stehenden Sonderzeichen.

LyX

LyX ist ein Programm, das eine grafische Benutzeroberfläche (ähnlich einer Textverarbeitung) für LaTeX bereitstellt.

LilyPond

LilyPond ist ein freies Notensatz-Programm für Linux, dessen Ergebnisse in ein LaTeX-Dokument integriert werden können.

Problembehandlung

gnome-open wird nicht gefunden

Bei der Verwendung von TeX Live kann bei Eingabe des Befehls texdoc ab Ubuntu 11.10 Oneiric Ocelot der folgende Fehler auftreten:

sh: gnome-open: not found

Das Problem kann behoben werden, indem man die Konfiguration von texdoc anpasst, sodass xdg-open statt gnome-open verwendet wird.

Hinweis:

Der folgend genannte Ordner ~/texmf/texdoc muss angepasst werden, wenn bei der Installation von TeX Live ein anderer Ordner für benutzerdefinierte Komponenten angegeben wurde.

Hierzu erstellt oder editiert man mit einem Texteditor [5] die Datei texdoc.cnf im Ordner ~/texmf/texdoc und fügt folgenden Inhalt ein:

#
# Use xdg-open for opening files with texdoc
viewer_html = xdg-open %s & 
viewer_dvi = xdg-open %s & 
viewer_pdf = xdg-open %s & 
viewer_txt = xdg-open %s & 
viewer_ps = xdg-open %s & 

Anschließend sollte die LaTeX-Dokumentationsdatei von texdoc mit dem passenden Programm geöffnet werden.

Diese Revision wurde am 12. Mai 2012 07:31 von franzl aus tirol erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Büro, Programmierung, Textsatz, Übersicht, LaTeX

Passwort vergessen?