Module:Infobox MOS: Difference between revisions
No edit summary |
No edit summary |
||
| Line 105: | Line 105: | ||
local has_prev_x = (ns > 1) | local has_prev_x = (ns > 1) | ||
local prev_L, next_L, prev_s,next_s, prev_L_prev_s, prev_L_next_s, next_L_prev_s, next_L_next_s = '' | local prev_L, next_L, prev_s,next_s, prev_L_prev_s, prev_L_next_s, next_L_prev_s, next_L_next_s = '' | ||
next_s = '[[' . | next_s = '[[' .. nL .. 'L ' .. (ns + 1) .. 's' .. equave_link .. '|↓' .. nL .. 'L ' .. (ns + 1) .. 's' .. equave_disp .. '\n]]' | ||
next_L = '[[' .. ( | next_L = '[[' .. (nL + 1) .. 'L ' .. ns .. 's' .. equave_link .. '|' .. (nL + 1) .. 'L ' .. ns .. 's' .. equave_disp .. '→]]' | ||
next_L_next_s = '[[' .. ( | next_L_next_s = '[[' .. (nL + 1) .. 'L ' .. (ns + 1) .. 's' .. equave_link .. '|← ' .. (nL + 1) .. 'L ' .. (ns + 1) .. 's' .. equave_disp .. ']]' | ||
if has_prev_y then | if has_prev_y then | ||
prev_s = '[[' . | prev_s = '[[' .. nL .. 'L ' .. (ns - 1) .. 's' .. equave_link .. '|↑' .. nL .. 'L ' .. (ns - 1) .. 's' .. equave_disp .. ']]' | ||
prev_L_prev_s = '[[' .. ( | prev_L_prev_s = '[[' .. (nL - 1) .. 'L ' .. (ns - 1) .. 's' .. equave_link .. '|← ' .. (nL - 1) .. 'L ' .. (ns - 1) .. 's' .. equave_disp .. ']]' | ||
next_L_prev_s = '[[' .. ( | next_L_prev_s = '[[' .. (nL + 1) .. 'L ' .. (ns - 1) .. 's' .. equave_link .. '|← ' .. (nL + 1) .. 'L ' .. (ns - 1) .. 's' .. equave_disp .. ']]' | ||
end | end | ||
if has_prev_x then | if has_prev_x then | ||
prev_L = '[[' .. ( | prev_L = '[[' .. (nL - 1) .. 'L ' .. ns .. 's' .. equave_link .. '|← ' .. (nL - 1) .. 'L ' .. ns .. 's' .. equave_disp .. ']]' | ||
prev_L_prev_s = '[[' .. ( | prev_L_prev_s = '[[' .. (nL - 1) .. 'L ' .. (ns - 1) .. 's' .. equave_link .. '|← ' .. (nL - 1) .. 'L ' .. (ns - 1) .. 's' .. equave_disp .. ']]' | ||
prev_L_next_s = '[[' .. ( | prev_L_next_s = '[[' .. (nL - 1) .. 'L ' .. (ns + 1) .. 's' .. equave_link .. '|← ' .. (nL - 1) .. 'L ' .. (ns + 1) .. 's' .. equave_disp .. ']]' | ||
end | end | ||
| Line 130: | Line 130: | ||
local period = rat.as_ratio(equave) | local period = rat.as_ratio(equave) | ||
d = gcd( | d = gcd(nL, ns) | ||
if d > 1 then | if d > 1 then | ||
period = ET.backslash_display(ET.new(d, equave), 1) | period = ET.backslash_display(ET.new(d, equave), 1) | ||
end | end | ||
local pattern = frame.args['Pattern'] | local pattern = frame.args['Pattern'] | ||
local collapsed_et = ET.new( | local collapsed_et = ET.new(nL, equave) | ||
local collapsed_bright_steps = frame.args['Collapsed'] | local collapsed_bright_steps = frame.args['Collapsed'] | ||
local collapsed_dark_steps = | local collapsed_dark_steps = nL/d - collapsed_bright_steps | ||
local equalized_et = ET.new( | local equalized_et = ET.new(nL + ns, equave) | ||
local equalized_bright_steps = frame.args['Equalized'] | local equalized_bright_steps = frame.args['Equalized'] | ||
local equalized_dark_steps = ( | local equalized_dark_steps = (nL + ns)/d - equalized_bright_steps | ||
local structure_data = {} | local structure_data = {} | ||
| Line 166: | Line 166: | ||
) | ) | ||
}) | }) | ||
if | if nL == ns then | ||
parent_mos_link = 'none' | parent_mos_link = 'none' | ||
else | else | ||
parent_mos_link = '[[' .. math.min( | parent_mos_link = '[[' .. math.min(nL, ns) .. 'L ' .. math.max(nL, ns)-math.min(nL, ns) .. 's' .. equave_link .. '|' | ||
.. math.min( | .. math.min(nL, ns) .. 'L ' .. math.max(nL, ns)-math.min(nL, ns) .. 's' .. equave_disp .. ']]' | ||
end | end | ||
table.insert(structure_data, { | table.insert(structure_data, { | ||
| Line 178: | Line 178: | ||
table.insert(structure_data, { | table.insert(structure_data, { | ||
'Daughter MOSes', | 'Daughter MOSes', | ||
'[[' . | '[[' .. nL + ns .. 'L ' .. nL .. 's' .. equave_link .. '|' | ||
. | .. nL + ns .. 'L ' .. nL .. 's' .. equave_disp .. ']], [[' | ||
. | .. nL .. 'L ' .. nL + ns .. 's' .. equave_link.. '|' .. nL .. 'L ' .. nL + ns .. 's' .. equave_disp .. ']]' | ||
}) | }) | ||
table.insert(structure_data, { | table.insert(structure_data, { | ||
'[[Operations on MOSes#Sistering|Sister MOS]]', | '[[Operations on MOSes#Sistering|Sister MOS]]', | ||
'[[' . | '[[' .. ns .. 'L ' .. nL .. 's' .. equave_link .. '|' .. ns .. 'L ' .. nL .. 's' .. equave_disp .. ']]' | ||
}) | }) | ||
local tamnams = tamnams_name[MOS.as_string(mos)] | local tamnams = tamnams_name[MOS.as_string(mos)] | ||
| Line 265: | Line 265: | ||
'[[' .. ET.as_string(superhard_et) .. '|' .. superhard_gen .. ']] (' .. superhard_gen_cents .. '¢)' | '[[' .. ET.as_string(superhard_et) .. '|' .. superhard_gen .. ']] (' .. superhard_gen_cents .. '¢)' | ||
}) | }) | ||
local title = | local title = nL .. 'L ' .. ns .. 's' .. equave_disp | ||
result = p.build( | result = p.build( | ||
title, | title, | ||
structure_data, | structure_data, | ||
et_data, | et_data, | ||
nL, | |||
ns | |||
) | ) | ||
if not debug_mode then | if not debug_mode then | ||