Module:MOS in EDO allperiods: Difference between revisions
adding section headers... bad idea; will instead have them as table captions |
Added checks for whether to add temperament names |
||
| Line 26: | Line 26: | ||
local edo = edo or 31 | local edo = edo or 31 | ||
local number_of_periods = number_of_periods or 1 | local number_of_periods = number_of_periods or 1 | ||
local temperaments = temperaments | local temperaments = temperaments or { "slender", "valentine", "miracle", "nusecond", "hemithirds", "mothra", "orwell", "myna", "mohajira", "würschmidt", "squares", "semisept", "meantone", "casablanca", "tritonic" } | ||
-- Check whether the number of periods divides the edo | -- Check whether the number of periods divides the edo | ||
| Line 36: | Line 36: | ||
verified_number_of_periods = number_of_periods | verified_number_of_periods = number_of_periods | ||
end | end | ||
-- Generator | |||
local starting_generator = math.floor(period_in_edosteps / verified_number_of_periods / 2) + 1 | |||
-- Include temperament names? | |||
local show_temperament = temperaments ~= nil and #temperaments == math.floor(period_in_edosteps / verified_number_of_periods / 2) | |||
local result = "" | local result = "" | ||
for i = starting_generator, period_in_edosteps - 1 do | for i = starting_generator, period_in_edosteps - 1 do | ||
| Line 47: | Line 52: | ||
local temperament_index = 1 + i - starting_generator | local temperament_index = 1 + i - starting_generator | ||
result = result .. mosinedo.mos_in_edo(edo, i, verified_number_of_periods, temperaments[temperament_index]) | if show_temperament then | ||
result = result .. mosinedo.mos_in_edo(edo, i, verified_number_of_periods, temperaments[temperament_index]) | |||
else | |||
result = result .. mosinedo.mos_in_edo(edo, i, verified_number_of_periods) | |||
end | |||
end | end | ||