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

添加650字节 、​ 2023年8月1日 (二) 21:34
无编辑摘要
标签移动版网页编辑 移动版编辑
Zth讨论 | 贡献
 
(未显示2个用户的4个中间版本)
local getArgs = require("module:arguments").getArgs
local ml = require("module:multilist").ml
local cv = require("module:multilist").cv
 
function langWrap(text)
 
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_string_arranger) and ("<span style=\"display:inline-block;margin-right:0.5em;\">全碟弦编曲:"..langWrap(args.all_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 '')) ..
 
for k, v in ipairs(args) do
local r = (k - 1) % ncols - isNumbered
wikitext = wikitext.."\n|"
if r == 0-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)..".")
elseif 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,866

个编辑