Wikipedia:Lua/Modul/PageUtil

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Vorlagenprogrammierung Diskussionen Lua Unterseiten
Modul Deutsch English

Modul: Dokumentation

PageUtil – Modul mit Hilfsfunktionen im Zusammenhang mit ganzen Wiki-Seiten.

Funktionen für Vorlagen

getCategories
In welche Kategorien ist diese Seite eingeordnet?
Parameter (optional):
1
Seitenname
Vorgabe: aktuelle Seite
Das Ergebnis ist eine durch | getrennte Liste von Kategorie-Titeln.
  • „Wikipedia:Lua/Modul“
getProtection
Ist diese Seite geschützt?
Parameter (alle optional):
1
Seitenname
Vorgabe: aktuelle Seite
2
Aktion
Vorgabe: edit
Sonst: move / create / upload
Das Ergebnis ist eines von: leer, ½, ¾, 1
isRedirect
Ist dies eine Weiterleitungsseite?
Das Ergebnis ist leer, wenn auf regulärer Seite eingebunden; auf einer Weiterleitungsseite eine nicht-leere Zeichenkette.
merge
Seiten verschmelzen.
Das Ergebnis ist eine Zeichenkette, bei der die einzelnen Inhalte ohne Zeilenumbruch aneinandergereiht werden.
Bis zu 200 Seiten und Abschnitte können eingebunden werden; siehe Hilfe:Vorlagenbeschränkungen #expensive.
Parameter (alle optional):
1
Erstes Textelement.
Eines der folgenden Formate:
  1. [[ Seitenname ]]
    Gesamte Seite einbinden.
    Verlinkungen auf diese Seite werden durch innere Links ersetzt.
  2. #lst: [[ Seitenname ]] Marke
    #lstx: [[ Seitenname ]] Marke
    Abschnitt einer Seite einbinden.
    Weil nicht bekannt ist, welche Fragmente angesteuert werden können, werden hier keine inneren Links für diese Seite umgewandelt.
  3. Sonstiger beliebiger Text.
    Zeilenumbrüche können sicher erzeugt werden mittels folgender Konstruktion:
| <nowiki />
=== Schlussbemerkzung ===
<nowiki />
2 3 4 5 6 7 8 9 …
Weitere, beliebig viele Textelemente.
Die Textelemente werden in numerischer Folge des Parameternamens eingebunden.
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):

Parameter
Wert Ergebnis aktuell
nichts
false
lokale Version »2024-08-20«
Mindest­version Mindestversionsbezeichnung
Datum im ISO-Format

Es wird verglichen, ob das aktuelle Modul diese Version oder später erfüllt.

  • leer, falls Mindestversion nicht erfüllt
  • 2001-01-01 → »2024-08-20«
  • 2099-01-01 → »«
wikidata Versionsbezeichnung der globalen Mutter (d:Q89064539)
  • Versionsbezeichnung auf Wikidata
  • lokal, falls dort keine gefunden
»2024-08-20«
item ID des Wikidata-Items
  • leer, falls nicht definiert
»Q89064539«
~ Übereinstimmung der lokalen mit der auf Wikidata registrierten Versionsbezeichnung
  • leer, falls aktuell
  • Versionsbezeichnung auf Wikidata, falls ungleich
»«
@ Ist die aktuelle (Modul-)Seite richtig mit Wikidata verknüpft?
  • leer, falls mit dem richtigen Item verknüpft
  • Item-ID, falls nicht
Der Rückgabewert ist in der Vorlagenprogrammierung leer und per Lua false; andernfalls die angegebene Zeichenkette.


Allgemeine Hinweise zur Einbindung von Modulen

Eine Einbindung erfolgt jeweils im Format

{{#invoke: PageUtil | 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.

  1. Das gibt einem Programmierer Aufschluss, dass ein Lua-Modul benutzt wird, welche/s und ggf. welche Einzelfunktion daraus, und verlinkt auf die Dokumentation.
  2. Die Modul-Dokumentationen bekommen ein Link, in welchen Vorlagen sie eingesetzt werden, und wo bei eventuellen Funktionsänderungen Anpassungen erforderlich werden.
  3. 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.