ca.m.wikipedia.org
Viquipèdia:Lua
Lua és un llenguatge de programació disponible a la Viquipèdia amb l'extensió del MediaWiki Scribunto. El codi Lua es pot incrustar en plantilles wiki utilitzant la funcionalitat "{{#invoke:}}" de l'extensió Scribunto.
El codi font de Lua es desa en pàgines anomenades mòduls (p.ex. Mòdul:Demo). Aquests mòduls individuals són invocats en pàgines de plantilles. Per exemple, Mòdul:Demo/ús utilitza el codi {{#invoke:Demo|hola}} mostrant el text "Hola, món!".
Què és Lua
Presentació en pdf sobre com convertir una plantilla amb text wiki a un mòdul Lua.
Lua és un llenguatge script que es pot utilitzar per analitzar dades, calcular expressions i formatar els resultats utilitzant funcions o programació orientada a objectes. Encara que alguns scripts Lua es poden mantenir simples, per entendre'ls millor, Lua permet estructures complexes que poden ser un repte per a experts informàtics, amb taules, funcions dinàmiques i agrupacions associatives. Lua també suporta recursivitat de funcions o permet corutines per multitasques cooperatives. Cal procurar d'evitar excessiva complexitat perquè altres usuaris no entendrien com mantenir un mòdul Lua. A continuació es mostra un exemple de codi font Lua per a una funció factorial:
function factorial(n) if n == 0 then return 1 --retorna el resultat 1 quan es passa zero else return n * factorial(n - 1) end end for index = 1,5 do print(index, "n! = ", factorial(index) ) end
Una mostra de codi Lua es pot ressaltar amb l'etiqueta "<source lang="lua">...</source>". Per a exemples més complexos vegeu l'article en anglès "Lua (programming language)".
Espai de noms Mòdul
Lua amb Scribunto s'utilitza a la Viquipèdia en l'espai de noms Mòdul (en anglès Module, també vàlid). Per la seva organització se segueixen algunes convencions.
Igual que amb les plantilles, la documentació d'ús s'inclou en la subpàgina /ús. Aquesta documentació és incrustada al principi de la seva pàgina principal. Per exemple, Mòdul:Demo mostra primer el contingut de Mòdul:Demo/ús i a continuació el propi codi.
Les pàgines en l'espai Mòdul tenen un editor de codi "Ace" escrit amb JavaScript. Són una excepció les subpàgines /ús que són tractades com a text wiki, així com l'espai "Mòdul Discussió". L'editor Ace proporciona sagnat automàtic i marcatge de sintaxi. No és possible reanomenar pàgines de codi Lua a altres de text wiki, o a l'inrevés.
Proves de mòduls
Per fer proves unitàries es disposa del Mòdul:UnitTests. Permet executar el vostre script amb una sèrie de casos de prova i comprovar que es produeix el resultat esperat. Per convenció, l'entorn de tests és en subpàgines /tests i s'executa en la pàgina de discussió corresponent. Per exemple, Mòdul:Demo disposa de Mòdul:Demo/tests amb el resultat mostrat a Mòdul Discussió:Demo/tests.
Per fer proves amb nous mòduls és recomanable seguir l'estructura "Mòdul:Proves/Nom d'usuari/Nom del mòdul". Així, totes les proves són subpàgines de "Mòdul:Proves" i totes les proves d'un mateix usuari són subpàgines de "Mòdul:Proves/Nom d'usuari".
Per fer canvis en mòduls existents, és recomanable provar-ho abans. Un mòdul pot ser usat per diferents plantilles que alhora poden estar incloses en diferents pàgines augmentant el nombre total de pàgines que poden estar afectades en cada modificació. Es poden seguir les mateixes indicacions de Viquipèdia:Proves de plantilles. Amb la pàgina Especial:TemplateSandbox es poden provar diferents pàgines substituint tant plantilles com mòduls per aquells que existeixin en el vostre espai personal de proves.
Vegeu també
Darrera modificació: 20 oct 2021 a les 20:40
Viquipèdia
El contingut està disponible sota la llicència CC BY-SA 3.0 si no s'indica el contrari.
Política de privadesa
Condicions d'úsEscriptori
IniciAleatori A prop Inici de sessió Configuració DonatiusQuant al projecte ViquipèdiaDescàrrec de responsabilitat
LlenguaVigilaModifica