[linux-l] Neues Projekt: Texpipeline

Volker Grabsch vog at notjusthosting.com
Mi Dez 26 04:48:19 CET 2007


Liebe Gruppe,

ich möchte euch mein neustes Projekt vorstellen, das ich diese
Nacht aus dem Boden gestanzt habe. Es ist ein Shell-Script, das
einem die nervigen (La)TeX-Eigenheiten vom Leibe hält:

    http://www.profv.de/texpipeline/

Für Programme, die Druck-Ausgaben erzeugen, ist LaTeX ist eine
hervorragende Alternative zu den PDF-Libraries und der
Generierung von OpenDocument.

Leider ist die Bedienung von LaTeX ist eine Qual. Für Menschen
gerade noch erträglich, aber für Programmierer ein nerviger
Prozess: Praktisch alle LaTeX-Aufrufer (z.B. die DokuWiki/MediaWiki-
Plugins für TeX-Formeln, oder die xmlto-Werkzeuge der Docbook-
Konvertierer) erzeugen sich erstmal ein temporäres Verzeichnis,
legen dort ihre Dateien ab, lassen latex ein- oder mehrmals
drüberlaufen, und haben einiges damit zu tun, eine saubere
Fehlerbehandlung hinzukriegen.

Warum kann das nicht so einfach sein wie andere Konvertierer?
Nehmen wir netpbm: Nehme JPEG von stdin, schreibe PPM nach stdout
... durch Pipes bequem kombinierbar. Oder auch libxml2/xsltproc.
Oder, ganz klassisch: grep, sed, cut, tr & Co. Ein großer Teil
der Unix-Werkzeuge ist auf diese Weise aufgebaut. Aber nicht TeX!
Und so hat jedes Programm, das mit (La)TeX arbeitet, immer wieder
das selbe Problem zu lösen. Auch meine Programme.

Da wurde es dringend Zeit, diesen Krempel auszulagern in ein
separates Tool. Die Schnittstelle ist so einfach, wie es nur
geht: (La)TeX-Code von stdin, DVI oder PDF nach stdout. Kommando-
zeilenargumente werden direkt an 'latex' (bzw. tex, pdflatex, pdftex)
durchgereicht, sodass man nach wie vor Feinheiten regeln kann, falls
nötig.

Es hat leider nicht die Qualität von latex-mk, dem Universal-
Makefile für LaTeX-Dokumente. Insbesondere hat es keine BibTeX-
Unterstützung und ähnliches. Aber für typische automatisch
generierte Dokumente, die mit '\includegraphics' ein paar
Grafiken einbinden, läuft es einwandtfrei.

Ich wünsche denen, die es ausprobieren wollen, viel Spaß damit!


Gruß,

    Volker

-- 
Volker Grabsch
---<<(())>>---
Administrator
NotJustHosting GbR



Mehr Informationen über die Mailingliste linux-l