Jumat, 13 November 2026
08:14 WIB
TERKINI
Bandar Lampung Agenda Strategis Pemprov Lampung 6 November 2026: Revitalisasi Stadion Jadi Prioritas Bandar Lampung Harga Beras di Pasar Pasir Gintung Bandar Lampung Merangkak Naik, Stok Aman Bandar Lampung Disdag Bandar Lampung Jamin Pasokan Beras Aman hingga Akhir 2026 Insight Komitmen Pembangunan Negeri, PTBA Sabet Penghargaan Kepatuhan PNBP ESDM 2026 Pemprov Lampung Gubernur Mirza Canangkan Mulang Maya Jadi Magnet Wisata Budaya Unggulan Lampung Tuba Barat Mewujudkan Haji: Pemkab Tubaba dan BSI Ajak Masyarakat Menabung Sejak Dini Lampung Timur Bupati Ela Dekatkan Diri dengan Siswa, Pastikan Kualitas Pendidikan dan Gizi di Lampung Timur Tuba Barat Kemitraan Strategis Pemkab Tubaba dan Kejari: Wujudkan Tata Kelola Pemerintahan Akuntabel Bandar Lampung Mantan Ketua DPRD Lampung Bersaksi dalam Sidang Arinal Djunaidi Bandar Lampung Senator Bustami Zainudin dan Staf DPD Lampung Ikuti Program Cek Kesehatan Gratis Bandar Lampung Agenda Strategis Pemprov Lampung 6 November 2026: Revitalisasi Stadion Jadi Prioritas Bandar Lampung Harga Beras di Pasar Pasir Gintung Bandar Lampung Merangkak Naik, Stok Aman Bandar Lampung Disdag Bandar Lampung Jamin Pasokan Beras Aman hingga Akhir 2026 Insight Komitmen Pembangunan Negeri, PTBA Sabet Penghargaan Kepatuhan PNBP ESDM 2026 Pemprov Lampung Gubernur Mirza Canangkan Mulang Maya Jadi Magnet Wisata Budaya Unggulan Lampung Tuba Barat Mewujudkan Haji: Pemkab Tubaba dan BSI Ajak Masyarakat Menabung Sejak Dini Lampung Timur Bupati Ela Dekatkan Diri dengan Siswa, Pastikan Kualitas Pendidikan dan Gizi di Lampung Timur Tuba Barat Kemitraan Strategis Pemkab Tubaba dan Kejari: Wujudkan Tata Kelola Pemerintahan Akuntabel Bandar Lampung Mantan Ketua DPRD Lampung Bersaksi dalam Sidang Arinal Djunaidi Bandar Lampung Senator Bustami Zainudin dan Staf DPD Lampung Ikuti Program Cek Kesehatan Gratis

Modul:Labelled list hatnote

Wikimedia module

