Modul:Sidelist/dok
Udseende
Dette er dokumentationsundersiden til Modul:Sidelist. Denne side indeholder information om brug, kategorier samt andet indhold, som ikke er en del af den oprindelige modulside. |
Sidelist er et alternativ til {{pagelist}}, som er en skabelon der kalder Modul:Pagelist.
"Sidelist" er et forenklet script men giver næsten samme resultat - forskellen er at et eventuelt navnerum altid skal angives med |nspace=
.
Anvendelse
[rediger kildetekst]Modulet er tiltænkt som hjælpemiddel i skabeloner. "Sidelist" adskiller sig fra "Pagelist":
- ved at være et modul. Benyt
{{#invoke|Sidelist|m
istedetfor{{Pagelist
- Wikilinks formateres uden navnerums-præfiks, medmindre
|nspace=
er angivet. - Et ekstra parameter
|samme=1
sætter konjunktionen lig med separator. "1"-værdien er obligatorisk. - Et ekstra parameter
|lt=1
trimmer navnerums-præfiks fra linktekst for wikilinks der linker til andre navnerum. "1"-værdien er obligatorisk.
Bemærk: Levnes |nspace=
tom kan der linkes til forskellige navnerum
Men parameter-navne, funktion og resultat er herudover ens. Se videre dokumentation på {{pagelist}}.
Scriptet
[rediger kildetekst]Her er en wikipediaseret script dokumentation.
Anvendte metoder
[rediger kildetekst]- Lua
- ipairs
- pairs
- string.match
- string.gsub
- Scribunto
- mw.message.new
KONSTANTER
[rediger kildetekst]- local seplst = {
- Site præferencer - udokumenteret?
- tekst-strengene benyttes i et kald til mw.message
- ->mw.message.new(seplst[0] .. '-separator'):plain()
- Modulets separator standardværdi er 'comma'
- local NS_SEP = "
- "
- Konventionel navnerums-separator
- local MRK1 = '\1'
- Tekstmærke
- forekommer ikke som parameter-værdi
VARIABLER
[rediger kildetekst]- local _a = {
- Argument navne - følger konventionelt parameter navnene fra
- index, parameternavn
- værdi, standardværdi (default)
- NB! separator værdien er en såkaldt site præference
- - ikke bogstaveligt "comma" men netop ", "
- _a.samme = 8
- Ekstra argument navn
- - sætter conjunction lig separator
- - _a.samme = 1, separator bruges som conjunction
- - _a.samme = 0, conjunction bruges som conjunction
- local str = ""
- Variabel til at konkatenere listen
modul function m
[rediger kildetekst]- Proces del “ for k in pairs (_a) do ”
- Sæt lokal _a værdierne til de navngivne parametre fra P.args,
- hvis der er nogen - ellers brug standard værdien
- Proces del “ for k in pairs (seplst) do ”
- Tjek for site præferencer
- Proces del “ if (_a.samme == 1) then ”
- Tjek for ekstra parameter
- Proces del “ if (_a.nspace ~= "") then ”
- Indsæt kolon når navnerum er angivet
- NB! standard navnerum er artikel-navnerummet
- - *ikke* det navnerum der kaldes fra
- Proces del “ for k, v in ipairs (P.args) do ”
- Indlæs de unavngivne parametre fra P.args,
- --og white space trim
- ref:www.mediawiki.org
- - string manipulation ref:www.lua.org
- - patterns ref:www.lua.org
- - Alternativ - mw.text.trim()
- --og formater til wikilink
- --og formater og konkatenér liste
- NB! virker iterationen? -- ok
- NB! - altid en sekvens -- ok
- NB! - ikke altid en sekvens -- ok
- NB! 5= - ikke altid en sekvens -- ok
- NB! navngivne parametre altid enten foran eller bagved rækken af unavngivne parametre ??
- Proces del “ str = str
- gsub ("(.*)(" .. _a.separator .. MRK1 .. ")([^" .. MRK1 .. "]+)" .. _a.separator,"%1" .. _a.conjunction .. "%3"): gsub (MRK1,"") ”
- Indsæt konjunktionen
- og returner liste teksten
- - string.gsub med såkaldt grådigt mønster match
- ref:stackoverflow.com
- - string manipulation ref:www.lua.org