The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Documentation for this module may be created at Module:Redirect-distinguish-for/doc

mArguments = require('Module:Arguments')
mRedirectHatnote = require("Module:Redirect hatnote")

local p = {}

function p.redirectDistinguishFor(frame)
	local args = mArguments.getArgs(frame, {parentOnly = true})
	local maxArg = 0
	for k, v in pairs(args) do
		if type(k) == 'number' and k > maxArg then maxArg = k end
	end
	local parsedArgs = {}
	for i = 1, maxArg do
		if i ~= 2 then
			parsedArgs[i == 1 and 1 or i - 1] = args[i] end
	end
	return (string.gsub( --Note that the outer parentheses are necessary!
		mRedirectHatnote._redirect(parsedArgs, 1, {selfref = args.selfref}),
		"(redirects? here.)",
		"%1 Not to be confused with [[:" .. (args[2]:match('^:?(.*)')) .. "]].",
		1
	))
end

return p