Module:MOS scalesig: Difference between revisions
module now calls link functions from module:mos |
ArrowHead294 (talk | contribs) mNo edit summary |
||
(11 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
local p = {} | |||
local getArgs = require("Module:Arguments").getArgs | |||
local mos = require("Module:MOS") | local mos = require("Module:MOS") | ||
local yesno = require("Module:Yesno") | local yesno = require("Module:Yesno") | ||
-- | -- "Main" function; calls appropriate mos-string functions | ||
function p._mos_scalesig(input_mos, is_link, is_long) | |||
local is_link = yesno(is_link, false) -- Should the the scalesig be a link? | |||
local is_long = yesno(is_long, false) -- Should the scalesig be in the long form "xL ys (p/q-equivalent)"? | |||
- | |||
function p._mos_scalesig( | |||
local is_link = yesno(is_link, false) | |||
local is_long = yesno(is_long, false) | |||
return (is_link == true | |||
and (is_long and mos.as_long_link(input_mos) or mos.as_link(input_mos)) | |||
or (is_long and mos.as_long_string(input_mos) or mos.as_string(input_mos))) | |||
end | end | ||
-- Wrapper function | -- Wrapper function | ||
function p.mos_scalesig(frame) | function p.mos_scalesig(frame) | ||
local args = getArgs(frame) | local args = getArgs(frame) | ||
local | local input_mos = mos.parse(args["scalesig"]) | ||
local is_link = yesno(args["link"], false) | local is_link = yesno(args["link"], false) | ||
local is_long = yesno(args["long"], false) | local is_long = yesno(args["long"], false) | ||
local debugg = yesno(args["debug"]) | |||
local result = p._mos_scalesig(input_mos, is_link, is_long) | |||
-- Debugger option | |||
if debugg == true then | |||
result = "<syntaxhighlight lang=\"wikitext\">" .. result .. "</syntaxhighlight>" | |||
end | |||
return | return frame:preprocess(result) | ||
end | end | ||
function p.tester() | function p.tester() | ||
local input_mos = mos.new(5,2) | local input_mos = mos.new(5, 2) | ||
return p._mos_scalesig(input_mos, true, true) | return p._mos_scalesig(input_mos, true, true) | ||
end | end | ||
return p | return p |