恪別𡧲版𢯢𢷮𧵑「Mô đun:Danh sách」
(Sao chép từ wikt:Mô đun:Danh sách (1499833)) |
SaigonSarang (討論 | 㨂𢵰) n (1 翻版) |
||
(空固事恪別)
|
版㵋一𣅶13:07、𣈜30𣎃12𢆥2015
Documentation for this module may be created at Module:Mô đun:Danh sách/doc
---Các hàm để xây dựng danh sách. local p = {} local viet ---Cho ra các tham số như một danh sách nội dòng. -- Hàm này hỗ trợ số tham số không hạn chế. function p.inlineList(frame) local contentFrame = frame if not frame.args[1] then contentFrame = frame:getParent() end local start = tonumber(contentFrame.args.start or frame.args.start or 1) or 1 local insep = contentFrame.args.insep local items = {} for i, arg in ipairs(contentFrame.args) do if i >= start then local item = tostring(mw.text.trim(arg)) if #item > 0 then if insep then local subitems = mw.text.split(item, insep) for i, subitem in ipairs(subitems) do table.insert(items, subitem) end else table.insert(items, item) end end end end if contentFrame.args.sorted and tonumber(contentFrame.args.sorted) == 1 then viet = viet or require "Mô đun:Quốc ngữ" table.sort(items, viet.comp) end local format = contentFrame.args.format if format then for i, item in ipairs(items) do items[i] = mw.ustring.format(format, item) end end local space = contentFrame.args.space or frame.args.space or " " local conj = contentFrame.args.conj or frame.args.conj if #items > 1 and conj then items[#items] = conj .. space .. items[#items] end local output if #items == 2 and conj then output = items[1] .. space .. items[2] else local sep = contentFrame.args.sep or frame.args.sep or "," output = table.concat(items, sep .. space) end if #output < 1 and contentFrame.args.placeholder then output = contentFrame.args.placeholder end return output end return p