Lua ist eine Skriptsprache, die im März 2013 in der deutschsprachigen Wikipedia verfügbar wurde.

Organisationsfragen der deutschsprachigen Wikipedia werden unter Wikipedia:Lua zusammengestellt.

Die Darstellung auf diesen Hilfeseiten trifft dagegen im Prinzip auf jedes beliebige Wiki zu.

Vorlagenprogrammierung[Werkeln | Am Gwëntext werkeln]

Aufruf (in der Regel innerhalb einer Vorlage):
((#invoke: Modul-Titel | Funktionsname | Wert1 | Wert2 | NameX=Wert ... ))
Die Parameter können wie bei Vorlagen benannt oder unbenannt sein; es gelten prinzipiell analoge Regeln.

Ein Aufruf von #invoke unmittelbar in einem enzyklopädischen Artikel oder einer allgemeinen Projektseite ist absolut unerwünscht. Diese Aufrufe sollen immer in Vorlagen verpackt sein; ausgenommen sind solche Projektseiten, die sich spezifisch mit Lua beschäftigen (WP:Lua/***).

Begrenzungen[Werkeln | Am Gwëntext werkeln]

Siehe auch: Hilfe:Vorlagenbeschränkungen.

Modul-Namensraum[Werkeln | Am Gwëntext werkeln]

Organisation der Seiten

Weiterleitungen und Verschiebungen

Weiterleitungen von einer Modulseite zu einer anderen sind nicht möglich. Eine „Weiterleitung“ würde Wikisyntax statt Lua-Quellcode erzeugen und (anders als im Fall von Vorlagen) alle Einbindungen und require() des Moduls zum Auswerfen von Syntaxfehlern bringen; deshalb könnte eine Weiterleitung noch nicht einmal ohne Weiteres abgespeichert werden.

Wenn der Name eines Moduls nicht mehr geeignet erscheint, muss die Existenz von Lua-Quellcode unter den programmierten Namen gesichert bleiben. „Normale“ Verschiebungen sind nicht möglich. Bei produktiv genutzten Modulen, die bereits von sehr vielen Seiten eingebunden sind, ist die Prozedur recht umständlich; insbesondere wenn bereits mehrere Entwickler mitgewirkt hatten.

Allerdings kann bis zur Auflösung aller Nutzungen eine einheitliche Funktionalität erreicht werden, indem als einzige Zeile vorgehalten wird: return require( "Modul:NeuerName" )

Solange das Modul noch nicht produktiv genutzt wird, kann es jedoch einfach verschoben werden.

Seiten-Bearbeitung

Siehe dazu: Hilfe:Lua/Quellcode und Vorschau

Das Speichern von fehlerhaften Lua-Modulen ist seit Oktober 2014 nicht mehr möglich.

Syntaxhervorhebung und Zeilennummern

Bis zu einer gewissen Maximalgröße der Seite werden die Syntaxelemente in unterschiedlichen Farben dargestellt. Seit Anfang 2021 werden auf Code-Seiten auch Zeilennummern angezeigt.

Die Maximalgröße von Seiten mit Syntaxhervorhebung, die eine farbige Auszeichnung bei zu großen Seiten unterbindet, verhindert dann auch die Generierung der Zeilennummern.

Erprobung[Werkeln | Am Gwëntext werkeln]

Spielwiese
Freies Ausprobieren kleiner Code-Fragmente auf kurze Zeit.
Für größere Entwicklungsarbeiten ermöglicht die Vorlagenspielwiese auch Quelltext-Module auf eigenen Benutzerseiten.
Hello
Demonstrationsmodul (Hallo, Welt!)Hallo, Welt! Dies ist Lua!
Alle Benutzer
zum Beta-Testen durch mehrere Anwender mit
  • Modul:Benutzerin:xxxxxxxxxxxx
  • Modul:Benutzer:xyxyxyxyxyxy
  • Unterseiten für Benutzer-Module sind möglich.
  • Seite muss auch dort angelegt werden.
Vorlagenspielwiese
Alle Benutzer können mittels der Vorlagenspielwiese auf ihren Benutzerseiten eigene Module zum Testen verwalten. Mittels des Benutzerskriptes editorContent steht dann auch der CodeEditor zur Verfügung.

Außerdem sind testwiki:, test2wiki: (mit dem eigenen SUL-Account) und auch de.wikipedia.beta (separater Account nötig) nutzbar. In der echten dewiki sollten dann erst halbwegs ausgereifte Produktiv-Versionen auftauchen.

Programmieren in Lua[Werkeln | Am Gwëntext werkeln]

Siehe dazu Hilfe:Lua/Programmierung mit den Spezialthemen

Zur Sprache Lua allgemein siehe die als Weblinks angegebenen Handbücher.

Darstellung von Quellcode[Werkeln | Am Gwëntext werkeln]

Weitere Informationen[Werkeln | Am Gwëntext werkeln]

MediaWiki MediaWiki: Extension:Scribunto/Lua reference manual – Freie Wikisoftware

Vorlog:Wikipedia-Namensräume