[image of a Brave GNU World]
Brave GNU World - Ausgabe 45
Copyright © 2002 Georg C. F. Greve <greve@gnu.org>
Permission statement below.

[DE | EN | FR | IT | JA | KO |

Willkommen zu einer weiteren Ausgabe der Brave GNU World. Da Textverarbeitung wohl zu den gebräuchlichsten Anforderungen der meisten Nutzer gehört, wurde das folgende Projekt an den Anfang gestellt mit der Hoffnung, auch "Einsteigern" neue Perspektiven zu vermitteln.

preview-latex - Der Einstieg

Die Geschichte von TeX und damit auch LaTeX [5] geht auf keinen Geringeren zurück als Donald E. Knuth, unbestritten einer der wichtigsten Köpfe der Informatik. Aufgrund seiner Eigenschaften hat sich LaTeX gerade im wissenschaftlichen Bereich und bei sehr eng mit Computern befassten Menschen im Laufe der Jahre als die favorisierte Lösung etabliert.

Eine große Stärke von LaTeX liegt darin, einem Autor die Konzentration auf den Inhalt zu ermöglichen, ohne sich bei jedem Wort Gedanken über Details der Darstellung machen zu müssen. Doch auch im Bereich des Setzens mathematischer Formeln beliebiger Komplexität ist LaTeX bislang unübertroffen.

Erreicht wird dies dadurch, daß LaTeX eine Art von "Programmiersprache für Dokumente" zur Verfügung stellt, in der die Texte geschrieben werden.

Gerade für mit dem Computer nicht so vertraute Menschen stellt dies zum Teil jedoch ein erhebliches Hindernis dar, weshalb sich hier sogenannte WYSIWYG ("What You See Is What You Get") Programme durchgesetzt haben, die zudem Vorteile bei stark grafisch orientierten Dokumenten bieten. Alle heute gebräuchlichen Office-Pakete arbeiten nach diesem Prinzip.

Um diese beiden Paradigmen miteinander zu vereinen und die Vorteile beider Welten zu genießen, bieten einige Programme WYSIWYG Eingabe auf LaTeX Basis an. Beispiele sind LyX [6] oder der in Ausgabe 30 der Brave GNU World [7] vorgestellte TeXmacs [8].

Hier wird aber ähnlich wie bei herkömmlichen Office Paketen eine weitere Schicht zwischen Nutzer und LaTeX-Dokument eingeführt, die den Zugriff auf einige LaTeX Funktionen erschwert oder sogar unmöglich macht. Außerdem bedingt dies häufig ein weiteres Zwischenformat, was die langfristige Pflege des Dokuments erschwert.

Und nebenbei geht häufig ein weiterer Vorteil von LaTeX verloren, der dem WYSIWYG Paradigma widerspricht. Denn durch den Ansatz als Programmiersprache können in LaTeX-Dokumente Notizen, Anmerkungen, Kommentare u.Ä. eingefügt werden, die in der Ausgabe unsichtbar sind, jedoch bei Weiterentwicklung und Pflege enorm hilfreich sein können.

preview-latex - Das Projekt

Um aber nun Einsteigern und Profis das Leben mit LaTeX zu erleichtern ohne dabei auf die Vorteile von LaTeX verzichten zu müssen, hat David Kastrup das preview-latex [9] Projekt gestartet.

preview-latex ist ein Paket für die Editoren GNU Emacs und Xemacs, mit dem WYSIWYG-Feedback in deren AUC-TeX Umgebung eingebettet werden kann.

Da der Großteil der Arbeit an Dokumenten noch immer das Schreiben ist, steht so mit dem Emacs ein sehr mächtiges Werzeug mit vielen Hilfsmitteln zur Verfügung. Gleichzeitig kann jedoch für komplexere Elemente, wie mathematische Formeln, nicht-lateinische Schriften, Schach- und Go-Bretter, musikalische Notenblätter, Grafiken u.Ä. die Darstellung direkt im Editor visualisiert werden.

Da preview-latex keine Änderungen am reinen LaTeX Code erfordert bzw. vornimmt, kann auf das volle Spektrum von LaTeX zurückgegriffen werden. Arbeiten mehrere Autoren an einem Dokument, beeinflußt der Einsatz von preview-latex bei einem Autor die Anderen in keinster Weise.

Seinen Ursprung hatte das Projekt etwa vor einem Jahr als reine Selbsthilfe während der Doktorarbeit von David Kastrup, der nach Veröffentlichung als Freie Software unter der GNU General Public License (GPL) aber schnell feststellte, daß das Interesse an seinem Projekt durchaus beträchtlich war.

Schnell fanden sich 6 weitere Entwickler, von denen Alan Shutko, Jan-Åke Larsson und Nick Alcock sich besonders hervorgetan haben. Alan Shutko steuerte die Autoconf-Unterstützung bei. Jan-Åke Larsson hat wesentlich zur Dokumentation und der Verpackung als RPM beigetragen und arbeitet momentan an einem Daemon, der die Darstellung beschleunigen soll. Nick Alcock hingegen ist Hauptverantwortlicher für die XEmacs Portierung und hat wesentlich zum Debugging beigetragen.

Geschrieben wurde preview-latex übrigens in TeX-Macros, etwas PostScript und viel Glue-Code in Emacs-LISP. Die zukünftigen Elemente werden dann aus Geschwindigkeitsgründen auch auf C zurückgreifen.

Zu den größten Vorteilen zählt David Kastrup, daß preview-latex sehr unaufdringlich ist. Es wird nur auf Anforderung aktiv und dank des sehr intuitiven Interfaces scheinen viele Benutzer sich nicht mit der Dokumentation aufzuhalten. Zudem wurde es bereits stark optimiert und die Anspruchszeit ist auch bei großen Dokumenten auf mittelmäßiger Hardware akzeptabel.

Probleme bereiten noch größere grafische Segmente, da diese sowohl im GNU Emacs wie im Xemacs für den Nutzer nicht besonders angenehm gehandhabt werden.

Demzufolge sucht das Projekt auch weitere Freiwillige, die helfen, sowohl auf Seite von preview-latex wie auch auf Seite der Emacs-Editoren das Projekt voranzutreiben. Gerade auch wenn es um die Versionen des GNU Emacs auf Windows sowie Macintosh geht, ist hier noch einige Arbeit zu leisten.

Möglichkeiten, sich einzubringen, gibt es also besonders für technisch Versierte viele. Ich hoffe allerdings, auch "normale" Nutzer motiviert zu haben, einen Blick auf preview-latex zu werfen ohne sich von Umstellungsschwierigkeiten abschrecken zu lassen.

Wer sich für einen noch gründlicher ausgearbeiteten Überblick über dieses Feld interessiert, dem sei ein Dokument von David Kastrup empfohlen [10], welches dieser im Rahmen seiner Arbeit an preview-latex erstellt hat.

Lire

Unter Unix ist es Tradition, daß Vorgänge im System und Aktivitäten von Diensten wie Webserver, Mailserver, Nameserver, Datenbanken uvm. Logfiles führen, in denen ihre Aktivität protokolliert wird. Darüber wird es den Administratoren möglich gemacht, Vorgänge auf dem System nachzuvollziehen.

Allerdings können Logfiles schnell immense Ausmaße annehmen - was ihre Handhabung erschwert. Auch wenn sie im Allgemeinen in ASCII Form vorliegen, ist ein File von mehreren Megabytes Größe für einen Menschen nicht mehr vollständig zu erfassen.

Dazu kommt, daß im Normalfall aus Daten Informationen werden, wenn eine bestimmte Fragestellung auf sie angewandt wird. Dabei wird aber ein Großteil der Daten für die Fragestellung irrelevant sein, was in der Praxis dazu führt, daß Informationen unter irrelevanten Daten begraben und damit unauffindbar werden.

Dieses Problem tritt bereits seit Jahren an vielen Stellen auf und hat zur Entwicklung von Programmen geführt, die Menschen bei der Analyse der Logfiles unterstützen sollen.

So kamen auch am 6. April 2000 mehrere Informatiker verschiedener holländischer Unternehmen zusammen, um die ermüdende Tätigkeit der Logfileanalyse zu diskutieren. Dabei wurde offensichtlich, daß in den einzelnen Unternehmen private Lösungen erstellt wurden, die zumeist die in anderen Unternehmen bereits geleistete Arbeit replizierte.

Um dieser Mehrfacharbeit ein Ende zu bereiten, begann das LogReport Team damit, ein Programm als Freie Software unter der GNU General Public License (GPL) zu schreiben, welches diese Aufgaben zuverlässig im professionellen Umfeld erledigen sollte. Fast zwei Jahre später wurde Lire 1.0 [11] veröffentlich.

So wie bei Douglas Adams die "Elektrischen Mönche" einem die langweilige Aufgabe des Glaubens abnehmen, ist es Ziel von Lire, einem die langweilige Aufgabe des Logfile-Lesens abzunehmen. Daher auch der Name, denn das französische "lire" heißt "lesen".

Das Programm ist geschrieben in Perl und Bash, wobei massiv auf XML gesetzt wird. Lire arbeitet in vier Schritten. Zunächst werden Logfiles in einem "Distilled Log Format" (DLF) normalisiert, um dann im zweiten Schritt mit generischen Tools analysiert zu werden, die für verschiedene Dienste eingesetzt werden können. Als Ausgabeformat dient XML, welches dann im vierten Schritt in eines der vielen endgültigen Logfile-Formate überführt werden kann.

Im Moment stehen Eingabefilter für 29 verschiedene Dienste zur Verfügung, wobei die Zahl stetig wächst. Einen neuen Dienst hinzuzufügen kann einfach über das Schreiben eines Konverters in das DLF Format geschehen.

Zu den besonderen Stärken zählt dabei, daß der modulare Aufbau von Lire es beispielsweise erlaubt, verschiedene Implementationen desselben Dienstes, also z.B. die MTAs exim und postfix, miteinander zu vergleichen.

Lire hat sich bereits im praktischen Unternehmenseinsatz mit Logfiles von mehreren Gigabytes in Bereichen wie Performancemessung, Systemüberwachung, Problemlösung und Marketing bewährt, kann also als stabil gelten.

Als Schwächen des Projekts sieht Josh Koenig, der die Brave GNU World Fragen beantwortet hat, die API, deren Verständlichkeit und Dokumentation ihn nicht zufrieden stellt. Neben einem benutzerfreundlichen GUI ist dies ein Hauptaugenmerk der weiteren Entwicklung.

Hilfe auf diesen Gebieten und auch bei der Erweiterung um neue Formate ist herzlich willkommen. Außerdem soll Lire gerade in mittleren bis großen Unternehmen populär gemacht werden, wobei das Lire Team Unterstützung sucht.

Das ständige Logreport Development Team besteht übrigens aus Joost van Baal, Francis Lacoste, Egon Willighagen, Josh Koenig und Wessel Dankers, wobei viele Entwickler aus der ganzen Welt sich an Lire beteiligt haben. Betreut wird das Projekt von der LogReport Foundation, einer in Holland angesiedelten und dort gemeinnützigen Organisation.

Im Übrigen bildet dieses Projekt ganz nebenbei ein gutes Beispiel für einen wesentlichen volks- und betriebswirtschaftlichen Vorteil Freier Software, der Vermeidung von Mehrfacharbeit.

GNU Source Highlight

GNU Source Highlight [12] von Lorenzo Bettini erzeugt aus einem Sourcecode eine Ausgabe mit Syntax-Highlighting in HTML oder XHTML. Hervorgegangen ist es aus den in Ausgabe 21 der Brave GNU World [13] vorgestellten Tools java2html und cpp2html, die in GNU Source Highlight aufgegangen sind.

Als Eingabesprachen werden momentan Java, C/C++, Prolog, Perl, PHP3, Python, Flex und ChangeLog unterstützt. Filter für andere Sprachen können jedoch hinzugefügt werden.

Das Projekt wurde in C++ geschrieben und ist laut Angabe von Lorenzo Bettini stabil. Er selber arbeitet nun noch an einem neuen Ausgabeformat (LaTeX) und möchte bei Gelegenheit eine einfache Beschreibungssprache zur Unterstützung neuer Programmiersprachen schreiben, um Flex abzulösen, dem diese Aufgabe im Moment zukommt.

Unterstützt wurde er bei dem Projekt vor allem von Entwicklern, die Filter hinzugefügt haben. So stammen die Filter für Flex und ChangeLog von John Millaway, Christian W. Zuckschwedt und Josh Hiloni haben die XHTML-Ausgabe beigesteuert und Martin Gebert schrieb den Filter für Python. Außerdem hat Alain Barbet die Filter für PHP3 und Perl entwickelt.

Die größte Schwäche ist momentan, daß Referenzen von Funktionen zu ihren Definitionen momentan noch nicht möglich sind, da nur eine lexikalische Analyse gemacht wird. Dies zu beheben und das Schreiben von weiteren Filtern sind daher die besten Möglichkeiten, das Projekt zu unterstützen.

Programmierer, die GNU Source-Highlight als Kommandozeilenwerkzeug oder als CGI interaktiv im Web einsetzen, sind die klassische Gruppe der Nutzer, allerdings gibt es auch Nutzer, die eine grafische Benutzeroberfläche zu schätzen wissen.

Ksrc2html

Ksrc2html [14] von Martin Gebert ist eine grafische Benutzeroberfläche für GNU Source Highlight, die ebenfalls unter der GNU General Public License (GPL) als Freie Software verfügbar ist. Wie der Name suggeriert, basiert Ksrc2html auf C++, Qt und KDE 2, ein Update auf KDE 3 ist geplant.

Ksrc2html erlaubt eine Vorschau auf die Formatierung, um die Effekte der eingestellten Parameter besser kontrollieren zu können. Darüberhinaus können Einstellungen für Farben und Schrifttypen per Dialog vorgenommen und zur späteren Verwendung abgespeichert werden.

Dank der Hilfe von Xavier Outhier, der die französische Übersetzung übernommen hat, ist Ksrc2html für Deutsch und Französisch lokalisierbar.

Das Projekt wird von Martin als stabil eingestuft, wobei er plant, den Dialog für Farben und Schriftstile dahingehend zu erweitern, daß er automatisch für unterschiedliche Sprachen angepasst wird.

Er wies zudem darauf hin, daß ihm Hilfe mit der Portierung zu KDE 3 sehr willkommen sei.

Freie Software in Asien

Es mag vor allem die asiatischen Leser freuen zu hören, daß sich am 10. Juli 2002 die "Free Software Initiative Japan" (FSIJ) [15] gegründet hat. Ziel ist, Freie Software in Japan zu fördern und die Grundsteine für eine zukünftige FSF Japan bzw. FSF Asia zu legen.

Chairman der FSIJ ist kein Geringerer als Prof. Masayuki Ida, der lange Jahre als "Vice President Japan" der Free Software Foundation North America agierte und letztes Jahr im Rahmen einer Reise nach Europa intensive Gespräche mit Mitgliedern der Free Software Foundation Europe führte.

Um einen Impuls für Freie Software in Japan zu geben, organisierte die FSIJ am 22. und 23. Oktober 2002 in Tokio mit dem "Free Software Symposium 2002" die erste Veranstaltung ihrer Art im asiatischen Raum.

Für das hochkarätige Vortragsprogramm wurden Redner aus China, Thailand, Japan, Singapur, Deutschland, Italien und den USA eingeladen.

So gab es neben eher technisch orientierten Vorträgen über Debian, das HURD Projekt oder RedFlag Linux, die chinesische GNU/Linux Distribution auch Vorträge und Gespräche über die größeren Fragen Freier Software und die Situationen in Asien und Europa.

Der Runde Tisch am Abend des 22. Oktober befasste sich mit Fragen der besseren internationalen Kooperation bei der Internationalisierung von Programmen und Dokumentation; sowie der Frage nach einer lösungsorientierten Datenbank für Freie Software. Auch wenn diese sicher nicht in zwei Stunden zu lösen waren, so wurden doch einige praktische Ansätze gefunden, deren Umsetzung nun per Mail weiter verfolgt wird.

Insgesamt war es ein wichtiger Schritt vorwärts für Freie Software im asiatischen Raum, der den Dialog auch gerade zwischen den asiatischen Ländern gefördert hat. Darauf aufbauend ist nun angedacht, im Februar oder März 2003 eine weitere Veranstaltung dieser Art in Thailand abzuhalten.

Vielleicht gelingt es gar, diese Veranstaltungen als feste Größe zu etablieren, die im asiatischen Raum von Land zu Land wandert. In jedem Fall ist es gut zu sehen, daß auch in Asien Freie Software auf dem Vormarsch ist.

Lesern der Brave GNU World aus dem asiatischen Raum, die sich gerne einbringen möchten, sei nahegelegt, sich beispielsweise mit der FSIJ oder GNU China [16] in Verbindung zu setzen.

Bis zum nächsten Mal

Damit genug Brave GNU World für diesen Monat. Aufgrund der Wiederholung mag es die Eine oder Andere überlesen, doch auch dieses Mal bitte ich wieder um Fragen, Anregungen, Ideen und Mails zu interessanten Projekten.

Auch auf die Gefahr, noch mehr als üblich unter Email begraben zu werden, möchte ich gerne eine konkrete Anfrage loswerden. In Anlehnung an Douglas Adams würde ich gerne hören, was für jede(n) die wichtigste Frage ist, auf die Freie Software die Antwort gibt. Die Fragen bitte ich auch per Email an die übliche Adresse zu schicken. [1]

Infos

[1] Ideen, Anregungen, Kommentare an die Brave GNU World: column@brave-gnu-world.org
[2] Homepage des GNU-Projektes: http://www.gnu.org/
[3] Homepage von Georg's Brave GNU World: http://brave-gnu-world.org
[4] "We run GNU" Initiative: http://www.gnu.org/brave-gnu-world/rungnu/rungnu.de.html
[5] LaTeX Homepage: http://www.latex-project.org
[6] LyX Homepage: http://www.lyx.org/
[7] Brave GNU World Ausgabe 30: http://www.gnu.org/brave-gnu-world/issue-30.de.html
[8] GNU TeXmacs Homepage: http://www.texmacs.org/
[9] preview-latex Homepage: http://preview-latex.sourceforge.net
[10] Dokument: "WYSIWYG-related Tools & Techniques for LaTeX" http://preview-latex.sourceforge.net/wysiwyg-draft.pdf
[11] Lire Homepage: http://www.logreport.org
[12] Source Highlight Homepage: http://www.gnu.org/software/src-highlite/
[13] Brave GNU World Ausgabe 21: http://www.gnu.org/brave-gnu-world/issue-21.de.html
[14] Ksrc2html Homepage: http://murphy.netsolution-net.de/Ksrc2.html
[15] Free Software Initiative Japan: http://www.fsij.org
[16] GNU China: http://www.gnuchina.org


[ previous issue | Brave GNU World home | next issue ]

Return to GNU's home page.

Please send FSF & GNU inquiries & questions to gnu@gnu.org.
There are also other ways to contact the FSF.

Please send comments on Georg's Brave GNU World (in English or German) to column@gnu.org,
send comments on these web pages to webmasters@www.gnu.org,
send other questions to gnu@gnu.org.

Copyright (C) 2002 Georg C. F. Greve

Permission is granted to make and distribute verbatim copies of this transcript as long as the copyright and this permission notice appear.

Last modified: Sat Dec 28 18:45:00 CET 2002-->