Module:Interval table: Difference between revisions

CompactStar (talk | contribs)
No edit summary
CompactStar (talk | contribs)
No edit summary
Line 4: Line 4:
local rat = require('Module:Rational')
local rat = require('Module:Rational')
local ET = require('Module:ET')
local ET = require('Module:ET')
local newline = string.char(10)


function p.interval_table(frame)
function p.interval_table(frame)
local tuning = frame.args['tuning']
local tuning = frame.args['tuning']
local et = ET.parse(tuning) or ET.parse('12edo')
local et = ET.parse(tuning) or ET.parse('12edo')
local wikitext = '{|class="wikitable"|\n'
local wikitext = '{|class="wikitable"|' .. newline
local octave = ET.approximate(et, 2)
local octave = ET.approximate(et, 2)
local fifth = ET.approximate(et, 3/2)
local fifth = ET.approximate(et, 3/2)
Line 16: Line 17:
local dual_sharp_fifth = ET.approximate(et, 3/2, 1)
local dual_sharp_fifth = ET.approximate(et, 3/2, 1)


wikitext = wikitext .. '!Steps\n'
wikitext = wikitext .. '!Steps' .. newline
wikitext = wikitext .. '!Cents\n'
wikitext = wikitext .. '!Cents' .. newline
if rat.eq(et.equave, 2) then
if rat.eq(et.equave, 2) then
if dual_fifth then
if dual_fifth then
wikitext = wikitext .. '![[Ups and downs notation]] (dual flat fifth ' .. dual_flat_fifth  .. '\\' .. et.size .. ')\n'
wikitext = wikitext .. '![[Ups and downs notation]] (dual flat fifth ' .. dual_flat_fifth  .. '\\' .. et.size .. ')' .. newline
wikitext = wikitext .. '![[Ups and downs notation]] (dual sharp fifth ' .. dual_sharp_fifth .. '\\' .. et.size .. ')\n'
wikitext = wikitext .. '![[Ups and downs notation]] (dual sharp fifth ' .. dual_sharp_fifth .. '\\' .. et.size .. ')' .. newline
else
else
wikitext = wikitext .. '![[Ups and downs notation]]\n'
wikitext = wikitext .. '![[Ups and downs notation]]' .. newline
end
end
end
end
Line 33: Line 34:
if rat.eq(et.equave, 2) then
if rat.eq(et.equave, 2) then
if dual_fifth then
if dual_fifth then
wikitext = wikitext .. '|{{UDnote|tuning=' .. ET.as_string(et) .. '|step=' .. i .. '|fifth=' .. dual_flat_fifth .. '}}\n'
wikitext = wikitext .. '|{{UDnote|tuning=' .. ET.as_string(et) .. '|step=' .. i .. '|fifth=' .. dual_flat_fifth .. '}} \n'
wikitext = wikitext .. '|{{UDnote|tuning=' .. ET.as_string(et) .. '|step=' .. i .. '|fifth=' .. dual_sharp_fifth .. '}}\n'
wikitext = wikitext .. '|{{UDnote|tuning=' .. ET.as_string(et) .. '|step=' .. i .. '|fifth=' .. dual_sharp_fifth .. '}} \n'
else
else
wikitext = wikitext .. '|{{UDnote|tuning=' .. ET.as_string(et) .. '|step=' .. i .. '}}\n'
wikitext = wikitext .. '|{{UDnote|tuning=' .. ET.as_string(et) .. '|step=' .. i .. '}}\n'
Line 43: Line 44:
wikitext = wikitext .. '|}'
wikitext = wikitext .. '|}'


mw.logObject(wikitext)
return wikitext
return wikitext
end
end


return p
return p