Modulo:ScritturaPronuncia

Vedi Template:ScritturaPronuncia.


local p = {}
local getArgs = require('Module:Arguments').getArgs

function p.ScritturaPronuncia(frame)
	local args = getArgs(frame)
	local Scrittura = args[1] or ''
	local Pronuncia = args[2] or ''
	return string.format('<<Scrittura>>%s<</Scrittura>> <<Pronuncia>>%s<</Pronuncia>>', Scrittura, Pronuncia)
end

function p.GetScrittura(frame)
	local t = frame2table(frame)
	return t['Scrittura']
end

function p.GetPronuncia(frame)
	local t = frame2table(frame)
	return t['Pronuncia']
end

function p.GetPronunciaParentesi(frame)
	local t = frame2table(frame)
	if t['Pronuncia'] and #t['Pronuncia']>0 then t['Pronuncia'] = "(''" .. t['Pronuncia'] .. "'')" end
	return t['Pronuncia']
end

function frame2table(frame)
	local t = {}
	local args = getArgs(frame, {frameOnly=true})
	local inputData = args[1] or ''
	for k, v in mw.ustring.gmatch(inputData, '<<(%w+)>>(.-)<</%1>>') do
		t[k] = v
	end
	return t
end

return p