Changes

Jump to navigation Jump to search

Module:Yesno

494 bytes removed, 01:26, 10 September 2019
m
25 revisions imported
local p = -- Function allowing for consistent treatment of boolean-like wikitext input.-- It works similarly to the template {{yesno}}.
return function p.yesno(frameval, default --If your wiki uses non- defaults local retvals = { yes = ascii characters for any of "yes", "no = "",etc., you [ -- should replace "¬val:lower()"] = with "mw.ustring.lower(val)"in the }  -- Allow arguments to override defaultsfollowing line. Arguments are taken from -- the parent frame; other arguments are ignored. for k,v in pairs val = type(frameval) == 'string' and val:getParentlower().args) do retvals[k] = v end  val = args[1]  -- First deal with the case if or val is nil, then deal with other cases. if val == nil then return retvals['¬']nil end  elseif val = val:lower() -- Make lowercase.= true or val = val:match= '^%s*(.*%S)yes' or val == 'y' -- Trim whitespace.  -- Cases are ordered by (probable) likelihood of use. if or val == 'true' then return retvals['blank'] or retvals[val == 'not'] elseif or val == 'yeson' then return retvals['yes'] elseif or tonumber(val ) == 'no' 1 then return retvals['no']true elseif val == 'y' thenfalse return retvals[ or val == 'yesno'] elseif or val == 'n' then return retvals[ or val == 'nofalse'] elseif or val == '¬f' then return retvals['¬'] elseif tonumber( or val) == 1 then return retvals['yesoff'] elseif or tonumber(val) == 0 then return retvals['no']false else return retvals['def'] or retvals['yes']default end
end
 
return p

Navigation menu