Wikibooks Automatische Vorlagen/ Dokumentation/ Allgemeine Hinweise
Die folgenden Hinweise gelten einheitlich für alle Vorlagen.
Zum besseren Verständnis der Beschreibung bietet es sich an, die Dokumentation und den Quelltext einer Vorlage in zwei Fenstern des Browsers zu öffnen und nebeneinander zu lesen.
Vorlagendefinition
[Bearbeiten]Jede Vorlage wird durch <includeonly> zusammengefasst; das unterdrückt missverständliche Anzeigen auf der Vorlagenseite.
Die Vorlagen für den direkten Aufruf benutzen die Vorlage:Dokumentation, alle anderen Vorlagen einheitlich die Vorlage:AutoVorlagen Dokumentation. Die Beschreibung verweist vor allem auf dieses „Buch“.
Die Vorlagen werden wie folgt kategorisiert:
- Die Vorlagen für den direkten Aufruf gehören zu Kategorie:Vorlage für Navigation und Kategorie:Vorlage für Buchgestaltung.
- Alle weiteren Vorlagen gehören zur Kategorie:Vorlage für technische Aufgaben.
- Die Datenseiten gehören zur Kategorie:Bucheigene Vorlage.
Parameter
[Bearbeiten]Die Vorlagen für den direkten Aufruf werden ohne Parameter benutzt. Die benötigten Parameter – vor allem der Verweis auf die Datenseiten – werden bestimmt und an die weiteren Vorlagen übergeben. Genaueres steht bei der Beschreibung der einzelnen Vorlagen.
Der Parameter datenB steht für die Buchdaten, der Parameter datenT für Teildaten. Wenn beides möglich ist oder die Unterscheidung nicht erforderlich ist, wird auch daten verwendet.
Werte abfragen
[Bearbeiten]Eine Konstruktion wie {{:{{{daten}}} | max }} wird ständig in verschiedenen Varianten benutzt. Grundsätzlich wird dabei eine Datenseite wie eine Vorlage verwendet und holt über die dort enthaltene switch-Anweisung das „Ergebnis“ zum gewünschten Wert. Beispiele:
{{:{{{datenB}}}| max }} | bestimmt das Maximum max der Teile eines Buches. |
{{:{{{datenT}}}| max }} | bestimmt das Maximum max der Einträge eines Teils. |
{{:{{{datenT}}}| Zielgruppe }} | holt den entsprechenden Text zu einem Teil. |
{{:{{{daten}}}| 3 }} | bestimmt den Namen des 3. Eintrags. |
{{:{{{daten}}}| 2/4 }} | holt aus dem 2. Bereich eines Teils den Namen des 4. Kapitels. |
{{:{{{daten}}}| 2/4i }} | holt zu diesem Kapitel eine zusätzliche Inhaltsangabe. |
- Hinweis zu if:true
In vielen Situationen wird ein gesuchter Wert zusätzlich in {{#if: true| <wert> }} eingebunden. Das sorgt dafür, dass Leerzeichen und Zeilenumbrüche aus den daten nicht als Teil des Wertes übernommen werden. Nur auf diesem Weg kann die gesamte Gliederung eines Buches übersichtlich eingetragen und gleichzeitig korrekt ausgewertet werden.
- Hinweis zu ifexpr
An vielen Stellen gibt es 20 Wiederholungen mit einer Abfrage der folgenden Art:
{{#ifexpr: 7 <= {{{max}}} | <Anweisungen> }}
Diese werden verschachtelt: Wenn es zu einer Nummer keinen Teil und kein Kapitel gibt, dann auch nicht zu allen folgenden Nummern. Nebenbei ermöglicht diese Verschachtelung auch eine übersichtlichere Eingabe in den Datenseiten, ohne dass die Anzeige zu Lücken führt.
Vorgaben
[Bearbeiten]Wenn eine Datenseite erstmals benutzt wird, werden mithilfe der preload-Funktion aus speziellen Musterdaten Vorschläge für einen sinnvollen Aufbau geholt.
Für Kapitel wird auf Vorschläge verzichtet: Das Einbinden einer Preload-Seite wäre in diesem Fall relativ umständlich. Außerdem sind nur die beiden Zeilen für die Navigation einzutragen; das geht mit den Kopiervorlagen oder auch manuell.
Mögliche Verbesserungen
[Bearbeiten]Jeweils 20 Wiederholungen sollten durch Schleifen ersetzt werden. Das ist zurzeit nicht möglich, weil sie bei der Wiki-Software nicht freigegeben sind.
Mit Variablen könnte auf Vorlagen, die mit Start bezeichnet sind, verzichtet werden; und viele Prüfungen wären einfacher. Aber auch Variable sind nicht möglich.