Открыть меню
Переключить меню настроек
Открыть персональное меню
Вы не представились системе
Ваш IP-адрес будет виден всем, если вы внесёте какие-либо изменения.

Модуль:Анимация: различия между версиями

Материал из Celadon | Wiki Sierra
[[commons:MediaWiki]]>Gevron
Новая страница: «local p = {} function p.animate( f ) local args = f if f == mw.getCurrentFrame() then args = f:getParent().args end local files = args[1] or '' local size = args[2] or '' if size ~= '' then size = '|' .. size end local images = {} for image in mw.text.gsplit( files, '%s*;%s*' ) do if image == '' then table.insert( images, '<span><br></span>' ) else table.insert( images, '<span>Файл:' .. image .. size .. '</span>' ) end e...»
 
Armowich (обсуждение | вклад)
м 1 версия импортирована
 
(нет различий)

Текущая версия от 21:41, 7 декабря 2025

Для документации этого модуля может быть создана страница Модуль:Анимация/doc

local p = {}
function p.animate( f )
	local args = f
	if f == mw.getCurrentFrame() then
		args = f:getParent().args
	end
	local files = args[1] or ''
	local size = args[2] or ''
	
	if size ~= '' then
		size = '|' .. size
	end
	
	local images = {}
	for image in mw.text.gsplit( files, '%s*;%s*' ) do
		if image == '' then
			table.insert( images, '<span><br></span>' )
		else
			table.insert( images, '<span>[[Файл:' .. image .. size .. ']]</span>' )
		end
	end
	images[1] = images[1]:gsub( '^<span>', '<span class="active">' )
	
	return '<span class="animated">' .. table.concat( images ) .. '</span>'
end

function p.text( f )
	local args = f
		if f == mw.getCurrentFrame() then
			args = f:getParent().args
		end
		local texts = args[1]
		local result = {}
		for text in mw.text.gsplit( texts, '%s*;%s*' ) do
			if text == '' then
				table.insert( result, '<span><br></span>' )
			else
				table.insert( result, '<span>' .. text .. '</span>' )
			end
		end
	result[1] = result[1]:gsub( '^<span>', '<span class="active">' )
		
	return '<span class="animated">' .. table.concat( result ) .. '</span>'
end

return p