LLWiki正在建设中,欢迎加入我们!
模块:CGroupViewer
跳转到导航
跳转到搜索
可在模块:CGroupViewer/doc创建此模块的帮助文档
local z = {} --local error = require( 'Module:Error' ) local function makeText( frame, v ) local text = v.text if not v.preprocessed then text = frame:preprocess( text ) end return mw.text.trim( text ) .. '\n' end local function makeItem( frame, v ) local text = '* ' if v.original then text = text .. '原文:<span lang="ja">-{|' .. v.original .. '}-</span>;' end return text .. '-{D|' .. v.rule .. '}-当前显示为:-{|' .. v.rule .. '}-\n' end function z.main( frame ) local name = frame.args[1] if not name or name == '' then return '' end local data = require( 'Module:CGroup/' .. name ) if type( data ) ~= 'table' or not data.name or data.name == '' then return '指定模块“' .. name .. '”不是有效的转换组' end --[[if data.name ~= name then return frame:expandTemplate{ title = 'Template:CGroup redirect', args = { 'Module:CGroup/' .. data.name } } end]] local pieces = { '<strong>以下是公共转换组“' .. data.description .. '”。</strong>\n\n' } for i, v in ipairs( data.content ) do if v.type == 'text' then table.insert( pieces, makeText( frame, v ) ) elseif v.type == 'item' then table.insert( pieces, makeItem( frame, v ) ) end end --table.insert( pieces, '[[Category:公共轉換組模板|' .. name .. ']]' ) return table.concat( pieces ) end function z.dialog( frame ) local name = frame.args[1] if not name or name == '' then return '' end local data = require( 'Module:CGroup/' .. name ) local pieces = { '{| class="mw-collapsible mw-collapsed" width="100%"\n', '! align="left" | 本文使用公共转换组“[[Module:CGroup/' .. name .. '|' .. data.description .. ']]”。<span class="plainlinks" style="float: right;">[[' .. tostring( mw.uri.fullUrl( 'Module:CGroup/' .. name, { action = 'edit' } ) ), ' 编辑]]</span>\n', '|-\n', '|\n' } for i, v in ipairs( data.content ) do if v.type == 'item' then table.insert( pieces, makeItem( frame, v ) ) end end table.insert( pieces, '|}' ) return table.concat( pieces ) end --[[function z.json( frame ) local name = frame.args[1] if not name or name == '' then return 'null' end local data = require( 'Module:CGroup/' .. name ) local json = require( 'Module:MicroJSON' ) return json.encode_object( data, { name = '', description = '', content = { { type = '', [true] = '' }, }, } ) end]] return z