Module:Link

local str = {}

local function link( content, linkType, linkSubtype ) for _i, subject in ipairs({ 'Billy Corgan', 'James Iha', "D'arcy Wretzky", 'Jimmy Chamberlin', 'Butch Vig', 'Flood', 'Alan Moulder', 'Kerry Brown' }) do local cat_str = 'Category:' .. linkType .. 's ' .. linkSubtype .. ' by ' .. subject .. '|' .. subject content = mw.ustring.gsub( content, subject,  .. cat_str ..  .. cat_str .. '' ) end return content end

function str.producer( frame ) local content = frame.args[1] local linkType = frame.args[2] if content == '' then return content end

return link(content, linkType, 'produced') end

function str.writer( frame ) local content = frame.args[1] local linkType = frame.args[2] if content == '' then return content end

return link(content, linkType, 'written') end

return str