Wikipedia:Lua/Modul/TemplUtl
From Wikipedia, the free encyclopedia
TemplUtl – Bibliotheksmodul mit Funktionen für das Arbeiten mit Vorlageneinbindungen.
| Vorlagenprogrammierung | Diskussionen | Lua | Test | Unterseiten | |||
| Modul | Deutsch | English | Modul: | Dokumentation | |||
Funktionen für Vorlagen
- facets
- Zerlegung in suchbare „Wörter“ (Gruppen nur aus Buchstaben und Ziffern aller Schriftsysteme; getrennt durch Sonderzeichen)
- Parameter:
- 1
- zu analysierender Text
- decode
%– Text zunächst URL-dekodieren
- faculty
- Boolesche Auswahl (ja/nein) für Parameterwerte
- Parameter:
- 1
- zu analysierender Parameterwert
- Leerzeichen werden ignoriert, Groß- und Kleinschreibung egal; zwei Interpretationen:
- leer,
0,false, n, no, off, nein,0000,- 1,true, y, yes, on, ja, j;0101(boolesche Schalter dürfen sich wiederholen)
- leer,
- 2
- Verhalten bei nicht erkanntem Wert 1
- (optional)
1– „ja“ (Vorgabe)0– „nein“-– „nein“ (Wert testen)
- Ergebnis:
- leer für „nein“
- nicht leer (
1) für „ja“ -falls2=-und Wert nicht erkannt
- Testseite mit Beispielergebnissen
- failure
- Formatiere Fehlermeldung; in der Bearbeitungsvorschau des Quelltextes im Seitenkopf wiederholen und verlinken
- Parameter:
- 1
- Fehlermeldung
- 2
- Sichtbarkeit der Fehlermeldung in der Darstellung
- (optional)
0– „unsichtbar“ (Vorgabe)1– „sichtbar“
- Ergebnis: HTML-Element
- fake
- Simulation einer Vorlageneinbindung durch blinde Einbindung, dadurch verschwindet diese Vorlage von Spezial:Unbenutzte Vorlagen (insbesondere bei substituierenden Vorlagen sowie für alle Hilfsseiten im Vorlagen-Namensraum, wie Test-, Wartungs-, Editnotice-, Preload- und sonstige Unterseiten, die regulär niemals eingebunden werden).
- Parameter:
- 1
- Titel/Name der Vorlage (nicht aktuelle Seite – schlägt in Kategorie:Wikipedia:Seite mit Vorlagenschleife auf)
- fakes
- Wie fake für eine ganze Serie
- Parameter:
- 1 2 3 4 5 6 7 8 9 …
- Titel/Name/Namensteil je einer Vorlage, beliebig viele
- prefix
- (optional) Wird dem Namen jeder Vorlage vorangestellt
- list
- (optional)
1– Verlinkung jedes Eintrags aktivieren; als Aufzählung
- firstbreak
- Wenn das erste Zeichen des Textes (nach Trimmung) ein Aufzählungszeichen
*#;:oder Tabellenbeginn/-ende usw. ist, das erst auf einer neuen Zeile wirksam wird, dann stelle einen Zeilenumbruch voran. - Parameter:
- 1
- Wikitext
- Ergebnis: getrimter Text, ggf. mit vorangestelltem Zeilenumbruch
- from
- Stelle den Namen der unmittelbar umgebenden Seite (Vorlage) anklickbar umgeben von nicht wirksamen doppelten geschweiften Klammern dar.
- isRedirect
- Erfolgt diese Einbindung auf einer Seite, die eine Weiterleitung ist?
- isTempAccount
- Ist dies ein temporäres Benutzerkonto?
- (optional)
1– „temporäres Benutzerkonto“; oder abgeleitet vom Seitenname - leer – Anmeldename oder IP oder ungültig
- nowiki1
- Wenn das erste Zeichen des Textes (nach Trimmung) ein Aufzählungszeichen
*#;:ist, das als solches wirksam würde, dann stelle es als HTML-Entity dar. - Ergebnis: getrimter Text, ggf. mit HTML-Entity
- Wikitext
- siteID
- Datenbankname
dewiki- failsafe
Die Failsafe-Schnittstelle erlaubt den damit ausgerüsteten Modulen in globaler Verteilung
- sicherzustellen, dass eine von einer Vorlage oder einem Modul benötigte Funktion in der lokalen Kopie eines Bibliotheksmoduls vorhanden ist, und ggf. auch in einer erforderlichen Mindestversion;
- die globale Aktualisierung und Verknüpfung von Modulen über Wikidata zu verwalten.
Die Failsafe-Schnittstelle liegt sowohl auf Ebene der Vorlagen wie auch in direktem Lua-Zugriff vor.
Die Funktionen sind im Einzelnen (nicht alle werden bereits überall in vollem Umfang unterstützt):
| Wert | Ergebnis | aktuell |
|---|---|---|
nichtsfalse |
lokale Version | »2025-07-16« |
| Mindestversion | Mindestversionsbezeichnung Datum im ISO-Format Es wird verglichen, ob das aktuelle Modul diese Version oder später erfüllt.
|
|
wikidata |
Versionsbezeichnung der globalen Mutter (d:Q52364930)
|
»2025-07-16« |
item |
ID des Wikidata-Items
|
»Q52364930« |
~ |
Übereinstimmung der lokalen mit der auf Wikidata registrierten Versionsbezeichnung
|
»« |
@ |
Ist die aktuelle (Modul-)Seite richtig mit Wikidata verknüpft?
|
|
Der Rückgabewert ist in der Vorlagenprogrammierung leer und per Lua false; andernfalls die angegebene Zeichenkette. | ||
Eine Einbindung erfolgt jeweils im Format
Allgemeine Hinweise zur Einbindung von Modulen
{{#invoke: TemplUtl | Funktionsname | Wert1 | Wert2 | NameX=Wert … }}
Die Parameter können wie bei Vorlagen benannt oder unbenannt sein; deren Regeln gelten analog.
Wenn unbekannte Zeichenketten von außen kommen (als Vorlagenparameter), sollte immer mit der Form 1=Wert gearbeitet werden.
Zu allgemeinen Problemen beachte die Abhilfen wie bei Vorlagen.
Wenn in einer Vorlage ein Modul verwendet wird, sollte auch immer die Vorlage:Dokumentation/Lua in der Dokumentationsseite eingebunden werden.
- Das gibt einem Programmierer Aufschluss, dass ein Lua-Modul benutzt wird, welche/s und ggf. welche Einzelfunktion daraus, und verlinkt auf die Dokumentation.
- Die Modul-Dokumentationen bekommen ein Link, in welchen Vorlagen sie eingesetzt werden, und wo bei eventuellen Funktionsänderungen Anpassungen erforderlich werden.
- Die Vorlage wird zur Übersicht kategorisiert in Kategorie:Vorlage:mit Lua-Programmierung.
Zu weiteren Informationen siehe Hilfe:Lua.
Bei Problemen wende dich bitte an die Vorlagen-Werkstatt, in schweren Fällen hilft auch die Lua-Werkstatt.