Wikipedija:Lua
To je informacijska stran. Ni pravilo ali smernica Wikipedije, ampak je njen namen opisati nekatere vidike norm, običajev, tehničnih postopkov ali praks Wikipedije. Predstavlja lahko različne stopnje konsenza in preverjanja. |
Imenski prostori | |||
---|---|---|---|
Imenski prostori subjektov | Imenski prostor pogovorov | ||
0 | (Glavni/Članek) | Pogovor | 1 |
2 | Uporabnik | Uporabniški pogovor | 3 |
4 | Wikipedija | Pogovor o Wikipediji | 5 |
6 | Slika | Pogovor o sliki | 7 |
8 | MediaWiki | Pogovor o MediaWiki | 9 |
10 | Predloga | Pogovor o predlogi | 11 |
12 | Pomoč | Pogovor o pomoči | 13 |
14 | Kategorija | Pogovor o kategoriji | 15 |
100 | Portal | Pogovor o portalu | 101 |
118 | Osnutek | Pogovor o osnutku | 119 |
710 | TimedText | TimedText talk | 711 |
828 | Modul | Pogovor o modulu | 829 |
Nezaželeno | |||
2300 | [[Wikipedija:Gadget|]] | 2301 | |
2302 | [[Wikipedija:Gadget|]] | 2303 | |
Ni nameščeno | |||
90 | Thread | Thread talk | 91 |
92 | Summary | Summary talk | 93 |
108 | Book | Book talk | 109 |
442 | Course | Course talk | 443 |
444 | Institution | Institution talk | 445 |
446 | Education Program | Education Program talk | 447 |
2600 | Topic | 2601 | |
Virtualni imenski prostori | |||
-1 | Posebno | ||
-2 | Datoteka | ||
Trenutni seznam (klic API) |
Lua je programski jezik, ki je sedaj na voljo preko MediaWiki razširitve (extension) Scribunto. Lua koda se lahko sedaj lahko vstavi v wiki stran z uporabo funkcionalnosti "{{#invoke:}}" Scribunto MediaWiki razširitve. Nadomešča funkcije razčlenjevalnika kode.
Izvorna koda Lua je shranjena na straneh, imenovanih moduli (t.j., Modul:Zgled). Ti posamezni moduli se nato vključijo (s kodo {{#invoke:<Ime modula>|<Ime funkcije>|(opcijsko) param1 | param2...}}
). Zgled:
Wikikoda | Rezultat |
---|---|
{{#invoke:Zgled|hello}}
|
Živijo svet! |
Testiranje enot
[uredi | uredi kodo]Ogrodje za testiranje enot za Wikipedijine Lua skripte je na voljo na Modul:UnitTests. Dovoljuje izvajanje vaše skripte za podan nabor vhodnih vrednosti in preveri, da so proizvedene pravilne izhodne vrednosti. Testi enot so še posebej uporabni zaradi detekcije nazadovanja delovanja, ki nastane možnega vnosa novih problemov pri spremembe skripte.
Glede na dogovor so testi enot za modul kot je Modul:Banana umeščeni v Modul:Banana/testniprimeri in izvajani na Pogovor o modulu:Banana/testniprimeri z npr:. {{#invoke: Banana/testniprimeri | run_tests}}
. Testne metode se morajo začeti z "test". Preprost primer iz Modul:Banana/testniprimeri je spodaj.
-- Test enote za [[Modul:Banana]]. Za izvajanje testov klikni na pogovorno stran.
local p = require('Modul:UnitTests')
function p:test_hello()
self:preprocess_equals('{{#invoke:Banana | hello}}', 'Hello, world!')
end
return p
Za seznam vseh modulov, ki uporabljajo testiranje enote, glejte Posebno:KajSePovezujeSem/Modul:UnitTests.
Označevanje pretvorjenih predlog
[uredi | uredi kodo]Prosimo, da umestite predlogo {{Lua}} v vse predloge, ki uporabljajo Lua. To bo pomagalo pri boljšem nadzoru uporabe Lua in pretvorbi predlog. Izgleda takole:
Uporablja Lua: |
Glej tudi
[uredi | uredi kodo]- V angleški Wikipediji
- en:Wikipedia:Lua style guide – standardi za izboljšanje preglednosti kode
- en:Help:Lua debugging – vodnik za razhroščevanje Lua modulov
- Modul:Peskovnik – zagotavlja kvazi imenski prostor za eksperimentiranje z Lua moduli
- Posebno:PrefixIndex/Modul: – iskanje Lua modulov se lahko izvede z Posebno:PrefixIndex
- Kategorija:Predloge, ki temeljijo na Lua – skupina predlog, ki temeljijo na Lua
- Modul:Peskovnik zagotavlja pseudo-namespace za ekspirementiranje z Lua moduli.