Module:Infobox MOS: Difference between revisions

R-4981 (talk | contribs)
No edit summary
Ganaram inukshuk (talk | contribs)
Fixed a bug where neutralized nonoctave nL ns mosses were 2n-edo
Line 443: Line 443:
local hard_scalesig  = string.format("[[%s | %s]]", mos.as_long_string(hard_child_mos), mos.as_string(hard_child_mos))
local hard_scalesig  = string.format("[[%s | %s]]", mos.as_long_string(hard_child_mos), mos.as_string(hard_child_mos))
local neutral_scalesig  = string.format("[[%s | %s]]", mos.as_long_string(neutral_mos), mos.as_string(neutral_mos))
local neutral_scalesig  = string.format("[[%s | %s]]", mos.as_long_string(neutral_mos), mos.as_string(neutral_mos))
if input_mos.nL==input_mos.ns then
neutral_scalesig = string.format("[[%dedo]]", input_mos.nL*2)
end
local number_of_periods = utils._gcd(input_mos.nL, input_mos.ns)
local number_of_periods = utils._gcd(input_mos.nL, input_mos.ns)
Line 452: Line 449:
parent_scalesig = "none"
parent_scalesig = "none"
sister_scalesig = sister_scalesig .. " (self)"
sister_scalesig = sister_scalesig .. " (self)"
equave_suffix = ""
if rat.eq(input_mos.equave, 2) then
equave_suffix = "o"
elseif rat.eq(input_mos.equave, 3) then
equave_suffix = "t"
elseif rat.eq(input_mos.equave, rat.new(3, 2)) then
equave_suffix = "f"
elseif rat.is_harmonic(input_mos.equave) then
local a, b = rat.as_pair(input_mos.equave)
equave_suffix = a
else
equave_suffix = rat.as_ratio(input_mos.equave)
end
neutral_scalesig = string.format("[[%ded%s]]", input_mos.nL*2, equave_suffix)
end
end