Anda dapat membuat halaman dokumentasi untuk buat pada modul Scribunto ini.
Penyunting dapat melakukan uji coba pada halaman bak pasir (buat | cermin) dan kasus uji (buat) modul ini.
Subhalaman modul ini.
Penyunting dapat melakukan uji coba pada halaman bak pasir (buat | cermin) dan kasus uji (buat) modul ini.
Subhalaman modul ini.
localp={} localmRedirect=require('Modul:Redirect') localdisambiguationTemplates=mw.loadData('Modul:Disambiguation/templates') localPrepareText=require('Modul:Wikitext Parsing').PrepareText localfunctioncapitalize(s) -- This function only works on ASCII strings. If your wiki has -- disambiguation templates that use Unicode strings, use the commented-out -- line instead. Enwiki uses ASCII string manipulation only here to improve -- performance. returns:sub(1,1):upper()..s:sub(2,-1) -- return mw.ustring.upper(mw.ustring.sub(1, 1)) .. mw.ustring.sub(2, -1) end localfunctionisDisambiguationTemplate(template) returndisambiguationTemplates[capitalize(template)]orfalse end p.isDisambiguation=function(content) -- false if there is no content ifcontent==nilthen returnfalse end -- redirects are not disambiguation pages ifmRedirect.getTargetFromText(content)~=nilthen returnfalse end -- check for disambiguation templates in the content localtemplateNames={} -- remove nowiki content and html comments for this check localactivecontent=PrepareText(content) fortemplateinstring.gmatch(activecontent,"{{%s*([^|}]-)%s*[|}]")do ifisDisambiguationTemplate(template)then returntrue end end -- check for magic word ifstring.find(content,"__DISAMBIG__",1,true)~=nilthen returntrue end returnfalse end p._isDisambiguationPage=function(page) -- Look "(disambiguation)" or "(disambiguasi)" in the title ifstring.find(page,"%((disambiguation|disambiguasi)%)")~=nilthen returntrue end -- Look for disamiguation template in page content localtitle=mw.title.new(page) ifnottitlethenreturnfalseend localcontent=title:getContent() returnp.isDisambiguation(content) end -- Entry points for templates p.isDisambiguationPage=function(frame) localtitle=frame.args[1] returnp._isDisambiguationPage(title)and"yes"or"" end returnp