Module:Sandbox/ChaoticShadow/SongDataLine: Difference between revisions
Content added Content deleted
No edit summary |
No edit summary |
||
Line 38: | Line 38: | ||
maxLen = math.max(maxLen, #lang.lyrics) |
maxLen = math.max(maxLen, #lang.lyrics) |
||
end |
end |
||
for i=1,maxLen,1 do |
|||
-- if tbls.jp.tb[i] then |
|||
local _row = root:tag('tr') |
|||
-- else |
|||
local nextContent = nil |
|||
⚫ | |||
for _,lang in ipairs(languages) do |
|||
⚫ | |||
_row:tag('td'):wikitext(lang.lyrics[i]) |
|||
⚫ | |||
content = lang.lyrics[i+1] or content |
|||
⚫ | |||
if nextContent == nil then |
|||
⚫ | |||
end |
|||
⚫ | |||
return tostring(maxLen |
return tostring(maxLen) .. mw.dumpObject(args) |
||
end |
end |
||
Revision as of 02:24, 24 June 2021
Documentation for this module may be created at Module:Sandbox/ChaoticShadow/SongDataLine/doc
local getArgs = require('Module:Arguments').getArgs
local p = {}
local args = {}
-- local root = mw.html.create('table'):addClass('wikitable')
local root = ''
function p.main(frame)
args = getArgs(frame)
languages = {
{
name = "jp",
pattern = "^jp[0-9]+$",
lyrics = {}
},
{
name = "en",
pattern = "^en[0-9]+$",
lyrics = {}
}
}
for k,v in pairs(args) do
for _,lang in ipairs(languages) do
if string.match(k, lang.pattern) then
ind = tonumber(string.match(k, "[0-9]+"))
lang.lyrics[ind] = v
break
end
end
end
local maxLen = 0
for _,lang in pairs(languages) do
maxLen = math.max(maxLen, #lang.lyrics)
end
for i=1,maxLen,1 do
local _row = root:tag('tr')
local nextContent = nil
for _,lang in ipairs(languages) do
_row:tag('td'):wikitext(lang.lyrics[i])
content = lang.lyrics[i+1] or content
end
if nextContent == nil then
break
end
end
return tostring(maxLen) .. mw.dumpObject(args)
end
return p