模块:Lyrics

来自能源智库
跳转至: 导航搜索

此模块的文档可以在模块:Lyrics/doc创建

脚本错误:Lua错误:无法创建进程:proc_open不可用。请检查PHP的指令配置“disable_functions”。

local p = {}

local getArgs = require('Module:Arguments').getArgs
local lang = require('Module:Lang')

function p._lyrics(args)
	local orig = mw.text.split(args.original or '', '\n')
	local tran = mw.text.split(args.translated or '', '\n')
	local llang = args.llang and args.llang or 'ja'
	local rlang = args.rlang and args.rlang or 'zh'
	local lstyle = 'white-space:pre-wrap;' .. (args.lstyle and args.lstyle or '')
	local rstyle = 'white-space:pre-wrap;' .. (args.rstyle and args.rstyle or '')

	local html = mw.html.create()

	for i, v in pairs(orig) do
		html:
			tag('div')
				:cssText('clear:both;')
				:tag('div')
					:addClass('six')
					:addClass('columns')
					:cssText(lstyle)
					:node(lang.wrap(v, llang))
					:tag('br')
						:done()
					:done()
				:tag('div')
					:addClass('six')
					:addClass('columns')
					:cssText(rstyle)
					:node(lang.wrap(tran[i], rlang))
					:tag('br')
						:done()
					:done()
	end
	
	-- Clear the floating
	html:tag('div'):cssText('clear:both')

	return tostring(html)
end

function p.lyrics(frame)
	local args = getArgs(frame, {wrappers='Template:LyricsKai'})
	return p._lyrics(args)
end

return p