Module:Remove parentheses: Difference between revisions
From Amaranth Legacy, available at amaranth-legacy.community
More actions
Content deleted Content added
Tesinormed (talk | contribs) No edit summary |
Tesinormed (talk | contribs) No edit summary |
||
| Line 12: | Line 12: | ||
displaytitle, _ = title:gsub('%(' .. scope .. '%)', '') |
displaytitle, _ = title:gsub('%(' .. scope .. '%)', '') |
||
return displaytitle |
return displaytitle |
||
elseif title:find('(' .. scope .. ',') then |
elseif title:find('(' .. scope .. '%,') then |
||
displaytitle, _ = title:gsub('%(' .. scope .. ',', '(') |
displaytitle, _ = title:gsub('%(' .. scope .. '%,', '(') |
||
return displaytitle |
return displaytitle |
||
else |
else |
||
Revision as of 17:56, January 28, 2025
Removes parentheses in a page title; used by Template:Remove parentheses
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
local function getDisplayTitle(scope, title)
-- input validation
checkType('Module:Remove parentheses.getDisplayTitle', 1, scope, 'string')
checkType('Module:Remove parentheses.getDisplayTitle', 2, title, 'string')
if title:find('(' .. scope .. ')') then
displaytitle, _ = title:gsub('%(' .. scope .. '%)', '')
return displaytitle
elseif title:find('(' .. scope .. '%,') then
displaytitle, _ = title:gsub('%(' .. scope .. '%,', '(')
return displaytitle
else
return title
end
end
function p.main(frame)
local args = require('Module:Arguments').getArgs(frame)
-- input validation
if not args['scope'] then error('"scope" argument is required') end
return frame:callParserFunction(
'DISPLAYTITLE',
getDisplayTitle(args['scope'], mw.title.getCurrentTitle().prefixedText)
)
end
return p