Module:Infobox interval region: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 25: | Line 25: | ||
local ji11 = frame.args["ji11"] | local ji11 = frame.args["ji11"] | ||
local ji13 = frame.args["ji13"] | local ji13 = frame.args["ji13"] | ||
local jihigh = frame.args["jiHigh"] | |||
local moses = frame.args["MOSes"] | local moses = frame.args["MOSes"] | ||
Line 61: | Line 62: | ||
end | end | ||
table.insert(data, { | table.insert(data, { | ||
string.format("<div style=\"margin-top: 0.6em;\"><b>%s</b></div>", "JI intervals") | string.format("<div style=\"margin-top: 0.6em;\"><b>%s</b></div>", "[[JI]] intervals") | ||
}) | }) | ||
if ji3 ~= nil and ji3 ~= "" then | if ji3 ~= nil and ji3 ~= "" then | ||
table.insert(data, { | table.insert(data, { | ||
"3-limit", | "[[3-limit]]", | ||
ji3 | ji3 | ||
}) | }) | ||
Line 72: | Line 73: | ||
if ji5 ~= nil and ji5 ~= "" then | if ji5 ~= nil and ji5 ~= "" then | ||
table.insert(data, { | table.insert(data, { | ||
"5-limit", | "[[5-limit]]", | ||
ji5 | ji5 | ||
}) | }) | ||
Line 78: | Line 79: | ||
if ji7 ~= nil and ji7 ~= "" then | if ji7 ~= nil and ji7 ~= "" then | ||
table.insert(data, { | table.insert(data, { | ||
"7-limit", | "[[7-limit]]", | ||
ji7 | ji7 | ||
}) | }) | ||
Line 84: | Line 85: | ||
if ji11 ~= nil and ji11 ~= "" then | if ji11 ~= nil and ji11 ~= "" then | ||
table.insert(data, { | table.insert(data, { | ||
"11-limit", | "[[11-limit]]", | ||
ji11 | ji11 | ||
}) | }) | ||
Line 90: | Line 91: | ||
if ji13 ~= nil and ji13 ~= "" then | if ji13 ~= nil and ji13 ~= "" then | ||
table.insert(data, { | table.insert(data, { | ||
"13-limit", | "[[13-limit]]", | ||
ji13 | ji13 | ||
}) | |||
end | |||
if jihigh ~= nil and jihigh ~= "" then | |||
table.insert(data, { | |||
"Other just intervals", | |||
jihigh | |||
}) | }) | ||
end | end | ||
Line 105: | Line 112: | ||
if equave == nil or equave == "" then | if equave == nil or equave == "" then | ||
table.insert(data, { | table.insert(data, { | ||
"Equave", | "[[Equave]]", | ||
"[[" .. equave .. "]]" | "[[" .. equave .. "]]" | ||
}) | }) |
Revision as of 04:50, 14 March 2025
Documentation for this module may be created at Module:Infobox interval region/doc
-- EXTREMELY WIP
local p = {}
local u = require("Module:Utils")
local infobox = require("Module:Infobox")
local yesno = require("Module:Yesno")
function p.concatenate_tables(t1, t2)
for i=1, #t2 do
t1[#t1 + 1] = t2[i]
end
end
function p.infobox_IR(frame)
local name = frame.args["regionname"]
local complement = frame.args["complement"]
local centslower = frame.args["centsLowerWide"]
local centsupper = frame.args["centsUpperWide"]
local centslowerStrict = frame.args["centsLower"]
local centsupperStrict = frame.args["centsUpper"]
local equave = frame.args["equave"]
local ji3 = frame.args["ji3"]
local ji5 = frame.args["ji5"]
local ji7 = frame.args["ji7"]
local ji11 = frame.args["ji11"]
local ji13 = frame.args["ji13"]
local jihigh = frame.args["jiHigh"]
local moses = frame.args["MOSes"]
local data = {}
table.insert(data, {
"Name",
name
})
if centslower == nil or centslower == "" then
table.insert(data, {
"Lower bound",
centslowerStrict .. "¢"
})
else
table.insert(data, {
"Lower bound",
centslower .. "¢ - " .. centslowerStrict .. "¢"
})
end
if centsupper == nil or centsupper == "" then
table.insert(data, {
"Upper bound",
centsupperStrict .. "¢"
})
else
table.insert(data, {
"Upper bound",
centsupperStrict .. "¢ - " .. centsupper .. "¢"
})
end
table.insert(data, {
string.format("<div style=\"margin-top: 0.6em;\"><b>%s</b></div>", "[[JI]] intervals")
})
if ji3 ~= nil and ji3 ~= "" then
table.insert(data, {
"[[3-limit]]",
ji3
})
end
if ji5 ~= nil and ji5 ~= "" then
table.insert(data, {
"[[5-limit]]",
ji5
})
end
if ji7 ~= nil and ji7 ~= "" then
table.insert(data, {
"[[7-limit]]",
ji7
})
end
if ji11 ~= nil and ji11 ~= "" then
table.insert(data, {
"[[11-limit]]",
ji11
})
end
if ji13 ~= nil and ji13 ~= "" then
table.insert(data, {
"[[13-limit]]",
ji13
})
end
if jihigh ~= nil and jihigh ~= "" then
table.insert(data, {
"Other just intervals",
jihigh
})
end
table.insert(data, {
string.format("<div style=\"margin-top: 0.6em;\"><b>%s</b></div>", "Scale info")
})
if moses ~= nil and moses ~= "" then
table.insert(data, {
"[[MOS]]es",
moses
})
end
if equave == nil or equave == "" then
table.insert(data, {
"[[Equave]]",
"[[" .. equave .. "]]"
})
else
table.insert(data, {
"Equave",
"[[2/1]]"
})
end
local result = infobox.build(
"Interval region",
data
)
return frame:preprocess(debugg == true and "<pre>" .. result .. "</pre>" or result)
end
return p