Module:MOS mode degrees: Difference between revisions

Ganaram inukshuk (talk | contribs)
m TODO added
Ganaram inukshuk (talk | contribs)
Added option to collapse table
Line 53: Line 53:
-- Create a table of a mos's degrees
-- Create a table of a mos's degrees
-- If a step pattern is provided, it's assumed to be that of a modmos
-- If a step pattern is provided, it's assumed to be that of a modmos
function p._mos_mode_degrees(input_mos, mos_prefix, mode_names, use_default_mode_names, step_pattern)
function p._mos_mode_degrees(input_mos, mos_prefix, mode_names, use_default_mode_names, is_collapsed, step_pattern)
local is_true_mos = step_pattern == nil
local is_true_mos = step_pattern == nil
local input_mos = input_mos or mos.new(5, 2)
local input_mos = input_mos or mos.new(5, 2)
local mos_prefix = mos_prefix or "mos"
local mos_prefix = mos_prefix or "mos"
local is_collapsed = is_collapsed == true
-- If default mode names are to be used, they'll overwrite whatever mode names are passed in, even if there aren't any
-- If default mode names are to be used, they'll overwrite whatever mode names are passed in, even if there aren't any
Line 129: Line 129:
-- Create table
-- Create table
local result = "{| class=\"wikitable sortable\"\n"
local result = "{| class=\"wikitable sortable mw-collapsible" .. (is_collapsed and " mw-collapsed\"\n" or "\"\n")
-- Table header
-- Table header
Line 322: Line 322:
end
end
end
end
-- Check if the table should start collapsed
local is_collapsed = frame.args["Collapsed"] == "1"
-- If a modmos step pattern was never provided, call the function mos_mode_degrees
-- If a modmos step pattern was never provided, call the function mos_mode_degrees
Line 327: Line 330:
local result = ""
local result = ""
if step_pattern == "" then
if step_pattern == "" then
result = p._mos_mode_degrees(input_mos, mos_prefix, mode_names, use_default_names)
result = p._mos_mode_degrees(input_mos, mos_prefix, mode_names, use_default_names, is_collapsed)
--elseif #step_pattern == input_mos.nL + input_mos.ns then
--elseif #step_pattern == input_mos.nL + input_mos.ns then
else
else
result = p._mos_mode_degrees(input_mos, mos_prefix, mode_names, use_default_names, step_pattern)
result = p._mos_mode_degrees(input_mos, mos_prefix, mode_names, use_default_names, is_collapsed, step_pattern)
end
end