Home UDO und HTML Nachteile von UDO Fazit zum HTML-Export
 UDO - Eine kleine Einführung
 UDO und HTML

2.9 Problematisches Webdesign

Wie hoffentlich zu sehen war, bietet UDO viele Möglichkeiten, auf eine vergleichsweise einfache Methode HTML-Dokumente zu erstellen und Änderungen durchzuführen, die sich auf alle Seiten eines Projektes auswirken.

Dadurch ist UDO geradezu ideal für längere, textlastige Dokumente, die sich eine Weile in der Bearbeitung befinden; dann aber irgendwann fertig sind. Ein Beispiel dafür sind regelmäßig erscheinende Online-Magazine (wie z.B. die ATOS, die nicht ohne Grund mit UDO erstellt wird); oder auch digitale Handbücher und Online-Hilfen, die ja meistens erst zu einer neuen Programmversion komplett upgedated werden.


Anders verhält es sich aber bei Websites im Internet: Eine Site besteht ja in der Regel aus einer Ansammlung von einzelnen Seiten, von denen einige von Zeit zu Zeit geändert werden - aber selten mal alle auf einmal.

Und genau hier kommt ein Problem von UDO zum Vorschein: Man muß immer ein komplettes Projekt - in diesem Fall die gesamte Website - ins Zielformat konvertieren lassen. (Man kann zwar auch Teilbereiche übersetzen, was aber nur für Tests anzuraten ist, da sonst u.U. interne Links nicht mehr "stimmen".) Nun stellt Euch mal eine Website vor, die aus etlichen einzelnen HTML-Dateien besteht. Nach ein paar Änderungen im UDO-Quelltext übersetzt man die Site neu, aber dann kann man nicht mehr nachvollziehen, in welcher HTML-Datei was geändert wurde, da alle Dateien das gleiche Datum tragen (nämlich das des letzten Übersetzungsvorgangs).

Es bleibt also kaum etwas anderes übrig, als nach jeder Änderung, und sei sie noch so geringfügig, die komplette Site hochzuladen - das freut vielleicht die Telefongesellschaften, aber nicht den Webmaster oder sonstigen Anbieter der Site, da die Kosten für den Upload auf seine Kappe gehen.

Was kann man dagegen machen? - Fast nichts. Alle Methoden, über die ich nachgedacht habe, benötigen höchst sorgfältiges Vorgehen und/oder viel Handarbeit. Somit sind sie kompliziert und äußerst anfällig für Fehler.

So könnte man jede Änderung protokollieren - wobei man allerdings auch festhalten muß, in welcher HTML-Datei sie landen wird (s. Verzeichnisse und Dateinamen). Aber da hat man schnell mal eine Änderung vergessen.

Alternativ kann man dafür sorgen, daß es ein 1:1-Verhältnis von UDO- und HTML-Dateien gibt. Also: Gleiche Anzahl an Dateien mit gleichen Namen (abgesehen natürlich von der Extension). So kann man dann nachschauen, welche UDO-Dateien seit dem letzten Upload geändert wurden, und weiß dann: Die gleichnamigen HTML-Dateien wurden ebenfalls geändert. Das ist zwar relativ leicht einzurichten, wenn man vom Beginn des Projektes an daran denkt, aber nachträgliche Änderungen in der Struktur des Gesamtdokuments (beispielsweise durch Anlegen oder Ändern von merge-Befehlen) bringen dann umfangreiche "Umbauarbeiten" mit sich.


Bei einer denkbaren halbautomatischen Methode stellt sich UDO quer. Dennoch will ich sie hier aufführen, da sie (meinen Tests zufolge) bei einer Änderung der UDO-Vorgehensweise funktionieren müßte. (Und ich hoffe, dass diese Änderung schnell realisiert werden kann, da sie eigentlich keine große Eingriffe erfordern sollte.)

Also: Man hat seine Website in zwei Versionen auf der Festplatte: Einmal genau so, wie sie gerade im Web steht (im Folgenden "Web-Version" genannt) und einmal in einer "Arbeitsversion" - dieses Verzeichnis dient UDO als Zielverzeichnis bei einem erneuten Übersetzungsdurchgang.

Wenn man nun einige Änderungen durchgeführt hat und die aktualisierten Dateien ins WWW uploaden will, muß man folgendermaßen Vorgehen:

  1. Mit einem File-Compare-Tool vergleicht man die Verzeichnisse der Web- und der Arbeitsversion. Die Dateien, deren Inhalt sich geändert hat, werden aufgelistet.
  2. Die aufgelisteten Dateien kopiert man in ein drittes Verzeichnis ("Upload-Ordner"). Den Inhalt dieses Ordners kopiert man ins Web.
  3. Anschließend verschiebt man die Dateien aus dem Upload-Ordner in das Verzeichnis der Web-Version und überschreibt dabei die alten gleichnamigen Dateien.

Und warum funktioniert diese Vorgehensweise (derzeit?) noch nicht? Ganz einfach: UDO setzt in die zweite Zeile jeder erzeugten HTML-Dateien einen Kommentar:

<!-- last modified on 04.01.2001 -->

Das hier angegebene Datum bezieht sich immer auf den Zeitpunkt der Übersetzung. Das bedeutet: Wenn man die Dateien der Arbeits- und der Web-Version an zwei verschiedenen Tagen übersetzt hat, sind sie inhaltlich immer unterschiedlich, und somit werden bei dem Vergleich der Ordner auch stets alle Dateien aufgelistet.

Das ließe sich vermeiden, wenn man die Ausgabe der Kommentarzeile unterdrücken könnte. Aber das ist leider nicht der Fall. Wenn eine zukünftige UDO-Version dieses Möglichkeit anbietet - was ich für überaus sinnvoll halten würde - könnte man aber auf dieses Verfahren zurückgreifen und müßte immer nur die wirklich geänderten HTML-Dateien uploaden. (Es sei denn, man hat eine Änderung durchgeführt, die sich auf alle Seiten auswirkt, aber dann ist ja sowieso ein kompletter Upload angebracht.)


Eine Möglichkeit, das soeben beschriebene Verfahren jetzt schon einzusetzen, besteht darin, in allen Dateien der Website nach der Kommentarzeile suchen und sie entfernen zu lassen. Danach kann man dann den Ordner-Vergleich durchführen. (Für meine eigenen Arbeiten habe ich mir übrigens ein Skript geschrieben, was genau dies tut.) Dennoch ist diese "zwei-Ordner-und-Vergleichs"-Methode auch nicht gerade das Gelbe vom Ei.

Halten wir also fest: Für das Webdesign ist es ein echter Nachteil von UDO, daß man sehr schlecht nachvollziehen kann, welche HTML-Dateien inhaltlich geändert wurden.


Copyright © tobias@udo-open-source.de
Letzte Aktualisierung am 15. März 2001

Home UDO und HTML Nachteile von UDO Fazit zum HTML-Export