Module:Anchor: Difference between revisions

From The Global Wiki
Jump to navigation Jump to search
en>Pppery
(Add class per edit request)
 
en>Plastikspork
(Fix |=FOO bug where {{anchor|=FOO}} transcludes Template:FOO)
Line 1: Line 1:
-- This module implements {{anchor}}.
{{<includeonly>safesubst:</includeonly>#invoke:anchor|main}}<noinclude>
 
{{Documentation}}
local getArgs = require('Module:Arguments').getArgs
<!-- Categories go on the /doc subpage, and interwikis go on Wikidata. -->
local tableTools = require('Module:TableTools')
</noinclude>
 
local p = {}
 
function p.main(frame)
-- Get the positional arguments from #invoke, remove any nil values,
-- and pass them to p._main.
local args = getArgs(frame)
local argArray = tableTools.compressSparseArray(args)
return p._main(unpack(argArray))
end
 
function p._main(...)
-- Generate the list of anchors.
local anchors = {...}
local ret = {}
for _, anchor in ipairs(anchors) do
ret[#ret + 1] = '<span class="anchor" id="' .. anchor .. '"></span>'
end
return table.concat(ret)
end
 
return p

Revision as of 22:06, 31 January 2021

Script error: No such module "anchor".