Wenn Webgenz einen Makrowert findet, ändert es unter Umständen diesen Wert ab, bevor es das Makro-Tag durch den Wert ersetzt. Dies geschieht, um die Formatierung des HTML-Dokuments zu erhalten, das durch Webgenz generiert wird. Hier ein Beispiel:
Betrachten Sie folgende Template-Datei...
<HTML>
<HEAD>
<TITLE>Titel</TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>
[@INHALT]
</TD>
</TR>
</TABLE>
</BODY>
</HTML>
... und folgende Content-Datei:
[@INHALT]:
Dieser Inhalts-Block ist
mehrere Zeilen lang. Dies ist
bloß ein Beispiel.
[@]
Wenn Webgenz nun einfach den Makrowert an die Stelle des Makro-Tags positionieren würde, würde dies zu folgendem Ergebnis führen:
<HTML>
<HEAD>
<TITLE>Titel</TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>
Dieser Inhalts-Block ist
mehrere Zeilen lang. Dies ist
bloß ein Beispiel.
</TD>
</TR>
</TABLE>
</BODY>
</HTML>
Da die Formatierung dieser Ausgabe unerwünscht ist, ändert Webgenz den Makrowert insofern, als es die vor und hinter dem Makro-Tag in der Template-Datei stehenden Zeichen (in der Regel einfache Leerzeichen) zu jeder Zeile des Makrowertes hinzufügt. Im Beispiel oben sieht die Ausgabe dann wie folgt aus:
<HTML>
<HEAD>
<TITLE>Titel</TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>
Dieser Inhalts-Block ist
mehrere Zeilen lang. Dies ist
bloß ein Beispiel.
</TD>
</TR>
</TABLE>
</BODY>
</HTML>
Diese Formatierung ist weitaus sinnvoller, da sie der Intention des Erstellers der Template-Datei entspricht. Nichtsdestotrotz kann diese Funktionalität zu Verwirrung führen.
Angenommen, die Template-Datei in dem obigen Beispiel würde wie folgt aussehen:
<HTML>
<HEAD>
<TITLE>Titel</TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>[@INHALT]</TD>
</TR>
</TABLE>
</BODY>
</HTML>
In diesem Fall würde Webgenz die folgende Ausgabe generieren:
<HTML>
<HEAD>
<TITLE>My Title</TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>Dieser Inhalts-Block ist</TD>
<TD>mehrere Zeilen lang. Dies ist</TD>
<TD>bloß ein Beispiel.</TD>
</TR>
</TABLE>
</BODY>
</HTML>
Dies ist offensichtlich alles andere als erwünscht. Es ist jedoch ein Nebeneffekt der Tatsache, dass Webgenz prinzipiell die Formatierung und Einrückung in der Template-Datei beibehält, so dass das erzeugte Dokument genau dieselbe Formatierung hat, die es bei manueller Erstellung hätte.
Wenn Sie also einmal auf Ihnen unverständlichen Webgenz-Output stoßen, sorgen Sie einfach dafür, dass das betreffende Makro-Tag in der Template-Datei alleine in einer Zeile steht.