模块:Vgr/sandbox
这是Module:Vgr(差异)的沙盒。 |
此模块沙盒已评为beta版,可广泛使用。因其新近完成,请谨慎使用,以确保输出结果符合预期。 |
此模块沙盒被引用于约3,200个页面。 为了避免造成大规模的影响,所有对此模块沙盒的编辑应先于沙盒或测试样例上测试。 测试后无误的版本可以一次性地加入此模块沙盒中,但是修改前请务必于讨论页发起讨论。 模板引用数量会自动更新。 |
用于{{Vgrelease}}。
上述文档嵌入自Module:Vgr/doc。 (编辑 | 历史) 编者可以在本模块的沙盒 (编辑 | 差异)和测试样例 (创建)页面进行实验。 请在/doc子页面中添加分类。本模块的子页面。 |
local labels = {
-- South Korea and Japan
{'KR', '-{zh-cn:韩国; zh-tw:南韓;}-'},
{'JP', '日本'},
-- Western
{'WW', '全球'},
{'NA', '北美'},
{'PAL', '[[PAL区|PAL]]'},
{'EU', '欧洲'},
{'UK', '英国'},
{'AU', '澳-{}-洲'},
{'AUS', '澳-{}-洲'},
-- Chinese-speaking world
{'CN', '<abbr title="中国大陆">大陆</abbr>'},
{'TWHK', '臺港'},
{'TW', '臺灣'},
{'HK', '香港'},
{'MO', '澳门'},
-- Southeast Asia
{'SEA', '东南亚'},
{'SG', '新加坡'},
{'MY', '<abbr title="马来西亚">大马</abbr>'},
-- Others
{'?', '未知'},
}
require('strict')
local getArgs = require('Module:Arguments').getArgs
local list = require('Module:List').unbulleted
local yesno = require('Module:Yesno')
local lc = require('Module:WikitextLC').converted
local cd = require('Module:Chinese date')._main
local p = {}
local function getLabelName(input)
if input == nil then
return ''
end
for key, value in ipairs(labels) do
if input == value[1] then
return value[2] .. ':'
end
end
return input .. ':'
end
local function itemBuilder(args, para1, para2)
para1 = getLabelName(para1)
if para2 == nil then
para2 = ''
elseif yesno(args.nocc) then
para2 = lc(para2, {'zh-hans', 'zh-hant'})
else
para2 = cd{para2, ['error']='ignore', ['suf']='yes'}
end
return (para1 .. para2 == '' and nil or para1 .. para2)
end
function p.main(frame)
local args = getArgs(frame)
-- return frame:extensionTag{ name = 'templatestyles', args = { src = '沙盒/test.css'} } .. tostring(p._main(args))
end
function p._main(args)
-- Main module code goes here.
local tab = {}
local maxIndex = 20 -- [[WP:VG/GL|专题指引]]不鼓励在信息框列出过多地区的发售信息,故将此数限制在20以内,即最多列出10个地区
for i = 1, maxIndex, 2 do
table.insert(tab, itemBuilder(args, args[i], args[i+1]))
end
tab.class = "plainlist-vgr"
return list(tab)
end
return p