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={} localfunctiontrim(s) returns:match('^%s*(.-)%s*$') end localfunctionisnotempty(s) returnsands:match('%S') end functionp.check(frame) localargs=frame.args localpargs=frame:getParent().args localchecknested=isnotempty(args['nested']) localdelimiter=isnotempty(args['delimiter'])andargs['delimiter']or';' localargpairs={} fork,vinpairs(args)do iftype(k)=='number'then localplist=mw.text.split(v,delimiter) localpfound={} localcount=0 forii,vvinipairs(plist)do vv=trim(vv) ifchecknestedandpargs[vv]orisnotempty(pargs[vv])then count=count+1 table.insert(pfound,vv) end end ifcount>1then table.insert(argpairs,pfound) end end end localwarnmsg={} localres='' localcat='' ifargs['cat']andmw.ustring.match(args['cat'],'^[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]:')then cat=args['cat'] end localtemplate=args['template']and' in '..args['template']or'' if#argpairs>0then fori,vinipairs(argpairs)do table.insert( warnmsg, mw.ustring.format( 'Menggunakan lebih dari satu parameter berikut%s: <code>%s</code>.', template, table.concat(v,'</code>, <code>') ) ) ifcat~=''then res=res..'[['..cat..'|'..(v[1]==''and' 'or'')..v[1]..']]' end end end if#warnmsg>0then res=require('Module:If preview')._warning({ table.concat(warnmsg,'<br>') })..res end returnres end returnp