Bagikan:
Dokumentasi modulbuatsegarkan
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.
--------------------------------------------------------------------------------
--                               Labelled list                                --
--                                                                            --
-- This module does the core work of creating a hatnote composed of a list    --
-- prefixed by a colon-terminated label, i.e. "LABEL: [andList of pages]",    --
-- for {{see also}} and similar templates.                                    --
--------------------------------------------------------------------------------
localmHatnote=require('Module:Hatnote')
localmHatlist=require('Module:Hatnote list')
localmArguments--initialize lazily
localyesno--initialize lazily
localp={}
-- Defaults global to this module
localdefaults={
label='Lihat pula',--Final fallback for label argument
labelForm='%s: %s',
prefixes={'label','label ','l'},
template='Modul:Labelled list hatnote'
}
-- Localizable message strings
localmsg={
errorSuffix='#Galat',
noInputWarning='tidak ada nama halaman yang ditentukan',
noOutputWarning=
"'''[[%s]] — tidak ada keluaran: halaman target tidak ditemukan.'''"
}
-- Helper function that pre-combines display parameters into page arguments.
-- Also compresses sparse arrays, as a desirable side-effect.
functionp.preprocessDisplays(args,prefixes)
-- Prefixes specify which parameters, in order, to check for display options
-- They each have numbers auto-appended, e.g. 'label1', 'label 1', & 'l1'
prefixes=prefixesordefaults.prefixes
localindices={}
localsparsePages={}
fork,vinpairs(args)do
iftype(k)=='number'then
indices[#indices+1]=k
localdisplay
fori=1,#prefixesdo
display=args[prefixes[i]..k]
ifdisplaythenbreakend
end
sparsePages[k]=displayand
string.format('%s|%s',string.gsub(v,'|.*$',''),display)orv
end
end
table.sort(indices)
localpages={}
fork,vinipairs(indices)dopages[#pages+1]=sparsePages[v]end
returnpages
end
--Helper function to get a page target from a processed page string
--e.g. "Page|Label" → "Page" or "Target" → "Target"
localfunctiongetTarget(pagename)
localpipe=string.find(pagename,'|')
returnstring.sub(pagename,0,pipeandpipe-1ornil)
end
-- Produces a labelled pages-list hatnote.
-- The main frame (template definition) takes 1 or 2 arguments, for a singular
-- and (optionally) plural label respectively:
-- * {{#invoke:Labelled list hatnote|labelledList|Singular label|Plural label}}
-- The resulting template takes pagename & label parameters normally.
functionp.labelledList(frame)
mArguments=require('Module:Arguments')
yesno=require('Module:Yesno')
locallabels={frame.args[1]ordefaults.label}
labels[2]=frame.args[2]orlabels[1]
labels[3]=frame.args[3]--no defaulting
labels[4]=frame.args[4]--no defaulting
localtemplate=frame:getParent():getTitle()
localargs=mArguments.getArgs(frame,{parentOnly=true})
localpages=p.preprocessDisplays(args)
localoptions={
category=yesno(args.category),
extraclasses=frame.args.extraclasses,
ifexists=yesno(frame.args.ifexists),
namespace=frame.args.namespaceorargs.namespace,
selfref=yesno(frame.args.selfreforargs.selfref),
template=template
}
returnp._labelledList(pages,labels,options)
end
localfunctionexists(title)
localsuccess,result=pcall(function()returntitle.existsend)
ifsuccessthen
returnresult
else
returntrue
end
end
functionp._labelledList(pages,labels,options)
localremovednonexist=false
ifoptions.ifexiststhen
fork=#pages,1,-1do--iterate backwards to allow smooth removals
localv=pages[k]
ifmw.ustring.sub(mw.text.trim(v),1,1)~="#"then
localtitle=mw.title.new(getTarget(v),namespace)
if(v=='')or(title==nil)ornotexists(title)then
table.remove(pages,k)
removednonexist=true
end
end
end
end
labels=labelsor{}
label=(#pages==1andlabels[1]orlabels[2])ordefaults.label
fork,vinpairs(pages)do
ifmHatnote.findNamespaceId(v)~=0then
label=
(
#pages==1and
(labels[3]orlabels[1]ordefaults.label)or
(labels[4]orlabels[2]ordefaults.label)
)ordefaults.label
end
end
if#pages==0then
ifremovednonexistthen
mw.addWarning(
string.format(
msg.noOutputWarning,options.templateordefaults.template
)
)
return''
else
returnmHatnote.makeWikitextError(
msg.noInputWarning,
(options.templateordefaults.template)..msg.errorSuffix,
options.category
)
end
end
localtext=string.format(
options.labelFormordefaults.labelForm,
label,
mHatlist.andList(pages,true)
)
localhnOptions={
extraclasses=options.extraclasses,
selfref=options.selfref
}
returnmHatnote._hatnote(text,hnOptions)
end
returnp
Konten disalin dari Wikipedia Bahasa Indonesia (lisensi CC BY-SA) Lihat versi asli di Wikipedia

Rekomendasi Pilihan