Модуль:Utils
Для документации этого модуля может быть создана страница Модуль:Utils/Документация
local p = {}
-- Шаблон:Главы2
function p.tocline__numericTitles_roman(frame)
pargs = frame:getParent().args
local count_parts = tonumber(pargs[1]) or 0
local param2 = pargs[2] or ''; if param2 ~= '' then param2 = param2 .. ' ' end
local param3 = pargs[3] or ''
local post = pargs.post
if count_parts > 0 then
local r = require('Модуль:RomanNumber')
result = {}
for i = 1, count_parts do
n = r.toRomanNumber(i)
table.insert(result, '[[#'..param2..n..param3..'|'..n..']]')
end
result = table.concat(result, ' · ')
if param2 ~= '' then result = param2.. ' ' .. result end
if post then result = result .. ' · ' .. post end
return result
end
end
-- Шаблон:Хим2
function p.chem2(frame)
local str = frame:getParent().args[1]; if not str then return end
local str = string.gsub( str, "%s*~%s*", " = ")
local subs = { ['0']='₀', ['1']='₁', ['2']='₂', ['3']='₃', ['4']='₄', ['5']='₅', ['6']='₆', ['7']='₇', ['8']='₈', ['9']='₉' }
local result = string.gsub( str, "([%a)%]])(%d+)", function(a, b) return a..string.gsub(b, '%d', subs) end )
return result
end
-- проверка переменной, возврат её или nil если пустая
function is ( var ) if ( var == '' or var == nil ) then return nil else return var end end
return p