Модуль:Якорь
Материал из Space Station 14 Вики
Версия от 14:31, 4 мая 2025; Pok (обсуждение | вклад) (Новая страница: «-- source: https://ru.wikipedia.org/wiki/Модуль:Якорь -- license: CC BY-SA 4.0 local getArgs = require('Module:Arguments').getArgs local yesno = require('Module:Yesno') local compressSparseArray = require('Module:TableTools').compressSparseArray local p = {} local function unpack(...) local frame = ... local args if type(frame.args) == 'table' then args = getArgs(frame) elseif type(frame) == 'table' then args = frame else args = {......»)
Шаблон:Module rating
Модуль предназначен для создания якорей. На нем работают шаблоны {{якорь}} и {{видимый якорь}}. Также его можно использовать в других модулях.
Использование
Для начала необходимо загрузить модуль:
local anchor = require('Модуль:Якорь').main
Можно использовать неограниченное количество параметров:
anchor(anchor1, anchor2, ...)
Также параметр visible (или v) позволяет выбрать первый якорь в качестве текста, который будет подсвечиваться при переходе, либо отдельно указать этот текст через параметр text:
anchor{visible = true, visible_anchor, anchor2, ...}
или
anchor{visible = true, text = 'какой-то текст', anchor1, anchor2, ...}
-- source: https://ru.wikipedia.org/wiki/Модуль:Якорь
-- license: CC BY-SA 4.0
local getArgs = require('Module:Arguments').getArgs
local yesno = require('Module:Yesno')
local compressSparseArray = require('Module:TableTools').compressSparseArray
local p = {}
local function unpack(...)
local frame = ...
local args
if type(frame.args) == 'table' then
args = getArgs(frame)
elseif type(frame) == 'table' then
args = frame
else
args = {...}
end
return args
end
function p._main(anchor, text, visible)
local result = mw.html.create('span')
:attr('id', anchor)
:wikitext(text)
if visible then
result:addClass('highlight-target')
end
return tostring(result)
end
function p.main(...)
local args = unpack(...)
local anchors = compressSparseArray(args)
local text
local visible = yesno(args.visible or args.v)
if visible then
text = args.text or args['текст'] or args[1]
end
local result = text
for i, v in ipairs(anchors) do
result = p._main(anchors[i], result, visible)
end
return result
end
return p