Модуль:СтихКолонки: различия между версиями
Grayenot (обсуждение | вклад) мНет описания правки |
Grayenot (обсуждение | вклад) мНет описания правки |
||
Строка 1: | Строка 1: | ||
local p = {} | local p = {} | ||
function p.main(frame) | function p.main(frame) | ||
local | local content = frame:getParent().args[1] or '' | ||
local max_columns = tonumber(args[ | local max_columns = tonumber(frame.args['колонок']) or 2 | ||
local stanzas = mw.text.split(content, '%s*n%s*n%s*') | |||
local result = '<div class="column-container" style="column-count:' .. max_columns .. '; column-gap: 1em;">' | |||
for i, stanza in ipairs(stanzas) do | |||
stanza = mw.text.trim(stanza) | |||
result = result .. '<div style="break-inside: avoid; white-space: pre-wrap;">' .. mw.text.encode(stanza) .. '</div>' | |||
for i, | |||
result = result .. '<div | |||
end | end | ||
Версия от 18:57, 2 ноября 2024
Для документации этого модуля может быть создана страница Модуль:СтихКолонки/doc
local p = {} function p.main(frame) local content = frame:getParent().args[1] or '' local max_columns = tonumber(frame.args['колонок']) or 2 local stanzas = mw.text.split(content, '%s*n%s*n%s*') local result = '<div class="column-container" style="column-count:' .. max_columns .. '; column-gap: 1em;">' for i, stanza in ipairs(stanzas) do stanza = mw.text.trim(stanza) result = result .. '<div style="break-inside: avoid; white-space: pre-wrap;">' .. mw.text.encode(stanza) .. '</div>' end result = result .. '</div>' return result end return p