Module:Namespace detect/data: Difference between revisions
From the Croc Wiki, the Croc encyclopedia
Jump to navigationJump to search
Content added Content deleted
(give the argKeys table global scope so that getParamMappings can access it without having to process the cfg table again) |
(avoid using local variables to save table lookups per Jackmcbarn's suggestion, and because this will be cached with mw.loadData so performance of this function is not such a worry) |
||
Line 52: | Line 52: | ||
-- } |
-- } |
||
--]] |
--]] |
||
local ustringLower = mw.ustring.lower |
|||
local tinsert = table.insert |
|||
local clone = mw.clone |
|||
⚫ | |||
local mappings = {} |
local mappings = {} |
||
local mainNsName = mw.site.subjectNamespaces[0].name |
|||
mainNsName = mw.ustring.lower(mainNsName) |
|||
⚫ | |||
mappings[mainNsName] = mw.clone(argKeys.main) |
|||
for nsid, ns in pairs(subjectNamespaces) do |
|||
⚫ | |||
⚫ | |||
if nsid ~= 0 then -- Exclude main namespace. |
if nsid ~= 0 then -- Exclude main namespace. |
||
local nsname = |
local nsname = ns.name |
||
local canonicalName = |
local canonicalName = ns.canonicalName |
||
mappings[nsname] = {nsname} |
mappings[nsname] = {mw.ustring.lower(nsname)} |
||
if canonicalName ~= nsname then |
if canonicalName ~= nsname then |
||
table.insert(mappings[nsname], mw.ustring.lower(canonicalName)) |
|||
end |
end |
||
for _, alias in ipairs(ns.aliases) do |
for _, alias in ipairs(ns.aliases) do |
||
table.insert(mappings[nsname], mw.ustring.lower(alias)) |
|||
end |
end |
||
end |
end |