「モジュール:MOS intro」の版間の差分

Furcht968 (トーク | 投稿記録)
編集の要約なし
Furcht968 (トーク | 投稿記録)
編集の要約なし
231行目: 231行目:
local intro = p.mos_intro_names(scale_sig, tamnams_pasred, other_parsed)
local intro = p.mos_intro_names(scale_sig, tamnams_pasred, other_parsed)


-- Add repetition
if n == 1 then
intro = intro .. (equave_in_cents == 1200 and "[[オクターブ]]" or string.format("[[%s]] (%.1f{{cent}})の音程", equave_as_ratio, equave_in_cents, round)) .. "の中で"
else
intro = intro .. (equave_in_cents == 1200 and "[[オクターブ]]" or string.format("[[%s]] (%.1f{{cent}})の音程", equave_as_ratio, equave_in_cents, round)) .. string.format("を%d回、", n)
intro = intro .. string.format("%.1f{{cent}}の音程の中で", period_in_cents)
intro = intro .. string.format("%d個の広い音程と", nL/n)
intro = intro .. string.format("%d個の狭い音程の周期と共に", ns/n)
end


-- Add step counts
-- Add step counts
247行目: 256行目:
-- Add equave equivalence
-- Add equave equivalence
if rat.eq(input_mos.equave, rat.new(2)) then
if rat.eq(input_mos.equave, rat.new(2)) then
intro = intro .. "オクターブを周期とする[[MOS]]スケールである。"
intro = intro .. "[[オクターブ]]を周期とする[[MOS]]スケールである。"
elseif rat.eq(input_mos.equave, rat.new(3)) then
elseif rat.eq(input_mos.equave, rat.new(3)) then
intro = intro .. "トリターブを周期とする[MOS]]スケールである。"
intro = intro .. "[[トリターブ]]を周期とする[MOS]]スケールである。"
elseif rat.eq(input_mos.equave, rat.new(3,2)) then
elseif rat.eq(input_mos.equave, rat.new(3,2)) then
intro = intro .. "[[3/2]]を周期とする[[MOS]]スケールである。"
intro = intro .. "[[3/2]]を周期とする[[MOS]]スケールである。"
else
else
intro = intro .. string.format("%sを周期とする[[MOS]]である。", equave_as_ratio)
intro = intro .. string.format("%sを周期とする[[MOS]]である。", equave_as_ratio)
end
-- Add repetition
if n == 1 then
intro = intro .. ", repeating every " .. (equave_in_cents == 1200 and "[[octave]]." or string.format(" interval of [[%s]] (%.1f{{cent}}).", equave_as_ratio, equave_in_cents, round))
else
intro = intro .. string.format(", with a [[period]] of %d large %s", nL/n, (nL/n == 1 and "step" or "steps"))
intro = intro .. string.format(" and %d small %s", ns/n, (ns/n == 1 and "step" or "steps"))
intro = intro .. string.format(" that repeats every %.1f{{cent}}", period_in_cents)
intro = intro .. (n == 2 and ", or twice every" or string.format(", or %d times every", n)) .. (equave_in_cents == 1200 and " octave." or string.format(" interval of [[%s]] (%.1f{{cent}}).", equave_as_ratio, equave_in_cents, round))
end
end