Vorlage:Dokumentation/Doku

Aus Kitakien

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
K (Änderungen von 84.152.239.16 (Diskussion) rückgängig gemacht und letzte Version von Cäsium137 wiederhergestellt)
Zeile 1: Zeile 1:
-
{{#ifeq:{{NAMESPACE}}|{{ns:0}}|<strong class="error">Achtung: Die [[Vorlage:Dokumentation]] wird im Artikelnamensraum verwendet. Wahrscheinlich fehlt <code>&lt;noinclude&gt;</code> in einer eingebundenen Vorlage oder die Kapselung ist fehlerhaft. Bitte {{Bearbeiten|text=entferne diesen Fehler}}.</strong>|
+
<noinclude>{{Dokumentation/Dokuseite}}
-
+
</noinclude>Diese [[Hilfe:Vorlagen|Vorlage]] zeigt eine Dokumentationsbox, wie du sie gerade siehst. Sie bindet den Text von der Unterseite <code><nowiki>[[<Seitenname>/Doku]]</nowiki></code> ein.
-
<div class="rahmenfarbe1" style="margin-bottom:0.5em; padding:0.5em; padding-top:0; clear:both; border-style:solid;" id="Vorlage_Dokumentation">
+
 
-
[[Datei:Information icon.svg|right|18px|link=#Dokumentation.Info|Informationen zu dieser Dokumentation]]
+
Diese Vorlage sollte bei allen Vorlagen verwendet werden.
-
{{Überschriftensimulation 4|1=<span class="editsection">&#x5b;<span class="plainlinks">[{{fullurl:{{SUBJECTPAGENAME}}/Doku|action=edit}} Bearbeiten]</span>&#x5d;</span> Dokumentation}}
+
 
-
{{#ifexist: {{SUBJECTPAGENAME}}/Doku|
+
== Begründung ==
-
{{{{SUBJECTPAGENAME}}/Doku}}
+
 
-
<br /><hr style="border:none; height:0.7ex; background:#000000; clear:both;"/>
+
Die Trennung von Programmcode und Dokumentation macht den Quelltext übersichtlicher und entlastet vor allem den Parser: Bei jeder Anwendung wird der gesamte Vorlagentext immer wieder neu ausgewertet, samt der Dokumentation, die im Endeffekt ohnehin wieder weggelassen wird. Trotzdem werden <code>&lt;noinclude></code>s vor den tatsächlichen Einbindungen ausgewertet, so dass man die ''„Pre-expand include size“'' drastisch drücken kann, wenn man die Dokumentationen in Unterseiten schreibt. Daher sollte die Beschreibung immer aus der eigentlichen Vorlage ausgelagert werden. Somit ermöglicht man die Nutzung von mehr Vorlagen pro Artikelseite.
-
{{(!}} {{Bausteindesign5}}
+
 
-
{{!}} Bei Fragen zu dieser [[Hilfe:Vorlagen|Vorlage]] kannst Du Dich an die [[Wikipedia:Vorlagenwerkstatt]] wenden.
+
== Benutzung ==
-
{{!)}}
+
 
-
{{(!}} cellspacing="8" cellpadding="0" class="plainlinks" style="background:transparent; margin: 2px 0;" id="Dokumentation.Info"
+
Diese Vorlage erwartet keine Parameter. Es reicht, wenn man <code>&lt;noinclude><nowiki>{{Dokumentation}}</nowiki>&lt;/noinclude></code> '''ans Ende einer Vorlage''' schreibt und die Dokumentationsseite <code><nowiki>[[<Seitenname>/Doku]]</nowiki></code> erstellt. Eine Unterseite namens <code>/Meta</code> kann dann die Metadaten für die Vorlage enthalten (hierzu bitte den Abschnitt [[#Besonderheiten|Besonderheiten]] lesen), ansonsten können diese mit in die noinclude-[[Tag (Informatik)|tags]] am Ende der Vorlage platziert werden. Zu den Metadaten gehören die [[Hilfe:Kategorien|Kategorien]] und [[Hilfe:Internationalisierung|Interwikilinks]]. Nach dem Erstellen der Dokumentation werden einem Erstellungshilfen bereitgestellt (preload).
-
{{!}} style="position:relative; width:35px; vertical-align:top;" {{!}} [[Datei:Information icon.svg|30px|Information]]
+
 
-
{{!}} style="width: 100%;" {{!}}
+
In den '''Unterseiten''' stellen folgende Codezeilen den Rückbezug sicher
-
<ul>
+
: '''/Doku''' <code>&lt;noinclude><nowiki>{{</nowiki>[[Vorlage:Dokumentation/Dokuseite|Dokumentation/Dokuseite]]<nowiki>}}</nowiki>&lt;/noinclude></code>
-
<li>{{#switch:{{{nr|<noinclude>10</noinclude>}}}
+
: '''/Meta''' <code>&lt;noinclude><nowiki>{{</nowiki>[[Vorlage:Dokumentation/Metaseite|Dokumentation/Metaseite]]<nowiki>}}</nowiki>&lt;/noinclude>&lt;includeonly> … Meta … &lt;/includeonly></code>
-
| 2 = {{Verwendung|ns=2}} der Vorlage auf Benutzerseiten.
+
: '''/Test''' <code>&lt;noinclude><nowiki>{{</nowiki>[[Vorlage:Dokumentation/Testseite|Dokumentation/Testseite]]<nowiki>}}</nowiki>&lt;/noinclude></code>
-
| 6 = {{Verwendung|ns=6}} der Vorlage bei Dateien.
+
: '''/Wartung''' <code>&lt;noinclude><nowiki>{{</nowiki>[[Vorlage:Dokumentation/Wartungsseite|Dokumentation/Wartungsseite]]<nowiki>}}</nowiki>&lt;/noinclude></code>
-
| 10 = {{Verwendung|ns=10}} der Vorlage auf Vorlagenseiten.
+
 
-
| 14 = {{Verwendung|ns=14}} der Vorlage auf Kategorieseiten.
+
== Besonderheiten ==
-
| #default = {{Verwendung}} der Vorlage in Artikeln.
+
 
-
}}</li>
+
Wenn sich die Vorlage im [[Hilfe:Benutzernamensraum|Benutzernamensraum]] befindet, werden die Metadaten nicht eingebunden und weder die Vorlage, noch die Unterseite, werden in Kategorien einsortiert.
-
<li> Diese Dokumentation wird [[{{SUBJECTPAGENAME}}/Doku|von einer Unterseite eingebunden]].</li>
+
 
-
{{#ifexist:{{SUBJECTPAGENAME}}/Wartung
+
=== Unterseiten ===
-
| <li>Für diese Vorlage existiert eine [[{{SUBJECTPAGENAME}}/Wartung|Wartungsseite]] zum Auffinden fehlerhafter Verwendungen.</li>
+
 
-
| <li class="metadata metadata-label">[{{fullurl:{{SUBJECTPAGENAME}}/Wartung|action=edit&preload=Vorlage:Dokumentation/preload-wartung}} Wartungsseite erstellen].</li>
+
; <code>/Meta</code>
-
}}
+
: Eine solche Unterseite ist vor allem für vollgesperrte Seiten gedacht, die ansonsten nicht interwikifiziert werden könnten.
-
{{#ifexist:{{SUBJECTPAGENAME}}/XML
+
; <code>/XML</code>
-
| <li>Für diese Vorlage existiert eine [[{{SUBJECTPAGENAME}}/XML|XML-Beschreibung]] für den [[Benutzer:Revvar/VM|Vorlagenmeister]].</li>
+
: Wenn die Vorlage neben der Dokumentation noch eine XML-Beschreibung für den [[Benutzer:Revvar/VM|Vorlagenmeister]] hat, wird ein entsprechender Hinweis ausgegeben (→ [[Vorlage:XML-Hinweis|XML-Hinweis]]).
-
| <li class="metadata metadata-label">[[tools:~revolus/Template-Master/index.de.html|XML-Beschreibungsseite erstellen]]</li>
+
; <code>/Wartung</code>
-
}}
+
: Sollte es eine [[Hilfe:Infoboxen#Automatische Prüfung von Infoboxen-Parametern|Wartungsseite]] für die Vorlage geben, so wird ebenfalls ein Hinweis ausgegeben (→ [[Vorlage:Wartungshinweis|Wartungshinweis]]).
-
{{#ifexist:{{SUBJECTPAGENAME}}/Test
+
; <code>/Test</code>
-
| <li>Anwendungsbeispiele und Funktionalitätsprüfungen befinden sich auf der [[{{SUBJECTPAGENAME}}/Test|Testseite]].</li>
+
: Ein Hinweis wird auch für Testunterseiten ausgegeben.
-
| <li class="metadata metadata-label">[{{fullurl:{{SUBJECTPAGENAME}}/Test|action=edit&preload=Vorlage:Dokumentation/preload-test}} Test-/Beispielseite erstellen].</li>
+
 
-
}}
+
== Unterseiten anlegen ==
-
{{#ifexist: {{SUBJECTPAGENAME}}/Meta
+
 
-
| <li>Die Metadaten ([[Hilfe:Kategorien|Kategorien]] und [[Hilfe:Internationalisierung|Interwikis]]) {{#ifeq:{{NAMESPACE}}|{{ns:2}}  
+
{| cellspacing="8" cellpadding="0" class="rahmenfarbe1 centered" style="font-size: 100%; border-style: solid; margin-top: 2px; margin-bottom: 2px; background-color: #eeeeff;"
-
  | in [[{{SUBJECTPAGENAME}}/Meta]] werden '''nicht''' eingebunden, weil sich die Vorlage im [[Hilfe:Benutzernamensraum|Benutzernamensraum]] befindet  
+
|-
-
  | werden [[{{SUBJECTPAGENAME}}/Meta|von einer Unterseite eingebunden]]
+
|
-
  }}.</li>
+
<inputbox>
-
| <li class="metadata metadata-label">[{{fullurl:{{SUBJECTPAGENAME}}/Meta|action=edit&preload=Vorlage:Dokumentation/preload-meta}} Metadatenseite erstellen].</li>
+
type=create
-
}}
+
default=Vorlage:<Name der Vorlage>/Doku
-
<li>[[Spezial:Präfixindex/{{SUBJECTPAGENAME}}/|Liste der Unterseiten]].</li>
+
buttonlabel=Dokumentationsseite anlegen
-
</ul>
+
preload=Vorlage:Dokumentation/preload-doku
-
{{!)}}
+
editintro=Vorlage:Dokumentation/intro-doku
-
|<span class="plainlinks" style="font-size:150%;">
+
bgcolor=#eeeeff
-
* [{{fullurl:{{SUBJECTPAGENAME}}/Doku|action=edit&preload=Vorlage:Dokumentation/preload-doku}} Dokumentation erstellen]
+
break=no
-
{{#ifexist:{{SUBJECTPAGENAME}}/Meta||
+
</inputbox>
-
* [{{fullurl:{{SUBJECTPAGENAME}}/Meta|action=edit&preload=Vorlage:Dokumentation/preload-meta}} Metadatenseite erstellen]}}
+
<inputbox>
-
{{#ifexist:{{SUBJECTPAGENAME}}/Test||
+
type=create
-
* [{{fullurl:{{SUBJECTPAGENAME}}/Test|action=edit&preload=Vorlage:Dokumentation/preload-test}} Test-/Beispielseite erstellen]}}
+
default=Vorlage:<Name der Vorlage>/Meta
-
{{#ifexist:{{SUBJECTPAGENAME}}/Wartung||
+
buttonlabel=Metadatenseite anlegen
-
* [{{fullurl:{{SUBJECTPAGENAME}}/Wartung|action=edit&preload=Vorlage:Dokumentation/preload-wartung}} Wartungsseite erstellen]}}
+
preload=Vorlage:Dokumentation/preload-meta
-
</span>{{#ifeq:{{NAMESPACE}}|{{ns:10}}|
+
editintro=Vorlage:Dokumentation/intro-meta
-
[[Kategorie:Vorlage:nicht dokumentiert|{{PAGENAME}}]]
+
bgcolor=#eeeeff
-
}}
+
break=no
-
}}
+
</inputbox>
-
<div style="clear:both;"></div>
+
<inputbox>
-
</div>{{#ifeq:{{NAMESPACE}}|{{ns:2}}||{{#ifexist: {{SUBJECTPAGENAME}}/Meta|{{{{SUBJECTPAGENAME}}/Meta}}
+
type=create
-
}}}}
+
default=Vorlage:<Name der Vorlage>/Test
-
}}
+
buttonlabel=Test- und Beispielseite anlegen
 +
preload=Vorlage:Dokumentation/preload-test
 +
editintro=Vorlage:Dokumentation/intro-test
 +
bgcolor=#eeeeff
 +
break=no
 +
</inputbox>
 +
<inputbox>
 +
type=create
 +
default=Vorlage:<Name der Vorlage>/Wartung
 +
buttonlabel=Wartungsseite anlegen
 +
preload=Vorlage:Dokumentation/preload-wartung
 +
editintro=Vorlage:Dokumentation/intro-wartung
 +
bgcolor=#eeeeff
 +
break=no
 +
</inputbox>
 +
|}
 +
 
 +
Wenn man seine [[Spezial:MyPage/monobook.css|monobook.css]] um <source enclose="div" lang="css">.metadata { display:block !important; }</source> erweitert, bekommt man auf Vorlagenseiten mit Dokumentation Links zum einfacheren Anlegen der Unterseiten angezeigt.

Version vom 20:23, 15. Jan. 2009

Datei:Information icon.svg Diese Seite ist die Dokumentations-Unterseite der Vorlage:Dokumentation.

Diese Vorlage zeigt eine Dokumentationsbox, wie du sie gerade siehst. Sie bindet den Text von der Unterseite [[<Seitenname>/Doku]] ein.

Diese Vorlage sollte bei allen Vorlagen verwendet werden.

Inhaltsverzeichnis

Begründung

Die Trennung von Programmcode und Dokumentation macht den Quelltext übersichtlicher und entlastet vor allem den Parser: Bei jeder Anwendung wird der gesamte Vorlagentext immer wieder neu ausgewertet, samt der Dokumentation, die im Endeffekt ohnehin wieder weggelassen wird. Trotzdem werden <noinclude>s vor den tatsächlichen Einbindungen ausgewertet, so dass man die „Pre-expand include size“ drastisch drücken kann, wenn man die Dokumentationen in Unterseiten schreibt. Daher sollte die Beschreibung immer aus der eigentlichen Vorlage ausgelagert werden. Somit ermöglicht man die Nutzung von mehr Vorlagen pro Artikelseite.

Benutzung

Diese Vorlage erwartet keine Parameter. Es reicht, wenn man <noinclude>{{Dokumentation}}</noinclude> ans Ende einer Vorlage schreibt und die Dokumentationsseite [[<Seitenname>/Doku]] erstellt. Eine Unterseite namens /Meta kann dann die Metadaten für die Vorlage enthalten (hierzu bitte den Abschnitt Besonderheiten lesen), ansonsten können diese mit in die noinclude-tags am Ende der Vorlage platziert werden. Zu den Metadaten gehören die Kategorien und Interwikilinks. Nach dem Erstellen der Dokumentation werden einem Erstellungshilfen bereitgestellt (preload).

In den Unterseiten stellen folgende Codezeilen den Rückbezug sicher

/Doku <noinclude>{{Dokumentation/Dokuseite}}</noinclude>
/Meta <noinclude>{{Dokumentation/Metaseite}}</noinclude><includeonly> … Meta … </includeonly>
/Test <noinclude>{{Dokumentation/Testseite}}</noinclude>
/Wartung <noinclude>{{Dokumentation/Wartungsseite}}</noinclude>

Besonderheiten

Wenn sich die Vorlage im Benutzernamensraum befindet, werden die Metadaten nicht eingebunden und weder die Vorlage, noch die Unterseite, werden in Kategorien einsortiert.

Unterseiten

/Meta
Eine solche Unterseite ist vor allem für vollgesperrte Seiten gedacht, die ansonsten nicht interwikifiziert werden könnten.
/XML
Wenn die Vorlage neben der Dokumentation noch eine XML-Beschreibung für den Vorlagenmeister hat, wird ein entsprechender Hinweis ausgegeben (→ XML-Hinweis).
/Wartung
Sollte es eine Wartungsseite für die Vorlage geben, so wird ebenfalls ein Hinweis ausgegeben (→ Wartungshinweis).
/Test
Ein Hinweis wird auch für Testunterseiten ausgegeben.

Unterseiten anlegen

Wenn man seine monobook.css um

.metadata { display:block !important; }

erweitert, bekommt man auf Vorlagenseiten mit Dokumentation Links zum einfacheren Anlegen der Unterseiten angezeigt.

Persönliche Werkzeuge