Anleitung zum TEXLive-System
TEX Collection 2005

Sebastian Rahtz & Karl Berry (Herausgeber)
http://tug.org/texlive/
Verantwortlich für die deutsche Ausgabe
Klaus Höppner, klaus@dante.de
(DANTE e.V.)

Oktober 2005

Inhaltsverzeichnis

1 Einleitung
 1.1 Einsatzmöglichkeiten des TEX Live-Systems der TEX Collection
 1.2 »Wo bekomme ich Hilfe?« oder »Hier werden Sie geholfen!«
2 Struktur des TEXLive-Systems
 2.1 Die Distributionen live, inst, protext
 2.2 Basisverzeichnisse
 2.3 Überblick über die vordefinierten texmf-Bäume
 2.4 TEX-Erweiterungen
 2.5 Weitere Programme der TEX Live
3 Installation und Anwendung von TEX Live unter UNIX
 3.1 TEX Live direkt vom Verteilungsmedium starten (UNIX)
 3.2 Installation des TEX Live-Systems auf der Festplatte
 3.3 Installation einzelner Pakete auf einer Festplatte
4 Installationsnacharbeiten und Wartung
 4.1 Konfigurationsprogramm texconfig
 4.2 Testen der Installation
5 Installation unter Mac OS X
6 Installation und Einsatz unter Windows
 6.1 Installon von TEX Live auf Festplatte
 6.2 Installation von Support-Paketen für Windows
 6.3 Wartung Ihrer Installation
 6.4 Hinzufügen eigener Pakete zur existierenden Installation
 6.5 Benutzung von tlmp.exe in der Kommandozeile
 6.6 Installation im Netzwerk
 6.7 Win32-Unterschiede zum Standard-Web2C
 6.8 Persönliche Konfiguration
 6.9 Installation testen
 6.10 Drucken
 6.11 Tipps und Tricks für Win32-Plattformen
 6.12 Problemfälle
7 Anleitung zum Web2C-System
 7.1 Dateisuche mit der Kpathsea-Bibliothek
 7.2 Dateinamen-Datenbanken
 7.3 Einstellungen zur Laufzeit
8 Danksagungen
9 Geschichtliches
 9.1 Vergangenheit
 9.2 2003
 9.3 2004
 9.4 Gegenwart
 9.5 Zukunft

Abbildungsverzeichnis

Suche nach Konfigurationsdateien
Suche nach Prologdateien
Suche nach Font-Dateien

Tabellenverzeichnis

Unterstützte Betriebssysteme und Architekturen
Optionen im Installationshauptmenü

1 Einleitung

Diese Anleitung beschreibt das TEX Live-System. Die TEX Live enthält TEX/LATEX-Systeme für Linux, verschiedene UNIX-Plattformen, Mac OS X und (32-Bit)-Windows. Warnung: Für ältere Macintosh-Systeme und MS-DOS sind diese TEX-Systeme wenig hilfreich.

TEX Live enthält lauffähige Versionen von TEX, LaTeX2e, ConTEXt, Metafont, METAPOST, Makeindex, BibTeX und vielen anderen Programmen, sowie eine umfassende Auswahl an Makros, Zeichensätzen und Beschreibungen, die gemäß der Standard-TEX-Verzeichnisstruktur (TDS) abgelegt sind. TEX Live eignet sich somit zur Nutzung mit nahezu jeder TEX-Installation und erlaubt das Setzen von Schriften und Texten vieler Sprachen. Es ist Teil der TEX Collection, die in Zusammenarbeit mit den verschiedenen TEX-Benutzergruppen entstanden ist und kurz im Abschnitt 2 auf Seite 8 beschrieben wird.

Wenn Sie neuere Versionen der dort aufgeführten Pakete zu suchen wollen, gehen Sie am besten zu CTAN: http://www.ctan.org/.

Eine kurze Zusammenfassung der wesentlichen Änderungen der aktuellen TEX Live-Version gegenüber der Vorgängerversion finden Sie im Abschnitt 9 auf Seite 73.

1.1 Einsatzmöglichkeiten des TEX Live-Systems der TEX Collection

Sie können das TEX Live-System auf drei verschiedene Arten nutzen:

  1. Sie können auf Kosten der Ausführungsgeschwindigkeit alle zu TEX gehörenden Programme direkt von der live-DVD starten und auf alle Makros und Zeichensätze zugreifen (siehe hierzu Kapitel 2.1 auf Seite 9 über die verschiedenen Distributionen). Dieses Vorgehen benötigt kaum Plattenplatz – der Geschwindigkeitsverlust kann akzeptiert werden.
  2. Sie können das TEX Live-System komplett (oder Teile davon) auf einer lokalen Platte installieren. Dies ist sicherlich der Normalfall, erfordert aber mindestens 100 MB Plattenplatz. Für das empfohlene Standardsystem benötigen Sie 310 MB und für eine Komplettinstallation bis zu 1,3 GB an Plattenspeicherplatz.
  3. Sie haben die Möglichkeit, Ihr bestehendes TEX-System durch Pakete oder Sammlungen von der DVD und CD-ROM zu ergänzen. Dabei ist es gleichgültig, welches TEX-System Sie benutzen.

Alles das wird bei den betreffenden Installationsanleitungen für jedes Betriebssystem ausführlich erläutert. Hier das Notwendigste:

1.2 »Wo bekomme ich Hilfe?« oder »Hier werden Sie geholfen!«

Die TEX-Gemeinschaft ist ebenso aktiv wie hilfsbereit, und es wird praktisch jede ernst gemeinte Frage beantwortet. Diese Hilfe ist allerdings nicht formal organisiert, sondern wird von Freiwilligen in ihrer Freizeit geleistet. Es ist daher ernst gemeint, dass Sie vor einer Fragestellung Ihre »Hausaufgaben« gemacht haben. Falls Sie auf eine garantierte kommerzielle Unterstützung angewiesen sind oder eine solche bevorzugen, sollten Sie die Finger vollständig vom TEX Live-System lassen und in der Aufstellung unter http://tug.org/interest.html#vendors nach einem geeigneten Händler suchen.

Die folgende Liste stellt die leicht zugänglichen Quellen in der empfohlenen Reihenfolge vor:

Einführung:

Wenn Sie TEX-Anfänger sind und eine englische Einführung in das System benötigen, sollten Sie das WWW- Dokument http://tug.org/begin.html (Englisch) lesen.

Für deutschsprachige LATEX-Anfänger ist die »LaTeX2e-Kurzbeschreibung« von großem Nutzen (texmf-doc/doc/german/lshort-german/).

TEX-FAQs:

Die TEX-FAQ (im Deutschen de-tex-faq »Fragen und Antworten [FAQ] über das Textsatzsystem TeX und DANTE, Deutschsprachige Anwendervereinigung TeX e.V.«) ist ein riesiges Kompendium mit Fragen (und Antworten) aller Art, von der einfachsten Anfängerfrage bis zu Expertenwissen. Sie ist Bestandteil des TEX Live-Systems (texmf-doc/doc/german/FAQ-ge/) und umfasst zur Zeit 182 Seiten als PDF-Datei (texmf-doc/doc/german/FAQ-ge/de-tex-faq.pdf). Darüber hinaus ist die FAQ als HTML-Datei (texmf-doc/doc/german/FAQ-ge/html/index.html) und als durchsuchbare Textdatei (texmf-doc/doc/german/FAQ-ge/text/index.html) enthalten. Im Internet finden Sie die FAQ unter http://www.dante.de/faq/de-tex-faq/; zudem wird die Textversion regelmäßig zur Monatsmitte in die News-Gruppen news:de.comp.text.tex, news:de.answers und news:news.answers verschickt. Die FAQ besteht aus mehreren Teilen, wobei jeder Teil ohne News-Header nicht länger als ca. 32 KB ist.

