「モジュール:Namespace detect」を編集中
この編集を取り消せます。
下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
14行目: | 14行目: | ||
-------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | ||
--]] | --]] | ||
− | + | ||
local data = mw.loadData('Module:Namespace detect/data') | local data = mw.loadData('Module:Namespace detect/data') | ||
local argKeys = data.argKeys | local argKeys = data.argKeys | ||
local cfg = data.cfg | local cfg = data.cfg | ||
local mappings = data.mappings | local mappings = data.mappings | ||
− | + | ||
local yesno = require('Module:Yesno') | local yesno = require('Module:Yesno') | ||
local mArguments -- Lazily initialise Module:Arguments | local mArguments -- Lazily initialise Module:Arguments | ||
local mTableTools -- Lazily initilalise Module:TableTools | local mTableTools -- Lazily initilalise Module:TableTools | ||
local ustringLower = mw.ustring.lower | local ustringLower = mw.ustring.lower | ||
− | + | ||
local p = {} | local p = {} | ||
− | + | ||
local function fetchValue(t1, t2) | local function fetchValue(t1, t2) | ||
-- Fetches a value from the table t1 for the first key in array t2 where | -- Fetches a value from the table t1 for the first key in array t2 where | ||
38行目: | 38行目: | ||
return nil | return nil | ||
end | end | ||
− | + | ||
local function equalsArrayValue(t, value) | local function equalsArrayValue(t, value) | ||
-- Returns true if value equals a value in the array t. Otherwise | -- Returns true if value equals a value in the array t. Otherwise | ||
49行目: | 49行目: | ||
return false | return false | ||
end | end | ||
− | + | ||
function p.getPageObject(page) | function p.getPageObject(page) | ||
-- Get the page object, passing the function through pcall in case of | -- Get the page object, passing the function through pcall in case of | ||
64行目: | 64行目: | ||
end | end | ||
end | end | ||
− | + | ||
-- Provided for backward compatibility with other modules | -- Provided for backward compatibility with other modules | ||
function p.getParamMappings() | function p.getParamMappings() | ||
return mappings | return mappings | ||
end | end | ||
− | + | ||
local function getNamespace(args) | local function getNamespace(args) | ||
-- This function gets the namespace name from the page object. | -- This function gets the namespace name from the page object. | ||
− | local page = fetchValue(args, argKeys. | + | local page = fetchValue(args, argKeys.page) |
if page == '' then | if page == '' then | ||
page = nil | page = nil | ||
110行目: | 110行目: | ||
return ustringLower(ret) | return ustringLower(ret) | ||
end | end | ||
− | + | ||
function p._main(args) | function p._main(args) | ||
-- Check the parameters stored in the mappings table for any matches. | -- Check the parameters stored in the mappings table for any matches. | ||
128行目: | 128行目: | ||
return ret | return ret | ||
end | end | ||
− | + | ||
function p.main(frame) | function p.main(frame) | ||
mArguments = require('Module:Arguments') | mArguments = require('Module:Arguments') | ||
135行目: | 135行目: | ||
return ret or '' | return ret or '' | ||
end | end | ||
− | + | ||
function p.table(frame) | function p.table(frame) | ||
--[[ | --[[ | ||
142行目: | 142行目: | ||
-- needs to be excluded in the documentation. | -- needs to be excluded in the documentation. | ||
--]] | --]] | ||
− | + | ||
-- Load modules and initialise variables. | -- Load modules and initialise variables. | ||
mTableTools = require('Module:TableTools') | mTableTools = require('Module:TableTools') | ||
150行目: | 150行目: | ||
and type(frame.args) == 'table' | and type(frame.args) == 'table' | ||
and yesno(frame.args.talk) -- Whether to use the talk parameter. | and yesno(frame.args.talk) -- Whether to use the talk parameter. | ||
− | + | ||
-- Get the header names. | -- Get the header names. | ||
local function checkValue(value, default) | local function checkValue(value, default) | ||
161行目: | 161行目: | ||
local nsHeader = checkValue(cfg.wikitableNamespaceHeader, 'Namespace') | local nsHeader = checkValue(cfg.wikitableNamespaceHeader, 'Namespace') | ||
local aliasesHeader = checkValue(cfg.wikitableAliasesHeader, 'Aliases') | local aliasesHeader = checkValue(cfg.wikitableAliasesHeader, 'Aliases') | ||
− | + | ||
-- Put the namespaces in order. | -- Put the namespaces in order. | ||
local mappingsOrdered = {} | local mappingsOrdered = {} | ||
173行目: | 173行目: | ||
end | end | ||
mappingsOrdered = mTableTools.compressSparseArray(mappingsOrdered) | mappingsOrdered = mTableTools.compressSparseArray(mappingsOrdered) | ||
− | + | ||
-- Build the table. | -- Build the table. | ||
local ret = '{| class="wikitable"' | local ret = '{| class="wikitable"' | ||
196行目: | 196行目: | ||
return ret | return ret | ||
end | end | ||
− | + | ||
return p | return p |