Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision d493cf69

Von Moritz Bunkus vor fast 18 Jahren hinzugefügt

  • ID d493cf69341b422b43d9104dcaf698bde53417f7
  • Vorgänger 8f215761
  • Nachfolger 73fb84d7

Die Einschränkungen, dass Blöcke nicht verschachtelt werden dürfen, gilt nicht mehr.

Unterschiede anzeigen:

doc/dokumentenvorlagen-und-variablen.html
85 85
    Bl&ouml;cke, bedingte Anweisungen und Schleifen</a>
86 86

  
87 87
   <ol>
88
    <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_einschr_latex">
89
      Einsch&auml;nkungen f&uuml;r Bl&ouml;cke in LaTeX-Vorlagen</a></li>
90

  
91
    <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_einschr_opendocument">
92
      Einsch&auml;nkungen f&uuml;r Bl&ouml;cke in OpenDocument-Vorlagen</a></li>
93

  
94
    <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_include">
95
      Die <code>include</code>-Anweisung</a></li>
96

  
97 88
    <li><a href="dokumentenvorlagen-und-variablen.html#bloecke_ifnot">
98 89
      Der <code>if not</code>-Block</a></li>
99 90

  
......
693 684
  gesondert behandelt werden. Diese sind wie Variablennamen in spezieller
694 685
  Weise markiert: <code>&lt;%anweisung%&gt;</code></p>
695 686

  
696
 <h3><a name="bloecke_einschr_latex">
697
   Einsch&auml;nkungen f&uuml;r Bl&ouml;cke in LaTeX-Vorlagen</a></h3>
698

  
699
 <p>Achtung: Bl&ouml;cke k&ouml;nnen in LaTeX-Vorlagen momentan nicht
700
   verschachtelt werden. Das bedeutet, dass innerhalb einer
701
   <code>&lt;%foreach%&gt;</code>-Schleife keine
702
   <code>&lt;%if%&gt;</code>-Abfragen verwendet werden k&ouml;nnen. Dieses
703
   kann man aber mit LaTeX-Bordmitteln selber nachgebildet werden. Dazu muss
704
   im Vorspann das Paket <code>ifthen</code> eingebunden werden. Das Konstrukt
705
   selber sieht dann wie folgt aus:</p>
706

  
707
 <p class="blue"><code>\ifthenelse{\equal{&lt;%variable%&gt;}{}}{}{Dieser
708
   Text erscheint nur, wenn &lt;%variable%&gt; nicht leer ist.}</code></p>
709

  
710
 <h3><a name="bloecke_einschr_opendocument">
711
   Einsch&auml;nkungen f&uuml;r Bl&ouml;cke in OpenDocument-Vorlagen</a></h3>
712

  
713
 <p>Die eben erw&auml;hnten Einschr&auml;nkungen f&uuml;r
714
  LaTeX-Vorlagen gelten in abgeschw&auml;chter Form auch f&uuml;r
715
  OpenDocument-Vorlagen. Auch bei OpenDocument-Vorlagen k&ouml;nnen
716
  Bl&ouml;cke nicht verschachtelt werden. Einzige Ausnahme ist, dass
717
  <code>&lt;if&gt;</code> und
718
  <code>&lt;ifnot&gt;</code>-Bl&ouml;cke innerhalb von
719
  <code>&lt;foreach&gt;</code>-Bl&ouml;cken auftreten
720
  d&uuml;rfen.</p>
721

  
722
 <h3><a name="bloecke_include">Die <code>include</code>-Anweisung</a></h3>
723

  
724
 <p class="blue"><code>&lt;%include dateiname.ext%&gt;</code></p>
725

  
726
 <p>Dieser Block funktioniert nur in LaTeX- und HTML-Vorlagen.</p>
727

  
728
 <p>F&uuml;gt den Inhalt einer Datei an der entsprechenden Stelle ein. Der
729
  eingef&uuml;gte Text wird ganz normal durch den Parser behandelt und kann
730
  Variablen und Bl&ouml;cke enthalten.</p>
731

  
732 687
 <h3><a name="bloecke_ifnot">Der <code>if not</code>-Block</a></h3>
733 688

  
734 689
 <p class="blue"><code>&lt;%if not variablenname%&gt;<br>
735 690
   ...<br>
736
   &lt;%end if&gt;</code></p>
691
   &lt;%end&gt;</code></p>
737 692

  
738 693
 <p>Eine normale "if-not-then"-Bedingung. Die Zeilen zwischen dem "if not" und
739 694
  dem "end" werden nur ausgegeben, wenn die Variable "variablenname" nicht
......
743 698

  
744 699
 <p class="blue"><code>&lt;%if variablenname%&gt;<br>
745 700
   ...<br>
746
   &lt;%end if&gt;</code></p>
701
   &lt;%end&gt;</code></p>
747 702

  
748 703
 <p>Eine normale "if-then"-Bedingung. Die Zeilen zwischen dem "if" und dem
749 704
  "end" werden nur ausgegeben, wenn die Variable "variablenname" gesetzt und
......
753 708

  
754 709
 <p class="blue"><code>&lt;%foreach variablenname%&gt;<br>
755 710
   ...<br>
756
   &lt;%end foreach&gt;</code></p>
711
   &lt;%end&gt;</code></p>
757 712

  
758 713
 <p>F&uuml;gt die Zeilen zwischen den beiden Anweisungen so oft ein, wie das
759 714
  Perl-Array der Variablen "variablenname" Elemente enth&auml;t. Dieses
......
771 726
   Artikelnummer: &lt;%number%&gt;<br>
772 727
   Beschreibung: &lt;%description%&gt;<br>
773 728
   ...<br>
774
   &lt;%end foreach&gt;</code></p>
729
   &lt;%end&gt;</code></p>
775 730

  
776 731
 <p>Besonderheit in OpenDocument-Vorlagen: Tritt ein
777
  <code>&lt;foreach&gt;</code>-Blcok innerhalb einer Tabellenzelle
732
  <code>&lt;foreach&gt;</code>-Block innerhalb einer Tabellenzelle
778 733
  auf, so wird die komplette Tabellenzeile so oft wiederholt wie
779 734
  notwendig. Tritt er au&szlig;erhalb auf, so wird nur der Inhalt
780
  zwischen <code>&lt;foreach&gt;</code> und <code>&lt;end
781
  foreach&gt;</code> wiederholt, nicht aber die komplette Zeile, in
782
  der er steht.</p>
735
  zwischen <code>&lt;foreach&gt;</code> und <code>&lt;end&gt;</code>
736
  wiederholt, nicht aber die komplette Zeile, in der er steht.</p>
783 737

  
784 738
 <h3><a name="bloecke_pagebreak">Der <code>pagebreak</code>-Block</a></h3>
785 739

  
786 740
 <p class="blue"><code>&lt;%pagebreak ZpZ ZeS ZzS%&gt;<br>
787 741
   ...<br>
788
   &lt;%end pagebreak%&gt;</code></p>
742
   &lt;%end&gt;</code></p>
789 743

  
790 744
 <p>Dieser Block existiert nur in LaTeX-Vorlagen.</p>
791 745

  

Auch abrufbar als: Unified diff