Mòdulu:asempi
La ducumintazzioni di stu mòdulu si pò criari nta Mòdulu:asempi/doc
local m_params = require("Mòdulu:paràmitri")
local m_basi = require("Mòdulu:basi")
local m_langs = require("Mòdulu:lingui")
local m_unicode = require("Mòdulu:dati Unicode")
local p = {}
local function _formatExample(text, transcription, meaning, source, link, heading, lang, scriptLang, disableTranslation, frame)
if not text then
return mw.ustring.format(
[=[<span class="example">''[[Aiutu:Asempi|Asempiu d’usu]] mancanti.'' <span class="plainlinks stubedit">([Agghiunciri])</span><!--
--><bdi lang="%s" style="display: none"><!-- Etichetta pû [[MediaWiki:Gadget-wikt.add-examples]], nun livari! --></bdi></span>]=],
mw.title.getCurrentTitle():fullUrl({ action = "edit" }), lang
) .. m_basi.fa_catiguria_cuntinutu(mw.ustring.format("Wiktionnaire:Asempi mancanti n %s", m_langs.get_nomu(lang)))
end
local italics = m_unicode.shouldItalicize(text) and "''" or ""
local quoteTagOpen = link and mw.ustring.format('<q cite="%s">', mw.ustring.gsub(link, '"', '%%22')) or '<q>'
text = m_unicode.setWritingDirection(text)
if italics then
if mw.ustring.sub(text, 1, 1) == "'" then
text = " " .. text
end
if mw.ustring.sub(text, -1) == "'" then
text = text .. " "
end
end
local wikicode = quoteTagOpen .. m_basi.etichetta_lingua(italics .. text .. italics, scriptLang) .. '</q>'
if source then
wikicode = wikicode .. " " .. frame:expandTemplate { title = "source", args = { source, lien = link } }
end
wikicode = mw.ustring.format('<span class="example">%s</span>', wikicode)
if transcription then
wikicode = wikicode .. "<br>" .. m_basi.etichetta_lingua("''" .. transcription .. "''", scriptLang .. "-Latn")
end
if disableTranslation then
wikicode = wikicode .. m_basi.fa_catiguria_cuntinutu(
mw.ustring.format("Asempi n %s cu traduzzioni disattivata", m_langs.get_nomu(lang)))
else
local translation
if meaning then
translation = meaning
elseif lang ~= "scn" then
translation = "''La traduzzioni n sicilianu di l’[[Aiutu:Asempi|asempiu]] nun c'è.'' "
translation = translation .. mw.ustring.format("<span class=\"plainlinks stubedit\">([%s%s Agghiùnciri])</span>", mw.site.server, mw.title.getCurrentTitle():localUrl("action=edit"))
translation = translation .. mw.ustring.format("[[Catigurìa:Asempi n %s a tradùciri]]", m_langs.get_nomu(lang))
end
if translation then
wikicode = wikicode .. mw.ustring.format("\n%s: ", heading) .. translation
end
end
return wikicode .. m_basi.fa_catiguria_cuntinutu("Asempi n " .. m_langs.get_nomu(lang))
end
function p.formatExample(frame)
local parentFrame = frame:getParent()
local args, success = m_params.process(parentFrame.args, {
[1] = {},
["sensu"] = {},
[2] = { alias_of = "sensu" },
["tr"] = {},
[3] = { alias_of = "tr" },
["funti"] = {},
["liami"] = {},
["testa"] = { default = "#*" },
["lingua"] = { required = true, checker = function(lang)
return m_langs.specialCodes[lang] ~= nil or m_langs.get_nomu(lang) ~= nil
end },
["nun-trad"] = { type = m_params.BOOLEAN, default = false }
}, true)
if success then
local scriptLang = args["lang"]
local lang = m_langs.specialCodes[args["lang"]] or args["lang"]
return _formatExample(args[1], args["tr"], args["sensu"], args["funti"], args["liami"], args["testa"], lang, scriptLang, args["nun-trad"], parentFrame)
else
if (args[2] == m_params.MISSING_PARAM or args[2] == m_params.EMPTY_PARAM) and args[1] == "lang" then
return "<span style='color: red; font-weight: bold;'>Lingua di l'asempiu mancannti!</span>[[Catigurìa:Chiamati ô template asempiu senza lingua nziruta]]"
end
error(args[3])
end
end
return p