管理者、translator
2,311
回編集
en>Matt Fitzpatrick (sync from sandbox, add aria role and label to container) |
細 (1版 をインポートしました) |
||
| 3行目: | 3行目: | ||
-- Get required modules. | -- Get required modules. | ||
local getArgs = require('Module:Arguments').getArgs | local getArgs = require('Module:Arguments').getArgs | ||
local messageBox = require('Module:Message box') | |||
-- Get the config table. | -- Get the config table. | ||
| 32行目: | 33行目: | ||
expectType = expectType or 'string' | expectType = expectType or 'string' | ||
if type(msg) ~= expectType then | if type(msg) ~= expectType then | ||
error(' | error('メッセージ: cfg.' .. cfgKey .. 'の入力エラー。(想定:' .. expectType .. '、実際:' .. type(msg) .. ')', 2) | ||
end | end | ||
if not valArray then | if not valArray then | ||
| 40行目: | 41行目: | ||
local function getMessageVal(match) | local function getMessageVal(match) | ||
match = tonumber(match) | match = tonumber(match) | ||
return valArray[match] or error(' | return valArray[match] or error('メッセージ: メッセージ設定で$' .. match .. 'キーの値が見つかりませんでした。' .. cfgKey, 4) | ||
end | end | ||
| 139行目: | 140行目: | ||
-- 'documentation-container' | -- 'documentation-container' | ||
:addClass(message('container')) | :addClass(message('container')) | ||
:newline() | :newline() | ||
:tag('div') | :tag('div') | ||
| 180行目: | 178行目: | ||
-- env.sandboxTitle - the /sandbox subpage. | -- env.sandboxTitle - the /sandbox subpage. | ||
-- env.testcasesTitle - the /testcases subpage. | -- env.testcasesTitle - the /testcases subpage. | ||
-- env.printTitle - the print version of the template, located at the /Print subpage. | |||
-- | -- | ||
-- Data includes: | -- Data includes: | ||
| 273行目: | 272行目: | ||
--]] | --]] | ||
return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage')) | return mw.title.new(env.docpageBase .. '/' .. message('testcases-subpage')) | ||
end | |||
function envFuncs.printTitle() | |||
--[[ | |||
-- Title object for the /Print subpage. | |||
-- Messages: | |||
-- 'print-subpage' --> 'Print' | |||
--]] | |||
return env.templateTitle:subPageTitle(message('print-subpage')) | |||
end | end | ||
| 427行目: | 435行目: | ||
local editProt = protectionLevels.edit and protectionLevels.edit[1] | local editProt = protectionLevels.edit and protectionLevels.edit[1] | ||
local moveProt = protectionLevels.move and protectionLevels.move[1] | local moveProt = protectionLevels.move and protectionLevels.move[1] | ||
-- 日本語版独自仕様: 編集保護と移動保護で保護レベルが異なる場合に、両方のアイコンを表示する | |||
local ret = '' | |||
if editProt then | if editProt then | ||
-- The page is edit-protected. | -- The page is edit-protected. | ||
ret = ret .. require('Module:Protection banner')._main{ | |||
message('protection-reason-edit'), small = true | message('protection-reason-edit'), small = true | ||
} | } | ||
end | |||
-- The page is move | if moveProt and moveProt ~= editProt and moveProt ~= 'autoconfirmed' then | ||
-- The page is move-protected. | |||
ret = ret .. require('Module:Protection banner')._main{ | |||
action = 'move', small = true | action = 'move', small = true | ||
} | } | ||
end | end | ||
return ret | |||
end | end | ||
| 491行目: | 500行目: | ||
-- 'history-link-display' --> 'history' | -- 'history-link-display' --> 'history' | ||
-- 'purge-link-display' --> 'purge' | -- 'purge-link-display' --> 'purge' | ||
-- 'file-docpage-preload' --> 'Template:Documentation/preload-filespace' | |||
-- 'module-preload' --> 'Template:Documentation/preload-module-doc' | -- 'module-preload' --> 'Template:Documentation/preload-module-doc' | ||
-- 'docpage-preload' --> 'Template:Documentation/preload' | -- 'docpage-preload' --> 'Template:Documentation/preload' | ||
| 501行目: | 511行目: | ||
return nil | return nil | ||
end | end | ||
if docTitle.isRedirect then | if docTitle.isRedirect then | ||
docTitle = docTitle.redirectTarget | docTitle = docTitle.redirectTarget | ||
end | end | ||
| 516行目: | 526行目: | ||
local preload = args.preload | local preload = args.preload | ||
if not preload then | if not preload then | ||
if subjectSpace == 828 then -- Module namespace | if subjectSpace == 6 then -- File namespace | ||
preload = message('file-docpage-preload') | |||
elseif subjectSpace == 828 then -- Module namespace | |||
preload = message('module-preload') | preload = message('module-preload') | ||
else | else | ||
| 529行目: | 541行目: | ||
function p.renderStartBoxLinks(data) | function p.renderStartBoxLinks(data) | ||
--[[ | --[[ | ||
-- Generates the [view][edit][history][purge] or [create | -- Generates the [view][edit][history][purge] or [create] links from the data table. | ||
-- @data - a table of data generated by p.makeStartBoxLinksData | -- @data - a table of data generated by p.makeStartBoxLinksData | ||
--]] | --]] | ||
| 543行目: | 555行目: | ||
local docTitle = data.docTitle | local docTitle = data.docTitle | ||
local title = data.title | local title = data.title | ||
if docTitle.exists then | if docTitle.exists then | ||
local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay) | local viewLink = makeWikilink(docTitle.prefixedText, data.viewLinkDisplay) | ||
local editLink = makeUrlLink(docTitle:fullUrl{action = 'edit'}, data.editLinkDisplay) | local editLink = makeUrlLink(docTitle:fullUrl{action = 'edit'}, data.editLinkDisplay) | ||
local historyLink = makeUrlLink(docTitle:fullUrl{action = 'history'}, data.historyLinkDisplay) | local historyLink = makeUrlLink(docTitle:fullUrl{action = 'history'}, data.historyLinkDisplay) | ||
local purgeLink = makeUrlLink(title:fullUrl{action = 'purge'}, data.purgeLinkDisplay) | |||
ret = '[%s] [%s] [%s] [%s]' | ret = '[%s] [%s] [%s] [%s]' | ||
ret = escapeBrackets(ret) | ret = escapeBrackets(ret) | ||
| 553行目: | 565行目: | ||
else | else | ||
local createLink = makeUrlLink(docTitle:fullUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay) | local createLink = makeUrlLink(docTitle:fullUrl{action = 'edit', preload = data.preload}, data.createLinkDisplay) | ||
ret = ' | ret = '[%s]' | ||
ret = escapeBrackets(ret) | ret = escapeBrackets(ret) | ||
ret = mw.ustring.format(ret, createLink | ret = mw.ustring.format(ret, createLink) | ||
end | end | ||
return ret | return ret | ||
| 630行目: | 642行目: | ||
:tag('span') | :tag('span') | ||
:addClass(data.headingClass) | :addClass(data.headingClass) | ||
:cssText(data.headingStyleText) | :cssText(data.headingStyleText) | ||
:wikitext(data.heading) | :wikitext(data.heading) | ||
| 731行目: | 742行目: | ||
end | end | ||
text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template" | text = text .. ' ' .. (p.makeSubpagesBlurb(args, env) or '') --"Subpages of this template" | ||
local printBlurb = p.makePrintBlurb(args, env) -- Two-line blurb about print versions of templates. | |||
if printBlurb then | |||
text = text .. '<br />' .. printBlurb | |||
end | |||
end | end | ||
end | end | ||
local box = mw.html.create('div') | local box = mw.html.create('div') | ||
box:attr('role', 'note') | box:attr('role', 'note') | ||
-- 'documentation-metadata' | |||
:addClass(message('end-box-class')) | :addClass(message('end-box-class')) | ||
-- 'plainlinks' | -- 'plainlinks' | ||
| 872行目: | 887行目: | ||
local testcasesEditLink = makeUrlLink(testcasesEditUrl, testcasesEditDisplay) | local testcasesEditLink = makeUrlLink(testcasesEditUrl, testcasesEditDisplay) | ||
-- for Modules, add testcases run link if exists | -- for Modules, add testcases run link if exists | ||
if testcasesTitle.contentModel == "Scribunto" | if testcasesTitle.contentModel == "Scribunto" and testcasesTitle.talkPageTitle and testcasesTitle.talkPageTitle.exists then | ||
local testcasesRunLinkDisplay = message('testcases-run-link-display') | local testcasesRunLinkDisplay = message('testcases-run-link-display') | ||
local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay) | local testcasesRunLink = makeWikilink(testcasesTitle.talkPageTitle.prefixedText, testcasesRunLinkDisplay) | ||
| 947行目: | 962行目: | ||
) | ) | ||
return message('subpages-blurb', {subpagesLink}) | return message('subpages-blurb', {subpagesLink}) | ||
end | |||
function p.makePrintBlurb(args, env) | |||
--[=[ | |||
-- Generates the blurb displayed when there is a print version of the template available. | |||
-- @args - a table of arguments passed by the user | |||
-- @env - environment table containing title objects, etc., generated with p.getEnvironment | |||
-- | |||
-- Messages: | |||
-- 'print-link-display' --> '/Print' | |||
-- 'print-blurb' --> 'A [[Help:Books/for experts#Improving the book layout|print version]]' | |||
-- .. ' of this template exists at $1.' | |||
-- .. ' If you make a change to this template, please update the print version as well.' | |||
-- 'display-print-category' --> true | |||
-- 'print-category' --> 'Templates with print versions' | |||
--]=] | |||
local printTitle = env.printTitle | |||
if not printTitle then | |||
return nil | |||
end | |||
local ret | |||
if printTitle.exists then | |||
local printLink = makeWikilink(printTitle.prefixedText, message('print-link-display')) | |||
ret = message('print-blurb', {printLink}) | |||
local displayPrintCategory = message('display-print-category', nil, 'boolean') | |||
if displayPrintCategory then | |||
ret = ret .. makeCategoryLink(message('print-category')) | |||
end | |||
end | |||
return ret | |||
end | end | ||