Wir schreiben Texte nur noch in Form von Bausteinen, die je nach Zweck automatisch umgeformt werden können. Das Format hat ein Übersetzer in wenigen Minuten erlernt. Wie die Bausteine eingesetzt werden sind, bestimmen Redakteure, die von den verwendeten Sprachen nichts verstehen müssen. |
||||||||
1 Chronik2009-04-25 :: Erweiterung der Textbausteinsprache: zu den 2009-04-24 :: Erweiterungen der Textbausteinsprache: 2009-04-24 :: Bausteine lassen sich nun auch jederzeit leicht in umgekehrter Reihenfolge anordnen. Dazu haben wir das Präfix revargs eingeführt. Man setzt es vor eine Verknüpfungsfunktion wie 2009-04-23 :: Das Verwenden fremder Vokabulardateien ist bequemer geworden. Wenn eine inkludierte Vokabulardatei aktualisiert wurde, wird jetzt beim Make-Aufruf automatische alles aktualisiert, was von ihr erzeugt wurde. Innerhalb solcher Dateien können relative Pfadnamen verwendet werden. Die jeweilige Datei wird zum Bezugspunkt, auch wenn sie aus einem fremden Verzeichnis aufgerufen wurde. 2 Wozu “Multilingualer Hypertext”?Bessere Rollentrennung bei der Entwicklung von Text
Man kann Dokumente rein dadurch erstellen, dass man Bausteine definiert und passend benennt. Darüber hinaus können bestehende Textprogrammierungssprachen (TT2,Deplate) können zur Erweiterung der Bausteinsprache eingesetzt werden.
Man braucht keinen Netzzugang, um zu arbeiten. Mehr als ein unvernetzter Rechner mit Texteditor ist nicht erforderlich.
3 Systemvoraussetzungen der ErzeugungsumgebungUm vollwertige Übersetzungen zu erstellen, braucht man nur einen Texteditor, egal auf welchem Betriebssystem, vorzugsweise mit der Fähigkeit, den Text in UTF-8 (Unicode) zu kodieren. Die folgenden Voraussetzungen muss man nur dann erfüllen, wenn man das multilinguale Redaktionssystem von A2E bei sich installieren will. Wer eine Linux-System, insbesondere Opensuse, bei sich installiert hat, erfüllt sie fast von selbst alle. Perl :: Diese Programmierumgebung läuft praktisch auf allen Betriebssystemen. Unsere Perl-Bibliotheken greifen auf zahlreiche CPAN-Module zurück. Zentrale Rollen spielen dabei Template, AppConfig, SDBMFile und SVN::Client. Subversion :: Dieses Kollborationssystem läuft praktisch auf allen Betriebssystemen. Man kann es auch abschalten und nur lokal arbeiten. Wir könnten bei Bedarf auch ander Systeme wie Git unterstützen. Deplate :: Dieser Textkonvertor erzeugen aus einem wiki-ähnlichen erweiterbaren Quellformat Zielformate wie HTML, PDF und Docbook. Das System ist für die Unterstützung weiterer Textkonvertoren ausgelegt, doch weit entwickelt ist nur die Arbeit mit Deplate. Deplate erfordert die Programmierumgebung Ruby, die ebenso wie Perl überall verfügbar ist. PostgreSQL :: Dokument-Metadaten werden in einer relationalen Datenbank gespeichert. Bei uns ist das PostgreSQL, aber MySQL und alles, was das Perl-Modul DBI unterstützt, sollte ebenso funktionieren. GNU Make :: Die Regeln zur Erzeugung der sekundären aus den primären Dokumenten werden in Steuerdateien (Makefiles) angegeben, die wir mit GNU Make auszuführen sind. Unsere Textbausteindateien werden manchmal ebenfalls von Make verwendet, da die von uns implementierte Textbausteinsprache eine Variante der Make-Sprache ist. Grundsätzlich sollte unsere Umgebung auf fast allen Betriebssystemen funktionieren, aber erprobt ist sie im Moment nur auf GNU/Linux, und automatisch installierbare Pakete gibt es nur für Opensuse. 4 InstallationNotwendig sind die Pakete perl-A2E, a2e-mktdir, a2e-mlht-tmpl und a2e-bin. Man installiere sie unter Opensuse mit Zypper oder man entpake die ebenfalls vorhandenen Tar-Pakete und installiere sie mit make install. 5 Wie man Textbausteine schreibtMan beginnt, indem man in eine sprachabhängige Textdatei einige dynamische Textbausteine schreibt und eindeutig benennt. Dabei kann man sprachunabhängige Elemente mit Konstrukten wie nummerierten Variablen kennzeichnen und Textblöcke (oder auch Textblockgruppen) mit anonymen Attributen umklammern. Ob ein solches Attribut etwa als Fettdruck oder Hyperlink wiedergegeben oder auch übergangen wird, legt nicht der Übersetzer sondern der Redakteur fest. Die so erstellte Textdatei kann übersetzt werden. Die Namen und Kennzeichnungen werden dabei unverändert in gleicher Funktion auf gleiche Weise verwendet. In einer sprachunabhängigen Datei werden die dynamischen Textbausteine ausgewertet und in neuen statischen Textbausteinen gespeichert. Wie in der Make-Sprache geschieht dies dank Verwendung von Zuweisungen mit ‘:=’ statt bloßem ‘=’. Für die Einfüllung geeigneter Werte sorgen Funktionen wie . Spezielle Variablen wie Im Dokument selber können Elemente der Textbausteinsprache in einem Deplate-Quelltext verwendet werden, der vielleicht anfangs in einer Sprache geschrieben ist aber dann im Laufe der Entwicklung immer stärker davon abstrahiert. Dies geschieht durch Einsatz von TT2-Konstrukten. Neben der statischen Verwendung von Textbausteinen als TT2-Variablen gibt kann man auch dynamische Bausteine unter Zugriff auf Methoden der Textbausteinsprache expandieren. Ein ausgereiftes Dokument besteht letztendlich nur noch aus einem Aufruf der virtuellen Methode 6 Unterlagen
|