Replace Module:No globals with require( "strict" )
Mohsenmadani (بحث | مشارکتها) (صفحهای تازه حاوی «require('Module:No globals'); local error_msg = '<span style=\"font-size:100%\" class=\"error\"><code style=\"color:inherit; border:inheri...» ایجاد کرد) |
fa>Wikivahdat (Replace Module:No globals with require( "strict" )) |
||
خط ۱: | خط ۱: | ||
require(' | require('strict'); | ||
local error_msg = '<span style=\"font-size:100%\" class=\"error\"><code style=\"color:inherit; border:inherit; padding:inherit;\">|_template=</code> missing or empty</span>'; | local error_msg = '<span style=\"font-size:100%\" class=\"error\"><code style=\"color:inherit; border:inherit; padding:inherit;\">|_template=</code> missing or empty</span>'; | ||
خط ۲۴۹: | خط ۲۴۹: | ||
]] | ]] | ||
local function list(frame, do_link) | |||
local args = {}; -- table of default and live parameters and their values to be passed to the listed template | |||
local template; -- the name of the listed template | |||
template = _main (frame, args, true); -- get default and live parameters and the name of the listed template | |||
if not template then -- template name is required | |||
return error_msg; -- emit error message and abandon if template name not present | |||
end | |||
template = _main (frame, args, true); | if do_link then | ||
if not template then | template = ('[[%s|%s]]'):format(frame:expandTemplate{ title='Transclude', args = {template} }, template) | ||
return error_msg; | end | ||
table.sort(args) | |||
for i = 1, #args do | |||
local stripped = args[i]:match('^' .. i .. '=([^=]*)$') | |||
if stripped then args[i] = stripped else break end | |||
end | end | ||
return frame:preprocess(table.concat({ | |||
'<code style="color:inherit; background:inherit; border:none;">{{', | |||
template, | |||
('<wbr><nowiki>|%s</nowiki>'):rep(#args):format(unpack(args)), '}}</code>'})); -- render the template | |||
end | |||
return frame | local function link (frame) | ||
return list(frame, true) | |||
end | end | ||
--[[--------------------------< E X P O R T E D F U N C T I O N S >------------------------------------------ | --[[--------------------------< E X P O R T E D F U N C T I O N S >------------------------------------------ | ||
خط ۲۶۷: | خط ۲۷۹: | ||
return { | return { | ||
link = link, | |||
list = list, | list = list, | ||
wrap = wrap, | wrap = wrap, | ||
}; | }; |