Module:Sandbox/Andy M. Wang/Sandbox

From blackwiki
< Module:Sandbox‎ | Andy M. Wang
Revision as of 17:57, 4 June 2016 by blackwiki>Andy M. Wang (string format)
Jump to navigation Jump to search

Template:NOINDEX

Links

  • [[MediaWiki:{{{1}}}]] ([{{fullurl:MediaWiki:{{{1}}}|action=edit}} edit] | [[MediaWiki talk:{{{1}}}|talk]] | [{{fullurl:MediaWiki:{{{1}}}|action=history}} history] | [{{fullurl:Special:Whatlinkshere/MediaWiki:{{{1}}}}} links] | [{{fullurl:MediaWiki:{{{1}}}|action=watch}} watch] | logs)

Usage

  • {{#invoke:Sandbox/Andy M. Wang/Sandbox|functionName}}
  • {{#invoke:Sandbox/Andy M. Wang/Sandbox/sandbox|functionName}}
  • {{#invoke:Sandbox/Andy M. Wang/Sandbox/testcases|run_tests}}

-- This module implements {{italic title}}.

local p = {}

function p._main(args, frame, title)
	args = args or {}
	frame = frame or mw.getCurrentFrame()
	title = title or mw.title.getCurrentTitle()
	local prefix, parentheses = mw.ustring.match(title.text, '^(.+) (%([^%(%)]+%))$')
	local result
	if prefix and parentheses and args.all ~= 'yes' then
		result = string.format("<i>%s</i> %s", prefix, parentheses)
	else
		result = string.format("<i>%s</i>", title.text)
	end
	if title.namespace ~= 0 then
		result = title.nsText:gsub('_', ' ') .. ':' .. result
	end
	return frame:callParserFunction('DISPLAYTITLE', result, args[1])
end

function p.main(frame)
	local args = require('Module:Arguments').getArgs(frame, {
		wrappers = 'Template:Italic title'
	})
	return string.format("<noinclude>%s</noinclude>", p._main(args, frame))
end

return p