Module:Scale tree

From Xenharmonic Wiki
Revision as of 07:51, 22 May 2023 by CompactStar (talk | contribs)
Jump to navigation Jump to search

local p = {}
local step_ratios = {
	{1, 1},
	{4, 3},
	{3, 2},
	{2, 1},
	{5, 2},
	{3, 1},
	{4, 1},
	{1, 0}
}

local function compare(a, b)
	return (a[1]/a[2]) < (b[1]/b[2])
end

function p.scale_tree(frame)
	local l = frame.args['l']
	local s = frame.args['s']
	local equave = frame.args['equave']

	result = '{|class="wikitable"\n|-\n!L\n!s'
	local i = 1
	while i <= #step_ratios do
		i = i + 1
		step_ratio = step_ratios[i]
		result = result .. "|-\n"
		result = result .. "!" .. step_ratio[1] .. "\n"
		result = result .. "!" .. step_ratio[2] .. "\n"
	end
		
	result = result .. "\n|}"
	return result
end
return p