2023年政策修订增补工作正在进行中,欢迎参与!
Module: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