Stewie (Nutzer) Wiki

Fehlersammlung  •   Bot  •   Ablage  •   Lua  •   Fehlende Artikel

Lua Module funktionieren nahezu wie Vorlagen, sind bei komplexen anliegen aber schneller und lesbarer als Wikicode.

Wichtige Ressourcen:

Einsatz: Scribunto-Lua-Skripte werden in dem Namensraum Module abgelegt. Module laufen auf Wiki-Seiten unter Verwendung der #invoke Parser-Funktionen. Jedes Modul hat eine Sammlung an Funktionen, die mittels Wiki-Syntax aufgerufen werden können, wie:

 {{#invoke: Module_name | function_name | arg1 | arg2 | arg3 ... }}

Einfaches Beispiel, das Modul "LuaTest" mit der Funktion "hello", es erzeugt als ausgabe (return) "Hello, world!"

local p = {} 

function p.hello( frame )
    return "Hello, world!"
end

return p

Einbindung in eine Wikiseite

{{#invoke:LuaTest|hello}}

Ergebnis: Hello, world!

Beispiel mit Argumenten:

Lua Funktionen können beliebige Parameter übergeben bekommen, hier frame.args[1]

Angepasstes Lua Modul


local p = {} --local p = {} -- p steht für Paket (engl. package)

function p.hello( frame )
    return frame.args[1]
end

return p

{{#invoke:LuaTest_Argumente|hello|Ein Toller Text}}

Ergebnis: Ein Toller Text

Beispiel Semantische Angaben verarbeiten: Semantische Abfragen können innerhalb von Lua Scripten Erfolgen, die abfragen können dann entsprechend weiterverarbeitet werden. Die Rückgabe der Abfrage erfolgt dabei als "Array", die weiterverarbeitung ist etwas gewöhnungsbedürftig

Beispielweise sollen alle offiziellen Publikationen abgefragt werden, uns interessieren dabei die Autor:innen

local queryResult =  mw.smw.ask('[[Hauptkategorie::Publikation]][[Kanon::offiziell]]|?Autoren#-=2|mainlabel=-|limit=500')


Liste von Modulen

Ausbildung Stewie/Lua:
Ressourcen:
Stärken:
Fertigkeiten:
Meisterschaften:

Personen mit Ausbildung als Stewie/Lua

Dakardsmyr (Publikation): Seite: 20-29,6 (Geschichte),
Selenia (Publikation):Fehler: keine Seitenzahl zu finden
Splittermond: Die Welt: Seite: 48-50