Module:Temperament data: Difference between revisions
CompactStar (talk | contribs) No edit summary |
CompactStar (talk | contribs) No edit summary |
||
| Line 192: | Line 192: | ||
end | end | ||
function | local function rat_list_to_matrix(subgroup, list) | ||
local result = {} | local result = {} | ||
for j = 1, #subgroup do | for j = 1, #subgroup do | ||
| Line 208: | Line 208: | ||
end | end | ||
local function mysplit (inputstr, sep) | |||
if sep == nil then | |||
sep = "%s" | |||
end | |||
local t={} | |||
for str in string.gmatch(inputstr, "([^"..sep.."]+)") do | |||
table.insert(t, str) | |||
end | |||
return t | |||
end | |||
function p.temperament_data(frame) | |||
local subgroup = mysplit(frame.args['subgroup'], ".") | |||
for i = 1, #subgroup do | |||
subgroup[i] = tonumber(subgroup[i]) | |||
end | |||
local comma_basis = mysplit(frame.args['comma_list'], ",") | |||
for i = 1, #comma_list do | |||
comma_basis[i] = rat.parse(comma_list[i]) | |||
end | |||
comma_basis = rat_list_to_matrix(subgroup, comma_basis) | |||
local generators = mysplit(frame.args['generators'], ",") | |||
for i = 1, #comma_list do | |||
generators[i] = rat.parse(generators[i]) | |||
end | |||
generators = rat_list_to_matrix(subgroup, generators) | |||
local te_generator = ui | |||
end | |||
return p | return p | ||