Des Weiteren existiert eine englischsprachige FAQ-Sammlung (texmf-doc/doc/english/FAQ-en/), die auch im Internet verfügbar ist (http://www.tex.ac.uk/faq).

Bitte nutzen Sie bei Problemen zu allererst diese beiden Möglichkeiten.

TEX-Catalogue:

Wenn Sie auf der Suche nach einem bestimmten Paket, Font, Programm u. ä. sind, empfiehlt sich ein Blick in den TEX-Catalogue. Dieser Katalog enthält eine Liste aller verfügbaren TEX-spezifischen Dinge (siehe texmf-doc/doc/english/catalogue oder http://www.ctan.org/tex-archive/help/Catalogue/).
TEX-WWW-Ressourcen:

Im WWW-Dokument http://tug.org/interest.html finden Sie eine große Anzahl TEX-spezifischer Links zu Büchern, Manuals und Artikeln zu allen Aspekten des TEX-Systems.
Archive:

Ein Forum für die Hilfestellung sind die Usenet-News-Gruppen news:de.comp.text.tex (Deutsch), news:comp.text.tex (Englisch) und die Mailing-Liste texhax@tug.org. In deren Archiven finden sich die Fragen und Antworten vieler Jahre. Ihre Suche können Sie in Google beispielsweise mit http://groups.google.de/groups?group=de.comp.text.tex starten – oder auch in http://tug.org/mail-archives/texhax/.

Im Allgemeinen ist es recht Erfolg versprechend, eine generelle Suche über Google http://www.google.de/ durchzuführen (entweder im WWW allgemein oder in den News-Gruppen); dies insbesondere, wenn es sich um Fragen über PostScript/PDF, Ghostscript u. ä. handelt.

Fragen stellen:

Wenn Sie mit den oben aufgezeigten Möglichkeiten immer noch keine Antwort auf Ihre Frage gefunden haben, können Sie die Frage auch in einer News-Gruppe stellen (neudeutsch: posten). Hier bietet sich für den deutschsprachigen Raum die News-Gruppe news:de.comp.text.tex an. Benutzen Sie am besten für Anfragen Google (http://groups.google.de/groups?group=de.comp.text.tex) oder einen Newsreader. Fragen an die englischsprachige Gruppe news:comp.text.tex (bei Google: http://groups.google.de/groups?group=comp.text.tex) sollten Sie bitte nur in Englisch stellen.

Zusätzlich existieren E-Mail-Diskussionslisten, wobei hier die deutschsprachige Liste TeX-D-L@listserv.dfn.de zu nennen ist (das englischsprachige Äquivalent ist texhax@tug.org). Darüber hinaus bietet sich für Mitglieder von DANTE e.V. der Beraterkreis an (beraterkreis@dante.de). Wie Sie sich in die E-Mail-Liste TeX-D-L eintragen können, finden Sie in der FAQ unter »1.3.2 Was ist TeX-D-L?«.

Bevor Sie aber eine Frage absenden, lesen Sie bitte die entsprechenden Einträge der FAQ zum Thema »Wie stelle ich eine Frage in einer Newsgroup, damit ich mit hoher Wahrscheinlichkeit eine Antwort bekomme?«. So z. B. »1.3.1 Was ist ‘de.comp.text.tex’?« und »1.3.7 Was sollte ich gelesen haben, bevor ich eine Frage in ‘de.comp.text.tex’ oder der Diskussionsliste TeX-D-L stelle?« oder auch http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion.

Mithilfe:

Wenn Sie einen Fehler melden wollen oder Empfehlungen und Kommentare zur TEX Live-Verteilung, -Installation oder -Dokumentation geben möchten, sollten Sie die E-Mail-Liste tex-live@tug.org nutzen. Korrekturen, Anmerkungen und Erweiterungen für die deutsche Übersetzung können Sie auch an cdrom@dante.de oder schriftlich an die Geschäftsstelle von DANTE e.V. senden.

Fragen zu Programmen, die Sie in der TEX Collection finden, sollten Sie besser auf einer der oben genannten Mailing-Listen stellen oder direkt an den Programmautor richten.

Auf der anderen Seite können auch Sie mit Ihrem Wissen helfen. Die News-Gruppen news:de.comp.text.tex (in Deutsch), news:comp.text.tex (in Englisch) und die Mailing-Liste TeX-D-L@listserv.dfn.de (Deutsch) und texhax@tug.org (Englisch) stehen allen offen. Wenn Sie also dort mitlesen, scheuen Sie sich nicht, Fragen, zu denen Sie eine Antwort wissen, zu beantworten und damit anderen zu helfen.

2 Struktur des TEX Live-Systems

In diesem Abschnitt beschreiben wir Struktur und Inhalt des TEX Live-Systems und der übergeordneten TEX Collection.

2.1 Die Distributionen live, inst, protext

Das Material des TEX Live-Systems war von Jahr zu Jahr angewachsen und hatte den Rahmen, der durch die Größe einer CD-ROM vorgegeben war, gesprengt. Um nicht wieder eine willkürliche Auswahl unter den unzähligen Paketen, Zeichensätzen und Hilfsprogrammen treffen zu müssen, wurde schon 2003 der Entschluss gefasst, die TEX Collection in unterschiedliche Distributionen zu zerlegen. Im Einzelnen:

live
ist ein vollständiges System auf einer DVD. Mit mehr als 1,1 GB ist es zu groß für eine CD-ROM. Es kann auf Festplatte installiert oder direkt von der DVD gestartet werden. Zusätzlich enthält die DVD unabhängig vom TEX Live-System die MacTEX-Distribution für Mac OS X, proTEXt – eine alternative TEX-Distribution für MS Windows, die auf MiKTEXbasiert – und ein fast vollständiges Abbild des CTAN-Archivs (Stand: Oktober 2005) und eine Sammlung verschiedener Pakete in einem texmf-extra-Verzeichnis.

Wenn Sie die DVD unter Windows »mounten«, bietet Ihnen das Setup-Programm an, protext zu starten (siehe unten). Es berücksichtigt dabei auch CTAN und TEX Live, die sich in Unterverzeichnissen der obersten Stufe auf der DVD befinden.

Für CTAN und den Verzeichnisbaum texmf-extra gelten andere Weitergabe-Bedingungen als für TEX Live. Achten Sie bitte darauf, wenn Sie diese (oder Teile) weitergeben oder modifizieren.

inst
(installable) ist ein Komplettsystem auf CD-ROM. Um dies zu ermöglichen, wurden alle Dateien auf dieser CD-ROM komprimiert. Daher kann man TEX auch nicht direkt von der inst-CD-ROM laufen lassen, sondern muss es auf der Festplatte installieren. Die Installation entspricht dem Vorgehen bei der Installation von der live-DVD auf der Festplatte und wird in späteren Abschnitten beschrieben.
protext
ProTEXt ist eine Erweiterung der MiKTEX-Distribution für Windows. Es ergänzt MiKTEX durch einige Tools (u. a. WinEdt, TeXnicCenter, Ghostscript/GSView), ist völlig unabhängig vom TEX Live-System und hat eine eigene Installation. ProTEXt kann auf Festplatte installiert oder direkt gestartet werden. Informationen zu ProTEXt finden Sie im WWW übrigens unter http://tug.org/protext/.

ProTEXt wird sowohl auf der live-DVD als auch auf einer eigenen CD-ROM angeboten (für diejenigen, die die DVD nicht benutzen können).

Welche der drei Distributionen Sie geladen haben, zeigt ihnen die Datei »00typ.TL« im Wurzelverzeichnis des Verteilungsmediums. Für die inst-Version der Distribution finden Sie die Datei mit dem Namen »00INST.TL«. Die Datei enthält das Release-Datum und beschreibt den möglichen Einsatz der Distribution und ihre Einschränkungen:

   This is the TeX Live ‘inst’ distribution.  You can *not* run programs
   directly from it, you must install it to disk.  It includes all packages.

Alle DANTE-Mitglieder erhalten die TEX Live-DVD als Beilage zur Vereinszeitschrift »Die TEXnische Komödie«. Für all diejenigen, die nichts mit der DVD anfangen können, ist auf Anfrage auch eine TEX Live-CD-ROM erhältlich. Zusätzlich gibt es auch eine ProTEXt-CD-ROM. Wenden Sie sich bitte an das Büro von DANTE, Deutschsprachige Anwendervereinigung TeX e.V., wenn Sie Interesse an einer der beiden CD-ROMs haben.

2.2 Basisverzeichnisse

In diesem Abschnitt beschreiben wir die Basisverzeichnisse der TEX Live-Distribution.

Auf der live-DVD befindet sich die gesamte TEX Live-Hierarchie im Unterverzeichnis texlive – nicht im Wurzelverzeichnis der DVD.

bin

ausführbare Programme des TEX-Systems; jeweils für die verschiedenen Rechnerplattformen in Unterverzeichnissen zusammengefasst

source

Quelldateien aller Programme inklusive der Web2C-Quellen für die TEX- und Metafont-Pakete als komprimierte bzip2-Archive

support

verschiedene Programme und Hilfspakete, die nicht automatisch mitinstalliert werden, wie z. B. Editoren und TEX-Shells

texmf

Verzeichnisbaum für Programme und zugehörigen Hilfsdateien und Anleitungen; enthält keine TEX-Formate und Pakete (siehe TEXMFMAIN im nächsten Abschnitt)

texmf-dist

Hauptbaum mit Formaten und Paketen (siehe TEXMFDIST im nächsten Abschnitt)

texmf-doc

Verzeichnisbaum mit vollständigen Dokumentationen (ohne andere installierte Dateien); sortiert nach Sprachen

texmf-var

Verzeichnisbaum für automatisch erzeugte und gespeicherte Dateien für TEX, Metafont und andere (siehe TEXMFSYSVAR im nächsten Abschnitt),

xemtex

Verzeichnis mit nützlichen Programmen für Windows aus dem XEmTEX-Paket (Alle diese Programme sind auf UNIX-Systemen in der Regel vorinstalliert oder lassen sich zumindest leicht kompilieren.)

Zusätzlich zu den oben aufgeführten Verzeichnissen finden Sie im Wurzelverzeichnis der Distribution auch noch die Installationsskripte und die README-Dateien in verschiedenen Sprachen.

Das Verzeichnis texmf-doc enthält zwar nur Anleitungen, bei weitem aber nicht die gesamte Dokumentation: Die Dokumentation für Programme (Handbücher, »man pages«, GNU-info-Dateien) beispielsweise finden Sie im Verzeichnis texmf/doc, da die Programme selbst sich im Verzeichnis texmf befinden. Ähnliches gilt für die Dokumentation der TEX-Pakete und -Formate im Verzeichnis texmf-dist/doc.

Benutzen Sie die Programme texdoc oder texdoctk, wenn Sie auf der Suche nach irgendeiner Dokumentationsdatei sind. Hilfreich in diesem Zusammenhang könnte auch die Link-Sammlung doc.html im Wurzelverzeichnis sein.

2.3 Überblick über die vordefinierten texmf-Bäume

Dieser Abschnitt listet alle vordefinierten texmf-Bäume, die vom System benutzt werden, und deren Bedeutung auf. Das Kommando texconfig conf zeigt Ihnen die aktuellen Einstellungen dieser Variablen an.

TEXMFMAIN
In diesem Baum befinden sich wichtige Teile des Systems, Hilfsprogramme (wie web2c/mktexdir), pool-Dateien und andere Hilfsdateien.
TEXMFDIST
In diesem Baum befinden sich die wesentlichen Makro-Pakete, Fonts usw. Dieser Baum enthält systemunabhängige Daten, die prinzipiell von jedem TDS-kompatiblem TEX-System nutzbar sein sollten.
TEXMFLOCAL
Dieser Baum ist für Ergänzungen oder Aktualisierungen von Makros, Fonts etc. gedacht, die Administratoren für alle Nutzer installieren.
TEXMFHOME
In diesem Baum können einzelne Nutzer Ergänzungen oder Aktualisierungen von Makros, Fonts etc. ablegen. Standardmäßig befindet sich dieser Baum unterhalb von $HOME, so dass andere Nutzer von Änderungen hier nicht beeinflusst werden.
TEXMFCONFIG
Dieser Baum wird von den Hilfsprogrammen von teTEX wie texconfig, updmap und fmtutil verwendet. Standardmäßig befindet sich dieser Baum unterhalb von $HOME, so dass andere Nutzer von Änderungen hier nicht beeinflusst werden.
TEXMFSYSCONFIG
Dieser Baum wird von den Hilfsprogrammen von teTEX wie texconfig-sys, updmap-sys und fmtutil-sys verwendet, so dass hier das Verhalten des TEX Live-Systems für alle Nutzer beeinflusst werden kann.
TEXMFVAR
Dieser Baum wird von Hilfsprogrammen wie texconfig, updmap und fmtutil benutzt, um automatisch generierte Konfigurations-Dateien abzulegen.
TEXMFSYSVAR
Dieser Baum wird von den systemweiten Hilfsprogrammen wie texconfig-sys, updmap-sys und fmtutil-sys verwendet, um automatisch generierte Konfigurations-Dateien abzulegen.

Für näherere Hinweise zu texconfig und zu den davon abhängigen Hilfsprogrammen siehe Abschnitt 4.1 auf Seite 30.

2.4 TEX-Erweiterungen

Unter den TEX-Systemen der TEX Live befinden sich verschiedene TEX-Erweiterungen:

e-TEX
stellt bei 100%-iger Kompatibilität zum normalen TEX einen kleinen, aber mächtigen Satz neuer Befehle bereit (für Makroexpansion, Character-Scanning, zusätzliche Klassen für »marks«, erweiterte Debug-Möglichkeiten und andere). Zusätzlich gibt es noch die TEX--XE T-Erweiterungen für den bidirektionalen Textsatz, wie er beispielsweise im Arabischen gebraucht wird. Im voreingestellten Modus ist e-TEX 100%-ig kompatibel mit dem »normalen« TEX. Die Dokumentation zu e-TEX finden Sie in der Datei texmf-dist/doc/etex/base/etex_man.pdf.
pdfTEX
erzeugt optional PDF-Dateien (Acrobat) anstelle von DVI-Dateien. Die Dokumentation zu pdfTEX finden Sie unter texmf/doc/pdftex/manual/pdftex-a.pdf. In der Datei texmf/doc/pdftex/manual/samplepdf/samplepdf.tex finden Sie ein Anwendungsbeispiel. Das LATEX-Paket hyperref besitzt die Option pdftex, mit der Möglichkeiten für aktive Querverweise von PDF (Hypertext) zur Verfügung gestellt werden.
pdfeTEX
kombiniert die pdfTEX- und e-TEX-Erweiterungen. Es ist die voreingestellte »Engine« für alle Formate außer plainTEX. Näheres finden Sie in der Dokumentation.
Omega
(Omega) ist ein TEX-System, das intern mit Unicode (16-Bit-Unicode-Zeichen) arbeitet und damit das gleichzeitige Arbeiten mit nahezu allen auf der Welt eingesetzten Schriften und deren Zeichenkodierungen erlaubt. Außerdem werden über dynamisch geladene, sogenannte »Omega Translation Processes« (OTPs), Transformationen zur Verfügung gestellt, die beliebige Eingaben vor der Bearbeitung durch TEX nach bestimmten Regeln umformen. Die (nicht ganz aktuelle) Anleitung zu Omega finden Sie in dem TEX Live-System in der Datei texmf-dist/doc/omega/base/doc-1.8.tex.
 aleph
(Aleph) vereinigt die Omega- und e-TEX-Erweiterungen. Eine Minimaldokumentation finden Sie in texmf-dist/doc/aleph/base.

2.5 Weitere Programme der TEX Live

TEX Live enthält eine ganze Reihe unterstützender Programme wie

bibtex
Verwalten von Bibliographien
dv2dt, dt2dv
dvi nach ASCII und umgekehrt
dviconcat
Zusammenfügen von DVI-Dateien
dvips
Konversion von DVI in PostScript
dviselect
Ausschneiden von Seiten aus DVI-Dateien
dvipdfmx
DVI-nach-PDF-Konverter (erzeugt auch CJK-konformes PDF aus DVI-Dateien mit Omega-Erweiterungen), als Alternative zu pdfTEX.
dvilj
Druckertreiber für die HP-LaserJet-Familie
lacheck
LATEX-Syntax-Überprüfung
makeindex
Erzeugen eines Stichwortverzeichnisses
mpost
Metafont-ähnliches Grafikprogramm
psnup
mehrere logische PostScript-Seiten auf einem Blatt platzieren
psselect
Ausschneiden von Seiten aus PostScript-Dateien
tex4ht
TEX-nach-HTML -Konvertierung
texexec
ConTEXt- und PDF-Prozessor.
xdvi
DVI-Bildschirmausgabe im X-Window-System

3 Installation und Anwendung von TEX Live unter UNIX

Wie schon in Kapitel 1.1 auf Seite 6 ausgeführt, können Sie TEX Live auf drei Arten nutzen:

  1. Sie können das TEX Live-System direkt vom Verteilungsmedium laufen lassen (gilt für die live-DVD).
  2. Sie können das Gesamtsystem oder Teile davon auf Ihrer Festplatte installieren (gilt für die live-DVD, die inst- und protext-CD-ROM).
  3. Sie können einzelne Pakete in Ihr bestehendes TEX-System integrieren, gleichgültig, ob es ein TEX Live-System oder ein anderes ist (gilt für die live-DVD, die inst- und protext-CD-ROM).

Die folgenden Abschnitte beschreiben für UNIX jedes dieser drei Verfahren ausführlich zum Nachvollziehen. Im Folgenden werden die Eingaben des Benutzers nach dem Kommando-Prompt »>« unterstrichen dargestellt.


Achtung: Die CD-ROMs und die DVD der TEX Collection wurden im Format ISO-9660 (High Sierra) mit Rock-Ridge- und Joliet-Erweiterungen produziert. Damit Ihr UNIX-Rechner die TEX Collection optimal nutzen kann, muss Ihr System diese Erweiterungen unterstützen. Schlagen Sie in der Systemdokumentation des Befehls mount nach, um zu ermitteln, ob Ihr System diese Erweiterungen unterstützt. Falls Sie die TEX Collection in einem lokalen Netzwerk einsetzen, suchen Sie sich einen Rechner aus, der die Erweiterungen unterstützt und »mounten« Sie die anderen Rechner auf diesen.

Moderne Linux-, BSD-, Sun- und SGI-Systeme haben normalerweise keine Schwierigkeiten, TEX Live zu benutzen. Wenn Sie ein anderes System einsetzen und TEX Live erfolgreich einbinden konnten, bitten wir Sie um detaillierte Anweisungen, um diese Anleitung weiter verbessern zu können.

Der Rest der Anleitung geht davon aus, dass Sie die TEX Collection erfolgreich unter Verwendung der Rock-Ridge- und Joliet-Erweiterungen »mounten« konnten.


3.1 TEX Live direkt vom Verteilungsmedium starten (UNIX)

Sie können TEX direkt von der live-DVD starten, ohne es vorher auf Festplatte installieren zu müssen (daher der Name TEX »Live«). Es ist aber nicht möglich, TEX direkt von den CD-ROMs laufen zu lassen (siehe hierzu Kapitel 2.1 auf Seite 9 über die verschiedenen Distributionen). In den folgenden Installationsschritten benutzen wir »>« für die Eingabeaufforderung und Unterstreichung für Benutzereingaben. Zuerst »mounten« Sie die CD-ROM oder DVD unter Verwendung der Rock-Ridge- Erweiterungen. Das Kommando hierfür variiert von System zu System; die nachfolgenden Befehle funktionieren unter Linux; nur der Name des CD-ROM-/DVD-Laufwerks (hier /dev/cdrom) muss u. U. angepasst werden.

> mount -t iso9660 /dev/cdrom /mnt/cdrom

Wechseln Sie mit Ihrem aktuellen Verzeichnis zum Mount-Point:

> cd /mnt/cdrom

Unter Mac OS X werden CD-ROMs und DVDs automatisch »gemountet«; ein mount ist deshalb überflüssig. Das Verteilungsmedium wird in das Verzeichnis /Volumes/ »gemountet«. Starten Sie das Installationsskript install-tl.sh:

> sh install-tl.sh
Welcome to TeX Live...

Nach den Begrüßungsmeldungen und der Ausgabe der Hauptmenü-Liste werden Sie aufgefordert, ein Kommando einzugeben. Geben Sie die gewünschte Option ein und schließen Sie die Eingabe mit »Return« ab. Bei der Eingabe bleiben Groß- oder Kleinschreibung unberücksichtigt; in unseren Beispielen benutzen wir die Kleinschreibung.

Um das TEX Live-System direkt vom Verteilungsmedium laufen zu lassen, müssen wir als erstes Kommando d eingeben und dann das Unterkommando 1, um die Verzeichnisse zu erzeugen. Obwohl wir alle Programme von CD-ROM oder DVD laufen lassen, muss trotzdem ein Verzeichnis auf der lokalen Platte eingerichtet werden, um Dateien, die TEX während der Laufzeiten erzeugt wurden (beispielsweise Fonts, Formate und geänderte Konfigurationsdateien), abgelegt werden können. Im folgenden Beispiel benutzen wir /opt/texlive2005 (wenn die Voreinstellung /usr/local/texlive2005 für Sie in Ordnung ist, können Sie den folgenden Schritt überspringen). Wir empfehlen, das Erscheinungsjahr von TEX Live in den Pfadnamen – wie oben im Beispiel – aufzunehmen, damit ältere TEX Live-Installationen nicht beeinflusst werden.

Enter command: d
Current directories setup:
<1>  TEXDIR:     /usr/local/texlive2005
...
Enter command: 1
New value for TEXDIR [/usr/local/texlive2005]: /opt/texlive2005
...
Enter command: r

Zurück im Hauptmenü, geben wir unser zweites und letztes Kommando r ein, um den Modus »von CD-ROM/DVD laufen lassen (keine Installation auf Disk)« zu erreichen:

Enter command: r
Preparing destination directories...
...
Welcome to the TeX Live!
>

Nun sind wir wieder zurück am System-Prompt »>«.

Der letzte Schritt zu einem funktionsfähigen TEX Live-System ist die Änderung zweier Environment-Variablen: PATH und TEXMFSYSVAR. Die Variable PATH muss um das Verzeichnis erweitert werden, in dem die Programme der verwendeten Architektur liegen; TEXMFSYSVAR erhält die Verzeichnis-Angabe, die oben festgelegt wurde. In Tabelle 1 sehen Sie eine Liste der verfügbaren Architekturen für die verschiedenen Systeme.

Direkt im Anschluss an die Installation und das Setzen der Environment-Variablen wird texconfig oder texconfig-sys aufgerufen, um das TEX-System an Ihre lokalen Gegebenheiten anzupassen. Dieser Schritt wird im Abschnitt 4.1 auf Seite 30 näher erläutert.


Tabelle 1: Unterstützte Betriebssysteme und Architekturen


Betriebssystem/Plattform Version


HP Alpha GNU/Linux alpha-linux
Intel x86 Mac OS X i386-darwin
Intel x86 FreeBSD i386-freebsd
Intel x86 GNU/Linux i386-linux
SGI IRIX mips-irix
IBM RS/6000 AIX 4.3.* powerpc-aix
Mac OS X powerpc-darwin
Sun Sparc GNU/Linux sparc-linux
Sun Sparc Solaris sparc-solaris
Windows 9X/ME/2K/NT/XP (32 bit) win32
Intel x68 64-Bit GNU/Linux x86_64-linux



Die Syntax für das Setzen einer Environment-Variable und der Name der Initialisierungsdatei, in die sie geschrieben wird, hängt von der Shell ab, die Sie benutzen. Benutzer, die eine Shell einsetzen, die kompatibel zur Bourne-Shell ist (z. B. sh, bash, ksh, usw.), können die folgenden Zeilen in Ihre Datei $HOME/.profile einfügen:

   PATH=/mnt/cdrom/bin/archname:$PATH; export PATH
   TEXMFSYSVAR=/opt/texlive2005/texmf-var; export TEXMFSYSVAR

Für C-Shell-kompatible Shells (z. B. csh, tcsh) sind die folgenden Zeilen in die Datei $HOME/.cshrc aufzunehmen:

   setenv PATH      /mnt/cdrom/bin/archname:$PATH
   setenv TEXMFSYSVAR /opt/texlive2005/texmf-var

Nach dieser Änderung loggen Sie sich aus und wieder ein und testen Ihre Installation (siehe Abschnitt 4.2 auf Seite 32.

Wenn Sie sich nicht sicher sind, fragen Sie Ihren lokalen System-Guru um Rat, denn es variiert beispielsweise, wie CD-ROMs oder DVDs zu »mounten« sind, welche Verzeichnisse benutzt werden dürfen oder wie die Änderungen in den Initialisierungsdateien vorgenommen werden müssen.

3.2 Installation des TEX Live-Systems auf der Festplatte

Es ist sicherlich der Standardfall, das TEX Live-System auf der Festplatte zu installieren. Dies kann von der TEX Collection-DVD oder der TEX Live-CD-ROM erfolgen. (lesen Sie Abschnitt 2.1 auf Seite 9 für eine Erläuterung der verschiedenen Distributionen.)

Zuerst »mounten« Sie die CD-ROM oder DVD unter Verwendung der Rock-Ridge-Erweiterungen. Das Kommando hierfür variiert von System zu System; die nachfolgenden Befehle funktionieren unter Linux; nur der Name des CD-ROM-/DVD-Laufwerks (hier /dev/cdrom) muss u. U. angepasst werden.

> mount -t iso9660 /dev/cdrom /mnt/cdrom

Wechseln Sie mit Ihrem aktuellen Verzeichnis zum Mount-Point:

> cd /mnt/cdrom

Unter Mac OS X werden CD-ROMs und DVDs automatisch »gemountet«; ein mount ist deshalb überflüssig. Das Verteilungsmedium wird in das Verzeichnis /Volumes/ »gemountet«. Starten Sie das Installationsskript install-tl.sh:

> sh install-tl.sh
Welcome to TeX Live...

Nach den Begrüßungsmeldungen und der Ausgabe der Hauptmenü-Liste werden Sie aufgefordert, ein Kommando einzugeben. Geben Sie die gewünschte Option ein und schließen Sie die Eingabe mit »Return« ab. Bei der Eingabe bleiben Groß- oder Kleinschreibung unberücksichtigt; in unseren Beispielen benutzen wir die Kleinschreibung.

Die Tabelle 2 listet die Optionen des Hauptmenüs auf. Die Abfolge, in der Sie die einzelnen Optionen auswählen, ist unerheblich, mit Ausnahme von »i«, was stets am Ende steht. Wir erläutern die einzelnen Optionen in der angegebenen Reihenfolge:


Tabelle 2: Optionen im Installationshauptmenü
p

The platform you are running on.

Plattform ändern

b

The architectures for which to install binaries.

Programme für andere Plattformen installieren

s

The base installation scheme to use (minimal, recommended, full, etc.

Installations-Schema auswählen

c

Override the base scheme for individual collections.

Installations-Schema ändern

l

Override for language collections.

Sprachschema ändern

d

Directories in which to install.

Installationsverzeichnisse festlegen

o

Other options.

allgemeine Installationsoptionen

i

Perform the installation.

Installation starten


Die Optionen im Einzelnen:

Wenn die Installation abgeschlossen ist, so besteht der nächste Schritt darin, die Variable PATH so zu ergänzen, dass die neu-installierten Programme im architektur-spezifischen Verzeichnis unterhalb von $TEXDIR/bin gefunden werden. Die unterstützten Architekturen sind in der Tabelle 1 auf Seite 19 zu finden. Sie können sich aber auch einfach den Inhalt des Verzeichnisses in $TEXDIR/bin ausgeben lassen.

Die Syntax für das Setzen einer Environment-Variable und der Name der Initialisierungsdatei, in die sie geschrieben wird, hängen von der Shell ab, die Sie benutzen. Benutzer, die eine Shell einsetzen, die kompatibel zur Bourne-Shell ist (z. B. sh, bash, ksh, usw.), können folgende Zeilen in Ihre Datei $HOME/.profile aufnehmen:

   PATH=/usr/local/texlive2005/bin/archname:$PATH; export PATH

Für C-Shell-kompatible Shells (z. B. csh, tcsh) sind die folgenden Zeilen in die Datei $HOME/.cshrc aufzunehmen:

   setenv PATH /usr/local/texlive2005/bin/archname:$PATH

Direkt im Anschluss an die Installation und das Setzen der Environment-Variablen wird texconfig oder texconfig-sys aufgerufen, um das TEX-System an Ihre lokalen Gegebenheiten anzupassen. Dieser Schritt wird im Abschnitt 4.1 auf Seite 30 näher erläutert.

Es folgt ein kurzes kommentiertes Beispiel für eine volle Installation der »Live«-Version (DVD oder inst-CD-ROM) mit den Binärdateien für das aktuelle System und den oben vorgeschlagenen Verzeichnis-Änderungen. In diesem Fall ist daher nur das Kommando i erforderlich. Das Zeichen »>« steht wie üblich für den Kommandozeilen-Prompt.

> sh install-tl.sh
i                         # perform installation
> texconfig ...
# New PATH, with Linux as the example:
> PATH=/usr/local/texlive2005/bin/i386-linux:$PATH; export PATH

Wenn Sie sich nicht sicher sind, fragen Sie Ihren lokalen System-Guru um Rat, denn es variiert beispielsweise, wie CD-ROMs oder DVDs zu »mounten« sind, welche Verzeichnisse benutzt werden dürfen oder wie die Änderungen in den Initialisierungsdateien vorgenommen werden müssen.

3.3 Installation einzelner Pakete auf einer Festplatte

Sie können die TEX Live auch dazu benutzen, ein bestehendes TEX-System auf den neuesten Stand zu bringen bzw. die Daten einer bestehenden Installation durch einzelne Pakete oder Sammlungen zu ergänzen.

Zuerst »mounten« Sie die CD-ROM oder DVD unter Verwendung der Rock-Ridge-Erweiterungen. Das Kommando hierfür variiert von System zu System; die nachfolgenden Befehle funktionieren unter Linux; nur der Name des CD-ROM-/DVD-Laufwerks (hier /dev/cdrom) muss u. U. angepasst werden.

> mount -t iso9660 /dev/cdrom /mnt/cdrom

Wechseln Sie mit Ihrem aktuellen Verzeichnis zum Mount-Point:

> cd /mnt/cdrom

Unter Mac OS X werden CD-ROMs und DVDs automatisch »gemountet«; ein mount ist deshalb überflüssig. Das Verteilungsmedium wird in das Verzeichnis /Volumes/ »gemountet«.

Führen Sie das für diesen Zweck vorgesehene Installations-Skript install-pkg.sh aus (das im vorigen Abschnitt vorgestellte Skript install-tl.sh ist nur für eine Erstinstallation gedacht):

> sh install-pkg.sh Optionen

Das Skript kann über Kommandozeilenparameter gesteuert werden. Die ersten zwei dienen zur Auswahl des zu installierenden Pakets, zur Auswahl der Sammlung (z. B. »tex-mathextra«), zur Angabe des Verzeichnisses, auf das das Medium »gemountet« ist und zur Angabe des Verzeichnisses, das die Dateilisten der Pakete enthält (diese beiden werden automatisch gesetzt):

--package=pgk-name
Name des gewünschten Pakets (package)
--collection=coll-name
Name der gewünschten Sammlung (collection)
--nodoc
Dokumentationsdateien nicht mitkopieren
--nosrc
Quelldateien nicht mitkopieren
--cddir=cd-dir
Quellverzeichnis, von dem gelesen wird (Voreinstellung ist das aktuelle Verzeichnis): Wenn Sie die oben stehenden Anweisungen befolgt haben, befinden Sie sich im Distributionsverzeichnis und müssen keine Änderungen vornehmen.
--listdir=list-dir
das sogenannte »list«-Verzeichnis innerhalb von cd-dir, von dem die Paket-Informationen gelesen werden: Die Voreinstellung für list-dir ist cd-dir/texmf/tpm/lists; der einzige Grund für eine Änderung läge vor, wenn Sie Änderungen am TEX Live-System selbst vornähmen.

Die eigentliche Aktion wird durch weitere Parameter gesteuert. Die ersten beiden verhindern die Installation der Dokumentation bzw. der Quelldateien eines Pakets. Der dritte verhindert den Aufruf von mktexlsr beim Abschluss der Installation, womit die Datenbank der Verzeichnisstruktur neu aufgebaut würde. Der vierte Parameter dient zur Anzeige der zu installierenden Dateien, ohne dass die Installation tatsächlich durchgeführt wird. Der Umfang der Informationen über die aktuellen Tätigkeiten des Skripts kann vergrößert werden und zu guter Letzt kann noch aus einem zu installierenden Paket (oder Sammlung) ein tar-Archiv erzeugt werden, in dem die Dateien schon die korrekte texmf-Verzeichnisstruktur haben.

--listonly
Auflistung, welche Dateien in einem Paket oder einer Sammlung sind; keine Installation des Pakets
--archive=tarfile
Statt das angegebene Paket oder die Sammlung zu installieren, wird ein tar-Archiv erzeugt.

Zusätzliche Optionen:

--nohash
kein Hash-Lauf von mktexlsr
--config
nach der Installation einen Konfigurationslauf mit »texconfig init« durchführen
--verbose
mehr Informationen ausgeben, was das Skript während seines Laufs macht

Hier einige Beispiele für die Verwendung des Skripts:

  1. Wollen Sie beispielsweise wissen, welche Dateien mit dem Paket fancyhdr installiert werden würden, ist folgender Befehl einzugeben, der die entsprechende Ausgabe zur Folge hat:

    > sh install-pkg.sh --package=fancyhdr --listonly

         texmf/doc/latex/fancyhdr/README
         texmf/doc/latex/fancyhdr/fancyhdr.dvi
         texmf/doc/latex/fancyhdr/fancyhdr.tex
         texmf/tex/latex/fancyhdr/extramarks.sty
         texmf/tex/latex/fancyhdr/fancyhdr.sty
         ....
  2. Installation des LATEX-Pakets natbib:

    > sh install-pkg.sh --package=natbib
  3. Installation des Pakets alg ohne Quelldateien und ohne Dokumentation:

    > sh install-pkg.sh --package=alg --nosrc --nodoc
  4. Installation der Pakete mit zusätzlichen plainTEX-Makros:

    > sh install-pkg.sh --collection=tex-plainextra
  5. Erzeugen eines tar-Archivs aller Dateien des Pakets PSTricks im Verzeichnis /tmp:

    > sh install-pkg.sh --package=pstricks --archive=/tmp/pstricks.tar

Wenn Sie sich nicht sicher sind, fragen Sie Ihren lokalen System-Guru um Rat, denn es variiert beispielsweise, wie CD-ROMs oder DVDs zu »mounten« sind, welche Verzeichnisse benutzt werden dürfen oder wie die Änderungen in den Initialisierungsdateien vorgenommen werden müssen.

4 Installationsnacharbeiten und Wartung

Nachdem die Hauptinstallation durchgeführt ist, müssen das TEX-System an Ihre lokalen Gegebenheiten angepasst und einige Tests durchgeführt werden.

Eine andere Form der Nacharbeit ist das nachträgliche Installieren von Paketen, Fonts oder Programmen, die in der TEX Live nicht enthalten sind. Grundsätzlich empfiehlt es sich, diese Erweiterungen im TEXMFLOCAL-Baum (bei einer Installation auf Festplatte) oder in TEXMFSYSVAR (beim »Live«-Betrieb) unterzubringen. Siehe hierzu auch die Ausführungen unter »Installation directories« im Abschnitt 3.2 ab Seite 25.

Leider ist dieses Thema nicht völlig trivial und auch für die unterschiedlichen Pakete (Fonts, Makros, usw.) nicht einheitlich geregelt, so dass es den Umfang dieser Anleitung sprengen würde, darauf im Detail einzugehen.

Es gibt einige Beschreibungen in Englisch:

4.1 Konfigurationsprogramm texconfig

Nachdem das Installationsprogramm die benötigten Dateien kopiert hat, können Sie das Programm texconfig aufrufen, um das TEX-System an Ihre Wünsche und lokalen Gegebenheiten anzupassen. Sie können dieses Programm aber auch zu jedem anderen Zeitpunkt aufrufen, um Einstellungen zu ändern und anzupassen. texconfig ist in dem plattform-spezifischen Unterverzeichnis TEXDIR/bin/arch neben allen anderen Programmen zu finden.

Starten Sie das Programm ohne Argumente, so wird texconfig im Vollbildmodus mit einem maskenbasierten Kommandobildschirm gestartet, wo Sie die einzelnen Optionen interaktiv kontrollieren und ändern können. Alternativ können Sie auch auf der Kommandozeilen-Ebene mit Schaltern die Konfiguration steuern.

Sie sollten für sämtliche Wartungsarbeiten wie »Installation neuer Drucker« oder »Neuaufbau der Dateinamen-Datenbank« texconfig verwenden. Es gibt Hilfstexte mit Erläuterungen für die Fähigkeiten von texconfig in beiden Betriebsmodi.

Einige der am häufigsten benötigten Schalter werden im Folgenden erklärt:1

texconfig paper letter
Legt das Standard-Papierformat für verschiedene Programme und Treiber (pdftex, dvips, dvipdfm, xdvi) auf »letter« fest. Eine andere mögliche Angabe ist a4, die auch die Voreinstellung ist.
texconfig localsetup
Überprüft, ob die Pfade korrekt sind.
texconfig rehash
Neugenerierung aller Dateinamen-Datenbanken für das TEX-System nach dem Hinzufügen oder Entfernen von Dateien
texconfig faq
Zeigt die teTEX-FAQ an. Beachten Sie auch die TEX-FAQs in texmf-doc/doc/english/FAQ-en.
texconfig help
Ausgabe von Hilfetexten für texconfig

Das Programm texconfig unterstützt natürlich nur die Änderung von einigen wenigen (aber viel genutzten) Optionen und Konfigurationsparametern des TEX-Systems. Die zugrunde liegende Konfigurationsdatei für alle Web2C-Programme heißt texmf.cnf; Sie können sie mit dem Befehl »kpsewhich texmf.cnf« ausfindig machen. Die in der Datei enthaltenen Kommentare für Voreinstellungen und sinnvolle Alternativeinstellungen helfen bei eigenen Modifikationen weiter.

Ab dem Erscheinungsjahr 2005 der TEX Live schreibt texconfig Änderung in ein nutzerspezifisches Verzeichnis, nämlich $HOME/.texlive2005. Falls Sie TEX nur für sich selbst installieren, ergeben sich keine wesentlichen Unterschiede zu früher. Falls Sie ein TEX-System für mehrere Nutzer administrieren, möchten Sie wahrscheinlich die Konfiguration des TEX-Systems für alle Nutzer ändern. In diesem Fall benutzen Sie texconfig-sys statt texconfig.

Ebenso wurden die Hilfsprogramme updmap und fmtutil so geändert, dass sie sich auf das Verzeichnis $HOME/.texlive2005 beziehen. Für Änderungen, die alle Nutzer betreffen, benutzen Sie updmap-sys bzw. fmtutil-sys.

Beispielsweise werden Sie auf einem Multi-User-System die Standard-Formate mit fmtutil-sys --missing zentral erzeugen wollen, da diese ansonsten für alle Nutzer individuell erzeugt werden.

Falls Sie modifizierte Versionen von fmtutil.cnf oder updmap.cfg verwenden wollen, müssen diese in dem texmf-Baum installiert sein, auf den TEXMFSYSCONFIG zeigt.

Für die Übersicht der verschiedenen texmf-Bäume sei auf den Abschnitt 2.3 auf Seite 11 verwiesen. Die aktuellen Werte für diese Verzeichnisse erfahren Sie mit dem Kommando »texconfig conf« und können in der Datei texmf.cnf geändert werden.

4.2 Testen der Installation

Nachdem Sie das TEX Live-System installiert haben, wollen Sie es sicherlich auch testen, um dann in der Lage zu sein, beeindruckende Dokumente bzw. Fonts zu erzeugen.

Der folgende Abschnitt stellt einige grundlegende Vorgehensweisen vor, mit der das neue System auf Funktionsfähigkeit geprüft werden kann. Hier werden nur die UNIX-Kommandos beschrieben, da unter Mac OS X und Windows sicherlich ein GUI2 eingesetzt wird, um diese Tests durchzuführen; grundsätzlich gilt aber das gleiche Prinzip.

  1. Stellen Sie als erstes sicher, dass das Programm tex läuft:

    > tex --version
    TeX 3.141592 (Web2C 7.5.5)
    kpathsea version 3.5.5
    Copyright (C) 1997-2004 D.E. Knuth.
    ...

    Falls Sie nicht die Versionsnummern und die Copyright-Information sehen, sondern »command not found« (o. ä.) erhalten, ist vermutlich die Environment-Variable PATH nicht korrekt gesetzt. Überprüfen Sie, ob das richtige bin-Unterverzeichnis in der Variablen PATH enthalten ist. Siehe auch die Informationen zum Setzen des Environments auf Seite 20.

  2. Übersetzen einer Basis-LATEX-Datei:

    > latex sample2e.tex
    This is pdfeTeXk, Version 3.141592...
    ...
    Output written on sample2e.dvi (3 pages, 7496 bytes).
    Transcript written on sample2e.log.

    Wird bei diesem Test die Datei sample2e.tex (oder eine Stildatei) nicht gefunden, liegt vermutlich ein Konfigurationsfehler oder eine störende Environment-Variable vor. Für eine genauere Analyse ist es empfehlenswert, TEX über die Dateisuche berichten zu lassen. Genaueres können Sie im Abschnitt »Fehlersuche« auf Seite 65 nachlesen.

  3. Anzeigen der Ergebnisdatei:

    > xdvi sample2e.dvi

    (Anmerkung: Unter Windows heißt das entsprechende Kommando Windvi.) Sie sollten jetzt ein neues Fenster sehen, in dem ein Text mit Erläuterungen über die Grundlagen in LATEX zu sehen ist. Sollten TEX und LATEX Neuland für Sie sein, ist dies ein empfehlenswertes Dokument. Eine wesentliche Voraussetzung für xdvi ist, dass X-Windows bei ihnen läuft. Ist dies nicht der Fall oder wurde die Environment-Variable DISPLAY nicht korrekt gesetzt, erhalten Sie den Fehler »Can’t open display«.

  4. Eine PostScript-Datei für Druck oder Anzeige erzeugen:

    > dvips sample2e.dvi -o sample2e.ps
  5. Ausgabeformat PDF statt DVI; mit diesem Befehl wird aus der .tex-Datei direkt PDF erzeugt:

    > pdflatex sample2e.tex
  6. PDF-Datei anzeigen:

    > gv sample2e.pdf
    oder
    > xpdf sample2e.pdf

    Leider sind weder gv noch xpdf in der aktuellen TEX Live enthalten. Sie müssen deshalb beide separat installiert werden. Siehe http://www.gnu.org/software/gv/ und http://www.foolabs.com/xpdf/ zu Informationen über gv bzw. xpdf.

  7. Weitere Dateien, die für Tests interessant sind:

    small2e.tex
    einfacheres Dokument als sample2e.exe, damit bei der Untersuchung von Problemen eine möglichst kleine Quelldatei vorliegt
    testpage.tex
    erzeugt eine Seite mit Skalen für den Ausdrucktest, um Drucker-Offsets ermitteln zu können.
    nfssfont.tex
    Testausdruck von beliebigen Fonts
    testfont.tex
    ebenfalls für den Testausdruck von beliebigen Fonts; allerdings in plainTEX
    story.tex
    Die »kanonische« (plain-)TEX-Datei überhaupt: Sie müssen nach dem Aufruf von »tex story.tex« nach dem *-Prompt noch »\bye« eingeben.

    Diese .tex-Dateien können Sie auf die gleiche Weise bearbeiten wie im Beispiel sample2e.tex weiter oben.

Falls Sie mit TEX und LATEX Neuland betreten oder Hilfe bei der Erstellung von TEX- und LATEX-Dokumenten benötigen, sollten Sie unbedingt die deutschsprachige Ausgabe der FAQs zu Rate ziehen (texmf-doc/doc/german/FAQ-ge/de-tex-faq.pdf). Dort finden Sie im Abschnitt 2.4.2 »Frei verfügbare Einführungen in (La)TeX, METAFONT und verwandte Themen« Verweise auf ausdruckbare und online-verfügbare Einführungen.

Hier sind insbesondere die Broschüren von Manuela Jürgens von der Fern-Universität in Hagen zu empfehlen:

Ein englischsprachiges WWW-Dokument ist unter http://tug.org/begin.html zu finden, wo auch andere Informationsmöglichkeiten aufgeführt sind.

5 Installation unter Mac OS X

Der empfohlene Weg zur Installation eines TEX-Systems unter Mac OS X ist die Benutzung der MacTEX-Distribution, die im Jahr 2005 neu aufgenommen wurde. Sie finden Sie auf der live-DVD im Verzeichnis mactex/. Die MacTEX-Distribution verfügt über ein eigenes Installationsprogramm für ein vollständiges TEX-System, das auf teTEX und TEX Live basiert, und um viele zusätzliche Anwendungen und Anleitungen ergänzt wurde. Die Homepage des MacTEX-Projektes finden Sie unter http://tug.org/mactex.

Alternativ können erfahrene Anwender unter Mac OS X ein reines TEX Live-System installieren, indem Sie die install*-Skripten verwenden.

Um diese Installations-Skripte unter Mac OS X nutzen zu können, muss die bash-Shell installiert sein. Läuft Ihr Rechner unter Mac OS X 10.2 haben Sie bereits die bash-Shell und müssen nichts weiter unternehmen. Für Besitzer früherer Betriebssystem-Versionen ist zsh die Standard-Shell, mit der die Skripte nicht funktionieren. Falls Sie die bash-Shell benötigen, sollten Sie sie vom Internet laden oder (noch besser) Ihr System auf einen neueren Stand bringen.

Wenn bash bei ihnen läuft, können Sie der UNIX-Installationsdokumentation im letzten Abschnitt folgen. Siehe Abschnitt 3 auf Seite 13; MacOSX-spezifische Anmerkungen sind – wo notwendig – bereits im Text enthalten.

6 Installation und Einsatz unter Windows

Nachdem in der letztjährigen TEX Live-Ausgabe kein Installationsprogramm für Windows enthalten war, ist ein solches nun wieder unter dem Namen tlpmgui.exe vorhanden, wenn auch noch in einem Anfangsstadium und als recht experimentell anzusehen.

tlpmgui.exe besitzt weitgehend die gleichen Optionen wie das Installationsskript für UNIX, allerdings in Form einer grafischen Oberfläche. Sie können daher Schemata, Pakete, Verzeichnisse etc. auswählen, analog zur Beschreibung des Vorgehens für Unix-Systeme in Abschnitt 3.2 auf Seite 20. Zusätzlich können Sie hier nach einer erfolgten TEX Live-Installation nachträglich Pakete hinzufügen oder entfernen, die Datei-Datenbank aktualisieren und Formate erzeugen.

Falls Sie die technischen Details interessieren: tlpmgui verwendet im Hintergrund ein Kommandozeilen-Programm mit dem Namen tlpm.

Die unter Windows ausführbaren TEX Live-Programme basieren auf den neuen Programmen aus dem XEmTEX-Projekt, dem Nachfolger von fpTEX (siehe http://www.metz.supelec.fr/~popineau/xemtex-1.html). Einige Programme sind ältere (aber hoffentlich noch funktionsfähige) Programme, insbesondere der DVI-Viewer Windvi, dessen Benutzung sich an dem auf Unix-Systemen in der Regel verwendeten xdvi orientiert. Die Anleitung zu Windvi finden Sie unter texmf/doc/html/windvi/windvi.html. Bitte beachten Sie, dass Windvi nicht mehr weiter entwickelt wird.

TEX Live kann auf 32-Bit-Windows-Systemen wie Windows 9x, Windows ME, Windows NT, Windows 2000 (2K) oder Windows XP installiert werden. Ältere Versionen von Windows (3.1x) oder gar MS-DOS werden nicht unterstützt.

6.1 Installon von TEX Live auf Festplatte

Nach dem Einlegen der TEX Live-CD in Ihr CD-Laufwerk sollte tlpmgui automatisch starten. Wenn Sie die TEXCollection-DVD verwenden, erscheint ein Auswahl-Menu für die einzelnen auf der DVD enthaltenen Teile, und tlpmgui startet nach der Auswahl von TEX Live. Ist dies nicht der Fall, weil die Autostart-Option Ihres Systems deaktiviert ist, wählen Sie auf Ihrem Windows-Desktop StartAusführen/Run und starten laufwerk:\setup-win32\tplmgui.exe (von der inst-CD) bzw. laufwerk:\texlive\setup-win32\tplmgui.exe (wenn Sie die live-DVD verwenden).

Das Installationsprogramm tlpmgui öffnet ein Fenster mit dem Titel »TeX Live Installations- und Wartungsprogramm/TeX Live installation and maintenance utility«. Die Sprache Ihres Windowssystem sollte automatisch erkannt werden, so dass Sie in der Regel eine deutschsprachige Oberfläche sehen sollten.

Hier sind folgende Optionsgruppen verfügbar: Anpassung/Main customization, Installation/Install, Schema auswählen/Select a scheme, System auswählen/Select systems, Verzeichnisse/Directories and Optionen/Options. Derzeit sind noch nicht alle Gruppen wirklich implementiert, einige erscheinen noch hellgrau und sind inaktiv.

Im Abschnitt »Verzeichnisse/Directories« sollte Ihr CD/DVD-Laufwerk bereits neben der Schaltfläche CD/DVD erscheinen. Falls nicht, klicken Sie bitte auf CD/DVD und wählen das Laufwerk aus, in dem Installationsmedium befindet (bzw. <laufwerk>:\texlive, wenn Sie von der live-DVD installiern).

Das Ziel-Verzeichnis für die Software-Installation kann über die Schaltfläche TLroot ausgewählt werden. Zur späteren Verwendung wird eine Umgebungsvariable TLroot auf dieses Verzeichnis gesetzt. Die Pfade TEXMFTEMP und TEXMFCNF, die neben den entsprechenden Schaltflächen angezeigt werden, werden automatisch auf sinnvolle Werte gesetzt, können aber auch manuell geändert werden.

Im Abschnitt »Schema auswählen/Select a scheme« kann das gewünschte Installations-Schema ausgewählt werden (z. B. scheme-gust). Zu jedem Schema kann mit Info ein kurzer Informationstext angezeigt werden.

Schemata (schemes) sind große Sammlungen von Paketen für typische Anwendungsfälle. Es gibt allgemeine Schemata wie basic, medium und full, wobei wir bei ausreichendem Platz auf Ihrer Festplatte das Schema full empfehlen. Andere Schemata wurden speziell für einzelen User Groups zusammengestellt (wie GUST und GUTenberg) oder betreffen spezielle Anwendungsfälle (z. B. für XML-Integration in TEX). Ein ausgewähltes Schema kann im Abschnitt »Anpassung/Main customization« durch die Aus- oder Abwahl von Kollektionen (collections) in den Auswahlfenstern angepasst werden, die nach Klicken auf »Standard-Kollektionen« oder »Sprach-Kollektionen/Language collections« erscheinen. So können Sie zum Beispiel durch Auswahl von »Standard-Kollektionen« zusätzliche Pakete wie METAPOST, Omega oder Anleitungen in verschiedenen Sprachen auswählen.

Anmerkung: Die Pakete Ghostscript, Perl und Wintools sind standardmäßig ausgewählt und sollten auf jeden Fall installiert werden, da deren Installation für viele Programme notwendig ist – es sei denn, sie sind bereits anderweitig installiert und Sie kennen sich gut mit Ihrem System aus. Von diesen Tools werden die Umgebungsvariablen PERL5LIB und GS_LIB gesetzt.

Im Bereich »Sprach-Kollektionen« im Abschnitt Anpassung/Main customization können Sie durch Haken auswählen, welche Sprachunterstützungen installiert werden sollen.

Zum Starten der Installation klicken Sie auf die Schaltfläche Installieren im Abschnitt »Installation«.

Während der Installation sehen Sie rechts unten einen Statusbalken. Solange die Daten von dem Installationsmedium auf die Festplatte kopiert werden, füllt sich dieser langsam (und damit meinen wir wirklich langsam) von links nach rechts. Die Installation erfordert nach dem Kopieren auf die Festplatte mehrere zusätzliche Schritte wie Erzeugen der Formate, Aufbau der Datei-Datenbank, Setzen von Umgebungsvariablen etc. Dies kann einige Zeit in Anspruch nehmen, während der der Statusbalken periodisch von links nach rechts und zurück wandert. Warten Sie auf jeden Fall, bis der erfolgreiche Abschluss der Installation gemeldet wird.

In Ihrem Windows-System wird eine Programmgruppe StartProgrammeTeXLive2005 mit dem Installationsprogramm tlpmgui eingerichtet.

Arbeiten Sie unter Windows 9x/Windows ME, müssen Sie einen Windows-Neustart durchführen.

6.2 Installation von Support-Paketen für Windows

Für ein vollständiges TEX Live-System werden noch eine Reihe von Paketen benötigt, die üblicherweise nicht zum Standard-Repertoire von Windows gehören. Hierzu gehören Perl, der PostScript-Interpreter Ghostscript und eine graphische Toolbox; zudem kann ein TEX-orientierter Editor eine deutliche Erleichterung bei der Tipparbeit darstellen.

Alle diese Programme sind für Windows verfügbar; und um das Leben ein bisschen einfacher zu machen, sind sie auch in TEX Live vertreten:

Diese Programme stammen aus der XEmTEX-Distribution, dem Nachfolger von fpTEX.

Perl und Ghostscript werden automatisch installiert, wenn Sie es nicht explizit abgewählt haben. Tun Sie dies nur, wenn Sie sicher sind, dass diese Programme bereits installiert sind.

Wenn Sie diese Sammlung nicht installieren möchten, sind Sie auf sich gestellt, die notwendigen Tools und Pakete zur Vervollständigung Ihres TEX Live-System verfügbar zu machen. Nachfolgend finden Sie eine Liste der Tools und die zugehörigen Adressen, wo Sie sie herunterladen können:

Ghostscript:

http://www.cs.wisc.edu/~ghost/, in der TEX Live finden Sie die Version 8.53 unter ctan/nonfree/support/ghostscript/AFPL
Perl:

http://www.activestate.com/ (zusätzliche Perl-Module erhalten Sie von CPAN: http://www.cpan.org/)
ImageMagick:

http://www.imagemagick.com/
NetPBM:

als Alternative zu ImageMagick können Sie NetPBM für die Bearbeitung und Konversion Ihrer Graphikdateien benutzen. Die NetPBM-Homepage ist http://netpbm.sourceforge.net/.
TEX-Editoren:

Die Zahl der Editoren ist groß – und da es meist Geschmackssache ist, hier eine kleine Auswahl:

Sie werden sicherlich weitere Tools installieren wollen, die »nicht frei«3 sind und deshalb auf der TEX Live fehlen, so zum Beispiel GSView. Dieser Begleiter von Ghostscript, der das Anschauen von PostScript-/PDF-Dateien vereinfacht, ist erhältlich unter der URL http://www.cs.wisc.edu/~ghost/gsview/ oder CTAN:nonfree/support/ghostscript/ghostgum.

6.3 Wartung Ihrer Installation

Wenn Sie Ihr TEX Live-System installiert haben, können Sie das System mit dem Aufruf von tlpmgui modifizieren.

6.3.1 Hinzufügen und Entfernen von Paketen

Starten Sie tlpmgui aus der Programmgruppe StartProgrammeTeXLive2005, die während der Installation angelegt wurde. Das Fenster mit dem Titel »TeX Live Installations- und Wartungsprogramm« erscheint. Hier sind mehrere Bereiche als Karteireiter vorhanden: Pakete hinzufügen/Add Packages, Pakete entfernen/Remove packages, Installation bearbeiten/Manage installation, Installation entfernen/Remove installation.

Das Arbeiten mit »Pakete hinzufügen« bzw. »Pakete entfernen« ist im Wesentlichen identisch:

6.3.2 Konfiguration und Verwaltung

Die Funktionen im Bereich »Installation bearbeiten/Manage the installation« sind hilfreich, wenn Sie die Unterstützung für weitere Sprachen hinzufügen möchten, die Sie bei der Installation nicht ausgewählt hatten. Weiterhin können Sie die TEX-Formate neu generieren, sei es, weil Sie sie noch nicht installiert hatten oder Sie Änderungen an Ihrem System vorgenommen haben, die eine Neugenerierung der Formate erfordern (z. B. die Installation weiterer Trennmuster).

6.3.3 Deinstallation von TEX Live

Die Schaltfäche »Installation entfernen/Remove the installation« öffnet ein Fenster, dessen Funktionalität wir hier nicht näher beschreiben wollen, da wir nicht wissen, warum man dies tun sollte ...

Beachten Sie, dass eine Deinstallation einen lokalen texmf-Baum unter texmf-local nicht betrifft. Sie brauchen also keine Sorgen zu haben, dass Ihre lokalen Ergänzungen auf einmal verschwinden. Das Verzeichnis setup-win32, in dem sich das Installationsprogramm tlpmgui und davon benötigte Dateien befinden, wird ebenfalls nicht gelöscht und muss von Ihnen für eine restlose Deinstallation manuell gelöscht werden.

6.4 Hinzufügen eigener Pakete zur existierenden Installation

Das Hinzufügen eigener Pakete zur Installation setzt etwas Detailkenntnis voraus. Ein häufig auftretendes Problem ist, dass Sie niemals vergessen dürfen, nach eigenen Änderungen die Datei-Datenbank (die aus Gründen, die aus der UNIX-Welt stammen, ls-R heißt) aufzufrischen. Ansonsten werden Ihre neuen Dateien nicht gefunden! Sie können dies entweder mit tlpmgui durch die entsprechende Schaltfläche im Bereich »Installation bearbeiten« oder durch direktes Aufrufen von mktexlsr tun.

Wenn Sie Pakete hinzufügen wollen, die nicht zur TEX Live-Distribution gehören, sind diese im texmf-local-Baum am Besten aufgehoben. Dort sind Ihre Dateien vor einem Upgrade oder einer Deinstallation von TEX Live sicher.

Das Verzeichnis texmf-local ist zunächst leer. Wenn Sie dort neue Dateien hinzufügen wollen, müssen diese innerhalb dieses Baumes so abgelegtgq werden, dass es der standardisierten TEX-Verzeichnisstruktur TDS entspricht. Wollen Sie also z. B. Style-Dateien für das Mathematik-Programm Maple hinzufügen, sind diese unter c:\TeXLive2005\texmf-local\tex\latex\maple und die zugehörige Dokumentation unter c:\TeXLive2005\texmf-local\doc\latex\maple gut aufgehoben.

6.5 Benutzung von tlmp.exe in der Kommandozeile

Das Programm tlpm.exe, das von tlpmgui im Hintergrund benutzt wird, enthält einige weitere nützliche Optionen. Einen Überblick erhalten Sie durch den Aufruf

      tlpm --help

Weitere Informationen finden Sie auf englisch in der Datei tlpm.readme.

6.6 Installation im Netzwerk

Kpathsea unterstützt inzwischen die von Windows verwendeten UNC-Namen, so dass Sie Ihren texmf-Baum auch über das Netzwerk verwenden können.

Im folgenden beschreiben wir den Fall, dass Sie ein Multiplattform-System über das Netzwerk zugänglich machen wollen.

Alle Dateien einer TEX Live-Installation außer den Programmen in den bin-Verzeichnissen sind von der Betriebssystem-Plattform unabhängig, so dass es möglich ist, dass über Samba ein Windows-Client eine TEX Live-Installation von einem UNIX-Server oder ein UNIX-Rechner auf einen Windows-Server zugreift. Hierbei sind mehrere Szenarien denkbar:

6.7 Win32-Unterschiede zum Standard-Web2C

Die Win32-Version von Web2C hat einige spezifische Eigenschaften, die hier näher erklärt werden.

Kpathsea:

Die von Kpathsea aufgebauten Hash-Tabellen sind bei TEX Live sehr groß. Um die Startzeit für jedes Programm, das Kpathsea benutzt, zu verkürzen, wurden diese Hash-Tabellen in das »Shared Memory« gelegt. Dadurch kann der Overhead, der beim zyklischen Aufruf von Programmen auftritt, wenn tex beispielsweise mpost aufruft, das wiederum tex ruft, vermindert werden. Diese Änderung wird vor dem Benutzer versteckt, außer wenn das Debug-Flag bei kpathsea auf -1 gesetzt wird. Dann wird der Zugriff zum Shared-Memory aufgezeichnet, was sicherlich nicht das ist, was Sie wollen (es wird nämlich sehr häufig angesprochen!). Die wirklich erforderlichen Trace-Daten für den Zugriff auf das Shared-Memory müssen noch definiert werden; dies ist sicherlich eine Aufgabe für die Zukunft.
kpsecheck:

Dieses Kommando bietet einige Optionen, die nicht zu den Aufgaben von kpsewhich gehören und deshalb auch dort schlecht passen. Mit kpsecheck können Sie alle Dateinamen auflisten, die mehrfach in verschiedenen Zweigen des texmf-Baums auftreten. Dies ist bei der Dateisuche sehr praktisch; die meiste Zeit werden Sie allerdings unerwünschte Angaben bekommen, beispielsweise von dutzendweise vertretenen README-Dateien. Es bleibt festzustellen, dass alle diese Dateien zu Problemen beim Kpathsea-Hash-Mechanismus führen; glücklicherweise wird nach diesen Dateien nie gesucht. Deshalb kann die Option -multiple-occurrences mit zwei weiteren Optionen zum Ein- oder Ausschluss von Dateinamen, die einem bestimmtem Muster entsprechen, kombiniert werden. Es können mehrere Muster angegeben werden.

Das Kommando kpsecheck gibt auch Auskunft über den Status des Shared-Memories: »in use« oder »not used« (»in Benutzung« oder »nicht benutzt«). Das kann von Nutzen sein, da ein Aufruf von mktexlsr so lange nicht ausgeführt wird, wie noch ein Prozess das Memory nutzt und der Status somit als »in use« angegeben wird.

Mit diesem Kommando kann auch das Installationsverzeichnis von Ghostscript festgestellt werden. Für viele Programme unter Win32 ist es einfacher, die Ghostscript-DLL zu benutzen und mittels des Registry-Keys von Ghostscript das Verzeichnis zu finden, als den PATH zu ändern (der sowieso eine begrenzte Länge hat).

Web2C:

Die TEX-Engines unter Windows besitzen gegenüber der Web2C-Standardversion einige zusätzliche Optionen; zudem hat eine Option ein anderen Verhalten:

6.8 Persönliche Konfiguration

6.8.1 dvips

Die Konfigurationsdatei für dvips ist so eingestellt, dass die Type-1-Fonts genutzt werden. Anpassungen sind notwendig, falls standardmäßig eine andere Papiergröße als DIN A4 verwendet werden soll.

Öffnen Sie die Datei c:\TeXLive2005\texmf-var\dvips\config\config.ps mit einem Editor.

Fonts:

Sie können damit die Voreinstellungen für den Metafont-Drucker-Modus und die Druckerauflösung ändern. Das könnte dann erforderlich sein, wenn dvips PK-Dateien generieren müsste. In der Voreinstellung ist dvips so konfiguriert, dass die Type-1-Versionen der CM-Fonts benutzt werden. mktexpk sollte deshalb nicht allzu oft gerufen werden.
Printer:

Sie können einen Standarddrucker einrichten. Steht die Option »o« ohne weitere Zeichen allein auf der Zeile, wird ein .ps-File geschrieben. Sie können nun dvips Druckernamen in folgender Weise vorgeben:
  o lpt1:
  % o | lpr -S server -P myprinter
  % o \\server\myprinter
Paper:

Für die Änderung der Standard-Papiergröße von DIN A4 auf beispielsweise »US letter«, müssen Sie dafür sorgen, dass »US letter« die erste in der Datei aufgeführte Papiergröße ist. Suchen Sie den Block mit Zeilen, die mit »@« beginnen. Verschieben Sie die folgenden Zeilen an den Beginn dieses Blocks:
  @ letterSize 8.5in 11in
  @ letter 8.5in 11in
  @+ %%BeginPaperSize: Letter
  @+ letter
  @+ %%EndPaperSize

Speichern Sie die Einstellungen.

Die aktuelle TEX Live-Distribution enthält Mechanismen, die dafür sorgen, dass die Font-Map-Dateien für dvips und pdfTEX immer auf den neuesten Stand gehalten werden. Das geschieht während der TEX-Installation wie auch bei der Installation neuer Pakete durch das Programm updmap. Sollten Sie ein neues Paket per Hand installieren, müssen Sie die Datei updmap.cfg in $TEXMFVAR/web2c entsprechend editieren.

6.8.2 pdfTEX

Wenn Sie pdfTEX oder pdfLATEX benutzen, um direkt PDF-Dateien zu erzeugen und nicht das standardmäßige Papierformat DIN A4 benutzen wollen, müssen Sie in der Konfigurationsdatei c:\TeXLive2005\texmf-var\tex\generic\config\pdftexconfig.tex die Anweisungen »\pdfpagewidth« und »\pdfpageheight« entsprechend ändern.

Die Anweisungen heißen jetzt:

   \pdfpagewidth=8.5 true in
   \pdfpageheight=11 true in

Speichern Sie die Datei und verlassen den Editor.

6.8.3 GSView

GSView unterliegt jetzt der Aladdin-Lizenz und kann deshalb nicht mehr mit TEX Live verteilt werden. Sie können es aber jederzeit von einem der CTAN-Server laden (im Verzeichnis nonfree/support/ghostscript/ghostgum).

In GSView können Sie das Papier-Standardformat über die Menü-Option Formate festlegen. Wählen Sie hier das gewünschte Format aus der Liste, beispielsweise A5.

Beachten Sie die Menü-Optionen, die Ihnen erlauben, eine optimale Bildschirmanzeige einzustellen:

Wählen Sie Formate  Anzeige Einstellungen... und setzen Sie:

  Text Alpha 4 bits
  Graphik Alpha 4 bits

Hierfür muss die Option Farbtiefe gegebenenfalls auf 8 oder 24 Bits/Pixel eingestellt werden.

Damit alle diese Einstellungen erhalten bleiben, wählen Sie Optionen  Speichere Optionen jetzt. Beachten Sie, dass beim Installationsprozess alle .ps- und .eps-Dateien mit GSView assoziiert wurden. Über das Drucken eines Dokuments finden Sie Informationen im Abschnitt 6.10.

6.8.4 Windvi

Das Programm tlpmgui.exe nimmt eine Assoziation von .dvi-Dateien mit Windvi vor. Sie können daher einfach auf DVI-Dateien doppelklicken, und Windvi sollte starten. Sie können windvi natürlich auch von der Kommandozeile starten oder sich eine Verknüpfung auf windvi auf den Desktop legen.

In Windvi kann das gewünschte Papierformat aus einer Vielzahl von Formaten über View  Options und dann in einer Liste unter »Paper type« gewählt werden. Querformate sind an einem angehängten r erkennbar, z. B. a4r. Mit OK werden die Einstellungen gesichert.

Falls Sie nach dem passenden Metafont-Modus für die Auflösung Ihres Druckers suchen, sollten Sie in c:\Programme\TeXLive\texmf-dist\metafont\misc\modes.mf nachlesen.

Alle Konfigurationseinstellungen von Windvi werden in $HOME/windvi.cnf gespeichert. Sie können diese mit folgendem Befehl finden:

c:\> kpsewhich --expand-var $HOME/windvi.cnf

Falls Sie Probleme mit Windvi haben, empfiehlt es sich, die Konfigurationsdatei zu löschen und zu prüfen, ob der gleiche Fehler auch mit der Standardkonfiguration auftritt.

6.9 Installation testen

Im Abschnitt 4.2 auf Seite 32 wurde eine generelle Methode zum Test einer Installation beschrieben; die Ausführungen hier beleuchten die Windows-spezifischen Tests.

In Ihrem Editor öffnen Sie bitte die Datei sample2e.tex, die Sie unter c:\TeXLive2005\texmf-dist\tex\latex\base\ finden können. Die LATEX-Quelle sollte nach dem Öffnen der Datei auf dem Bildschirm angezeigt werden. Durch Anklicken des LATEX-Symbols in der Menü-Leiste wird die Datei übersetzt; bei Wahl des Preview-Symbols (Windvi) wird sie dargestellt. Beim ersten »Preview« einer Datei mit Windvi werden alle benötigten Fonts erzeugt; sie wurden nicht mitinstalliert. Mit der Zeit werden Sie das Fenster, das die Font-Generierung anzeigt, immer seltener sehen. Als nächstes sollten Sie dvips anklicken und GSView ausprobieren.

Hinweis für später: Wenn ein LATEX-Lauf mit einer Fehlermeldung unterbricht, weil eine Datei nicht gefunden wird, können Sie mit Ctrl-z einen Abbruch erzwingen. Überprüfen Sie anhand der Protokolldatei, welche Datei nicht zu finden war und beheben Sie den Fehler.

6.10 Drucken

Es ist grundsätzlich möglich, aus Windvi heraus zu drucken. Wird dabei der Standard-Windows-Druckertreiber benutzt, hat dies den Vorteil, dass eine Ausgabe auf allen Druckern möglich ist und Sie BMP- oder WMF-Bilddateien einbinden und drucken können. Nachteil ist, dass teilweise extrem große Druckdateien erzeugt werden. Sie müssen sicherstellen, dass die Druckparameter korrekt eingestellt sind (siehe Abschnitt  6.8.4 auf Seite 44), sonst erhalten Sie eine skalierte Ausgabe der Druckseite. So wird bei einer Druckerauflösung von 300 dpi eine 600-dpi-Druckausgabe nur ein Viertel der Seite zeigen.

Im Allgemeinen ist es allerdings schneller und für den Produktionszyklus beim Einbinden von eps-Graphiken schneller und sicherer, dvips zu benutzen. Sie erstellen eine .ps-Datei und drucken mit GSView. Einen Ausdruck können Sie in GSView über das Drucker-Symbol oder durch Wahl von Datei  Drucken... anstoßen. Es wird dann ein Fenster für die weiteren Druckparameter geöffnet.

Bei der Benutzung eines PostScript-Druckers müssen Sie sicherstellen, dass Sie die Option PostScript Drucker angewählt haben. Ab GSView-Version 3.6 erfolgt dies in dem Feld »Druckmethode« unten links im Fenster Drucken. Dann können Sie im Feld »Drucker« jeden installierten PostScript-fähigen Drucker auswählen. Wenn Sie vergessen sollten, PostScript-Drucker als »Druckmethode« zu wählen, wird das Ausdrucken nicht funktionieren.

Benutzen Sie hingegen einen nicht-PostScript-fähigen Drucker, wählen Sie im Feld »Druckmethode« stattdessen die Option Ghostscript Treiber und klicken den mit djet500 beschrifteten Knopf. Hier wählen Sie Ihren Drucker im Dialog Wähle Ghostscript-Gerät aus. (In älteren GSView-Versionen müssen Sie das Feld »PostScript-Drucker« abwählen und dann Ihren Drucker aus der Geräte-Liste wählen.)

6.11 Tipps und Tricks für Win32-Plattformen

6.11.1 Die feinen Unterschiede bei Win32

Was wir als Win32 bezeichnen, ist im Grunde kein eigenständiges Betriebssystem. Es ist ein sehr großer Satz von Funktionen4, den man benutzen kann, um Programme für unterschiedliche Betriebssysteme der Windows-Familie zu schreiben.

Windows kommt in unterschiedlichen Ausprägungen:

Windows 9x ist in der Lage, 32-Bit- und 16-Bit-Programme gleichzeitig auszuführen. Das Betriebssystem ist allerdings nicht vollständig im 32-Bit-Modus geschrieben und unterstützt daher keinen Speicherschutz. 16-Bit-Applikationen können so Teile des Betriebssystemspeichers überschreiben! Einige Systemteile, wie beispielsweise das GDI (Graphical Device Interface), müssen beschränkte Ressourcen wie Bitmaps, Fonts usw. für alle gleichzeitig laufenden Programme verwalten. Die Gesamtgröße aller Bitmap-Header, die zu einem Zeitpunkt verfügbar ist, beträgt maximal 64 KB. Dies erklärt die Rolle von »Performance Tools« und auch, warum Sie die Stabilität Ihres Systems auf die Probe stellen, wenn Sie intensiven Gebrauch von graphischen Objekten machen.

Windows NT/Windows XP und Windows 2000 leiden weder unter diesen, noch unter anderen Windows-9x-Beschränkungen. Sie sind echte Multi-Tasking-Systeme mit Speicherschutz-Mechanismen. Durch besseres Design bei Speicherverwaltung, Dateisystem usw. haben sie zudem ein wesentlich besseres Antwortverhalten.

6.11.2 Kommandointerpreter

Sie haben sich sicherlich schon gefragt, »Warum sollte ich etwas über die Kommandozeile eingeben, wenn ich Windows benutze?«.

Gute Frage. Dies ist mehr ein grundsätzliches Problem, da mit einer graphischen Benutzerschnittstelle (GUI) nicht immer alle Arbeitsschritte einfach zu erledigen sind. Der Kommandointerpreter eröffnet hier häufig – einen intelligenten Kommandointerpreter vorausgesetzt – mehr Möglichkeiten.

In unserem Fall handelt es sich aber um ein fundamentales Problem: TEX ist ein Batch-Tool und kein interaktives Programm. TEX errechnet das beste Layout für jede Seite, löst die Referenzen auf, usw. Hierfür ist die Gesamtbearbeitung des Dokuments immer noch die einfachste Methode. Bislang macht eine interaktive Bearbeitung der Eingabe (noch) keinen Sinn.

Das bedeutet also, dass Sie TEX auf der Kommandozeile benutzen sollten. Im Grunde ist die Situation sogar so, dass diese Programme für komplexe Verarbeitungsvorgänge besser geeignet sind, da es leichter ist, ein Programm ohne die Verkopplung mit einer graphischen Benutzerschnittstelle zu testen und Fehler zu finden. Es ist dann auch einfacher, ein GUI zur Bedienung dieses Programms zu entwickeln. Und dies ist genau der Fall für TEX, mit dem Sie in den allermeisten Fällen über eine Shell oder einen GUI-Editor in Kontakt treten.

Manchmal benötigen Sie aber den Kommandointerpreter dazu, um Probleme zu lösen oder um Fehler in Ihrem Setup aufzuspüren (siehe Abschnitt 6.12).

Windows 9x:

Sie starten den Kommandointerpreter entweder im Start-Menü  Programme und suchen die Option MS-DOS-Eingabeaufforderung oder mit Start-Menü  Ausführen und tippen »command.com«.
Windows NT, Windows 2000 und Windows XP:

Sie finden den Kommandointerpreter im Start-Menü unter Accessories.5 Sie starten ihn allerdings auch im Start-Menü  Ausführen durch »cmd.exe« (so heißt der nagelneue Kommandointerpreter für Windows NT).6

6.11.3 Verzeichnistrenner

Die Win32-API versteht sowohl »/« als auch »\« als Verzeichnistrenner. Die Kommandointerpreter aber leider nicht! Sie können also immer dann beide Trenner benutzen, sogar gemischt innerhalb eines Pfads, wenn Sie nicht auf der Kommandozeile arbeiten. Der Kommandointerpreter spielt hier nicht mit, da er das Zeichen »/« benutzt, um Argumente von Kommandos zu trennen.

Sie sollten also nicht überrascht sein, wenn Sie Pfad- und Verzeichnisnamen in der UNIX-Schreibweise sehen. fpTEX ist eine Portierung von Web2C und zielt auf Kompatibilität über die Plattformen. Deshalb enthalten alle Konfigurationsdateien die Pfadnamen in UNIX-Schreibweise.

6.11.4 Dateisysteme

Das schwächste Glied bei Windows 9x in Bezug auf TEX ist sicherlich das sogenannte FAT- oder FAT16-Dateisystem. TEX benutzt eine Vielzahl sehr kleiner Dateien, meist mit Größen zwischen 1 und 3 KB. Das FAT-Dateisystem ist veraltet; es stammt aus einer Zeit, als Gigabyte-Platten noch unbekannt waren. Deshalb kann es mit den Zehntausenden von Dateien des TEX Live-Systems nicht effizient umgehen. Im FAT-Dateisystem werden auf großen Partitionen im Minimum 32 KB für jede Datei angelegt. Damit ist klar, dass TEX auf diese Weise wesentlich mehr Plattenplatz verbraucht als notwendig wäre.

Die moderneren Windows-Dateisysteme, wie FAT32 oder NTFS, haben diesen Nachteil nicht. Hier betragen die sogenannten Cluster-Größen 4 KB.7

6.11.5 PATH um Verzeichnis(se) erweitern

Jedes Programm erhält bei seinem Start eine Kopie der Standardumgebung. Dies ist eine Sammlung von Variablen mit zugehörigen Schlüsselwerten. Diese Variablen stehen unter der ausschließlichen Kontrolle des Programms; Änderungen an Schlüsseln oder Schlüsselwerten sind für andere Programme nicht sichtbar.

Die Umgebungsvariable PATH dient der Suche nach Programmen. Es existieren unterschiedliche Vorgehensweisen zur Änderung dieser Variablen für die verschiedenen Windows-Varianten:

Windows 95/98:

Laden Sie die Datei autoexec.bat in den Editor und suchen nach einer Zeile, die mit »PATH=« beginnt. Nach dem »=« folgt eine Liste von Verzeichnissen, die durch »;« getrennt sind. Fügen Sie das Verzeichnis mit den TEX Live-Programmen an. Danach könnte die Zeile wie folgt aussehen:

PATH=c:\windows;c:\windows\system;c:\TeXLive2005\bin\win32

Windows ME:

Um eine Umgebungsvariable zu ändern, müssen Sie das Programm

c:\windows\system\msconfig.exe

laufen lassen. Wählen Sie nach dem Start dieses Programms »Umgebung«, dann tragen Sie die Variable PATH mit ihrem Wert ein oder ändern ihn:

PATH c:\TeXLive2005\bin\win32

Danach werden Sie aufgefordert, Ihren Rechner neu zu starten.

Windows NT/Windows 2000:

Gehen Sie über Start-Menü  Einstellungen  Systemsteuerung  System. Wählen Sie Umgebung. Die weiteren Schritte finden Sie unter Windows XP.
Windows XP:

Gehen Sie über Start-Menü  Systemsteuerung  System  Erweitert. Wählen Sie unten links Umgebungsvariablen.

Sie können nun als Benutzer die Umgebungsvariablen ändern. Es werden Ihnen aber auch Variablen für das System angezeigt. Im Normalfall können Sie keine System-Variablen ändern, es sei denn, Sie besitzen für den Rechner auch Administrator-Rechte. Möchten Sie PATH für alle Benutzer ändern, müssen Sie mit Ihrem Systembetreuer Kontakt aufnehmen; sind Sie selbst Systembetreuer, sollten Sie Bescheid wissen.

Existiert bereits eine Einstellung für PATH für Sie, klicken Sie mit der linken Maustaste auf PATH. Im Feld Variable erscheint dann PATH, das Feld Wert zeigt den aktuellen Inhalt als Liste von Verzeichnissen, die mit »;« getrennt sind. Fügen Sie das Verzeichnis mit den TEX Live-Programmen an:

c:\TeXLive2005\bin\win32

Existiert für Sie keine Variable mit Namen PATH, müssen Sie in das Feld Variable klicken und PATH eintragen. Dann wählen Sie das Feld Wert an und tragen das gewünschte Verzeichnis ein.

Wichtig: Klicken Sie zuerst »Übernehmen« an, bevor Sie mit »Ok« bestätigen. Anderenfalls werden die Änderungen an PATH nicht für Ihr System übernommen. Seien Sie vorsichtig beim Ändern der Umgebung!

Zur Überprüfung, ob die Variable gesetzt wurde, ist es am besten, ein Kommandointerpreter-Fenster zu öffnen und dort einzugeben:

    set variable

Sie erhalten dann den zugewiesenen Wert angezeigt.

6.11.6 TEX-Engines

Wenn Sie die Web2C-Dokumentation aufmerksam lesen, werden Sie feststellen, dass immer davon geschrieben wird, dass alle auf TEX basierenden Programme die gleiche »Base-Engine« benutzen. So sind zum Beispiel tex.exe und latex.exe Kopien des gleichen Programms; jedes benötigt aber seine eigene Format-Datei basierend auf dem Programmnamen.

Unter UNIX wird dies durch sogenannte symbolische Links erreicht. Das spart Plattenplatz, da einige Base-Engines mit sehr vielen unterschiedlichen Format-Dateien genutzt werden.

Die Win32-API kennt keine symbolischen Links. Um also annähernd die gleiche Ersparnis zu erreichen, wurden die TEX-Base-Engines in sogenannten DLLs (Dynamic Linked Library) realisiert. Das heißt, man sieht folgende Verteilung:

18/09/2005  14:19                3 584 latex.exe
18/09/2005  14:19                3 584 pdfetex.exe
18/09/2005  14:19              524 288 tl90pdfetex.dll

latex.exe ist eine Kopie von pdfetex.exe, die den selben Kern tl90pdfetex.dll nutzt. Der gleiche Trick wurde für die acht Mitglieder der mktex*.exe-Programmfamilie benutzt, die auf die Bibliothek mktex.dll »gelinkt« sind.

Das TEX Live-System enthält das Programm irun.exe, mit dem für Win32-Binärprogramme das UNIX-Äquivalent der sogenannten hard links eingerichtet werden kann.

6.12 Problemfälle

6.12.1 Was ist zu tun, wenn LATEX Ihre Dateien nicht findet?

6.12.2 Was ist zu tun, wenn das Setup nicht wie gewünscht funktioniert?

Es gibt einige Punkte, die Sie zuerst prüfen sollten:

  1. Liegt tex.exe im definierten PATH?
  2. Wurde die Umgebungsvariable TEXMFCNF auf c:\TeXLive2005\texmf-var\web2c gesetzt (eigene Einstellung beachten!)?
  3. Wurden im Installationsprotokoll Fehler durch tlpmgui.exe eingetragen? Die Datei tlpmgui.log befindet sich im TEMP-Verzeichnis. Fehlermeldungen beginnen mit »Error«. Hinweis: Manchmal finden sich in der Log-Datei Fehlermeldungen vom Versuch, alle Format-Dateien zu generieren. Keine Panik, wenn dies Formate betrifft, die Sie gar nicht installiert haben.
  4. Sie können im WWW-Dokument http://www.tug.org/tex-live/ prüfen, ob ein Bug-Fix für das TEX Live-System vorliegt.

Die TEX Live-Software ist komplex und besteht aus Hunderten von Programmen und Zehntausenden von Dateien aus verschiedenen Quellen. Es ist deshalb nicht möglich, Antworten für alle Problemfälle vorzuhalten. Wir werden aber unser Bestes tun, Ihnen bei allen Schwierigkeiten zu helfen. (Siehe Abschnitt 1.2 auf Seite 7.)

7 Anleitung zum Web2C-System

Web2C besteht aus einer Reihe von Programmen, die zusammen ein komplettes TEX-System darstellen. Dazu gehören natürlich TEX, Metafont, METAPOST, BibTeX usw.

Die erste Implementierung eines TEX-Systems in der Programmiersprache C stammt von Tomas Rokicki und datiert zurück in das Jahr 1987. Rokicki benutzte als Basis sog. Change-Files unter UNIX, die ursprünglich von Howard Trickey und Pavel Curtis entwickelt wurden. Tim Morgan hat dieses System, für das der Name Web-to-C eingeführt wurde, gepflegt. 1990 hat Karl Berry mit Unterstützung vieler Helfer die Weiterentwicklung übernommen und 1997 an Olaf Weber weitergegeben.

Web2C 7.5 läuft unter UNIX, Windows 3.1, Windows 9x/Windows ME/Windows NT/Windows 2000/ Windows XP, DOS und auf weiteren Betriebssystemen. Es benutzt die Original-Quelldateien von Donald E. Knuth und weitere in der Sprache web entwickelte Programme als Basis und übersetzt diese in C-Quell-Code. Darüber hinaus bietet das System viele Makros und Funktionen zur Nutzung der originalen TEX-Software. Hier eine Liste der Basisprogramme eines TEX-Systems:

bibtex
Verwalten von Bibliographien
dmp
troff-nach-MPX-Konverter (METAPOST-Bilder)
dvicopy
Umwandeln von virtuellen Zeichensätzen in DVI-Dateien
dvitomp
DVI-nach-MPX-Konverter (METAPOST-Bilder)
dvitype
Textanzeige aus DVI-Dateien
gftodvi
Erzeugen von Prüfausgaben für Zeichensätze
gftopk
Packen von Zeichensätzen
gftype
Anzeige von Zeichensätzen als ASCII-Graphik
makempx
Anzeige von METAPOST-Beschriftungen
mf
Zeichensatzerzeugung
mft
formatierte Ausgabe von Metafont-Quellen
mpost
Metafont-ähnliches Grafikprogramm
mpto
Extrahieren von METAPOST-Beschriftungen
newer
Vergleich von Dateierstellungsdaten
patgen
Erzeugen von Trennmustern
pktogf
Entpacken von Zeichensätzen
pktype
Anzeige gepackter Zeichensätze
pltotf
Umwandeln von Property-Listen in .tfm-Dateien
pooltype
Anzeige der Bildschirmtexte eines WEB-Programms
tangle
Konverter web nach Pascal
tex
TEX-Programm
tftopl
Umwandeln einer .tfm-Datei in eine Property-Liste
vftovp
Umwandeln eines virtuellen Zeichensatzes in eine Property-Liste
vptovf
Umwandeln einer Property-Liste in einen virtuellen Zeichensatz
weave
web-Code als TEX-Dokumentation

Die genaue Funktionsweise und die möglichen Parameter sind der Beschreibung der jeweiligen Pakete bzw. der Web2C-Dokumentation zu entnehmen. Trotzdem wird ein Überblick über Zusammenspiel und Funktionsweise der Web2C-Programme Ihnen sicherlich helfen, besser mit dem System zurechtzukommen.

Zunächst verstehen alle Programme die grundlegenden Parameter der GNU-Software:

--help
kurzer Hilfstext
--verbose
ausführliche Ausgaben beim Programmablauf
--version
Ausgabe der Versionsnummer

Die Programme des Web2C-Systems benutzen zum Lokalisieren der benötigten Dateien im Dateisystem die Kpathsea-Bibliothek. Diese Bibliothek optimiert und beschleunigt den Suchprozess im Dateisystem. Ihre Arbeitsweise wird durch einige Umgebungsvariablen und eine Konfigurationsdatei gesteuert. Web2C 7.5 kann mehr als einen Dateibaum gleichzeitig verwalten und ermöglicht somit die schon beschriebene TEX Live-Installation unter Verwendung der CD-ROM oder DVD mit der Ablage modifizierter Konfigurationsdateien und zusätzlicher Zeichensätze in einem zweiten Dateibaum. Die Suche nach Dateien wird durch die Analyse der Datei ls-R beschleunigt, die in jedem Wurzelverzeichnis eines TEX-Dateibaums vorhanden ist. Sie enthält für jede Datei die genaue Position im Dateibaum relativ zum Wurzelverzeichnis.

7.1 Dateisuche mit der Kpathsea-Bibliothek

Wir beschreiben zunächst den grundlegenden Suchmechanismus der Kpathsea-Bibliothek.

Ein Suchpfad ist eine durch Kommata oder Semikola getrennte Liste von Pfadkomponenten, die üblicherweise Verzeichnisnamen darstellen. Ein Suchpfad kann sich aus vielen Komponenten zusammensetzen. Die Suche nach einer Datei »my-file« über den Suchpfad ».:/dir« bewirkt, dass Kpathsea jede Komponente nacheinander überprüft, also zunächst »./my-file« und dann »/dir/my-file«. Als Ergebnis wird entweder die erste gefundene Datei oder eine Liste aller passenden Dateien geliefert.

Um auf allen Dateisystemen effizient arbeiten zu können, verwendet Kpathsea ggf. andere Datei-/ Verzeichnis-Separatoren als »:« und »/«.

Beim Überprüfen einer Pfadkomponente p überprüft Kpathsea zunächst, ob eine Dateinamen-Datenbank (siehe auch Dateinamen-Datenbank auf Seite 60) für die Pfadkomponente zuständig ist, d. h. beispielsweise steht die Datenbank in einem Verzeichnis, das im Pfad vor der zu überprüfenden Komponente p steht. In diesem Fall wird zur Bestimmung der Position der gesuchten Datei die Datenbank herangezogen.

Nur wenn keine passende Datenbank existiert oder wenn die Datei nicht in der Datenbank gefunden wird, durchsucht Kpathsea das Dateisystem. Diese zeitaufwändige Suche kann über die Spezifikation der Pfadkomponente p mit dem Präfix »!!« unterbunden werden. Zur Suche erzeugt Kpathsea eine Liste der Verzeichnisse, die im Pfadelement enthalten sind, und durchsucht jedes dieser Verzeichnisse nach der gesuchten Datei.

Für Dateien kann auch ein Schalter »file must exist« gesetzt werden (»Datei muss vorhanden sein«). Wenn dieser Schalter nicht gesetzt ist und beispielsweise über das TEX-Kommando \openin eine VF-Datei wie cmr10.vf gelesen werden soll, wäre es falsch, nach dieser Datei zu suchen, weil es sie gar nicht gibt. Speziell für neu installierte VF-Dateien sollten Sie also unbedingt die Dateinamen-Datenbank (ls-R) aktualisieren, weil die Dateien sonst nicht gelesen werden und kein Fehler angezeigt wird. Dieser Vorgang wiederholt sich für jede Komponente eines Suchpfades: zunächst wird die Datenbank überprüft, danach ggf. das Dateisystem. Wird die Datei gefunden, stoppt die Suche (normalerweise) und als Ergebnis wird der komplette Pfad zur gesuchten Datei ausgegeben.

Außer Verzeichnisnamen dürfen Pfadkomponenten für Kpathsea folgende Elemente enthalten: (verschachtelte) Vorgaben, Umgebungsvariablen, Werte aus der Konfigurationsdatei, Home-Verzeichnisse von Benutzern und Startverzeichnisse für eine rekursive Suche. Diese Elemente werden vor einer Dateisuche von Kpathsea in gewöhnliche Verzeichnis- oder Dateinamen expandiert. Diese Expansion wird in den folgenden Abschnitten erklärt, und zwar genau in der Reihenfolge, wie die Elemente auch von Kpathsea bearbeitet werden.

Beachten Sie, dass Kpathsea bei absoluten und explizit relativen Komponenten, d. h. wenn die Komponente mit den Zeichen »/«, »./« oder »../« beginnt, nur überprüft, ob die Datei existiert.

7.1.1 Bestandteile von Pfadkomponenten

Ein Suchpfad kann aus vielen verschiedenen Bestandteilen aufgebaut werden. Dies sind in der Reihenfolge, wie Kpathsea sie auswertet:

  1. eine benutzerdefinierte Umgebungsvariable, z. B. TEXINPUTS: Wird an den Inhalt der Variablen ein Punkt und ein Programmname angehängt, wie beispielsweise bei TEXINPUTS.latex, hat diese Form Vorrang vor den »gewöhnlichen« Variablen.
  2. Einträge aus programmspezifischen Konfigurationsdateien, beispielsweise zum Programm dvips eine Zeile »S /a:/b« in der Konfigurationsdatei config.ps
  3. Einträge aus der Kpathsea-Konfigurationsdatei texmf.cnf, z. B. »TEXINPUTS=/c:/d« (siehe folgenden Text)
  4. Einstellung beim Übersetzen der Programme

Unter Verwendung der Parameter zur Fehlersuche können Sie sich diese Werte für einen Suchpfad auch anzeigen lassen. (Siehe dazu den Abschnitt Fehlersuche auf Seite 65.)

7.1.2 Konfigurationsdateien

Die Kpathsea-Bibliothek liest zur Laufzeit die Konfigurationsdateien mit den Namen texmf.cnf. Der zugehörige Suchpfad zum Auffinden dieser Konfigurationsdateien steht in der Umgebungsvariablen TEXMFCNF (die Voreinstellung ist texmf/web2c). Kpathsea liest alle Dateien mit den Namen texmf.cnf, die es in diesem Suchpfad findet. Die zuerst gelesenen Definitionen haben dabei Vorrang vor später gelesenen Werten. Wenn der Suchpfad auf .:$TEXMF steht, überschreiben die Einstellungen in ./texmf.cnf diejenigen in $TEXMF/texmf.cnf.

Im Folgenden wird die Syntax der Datei texmf.cnf angegeben. Konsultieren Sie zum besseren Verständnis beim Lesen die auf der CD-ROM oder DVD enthaltene Konfigurationsdatei.

Der Ausschnitt einer Konfigurationsdatei demonstriert diese Möglichkeiten.

  TEXMF              = {$TEXMFLOCAL,!!$TEXMFMAIN}
  TEXINPUTS.latex    = .;$TEXMF/tex/{latex,generic;}//
  TEXINPUTS.fontinst = .;$TEXMF/tex//;$TEXMF/fonts/afm//
  % e-TeX related files
  TEXINPUTS.elatex   = .;$TEXMF/{etex,tex}/{latex,generic;}//
  TEXINPUTS.etex     = .;$TEXMF/{etex,tex}/{eplain,plain,generic;}//

7.1.3 Expansion von Pfadkomponenten

Kpathsea verwendet in Suchpfaden ähnliche Zeichen und Konstrukte wie UNIX-Shells. Beispielsweise wird die Definition ~$USER/{foo,bar}//baz in alle Unterverzeichnisse von foo und bar unterhalb vom Home-Verzeichnis von $USER expandiert, die eine Datei oder ein Unterverzeichnis namens baz enthalten. Der Expansionsmechanismus wird im Folgenden erklärt.

7.1.4 Expansion der Voreinstellungen

Wenn der Suchpfad mit der höchsten Priorität (siehe hierzu »Bestandteile von Pfadkomponenten« auf Seite 54) einen zusätzlichen (vorangestellten, nachgestellten oder verdoppelten) Doppelpunkt enthält, wird an dieser Stelle der Suchpfad eingefügt, der als nächstes in der Hierarchie folgt. Auch bei diesem gilt dieselbe Regel. Wenn beispielsweise die Umgebungsvariable

> setenv TEXINPUTS /home/karl:

gesetzt wird (hier: C-Shell) und in texmf.cnf die Variable TEXINPUTS folgenden Wert erhält

  .:$TEXMF//tex

dann lautet der Suchpfad schließlich:

  /home/karl:.:$TEXMF//tex

Da es sinnlos wäre, denselben Pfad mehrfach einzufügen, wird die Ersetzung nur einmal vorgenommen, und zwar in der Reihenfolge vorne, hinten und Mitte. Mehrfach verdoppelte Doppelpunkte bleiben unverändert.

7.1.5 Expansion geschweifter Klammern

Die Expansion geschweifter Klammern ist zur Definition mehrerer TEX-Hierarchien sehr nützlich. Beispielsweise wird v{a,b}w zu vaw:vbw. Verschachtelungen sind dabei erlaubt. Diese Technik wird dazu benutzt, durch eine Zuweisung an $TEXMF verschiedene TEX-Hierarchien einzuführen. Als Beispiel finden Sie in texmf.cnf folgende Definition (etwas gekürzt, tatsächlich ist es etwas komplexer):

    TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN}

Eine Anwendung wie

    TEXINPUTS = .;$TEXMF/tex//

führt dann dazu, dass erst im aktuellen Verzeichnis gesucht wird, dann im gesamten Dateibaum $TEXMFHOME/tex und $TEXMFLOCAL/tex (auf der Festplatte) und schließlich im gesamten Dateibaum $TEXMFVAR/tex sowie $TEXMFMAIN/tex (nur in der Datenbank ls-R) durchsucht wird. Dadurch kann man bequem zwei parallel installierte TEX-Hierarchien durchsuchen, beispielsweise eine unveränderliche auf CD-ROM/DVD und eine dynamisch angepasste auf Festplatte, in der neue Programmversionen und zusätzliche Zeichensätze installiert werden. Durch die Verwendung der Variablen $TEXMF in allen Definitionen wird grundsätzlich zuerst der neuere Dateibaum durchsucht.

7.1.6 Expansion von Unterverzeichnissen

Zwei oder mehrere aufeinanderfolgende Schrägstriche (//) in einer Pfadkomponente, die auf einen Verzeichnisnamen d folgen, werden expandiert zu allen Unterverzeichnissen von d. Dieser Vorgang findet rekursiv statt, wobei erst alle Verzeichnisse auf einer Ebene bearbeitet werden, dann deren Unterverzeichnisse, usw. Auf den jeweiligen Ebenen ist nicht beeinflussbar, in welcher Reihenfolge die Unterverzeichnisse bearbeitet werden.

Wenn nach den Schrägstrichen Namen angegeben werden, dann werden nur Unterverzeichnisse mit passenden Namen in die Suche einbezogen. Beispielsweise wird »/a//b« in die Pfade /a/1/b, /a/2/b, /a/1/1/b usw. expandiert, aber nicht zu /a/b/c oder /a/1. (Jeweils vorausgesetzt, dass die Verzeichnisse existieren.)

Mehrere »//«-Konstruktionen innerhalb einer Pfadkomponente sind zulässig, allerdings nicht am Pfadanfang.

7.1.7 Liste der Sonderzeichen und ihre Bedeutung: eine Zusammenfassung

Die folgende Zusammenfassung fasst alle Sonderzeichen zusammen, die in den Kpathsea- Konfigurationsdateien auftreten können:

:
Trennzeichen für Pfadkomponenten; als erstes oder letztes Zeichen im Pfad bewirkt es die Expansion der Voreinstellungen.
;
Trennzeichen für Pfadkomponenten für andere Rechnerplattformen als UNIX (Verwendung wie »:«)
$
Expansion von Variableninhalten
~
Home-Verzeichnis eines Benutzers (Tilde)
{...}
Expansion geschweifter Klammern: beispielsweise wird a{1,2}b zu a1b:a2b.
//
Expansion von Unterverzeichnissen: tritt niemals am Anfang einer Pfadkomponente auf.
%
Kommentar
\
Konkatenation mit Folgezeile(n)
!!
Einschränkung der Suche ausschließlich auf die Dateinamen-Datenbank: Das Dateisystem wird nicht durchsucht!

7.2 Dateinamen-Datenbanken

Kpathsea unternimmt etliche Anstrengungen, um den Zugriff auf Festplatte und CD-ROM/DVD zur Suche nach Dateien zu reduzieren. Auf TEX-Systemen mit vielen Unterverzeichnissen kann die Suche in jedem möglichen Verzeichnis nach einer bestimmten Datei eine lange Zeit in Anspruch nehmen, besonders wenn einige Hundert Zeichensatzverzeichnisse durchforstet werden müssen. Um dieses Problem abzumildern, benutzt Kpathsea eine Art Datenbankdatei namens ls-R, die die Zuordnung von Dateinamen auf Verzeichnisse enthält. Dadurch muss nicht jedesmal die Festplatte durchsucht werden.

Eine zweite Datenbank in der Datei aliases kann eine Zuordnung zwischen den Namen in ls-R und weiteren Namen vornehmen und so beispielsweise hilfreich bei der Umsetzung von »8.3«-DOS-Dateinamen auf die »echten«, aussagekräftigen Dateinamen zur Seite stehen.

7.2.1 Die ls-R-Datenbank

Wie schon öfters erwähnt, muss die Dateinamen-Datenbank in der Datei ls-R gespeichert sein. Sie sollten eine solche Datenbank für jede TEX-Hierarchie (normalerweise in $TEXMF) Ihres Systems anlegen. Die meisten TEX-Systeme arbeiten nur mit einer Hierarchie. Kpathsea sucht die Datenbanken ls-R über den Pfad TEXMFDBS.

Es wird empfohlen, die Pflege der ls-R-Dateien dem mitgelieferten Skript mktexlsr zu überlassen. Dieses Skript wird automatisch von den verschiedenen »mktex*«-Skripten aufgerufen. Das Skript ruft grob gesagt den Befehl

cd /your/texmf/root && ls -LAR ./ >ls-R

auf, falls das Kommando ls Ihres Rechners eine Ausgabe im richtigen Format liefert. (So wie das GNU-ls.) Wenn Sie ganz sichergehen wollen, dass die Datenbank immer auf dem neuesten Stand ist, sollten Sie sie in regelmäßigen Abständen mit Hilfe eines crontab-Eintrags aktualisieren lassen. Dadurch wird nach einer Installation eines Pakets per Hand trotzdem sichergestellt, dass die Datenbank aktuell ist.

Wenn eine Datei nicht über die Datenbank gefunden wird, sucht Kpathsea normalerweise auf der Festplatte weiter. Wenn eine Pfadkomponente mit »!!« beginnt, wird dagegen niemals die Festplatte durchsucht.

7.2.2 kpsewhich: Dateisuche

Mit dem Programm kpsewhich können Sie unabhängig vom Aufruf irgendeines TEX-Programms nach Dateien in der TEX-Hierarchie suchen (als schnellere Alternative zu dem Befehl find). Dies wird von den verschiedenen »mktex...«-Skripten bis zum Exzess vorexerziert.

> kpsewhich option... filename...

Die Optionen werden entweder mit »-« oder mit »--« eingeleitet. Jede eindeutige Abkürzung ist zulässig.

Argumente der Kommandozeile, die keine Optionen darstellen, werden als Dateinamen interpretiert. Für jeden Dateinamen wird der erste passende Pfad gemeldet. Um eine Liste aller passenden Pfade zu erhalten, müssen Sie das UNIX-Kommando find aufrufen.

Im Folgenden werden die wichtigen Optionen beschrieben.

--dpi=num

Stellt die Auflösung für die Suche nach Zeichensätzen (nur .gf oder .pk) auf num dpi. Alternativ kann die Option -D (kommt von dvips) benutzt werden. Voreinstellung ist 600.
--format=name

Setzt das Format zur Suche auf name. Per Voreinstellung versucht kpsewhich das Format über den Dateinamen zu erschließen. Bei Formaten ohne zugeordnete Namensendung wie den zu METAPOST gehörenden Dateien und den Konfigurationsdateien zu dvips müssen Sie den entsprechenden Namen so eingeben, wie er Kpathsea bekannt ist.
--mode=string

Setzt für die Zeichensatzsuche den Generierungsmodus (betrifft nur .gf- oder .pk-Dateien). Normalerweise werden alle Zeichensätze gemeldet.
--must-exist

Es wird versucht, die Dateien notfalls durch eine Suche auf der Festplatte zu finden. Normalerweise wird nur die ls-R-Datenbank konsultiert.
--path=string

Sucht entlang des angegebenen Pfads statt des Standardpfads, der auf Grund der Endung gewählt wird. Alle Expansionen sind zulässig. Bei Verwendung der Option --path darf nicht die Option --format angegeben werden.
--progname=name

Setzt den Programmnamen für die genauere Variablenspezifikation über ».Programmname«. Voreinstellung ist »kpsewhich«.
--show-path=name

Zeigt den Suchpfad für die angegebene Namensendung. Diese kann entweder als Namensendung (».pk«, ».vf«, usw.) oder als Name (wie bei der Option --format) spezifiziert werden.
--debug=num

Legt den Umfang für die Fehlersuche fest.

7.2.3 Anwendungsbeispiele

Wir schauen uns nun die Funktionsweise von Kpathsea anhand einiger Beispiele an.

> kpsewhich article.cls
   /usr/local/texmf-dist/tex/latex/base/article.cls

Wir suchen unter den TEX-Quelldateien nach der Datei article.cls. Da die Namensendung ».cls« eindeutig ist, müssen wir den Typ ».tex« nicht angeben. Die »texmf-dist«-Hierarchie enthält die Datei im Unterverzeichnis tex/latex/base. Ähnlich bereiten die folgenden Beispiele auf Grund eindeutiger Namensendungen keine Probleme.

> kpsewhich array.sty
   /usr/local/texmf-dist/tex/latex/tools/array.sty
> kpsewhich latin1.def
   /usr/local/texmf-dist/tex/latex/base/latin1.def
> kpsewhich size10.clo
   /usr/local/texmf-dist/tex/latex/base/size10.clo
> kpsewhich small2e.tex
   /usr/local/texmf-dist/tex/latex/base/small2e.tex
> kpsewhich tugboat.bib
   /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib

Beim letzten Beispiel handelt es sich um eine BibTeX-Literaturdatenbank für TUGBoat-Artikel.

> kpsewhich cmr10.pk

Zeichensatzdateien mit der Namensendung ».pk« werden von Anzeige- oder Druckaufbereitungsprogrammen wie dvips und xdvi verwendet. Nachdem wir aufgrund der Voreinstellung keine .pk-Dateien verwenden, sondern die PostScript-Type-1-Zeichensätze, die auf der CD-ROM/DVD enthalten sind, wird auch keine .pk-Datei angezeigt.

> kpsewhich wsuipa10.pk
   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk

Für diesen Zeichensatz (Teil der IPA-Fonts9 von der Universität von Washington) liegen noch keine Type-1-Umsetzungen vor und ».pk«-Dateien müssen generiert werden. Da unser voreingestellter Metafont-Modus »ljfour« eine Auflösung von 600 dpi besitzt, finden wir (nachdem er schon einmal gebraucht und automatisch erzeugt wurde) eine entsprechende Instanz dieses Zeichensatzes.

> kpsewhich -dpi=300 wsuipa10.pk

Durch die Angabe »-dpi=300« interessieren wir uns nur für Zeichensätze mit der Auflösung 300 dpi. Es wurde keiner gefunden. Programme wie dvips oder xdvi lassen einen solchen fehlenden Zeichensatz durch den Aufruf des Skripts mktexpk mit entsprechenden Parametern automatisch erzeugen.

Als nächstes wenden wir uns den Header- und Konfigurationsdateien von dvips zu. Zunächst suchen wir nach der Konfiguration für die TEX-Unterstützung, dem Prolog tex.pro. Danach suchen wir die allgemeine Konfigurationsdatei (config.ps) und schließlich die PostScript-Zeichensatzzuordnungsdatei psfonts.map. Dateien dieser Art haben seit der 2004er-Version der TEX Live ihre eigenen Suchpfade und einen neuen Aufbewahrungsort im texmf-Baum. Da die Namensendung ».ps« nicht eindeutig ist, müssen wir den gewünschten Typ (»dvips config«) für die Datei config.ps spezifizieren.

> kpsewhich tex.pro
   /usr/local/texmf/dvips/base/tex.pro
> kpsewhich --format="dvips config" config.ps
   /usr/local/texmf/dvips/config/config.ps
> kpsewhich psfonts.map
   /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map

Jetzt suchen wir nach den Dateien für den PostScript-Zeichensatz »URW Times«. Nach dem Namensschema von Karl Berry beginnen die Namen mit »utm«. Zunächst suchen wir die Konfigurationsdatei, die den Namen der Zeichensatzzuordnungsdatei enthält.

> kpsewhich --format="dvips config" config.utm
   /usr/local/texmf-dist/dvips/psnfss/config.utm

Diese Datei enthält folgende Anweisung:

   p +utm.map

Die angegebene Datei utm.map wollen wir als nächstes suchen:

> kpsewhich utm.map
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map

Diese Zuordnungsdatei wird im Unterverzeichnis urw bei den Hilfsdateien für dvips gefunden. Sie enthält die Dateinamen der Type-1-PostScript-Zeichensätze, die für URW Times benutzt werden. Ein kleiner Auszug aus dieser Datei:

  utmb8r  NimbusRomNo9L-Medi    ... <utmb8a.pfb
  utmbi8r NimbusRomNo9L-MediItal... <utmbi8a.pfb
  utmr8r  NimbusRomNo9L-Regu    ... <utmr8a.pfb
  utmri8r NimbusRomNo9L-ReguItal... <utmri8a.pfb
  utmbo8r NimbusRomNo9L-Medi    ... <utmb8a.pfb
  utmro8r NimbusRomNo9L-Regu    ... <utmr8a.pfb

Wenn wir jetzt beispielsweise nach dem Zeichensatz Times Regular (utmr8a.pfb) suchen, finden wir ihn im Verzeichnis texmf unter den Type-1-Zeichensätzen:

> kpsewhich utmr8a.pfb
   /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb

Diese Beispiele sollten deutlich gemacht haben, wie leicht bestimmte Dateien im TEX-Dateibaum gefunden werden können. Dies ist sehr wichtig, wenn Sie den Verdacht haben, dass eine falsche Version einer Datei verwendet wird: Sie lassen sich einfach die verwendete Datei von kpsewhich anzeigen.

7.2.4 Fehlersuche

Manchmal ist wichtig, bis ins Detail nachzuvollziehen, wie ein Programm eine bestimmte Datei findet. Zu diesem Zweck bietet die Kpathsea-Bibliothek verschiedene Stufen für den Umfang der Fehlersuche an.

Durch die Angabe von »-1« setzen Sie alle Stufen gleichzeitig. Für eine effiziente Fehlersuche sollten Sie sich auf die wichtigsten Ausgaben beschränken.

Für dvips gibt es einen ähnlichen Mechanismus zur Erzeugung von Analysemeldungen, um herauszufinden, warum bestimmte Dateien geöffnet wurden bzw. wo vielleicht das Problem liegt, wenn Dateien nicht gefunden werden.

Da fast alle Programme die Kpathsea-Bibliothek benutzen, können Sie die gewünschte Stufe auch über die Umgebungsvariable KPATHSEA_DEBUG einstellen, indem Sie einen der Werte oder eine additive Kombination spezifizieren.

Anmerkung für Windows-Benutzer: Es ist nicht einfach, alle Meldungen in eine Datei umzulenken. Für die Fehlersuche jedoch ist die folgende (temporäre!) Vereinbarung sinnvoll:

SET KPATHSEA_DEBUG_OUTPUT=err.log

Wir betrachten als Beispiel eine kleine LATEX-Quelldatei mit dem Namen hello-world.tex mit folgendem Inhalt:

    \documentclass{article}
    \begin{document}
    Hello World!
    \end{document}

Diese Datei verwendet nur einen Zeichensatz, nämlich cmr10. Wir sehen uns jetzt einmal genau an, wie dvips die PostScript-Datei erzeugt. Da wir die Type-1-Variante der Computer-Modern-Roman-Zeichensätze verwenden wollen, haben wir die Option -Pcms verwendet.

> dvips -d4100 hello-world -Pcms -o

Hier haben wir als Stufe zur Fehlersuche eine Kombination der Stufe 4 von dvips (siehe dvips-Handbuch, texmf/doc/html/dvips/dvips_toc.html?). Die Ausgabe sieht ungefähr so wie in Abbildung 1 dargestellt aus (die Ausgabe wurde für einen besseren Überblick etwas umgestaltet).


debug:start search(file=texmf.cnf, must_exist=1, find_all=1,
  path=.:/usr/local/bin/texlive:/usr/local/bin:
       /usr/local/bin/texmf/web2c:/usr/local:
       /usr/local/texmf/web2c:/.:/./teTeX/TeX/texmf/web2c:).
kdebug:start search(file=ls-R, must_exist=1, find_all=1,
  path=~/tex:/usr/local/texmf).
kdebug:search(ls-R) =>/usr/local/texmf/ls-R
kdebug:start search(file=aliases, must_exist=1, find_all=1,
  path=~/tex:/usr/local/texmf).
kdebug:search(aliases) => /usr/local/texmf/aliases
kdebug:start search(file=config.ps, must_exist=0, find_all=0,
  path=.:~/tex:!!/usr/local/texmf/dvips//).
kdebug:search(config.ps) => /usr/local/texmf/dvips/config/config.ps
kdebug:start search(file=/root/.dvipsrc, must_exist=0, find_all=0,
  path=.:~/tex:!!/usr/local/texmf/dvips//).
search(file=/home/goossens/.dvipsrc, must_exist=1, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search($HOME/.dvipsrc) =>
kdebug:start search(file=config.cms, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search(config.cms)
=>/usr/local/texmf/dvips/cms/config.cms
Abbildung 1: Suche nach Konfigurationsdateien
kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro
Abbildung 2: Suche nach Prologdateien
kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0,
  path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
       /var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0,
   ...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]
Abbildung 3: Suche nach Font-Dateien

Zunächst sucht dvips (bzw. Kpathsea) seine Konfigurationsdateien, nämlich texmf.cnf (das die Pfade der anderen Dateien enthält), dann die Dateinamen-Datenbank ls-R (zur Optimierung der Suche) und die Datei aliases, mit deren Hilfe für eine Datei mehrere Namen vereinbart werden können, z. B. um die kurzen »8.3«-DOS-Namen mit aussagefähigen, langen Namen zu assoziieren. Danach wird die allgemeine dvips-Konfigurationsdatei config.ps, anschließend die benutzerspezifische Konfigurationsdatei .dvipsrc (wird hier nicht gefunden) gesucht. Als letztes sucht dvips die Zuordnungsdatei für Computer-Modern-PostScript-Zeichensätze config.cms (bedingt durch die Option -Pcms beim Aufruf von dvips). Diese Datei enthält die Dateinamen der Listen, die die Zuordnung zwischen Dateinamen und Zeichensatznamen herstellen.

> more /usr/local/texmf/dvips/cms/config.cms
   p +ams.map
   p +cms.map
   p +cmbkm.map
   p +amsbkm.map

dvips versucht, diese Dateien und zusätzlich die allgemeine Zeichensatzzuordnungstabelle psfonts.map zu laden, die immer konsultiert wird; der letzte Teil von Abschnitt 7.2.3 erklärt diese Tabellen genauer.

Jetzt erfolgt die normale Startmeldung von dvips:


dvips(k) 5.94a
kpathsea version
Copyright (C) 2003 Radical Eye Software.
...
Danach wird nach texc.pro gesucht:


kdebug:start search(file=texc.pro, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro
Dann gibt dvips Datum und Uhrzeit aus und meldet den Dateinamen der erzeugten PostScript-Datei hello-world.ps. Jetzt wird die Zeichensatzdatei cmr10 benötigt, die dvips als »resident« meldet.


TeX output 1998.02.26:1204’ -> hello-world.ps
Defining font () cmr10 at 10.0pt
Font cmr10 <CMR10> is resident.

Es geht weiter mit cmr10.tfm und einigen weiteren Prologdateien, deren Ausgaben wir hier weglassen. Letztlich wird die Type-1-Zeichensatzdatei cmr10.pfb gesucht (und gefunden) und in die Ausgabedatei integriert (siehe letzte Zeile).


kdebug:start search(file=cmr10.tfm, must_exist=1, find_all=0,
  path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
       /var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must_exist=0, find_all=0,
   ...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]

7.3 Einstellungen zur Laufzeit

Zu den willkommenen Erweiterungen von Web2C zählt die Möglichkeit, zur Laufzeit einige Speichergrößen über die Datei texmf.cnf anpassen zu können (insbesondere die Größe einiger Stacks). Eine ausführliche Liste der veränderbaren Parameter finden Sie in der Datei texmf.cnf. Die wichtigsten Werte sind:

main_memory

Arbeitsspeicher für TEX, Metafont und METAPOST in Worten: Für jede Einstellung muss eine eigene Format-Datei erstellt werden. Allerdings können Sie mehrere Versionen von TEX unter verschiedenen Namen erzeugen und in der Konfigurationsdatei jeweils eigene Einträge vorsehen. Hier gibt es ein Monster-TEX namens »hugetex« mit der zugehörigen Format-Datei hugetex.fmt, wobei der spezielle Wert der Variablen main_memory dann aus der Datei texmf.cnf gelesen wird.
extra_mem_bot

Extraspeicher für »große« TEX-Datenstrukturen wie Boxen, Glue, Breakpoints, usw.: Besonders bei Anwendung von PI CTEX sollte dieser Wert erhöht werden.
font_mem_size

Anzahl der Worte für Speicherung von Zeichensatzinformationen: Entspricht ungefähr dem Speicherbedarf der gelesenen TFM-Dateien.
hash_extra

Zusätzlicher Platz für Suchlisten: In der Hauptliste können ca. 10000 Einträge verwaltet werden. Bei einem Buch mit vielen Querverweisen reicht dieser Platz unter Umständen nicht aus. Die Voreinstellung für hash_extra ist 50000.

Natürlich sind diese Parameter kein Ersatz für eine wirklich dynamische Speicherverwaltung. Mit der gegenwärtigen Version von TEX ist dieses Konzept aber nur extrem schwer zu implementieren; darum stellt dieses Verfahren eine praktikable Lösung dar.

8 Danksagungen

Die TEX Live ist eine gemeinsame Arbeit faktisch aller TEX Users Groups.

Die Entwicklung des vorliegende TEX Live-Releases wurde von Sebastian Rahtz und Karl Berry geleitet; die übrigen Haupt-Mitarbeiter sind im Folgenden aufgelistet.

Lauffähige Programme:

Dokumentation und Anpassung der Übersetzungen:

Natürlich haben wir am meisten Donald Knuth zu danken, einmal dafür, dass er TEX erfand und dann dafür, dass er es der Welt schenkte.

9 Geschichtliches

Diese Ausgabe der TEX Live ist in Zusammenarbeit der TEX Users Group (TUG), der UKTEX Users Group, der französischen TEX-Vereinigung GUTenberg und der deutschsprachigen TEX-Anwendervereinigung (DANTE e. V.) unter Mithilfe der niederländischen, tschechischen/ slowakischen, indischen, polnischen und russischen TEX-Benutzergruppen entstanden.

9.1 Vergangenheit

Die niederländische TEX-Benutzergruppe hatte Ende 1993 mit der Produktion der 4AllTEX-CD-ROM für MS-DOS die Diskussion angeregt, eine einzige CD-ROM für alle Rechnersysteme zu entwickeln. Zum damaligen Zeitpunkt war dieses Ziel zu hoch gesteckt, doch immerhin entstand aus dieser Diskussion nicht nur die sehr erfolgreiche 4AllTEX-CD-ROM, sondern auch die TUG-Arbeitsgruppe zur Definition der TEX Directory Structure TDS, die die zur Arbeit mit TEX notwendigen und hilfreichen Dateien in eine konsistente und handhabbare Verzeichnisstruktur einbettet. Das »Final Draft«-Dokument, das diese Verzeichnisstruktur festlegt, wurde in der Dezember-Ausgabe 1995 der TUGBoat veröffentlicht. Schon frühzeitig war den Beteiligten klar, dass eine CD-ROM auf der Basis der TDS sehr zu begrüßen wäre. Die TEX Live-CD-ROM war das direkte Resultat der Beratungen der TDS-Arbeitsgruppe. Außerdem hat der Erfolg der 4AllTEX-CD-ROM klargemacht, dass ein ähnliches System auch für UNIX-Benutzer eine Erleichterung darstellen würde. Dies war der zweite Beweggrund für die TEX Live-CD-ROM.

Im Herbst 1995 wurde das Projekt, eine TDS-basierte UNIX-CD-ROM zu entwickeln, in Angriff genommen. Sehr schnell stießen die Verantwortlichen auf das teTEX-System von Thomas Esser als idealen Ausgangspunkt für diese Arbeit, weil es verschiedene Rechnerplattformen unterstützte und für die Arbeit mit verschiedenen Dateisystemen vorgesehen war. Anfang 1996 wurde in Zusammenarbeit mit Thomas Esser ernsthaft mit der Arbeit begonnen und im Mai 1996 die erste Ausgabe der CD-ROM veröffentlicht.

Anfang 1997 stellte Karl Berry eine neue Version seines Web2C-TEX-Systems vor, das schon nahezu alle Ausstattungsmerkmale aufwies, die Thomas Esser mit teTEX verwirklicht hatte. Die TUG entschied sich daraufhin, die zweite Version der CD-ROM auf der Basis von Web2C unter Verwendung des Installations-Skripts texconfig aus dem teTEX-Paket zu entwickeln.

Die dritte Ausgabe basierte auf der inzwischen von Olaf Weber gepflegten und weiter entwickelten Web2C Version 7.2; TEX Live unterstützte fast alle Eigenschaften der zur selben Zeit entstandenen neuen Version von teTEX.

Die vierte Ausgabe folgte demselben Schema, indem ihr neue Versionen von teTEX und Web2C (7.5) zugrunde lagen. Fast die gesamte CD-ROM wurde einer kritischen Überprüfung unterzogen, wobei besonders darauf geachtet wurde, dass doppelte Dateien entfernt wurden und die Einordnung der Pakete konsistent erfolgte. Zudem enthielt diese Ausgabe ein komplettes Windows-Setup.

Für die fünfte Ausgabe im März 2000 wurden wiederum große Teile der CD-ROM ersetzt, wobei Hunderte von überarbeiteten Paketen aufgenommen wurden. Omega, pdfTEX und Teile der TEX-Support-Programme (hier insbesondere xdvi, dvips und tex4ht) lagen in neuer Version vor. Die Hauptänderung bei der TEX Live 5 betraf die »non-free«-Software. Alles auf dieser CD-ROM war nun in Übereinstimmung mit den Debian Free Software Guidelines (http://www.debian.org/intro/free). Wir haben unser Bestes versucht, die Lizenzbedingungen aller Pakete zu überprüfen, sind aber dankbar, wenn wir auf Fehler hingewiesen werden.

Die sechste Ausgabe der TEX Live vom Juli/August 2001 enthielt die neuesten Versionen aller Pakete und Programme. Das neue Installationskonzept stellte die größte Änderung dar: Der Benutzer konnte nun viel genauer gewünschte bzw. nicht erwünschte Sammlungen und Pakete auswählen. Dabei wurden die sprachspezifischen Sammlungen komplett überarbeitet, so dass sie jetzt automatisch nicht nur Makros, Fonts usw. installierten, sondern zusätzlich die notwendigen Einträge in language.dat vornahmen.

Die siebte Ausgabe vom Mai 2002 enthält als größte Änderungen Mac OS X und wieder unzählige Updates aller Pakete und Programme. Ein wesentliches Ziel war zudem die Wiedererstellung einer gemeinsamen Quelle mit teTEX, um das Auseinanderlaufen seit TEX Live 5 und TEX Live 6 zu korrigieren.

9.2 2003

Im Jahr 2003 war die Flut von Updates und neuen Paketen so groß geworden, dass wir feststellen mussten: »TEX Live passt nicht mehr auf eine einzelne CD-ROM «. Und so wurde sie in drei verschiedene Distributionen aufgeteilt (siehe Abschnitt 2.1 auf Seite 9). Des Weiteren:

9.3 2004

9.4 Gegenwart

Im Jahr 2005 gab es – wie üblich – viele aktualisierte Pakete und Programme. Die Struktur des Systems blieb weitgehend gleich, mit folgenden Ausnahmen:

9.5 Zukunft

TEXLive ist nicht perfekt! – und wird es auch nie sein. Wir planen im Abstand von jeweils einem Jahr Neuauflagen zu produzieren, die umfangreichere Hilfstexte, mehr Hilfsprogramme, mehr Installationshilfen und (natürlich) den ständig verbesserten und überprüften Satz der Makros und Zeichensätze enthalten. Diese Arbeit wird von Freiwilligen in ihrer knappen Freizeit geleistet. Viel Arbeit steht noch an. Wenn Sie uns helfen können, zögern Sie keine Sekunde, sich bei uns zu melden.

Verbesserungen, Anregungen und Erweiterungen für künftige Ausgaben der TEX Collection senden Sie bitte an:

Sebastian Rahtz
7 Stratfield Road
Oxford OX2 7BG
United Kingdom
E-Mail: tex-live@tug.org
http://tug.org/texlive/

Neue Versionen, Anmerkungen und zusätzliches Material werden über die CTAN-Server im Verzeichnis info/texlive zur Verfügung gestellt. Im WWW können Sie sich über die Adresse http://www.tug.org/tex-live/ informieren und die Bestellformalitäten einsehen.

1
Anmerkung: Die Voreinstellung für das Papierformat im TEX Live-System ist a4.

2
GUI: Graphical User Interface; Graphische Benutzeroberfläche

3
Die Festlegung »nicht frei« folgt den Richtlinien für »freie Software«. Es heißt nicht, dass Sie die Software nicht auch kostenlos bekommen können.

4
Die Headerfiles der Microsoft-SDK enthalten rund 12 000 Funktionen!

5
Dies kann je nach Version des Betriebssystems unterschiedlich sein. In der deutschsprachigen Version von Windows heißt diese Programmgruppe meistens »Zubehör«.

6
Was auch erklärt, warum es unwahr ist, ihn unter Windows NT als DOS-Box zu bezeichnen.

7
Unter NTFS kann dies bis auf 512 Byte gesenkt werden.

8
Ok, Windows NT/Windows XP und Windows 2000 haben dazu gelernt. Der angegebene Trick funktioniert aber für alle Systeme!

9
IPA: International Phonetic Alphabet

10
LPPL: LaTeX Project Public License