模块:Linker
该模块提供了一些创建链接用的辅助函数。
canLink 函数
该函数接受1个无名参数。如果该参数包含模板、链接、标签,那么会返回空字符串,否则原样返回。
例子:
{{#invoke:Linker|canLink|声优}}
=> 声优{{#invoke:Linker|canLink|[[声优]]}}
=>
tryLink 函数
该函数接受1个无名参数。如果该参数包含模板、链接、标签,那么会原样返回,否则会自动生成链接。
例子:
local p = {} function p._canLink(name) if string.find(name, '[%[{<]') or mw.text.killMarkers(name) ~= name then return false else return true end end function p.canLink(frame) local target = frame.args[1] if p._canLink(target) then return target else return '' end end function p.tryLink(frame) local target = frame.args[1] if p._canLink(target) then return '[[' .. target .. ']]' else return target end end return p