Vorlagen- programmierung |
Diskussionen | Lua | Unterseiten | ||||||
Modul | Deutsch | English
|
Esperanto | Dolnoserbski | Hornjoserbsce | Modul: | WP:Lua |
LuaWiki
– Modul mit Funktionen zur Lua-Programmierung im Wiki-Projekt.
Funktionen für Vorlagen
BearbeitenKeine Nutzung in Vorlagen sinnvoll.
Funktionen für Lua-Module
BearbeitenEinbindung in das eigene Modul mittels require()
wie folgt:
local lucky, LuaWiki = pcall( require, "Modul:LuaWiki" )
if type( LuaWiki ) == "table" then
LuaWiki = LuaWiki.LuaWiki()
else
-- Fehlerfall; LuaWiki enthält Fehlermeldung
return "<span class='error'>" .. LuaWiki .. "</span>"
end
Danach stehen die Funktionen zur Verfügung.
- LuaWiki.getArg( arg, assign )
- Vorlagenparameter auslesen.
arg
– string oder number; Bezeichner des Argumentsassign
– optional; Rückfallwert beliebigen Typs, wenn in Vorlageneinbindung nicht angegeben- Rückgabe: Zeichenkette (gesichert) oder sonst Rückfallwert
- Wenn in der Vorlageneinbindung nicht angegeben und kein Rückfallwert, dann:
{{{<
arg>}}}
- LuaWiki.getVariable( seek, numeric )
- Projektvariable auslesen; siehe Hilfe:Parserfunktionen.
seek
– string; Bezeichner der Variable, etwa"REVISIONID"
numeric
– boolean, optional; numerischer Rückgabewert- Rückgabe: Zeichenkette oder numerisch
- Eine vorherige Initialisierung mit initVariables beschleunigt, ist aber nicht zwingend.
- LuaWiki.initVariables( request )
- Initialisierung der benötigten Projektvariablen zur Beschleunigung.
request
– table; Bezeichner der Variablen- Jedes Element wahlweise:
- string; Bezeichner der Variable, etwa
"REVISIONID"
- table; Variable wird immer mit numerischem Wert geliefert
- [1] string; Bezeichner der Variable
- [2]
true
- string; Bezeichner der Variable, etwa
- Jedes Element wahlweise:
- Rückgabe: keine
- LuaWiki.isExisting( seek )
- Existenz einer Seite prüfen; analog
#ifexist
.[1]seek
– string; vollständiger Seitenname- Rückgabe: boolean
- Wenn Namensraum und Titel einzeln vorliegen, sollte verwendet werden:
mw.title.makeTitle( namespace, title ).exists
- LuaWiki.transclude( s, args )
- Seite einbinden ohne Skriptfehler bei fehlender Seite.
s
– string; Seitenname (ohne Namensraum:Vorlage:
)args
– table, optional; Argumente- Rückgabe: Zeichenkette; Einbindung oder Fehlermeldung bei fehlender Seite
Verwendung
BearbeitenAllgemeine Bibliothek; nicht eingegrenzt.
Bekannte Anwendungen
Bearbeiten- Module:Vorlage:LuaModuleDoc – Verwendungsbeispiel
Abhängigkeiten
BearbeitenKeine.
Anmerkungen
Bearbeiten- ↑ Dies wird dem expensiveCount hinzugezählt. Dieser ist auf 500 pro dargestellte Gesamt-Seite begrenzt.