LLWiki正在建设中,欢迎加入我们

“模块:Tracklist”的版本间差异

跳转到导航 跳转到搜索
添加330字节 、​ 2023年8月1日 (二) 21:34
无编辑摘要
(撤销Bhsd讨论)的版本11289)
标签撤销
Zth讨论 | 贡献
 
(未显示2个用户的9个中间版本)
local p = {}
local getArgs = require("module:arguments").getArgs
local ml = require("module:multilist").ml
local cv = require("module:multilist").cv
 
function langWrap(text)
result = result.."、"
end
result = result.."<span lang=\"ja\">-{"..v.."}-</span>"
if mw.ustring.find(v, "^[\000-\127]*$") then
result = result..v
else
result = result.."<span lang=\"ja\">-{"..v.."}-</span>"
end
end
return result
end
 
function ml(frame, singer)
if singer == "" then
return ""
end
local singers = mw.text.split(singer or "", "、")
singers.cv = 1
singers.dlm = "<br>"
return frame:expandTemplate{title = "ml", args = singers}
end
 
 
local ljcols = 1 + trim(args.lyrics_credits) + trim(args.music_credits) + trim(args.arranger_credits)
local isNumbered = trim(args.number)
local ncols = ljcols + isNumbered + trim(args.singer_credits) + trim(args.extra_column) + trim(args.longnote_column) + trim(args.length)
local iscv = trim(args.display_cv)
 
local firstNumber = trim2(args.firstNumber) or 1
local info = (trim2(args.all_writing) and ("<span style=\"display:inline-block;margin-right:0.5em;\">全碟-{zh-hans:作词;zh-hant:填詞;zh-tw:作詞;}-及作曲:"..langWrap(args.all_writing).."</span>") or "") ..
(trim2(args.all_music) and ("<span style=\"display:inline-block;margin-right:0.5em;\">全碟作曲:"..langWrap(args.all_music).."</span>") or "") ..
(trim2(args.all_lyrics) and ("<span style=\"display:inline-block;margin-right:0.5em;\">全碟-{zh-hans:作词;zh-hant:填詞;zh-tw:作詞;}-:"..langWrap(args.all_lyrics).."</span>") or "") ..
(trim2(args.all_music) and ("<span style=\"display:inline-block;margin-right:0.5em;\">全碟作曲:"..langWrap(args.all_music).."</span>") or "") ..
(trim2(args.all_arranger) and ("<span style=\"display:inline-block;margin-right:0.5em;\">全碟编曲:"..langWrap(args.all_arranger).."</span>") or "") ..
(trim2(args.all_singerall_string_arranger) and ("<span style=\"display:inline-block;margin-right:0.5em;\">全碟演唱弦编曲:"..mllangWrap(frame, args.all_singerall_string_arranger).."</span>") or "") ..
(trim2(args.all_singer) and ("<span style=\"display:inline-block;margin-right:0.5em;\">全碟演唱:"..ml(frame, {args.all_singer, true}).."</span>") or "") ..
((args.all_note == "except" or args.all_note == "yes") and "<br><small>(下面注明例外曲目)</small>" or (args.all_note or '')) ..
(args.all_note2 or "")
 
local wikitext = "<div class=\"tracklist" ..
(trim2(args.length) and " tracklist-length" or "").."\"" ..
"\" style=\"min-width:calc(100% - "..(trim2(args.reserve_width) or "300px")..");"..(trim2(args.collapsed) and " style=\"border:#aaa 1px solid;\"" or "").."\">\n" ..
"{|"..(trim2(args.collapsed) and "class=\"mw-collapsible"..((args.collapsed == "closed" or args.collapsed == "yes") and " mw-collapsed" or "").."\"" or "").."\n" ..
"!colspan=9|"..(trim2(args.headline) or "曲目列表")..(info == "" and "" or ("<div style=\"font-weight:normal\">"..info.."</div>")).."\n" ..
 
for k, v in ipairs(args) do
local r = (k - 1) % ncols - isNumbered
wikitext = wikitext.."\n|"
if r == 0 then
if singerr == ""-1 then
wikitext = wikitext.."\n|-\n|"..tostring(math.ceil(k / ncols))..".||<span lang=\"ja\">-{"..v.."}-</span>"
wikitext = wikitext.."-\n|"..(trim2(v) or tostring(math.ceil(k / ncols) + firstNumber - 1)..".")
ifelseif r == 0 then
if isNumbered == 0 then
wikitext = wikitext.."-\n|"..tostring(math.ceil(k / ncols) + firstNumber - 1)..".\n|"
end
wikitext = wikitext.."\n|-\n|"..tostring(math.ceil(k / ncols))..".||<span lang=\"ja\">-{"..v.."}-</span>"
else
wikitext = wikitext.."\n|"
if r < ljcols then
wikitext = wikitext..langWrap(v)
elseif r == ljcols and args.singer_credits then
if iscv == 1 then
wikitext = wikitext..ml(frame, v)
wikitext = wikitext..cv(frame, {v})
else
wikitext = wikitext..ml(frame, {v})
end
else
wikitext = wikitext..(v or "")
14,963

个编辑

导航菜单