Модуль:CategoryFormatter: различия между версиями
Материал из Space Station 14 Вики
Pok (обсуждение | вклад) мНет описания правки |
Pok (обсуждение | вклад) мНет описания правки |
||
| Строка 16: | Строка 16: | ||
end | end | ||
-- Формирования строки: выводит обработанный текст и добавляет категорию с таким именем | -- Формирования строки: выводит обработанный текст и добавляет категорию с таким именем | ||
table.insert(results, "<code>" .. displayText .. "</code>" .. "\n[[Category:" .. name .. "]]") | table.insert(results, "<code>" .. displayText .. "</code>" .. "\n[[Category:{{мч|" .. name .. "}}]]") | ||
end | end | ||
end | end | ||
return table.concat(results, "\n") | return frame:preprocess(table.concat(results, "\n")) | ||
end | end | ||
return p | return p | ||
Версия от 23:10, 3 апреля 2025
Для документации этого модуля может быть создана страница Модуль:CategoryFormatter/doc
local p = {}
function p.main(frame)
local input = frame.args[1] or ""
local results = {}
-- Разбивка выходной строки по символу '/'
for part in mw.text.gsplit(input, "/", true) do
local name = mw.text.trim(part)
if name ~= "" then
local title = mw.title.new(name)
local displayText = name
-- Если страница с таким названием существует, выводит её в виде ссылки
if title and title.exists then
displayText = "[[" .. name .. "]]"
end
-- Формирования строки: выводит обработанный текст и добавляет категорию с таким именем
table.insert(results, "<code>" .. displayText .. "</code>" .. "\n[[Category:{{мч|" .. name .. "}}]]")
end
end
return frame:preprocess(table.concat(results, "\n"))
end
return p