GNU TeXinfo goes WWW
/cgi/gnuinfo ist ein Konverter, der die GNU TeXinfo
Dokumentation ins HTML-Format konvertiert und im World Wide Web
zur Verfügung stellt.
gnuinfo bemüht sich, den Text weitgehend als Fließtext zu
übermitteln, so dass sich der Text der Fensterbreite
anpasst. gnuinfo erkennt Überschriften und verschiedene Listen
und fügt (meist) die passenden HTML-Tags ein. Was er nicht kann sind
verschachtelte Listen. Alles was gnuinfo nicht zuordnen kann,
wird mit <pre>...</pre> eingerahmt. Das sind
meist solche Dinge wie ein Stück C-Code / Shell-Script /
Konfigurations-File / wasauchimmer (wo es ja auch vernuenftig
ist). Aber auch normaler, eingerueckter Text wird so dargestellt, was daran
liegt, das er kaum von Beispiellistings zu unterscheiden ist (Zumindest im
info-file. Wenn man die texinfo-sources hat ist es kein Problem. Allerdings
sind dir texinfo-sourcen für 'on-the-fly'-Konvertierung nicht geeignet).
gnuinfo ist komplett in C geschrieben, und deshalb recht fix.
Er kennt gzip und benutzt es zum Dekomprimieren von Info-files,
falls diese komprimiert vorliegen.
Achja: gnuinfo unterliegt der
GPL, und
hier
sind die Quellen.
ChangeLog
Version 1.1
- gnuinfo kann jetzt mit mehr als einem Directory umgehen.
- gnuinfo benutzt INFOPATH. Wenn die INFOPATH-Variable nicht
gesetzt ist, wird wie bisher der eincompilierte Pfad genommen.
- Netscape 2.0 zur Liste der tabellenfähigen Browser dazugenommen.
Version 1.2
- Die Unterscheidung tabellenfaehig/nicht tabellenfähig ist deaktiviert.
Ist zwar für den Hausgebrauch ganz nett, aber etwas ungünstig bei cachebaren
Dokumenten, wo das dann nicht mehr funktioniert...
Wer es trotzdem haben will muß der das return in
check_table rauswerfen.
- Fehler tauchen jetzt auch im Error-Log auf.
Version 1.3
- Die Unterscheidung tabellenfaehig/nicht tabellenfähig ist
jetzt komplett rausgeworfen. Statt dessen wird immer mit Tabellen
gearbeitet, die an passenden Stellen ein paar Leerzeichen und
<br>-Tags drin haben, damit die Seiten auch auf nicht
tabellenfähigen Browsern brauchbar sind.
- Spinner workaround: Slash am Ende vom Node-namen wird weggeworfen.
- Node-suchen ist nicht mehr case-sensitiv. (Vermeidet Probleme mit
Top/top)
Gerd Knorr <kraxel@cs.tu-berlin.de>