„Hilfe:Parserfunktionen/Programmierung“ – Versionsunterschied
Erscheinungsbild
Inhalt gelöscht Inhalt hinzugefügt
lf |
K AZ: Der Seiteninhalt wurde durch einen anderen Text ersetzt. Markierungen: Ersetzt Zurückgesetzt Visuelle Bearbeitung: Gewechselt |
||
Zeile 1: | Zeile 1: | ||
{{msgnw:@}} |
|||
<noinclude>{{Hilfe}} |
|||
Diese Hilfeseite erläutert spezielle '''[[Hilfe:Parserfunktionen|Parserfunktionen]]''', die in der Vorlagenprogrammierung relevant sind.</noinclude><includeonly> |
|||
== Programmierung == |
|||
Diese Funktionen werden für spezielle Aufgaben in der Vorlagenprogrammierung benötigt.</includeonly> |
|||
{{Str match|{{MSGNW::{{#invoke:WLink|getPlain|[[Netflix]] (USA)}}}}|Kategorie%:Video%-on%-Demand%-Anbieter}} |
|||
Die deutschsprachigen Lokalisierungen sind ungebräuchlich, weitgehend unbekannt und verhindern erfolgreiche Textsuchen. |
|||
<includeonly>=</includeonly>== {{Anker|tag}} Tag-Erweiterung einbinden – #tag ==<includeonly>=</includeonly> |
|||
{| class="wikitable" |
|||
|- class="hintergrundfarbe8" |
|||
! Funktion !! [[Hilfe:Parserfunktionen#L10N|Lokalisierung]] !!colspan="2"| Pflichtparameter !!colspan="2"| Parameter |
|||
|- class="hintergrundfarbe5" |
|||
| <code>#tag</code> |
|||
| <code style="font-size:89%; text-decoration:line-through;">#erweiterung</code> |
|||
|style="border-right-style:none"| ''Erweiterung'' |
|||
|style="border-left-width:2px; border-left-color:#000000; border-right-style:none;"| ''Inhalt'' |
|||
|style="border-left-width:2px; border-left-color:#000000; border-right-style:none;"| ''Parameter'' |
|||
|style="border-left-width:2px; border-left-color:#000000;"| ''Parameter'' |
|||
|- |
|||
|colspan="6"| [[Hilfe:Tags#Wiki-Erweiterung|Tag-Erweiterung]] von MediaWiki (kein HTML) mit veränderlichem Inhalt einbinden. |
|||
* ''Erweiterung'' ist der Name der Erweiterung. |
|||
* ''Inhalt'' ist der in der Regel erforderliche Inhalt des Elements; andernfalls wäre diese Parserfunktionen eher sinnfrei. |
|||
* Weitere ''Parameter'' (meist benannt) können dem Element zugewiesen werden. |
|||
Im Unterschied zu einer direkten Angabe im Quelltext können im Inneren des Elements zuvor noch Teile des Quelltextes aktuell generiert werden, was bei den meisten Erweiterungen nicht möglich ist. |
|||
|- |
|||
|colspan="6" class="hintergrundfarbe9"| '''Beispiel:''' |
|||
<pre> |
|||
{{#tag:nowiki|http://{{{Domain}}}/{{{Pfad}}}}} |
|||
</pre> |
|||
Wirkung: |
|||
# Die beiden Vorlagenparameter <code><nowiki>{{{Domain}}}</nowiki></code> und <code><nowiki>{{{Pfad}}}</nowiki></code> werden durch ihre aktuellen Werte ersetzt. |
|||
# Das gesamte Konstrukt wird als <code><nowiki></code> eingeschlossen. |
|||
# Dadurch ist die URL nicht anklickbar, aber inhaltlich vollständig. |
|||
Beim üblichen Konstrukt <code style="font-size:85%; white-space:nowrap;"><nowiki><nowiki>http://{{{Domain}}}/{{{Pfad}}}</nowiki></nowiki></code> sind hingegen <code style="font-size:85%"><nowiki>{{{Domain}}}</nowiki></code> und <code style="font-size:85%"><nowiki>{{{Pfad}}}</nowiki></code> ebenfalls syntaktisch nicht wirksame Texte. |
|||
|} |
|||
<includeonly>=</includeonly>== {{Anker|invoke}} Modul-Funktion einbinden – #invoke ==<includeonly>=</includeonly> |
|||
Siehe ausführlich [[Hilfe:Lua#invoke|Hilfe:Lua]]. |
|||
{| class="wikitable" |
|||
|- class="hintergrundfarbe8" |
|||
! Funktion !! [[Hilfe:Parserfunktionen#L10N|Lokalisierung]] !!colspan="2"| Pflichtparameter !!colspan="2"| Parameter |
|||
|- class="hintergrundfarbe5" |
|||
| <code>#invoke</code> |
|||
| <code style="font-size:89%; text-decoration:line-through;">#aufrufen</code> |
|||
|style="border-right-style:none"| ''Modul'' |
|||
|style="border-left-width:2px; border-left-color:#000000; border-right-style:none;"| ''Funktion '' |
|||
|style="border-left-width:2px; border-left-color:#000000; border-right-style:none;"| ''Parameter'' |
|||
|style="border-left-width:2px; border-left-color:#000000;"| ''Parameter'' |
|||
|- |
|||
|colspan="6"| Modul-Funktion einbinden. |
|||
* ''Modul'' ist der Name des Moduls (ohne <code>Modul:</code> vorangestellt). |
|||
* ''Funktion'' ist der Name der Funktion im Modul. |
|||
* Weitere ''Parameter'' können dem Funktionsaufruf beigegeben werden. |
|||
|} |
|||
<includeonly>=</includeonly>== Substitution – subst ==<includeonly>=</includeonly> |
|||
Siehe ausführlich [[Hilfe:Substitution#Programmierung|hier]]. Der Quelltext wird nach Abspeicherung ersetzt durch die ausgewerteten Resultate der Ausdrücke. |
|||
{| class="wikitable" |
|||
|- class="hintergrundfarbe8" |
|||
! Funktion !! [[Hilfe:Parserfunktionen#L10N|Lokalisierung]] !! Pflichtparameter !!colspan="2"| Parameter |
|||
|- class="hintergrundfarbe5" id="subst" |
|||
| <code>subst</code> |
|||
| <code style="font-size:89%; text-decoration:line-through;">ers</code> |
|||
|style="border-right-style:none"| ''Funktion/Seite'' |
|||
|style="border-left-width:2px; border-left-color:#000000; border-right-style:none;"| ''Parameter'' |
|||
|style="border-left-width:2px; border-left-color:#000000;"| ''Parameter'' |
|||
|- |
|||
|colspan="5"| Parserfunktion oder Seiteneinbindung substituieren. |
|||
* ''Funktion/Seite'' ist der Name des Konstrukts. |
|||
* Weitere ''Parameter'' können beigegeben werden. |
|||
|- class="hintergrundfarbe5" id="safesubst" |
|||
| <code>safesubst</code> |
|||
| |
|||
| ''Funktion/Seite'' |
|||
| ''Parameter'' |
|||
| ''Parameter'' |
|||
|- |
|||
|colspan="5"| Sehr ähnlich <code>subst</code>, mit leicht unterschiedlicher Wirkung in Feinheiten. |
|||
|} |
|||
<includeonly>=</includeonly>== {{Anker|msgnw}} Seitenquelltext einbinden – msgnw ==<includeonly>=</includeonly> |
|||
Diese Funktion ist heutzutage ungebräuchlich; es wird eher eine formatierte Präsentation mittels <code>[[#tag|tag:]]</code> bevorzugt wie: |
|||
<pre> |
|||
{{#tag:syntaxhighlight | {{Modul:Hello}} | lang=lua}} |
|||
</pre> |
|||
Allerdings funktioniert das nicht mit Wikitext als eingebundene Seite, der bei seiner Einbindung reagiert und ausgewertet wird. Das ist gerade die Wirkung und das Ziel von Vorlagen. |
|||
* Der Name bedeutet: |
|||
** <code>[[#msg|msg:]]</code>''nowiki'' |
|||
** <code>raw:</code> heißt „roh“ und entspricht <code>[[Hilfe:URL-Parameter#RAW|action=raw]]</code> |
|||
{| class="wikitable" |
|||
|- class="hintergrundfarbe8" |
|||
! Funktion !! Pflichtparameter |
|||
|- class="hintergrundfarbe5" |
|||
| <code>msgnw</code><br /> <code>raw</code> |
|||
| ''Seite'' |
|||
|- |
|||
|colspan="4"| Seitenquelltext darstellen. |
|||
* ''Seite'' ist der Name der Seite; ohne Namensraum als <code>Vorlage:</code>. |
|||
Das Ergebnis ist syntaktisch nicht wirksam. |
|||
|- |
|||
|colspan="4" class="hintergrundfarbe9"| '''Beispiel:'''<br /> |
|||
<code><nowiki>{{msgnw:@}}</nowiki></code> ([[Vorlage:@]]) → |
|||
{{#tag:pre| {{msgnw:@}} |style=font-size:80%}} |
|||
|} |
|||
<includeonly>=</includeonly>== {{Anker|msg}} Veraltet: Seite einbinden ==<includeonly>=</includeonly> |
|||
Diese Funktion war in den frühen 2000er Jahren der Vorläufer gewesen, bevor das [[Hilfe:Seiten einbinden|Einbinden von Seiten]] reguläre Syntax wurde. |
|||
* Die Vorgabe für den Namensraum ist <code>Vorlage:</code> genau wie bei normalen Einbindungen. |
|||
* Benannte und unbenannte Parameter werden wie bei Vorlagen in der eingebundenen Seite ersetzt. |
|||
* Zunächst war es eher für die Systemnachrichten gedacht gewesen, worauf noch der Name hindeutet. Diese wandelten sich jedoch zur Parserfunktion <code>[[Hilfe:Parserfunktionen/Multilingual#int|int:]]</code> und erwarten $1 $2 $3 usw. als Platzhalter, passen sich aber umgekehrt an die aktuelle Benutzersprache an. |
|||
* <code>msg:</code> und <code>int:</code> waren ursprünglich ähnliche Konzepte; <code>int:</code> arbeitet nur im Namensraum <code>MediaWiki:</code> und beachtet sprachabhängige Unterseiten; <code>msg:</code> in beliebigen Namensräumem mit Vorgabe <code>Vorlage:</code> und ist nicht von der Benutzersprache abhängig. Die Platzhalter der zunächst nur unbenannten Parameter wurden anders gestaltet, um später auch beliebig benannte Parameter zu ermöglichen. <code>msg:</code> war als lokal definierbare Nachricht für den Wikitext eine Variante zur Systemnachricht der Software. |
|||
{| class="wikitable" |
|||
|- class="hintergrundfarbe8" |
|||
! Funktion !! Pflichtparameter !!colspan="2"| Parameter |
|||
|- class="hintergrundfarbe5" |
|||
| <code>msg</code> |
|||
|style="border-right-style:none"| ''Seite'' |
|||
|style="border-left-width:2px; border-left-color:#000000; border-right-style:none;"| ''Parameter'' |
|||
|style="border-left-width:2px; border-left-color:#000000;"| ''Parameter'' |
|||
|- |
|||
|colspan="4"| Seiteneinbindung. |
|||
* ''Seite'' ist der Name der Seite; ohne Namensraum als <code>Vorlage:</code>. |
|||
* Weitere ''Parameter'' können beigegeben werden. |
|||
|- |
|||
|colspan="4" class="hintergrundfarbe9"| '''Beispiel:''' <code><nowiki>{{msg:@|30px}}</nowiki></code> ([[Vorlage:@]]) → {{msg:@|30px}} |
|||
|} |
|||
{{Hilfe/Weitere Informationen|Liste= |
|||
* [[Hilfe:Parserfunktionen/Kontrollstrukturen|Kontrollstrukturen]] – bedingte Auswertungen |
|||
* [[Hilfe:Lua/Modul im Wiki#Komponenten|Lua/Modul im Wiki]] – Lua-Funktionen zur nachträglichen Ausführung |
|||
** <code>frame:extensionTag()</code> – Tag-Erweiterung einbinden |
|||
** <code>frame:expandTemplate()</code> – Seiteneinbindung |
|||
|NOTOC=<includeonly>3</includeonly> |
|||
}} |
|||
<noinclude> |
|||
[[Kategorie:Hilfe:Vorlagen]] |
|||
[[Kategorie:Hilfe:Wikisyntax]] |
|||
</noinclude> |
Version vom 14. April 2022, 16:04 Uhr
<onlyinclude>[[Datei:At sign.svg|{{{1|17px}}}|klasse=skin-invert|verweis=|alt=( @ – at-Zeichen für E-Mail )|(at)]]</onlyinclude> {{Dokumentation}}