Vorwort
Das Skript prüft, wie oft eine LaTeX-Datei übersetzt werden muss um alle Indizes, Literaturverweise etc. korrekt sind. Alle Bildschirmnachrichten werden unterdrückt, am Programmende wird eine Übersicht ausgegeben.
Ähnliche Programme für das selbe Problem sind:
Ich schrieb dieses Skript als unterstützendes Tool für mein Ruby-Script docgenerator. Ziele waren insbesonders:
- Das Programm soll in Ruby sein
- Das Programm unterstützt rail
- Packete wie index.sty, gloss.sty, glossaries, splitindex… werden unterstützt.
- Eine kompakte Fehlerübersicht wird erstellt.
- Während dem Übersetzungslauf kommen nur die wichtigsten Meldungen.
Benutzerschnittstelle
Aufruf
runtex.rb [Schalter] Quelldatei[.tex]
Danach übernimmt runtex die Kontrolle und startet:
- (pdf)LaTeX
-
Falls notwendig:
- makeindex (mehrmals falls mehrere Aufrufe notwendig (splitindex, glossaries…))
- BibTeX (ebenfalls mehrmals falls nötig)
- rail falls nötig
- …
- Falls notwendig: Ein erneuter Durchlauf
- Log-und Hilfsdateien werden je Durchlauf in einem Zip-File gespeichert.
- Am Ende wird eine Fehler- und Warnungsübersicht zusammengestellt
- Alle Log- und Hilfdateien werden in einem Zipfile gesichert und gelöscht.
- Beim nächsten runtex-Lauf werden die gesicherten Hilfdateien wieder entpackt und stehen für den nächten TeX-Lauf bereit.
Optionen
- -h
- Eine Hilfe Ausgeben
- -a
- Die Aktion, definiert das TeX-Format (pdflatex, latex, xelatex...
- -o
- Grenze für Warnmeldung von "overfull boxe" setzen.
- -u
- Grenze für Warnmeldung von "underfull boxes" setzen.
- -w
- Warte nach Beendigung des Skripts. (kann helfen, falls das Skript von anderen Programmen gerufen wird.)
Unterstützte Programme und Pakete
Unterstützte Programme
Folgende Programme sind unterstützt:
- bibTeX
- makeindex
- splitindex
- rail
Die Programme werden gerufen, sofern die TeX-Datei es erfordert.
Unterstützung von Paketen
Manche TeX-Styles erfordern mehrfache Aufrufe der Programme.
Die folgenden Pakete werden unterstützt:
splitindex.sty
gloss.sty: Glossare
Gloss.sty ist unterstützt, für jeden Glossar wird bibtex gerufen.
Rail.sty: Rail-Diagramme
Rail ist ein Tool zum erzeugen von „Rail“-Diagrammen (eine grafische Darstellung von EBNF). Es erfordert einen Aufruf des Programmes rail.exe.
Die folgenden Pakete sind zwar (noch) unterstütz, ich rate aber von deren Verwendung ab.
index.sty: Verschiedene Indizes
index.sty selbst ist nicht unterstützt. Ich habe eine korrigierte Version erstellt, die unterstützt wird. Die Änderungen sind:
- index.sty erfordert article oder eine Klasse \chapter definiert. index2.sty erlaubt die Verwendung aller article- und book-artigen Klassen (z.Bsp. scrartcl.cls)
- Quell und Zieldatei jedes Index werden protokolliert. Somit ist runtex.rb in der Lage makeindex korrekt zu rufen.
Tipp: Statt index.sty empfehle ich splitindex.
Bisher noch nicht unterstützt
Bisher noch nicht unterstützt werden:
Source und Programm
Das Skript liegt als Ruby-gem und für Windows-Nutzer, die kein Ruby installieren wollen (ihr verpasst was!) als exe-Datei vor.
Verfügbar ist das ganze bei
- Rubyforge
- Die Dokumentation ist unter http://runtex.rubyforge.org/ verfügbar.
- CTAN (demnächst)
Weitere Planung
- Speziell für Windows: Gui-Version
- Log-Auswertung für die gerufenen Programme
- Ketten mit LaTeX, dvi2ps, ps2pdf... (Evtl. besser mit rake zu lösen).
Verworfene Ideen:
- runtex umtaufen in walktex. Manchmal kann von Rennen wirklich keine Rede sein.