Module:Wikt-lang: Difference between revisions

Content deleted Content added
Jackmcbarn (talk | contribs)
coding standards
I think this greatly simplifies determining whether to italicize
Line 203:
local function languageSpan(languageCode, text, italics)
local languageData = data[languageCode]
local script
local languageScript = languageData and languageData["scripts"][1] or nil
if italics == "auto"languageData then
local languageScript script = languageData and languageData["scripts"][1] or nil"unknown"
if languageScript == "Latn" then
else
return "<i lang=\"" .. languageCode .. "\" xml:lang=\"" .. languageCode .. "\">" .. text .. "</i>"
script = "unknown"
else
return "<span lang=\"" .. languageCode .. "\" xml:lang=\"" .. languageCode .. "\">" .. text .. "</span>"
end
elseif italics == "no" then
return "<span lang=\"" .. languageCode .. "\" xml:lang=\"" .. languageCode .. "\">" .. text .. "</span>"
elseif italics == "yes" then
if type(languageScript) == "string" then
if languageScript ~= "Latn" then
error("Non-Latin scripts cannot be italicized")
elseif languageScript == "Latn" then
return "<i lang=\"" .. languageCode .. "\" xml:lang=\"" .. languageCode .. "\">" .. text .. "</i>"
end
end
end
local italicize = ( (script == "unknown" and italics == "yes") or (script == "Latn" and italics ~= "no") ) and "yes" or "no"
local out = italicize == "no" and "<span lang=\"" .. languageCode .. "\" xml:lang=\"" .. languageCode .. "\">" .. text .. "</span>" or italicize == "yes" and "<i lang=\"" .. languageCode .. "\" xml:lang=\"" .. languageCode .. "\">" .. text .. "</i>"
return out
end