local getArgs = require('Module:Arguments').getArgs
local p = {}
function p.main(frame)
local args = getArgs(frame)
local result = {}
local lang = args.lang or 'ja'
for _, source in ipairs(args) do
local parts = {}
local iter = mw.ustring.gmatch(source .. '、', '([^_、]*)[_、]')
for val in iter do
table.insert(parts, val)
end
local base, ruby, css = parts[1], parts[2], parts[3]
local out = frame:expandTemplate{ title = 'ruby', args = { base, ruby, lang } }
if css and css ~= '' then
out = '<span style="' .. css .. '">' .. out .. '</span>'
end
table.insert(result, out)
end
return table.concat(result)
end
return p