| Modul ini menggunakan Lua: |
Dokumentasi di atas ditransklusikan dari Modul:Page/doc. (sunting | riwayat)
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.
localcallAssert=require('Module:CallAssert') localfunctionmain(frame,field) localargs,pargs=frame.args,(frame:getParent()or{}).argsor{} localmakeTitle=args.makeTitleorpargs.makeTitle localnamespace=args.namespaceorpargs.namespaceor"" localfragment=args.fragmentorpargs.fragmentor"" localinterwiki=args.interwikiorpargs.interwikior"" localpage=args.pageorargs[1]orpargs.pageorpargs[1]or"" localid=tonumber(args.idorpargs.id) localpn={} localtitle-- holds the result of the mw.title.xxx call fori=1,9dopn[i]=args['p'..i]orpargs['p'..i]end ifnotidandnotmw.ustring.match(page,'%S')thenpage=nilend ifidthen title=callAssert(mw.title.new,'mw.title.new',id) elseifnotpagethen title=callAssert(mw.title.getCurrentTitle,'getCurrentTitle') elseifmakeTitlethen title=callAssert(mw.title.makeTitle,'makeTitle',namespace,page,fragment,interwiki) else title=callAssert(mw.title.new,'mw.title.new',page,namespace) end localresult=title[field] iftype(result)=="function"then result=result(title,unpack(pn)) elseiftype(result)=="table"then result=mw.text.listToText(result) end returntostring(resultor"") end -- handle all errors in main main=require('Module:Protect')(main) localp={} -- main function does all the work localmeta={} functionmeta.__index(self,key) returnfunction(frame) returnmain(frame,key) end end setmetatable(p,meta) functionp.getContent(frame) localargs,pargs=frame.args,(frame:getParent()or{}).argsor{} localfmt=args.asorpargs.asor"pre" localtext=main(frame,"getContent") fmt=mw.text.split(fmt,", ?") for_,howinipairs(fmt)do ifhow=="pre"then text=table.concat{"<pre>",text,"</pre>"} elseifhow=="expand"then text=frame:preprocess(text) elseifhow=="nowiki"then text=mw.text.nowiki(text) end end returntext end returnp