Modifiche

⧼vector-jumptonavigation⧽ ⧼vector-jumptosearch⧽

Modulo:Translations

3 183 byte aggiunti, 06:17, 15 dic 2018
Creata pagina con " local interwiki_langs = { ["ckb"] = "ku", ["kmr"] = "ku", ["lki"] = "ku", ["nds-de"] = "nds", ["nds-nl"] = "nds", ["pdt"] = "nds", ["sdh"] = "ku", } local ignore_caps..."

local interwiki_langs = {
["ckb"] = "ku",
["kmr"] = "ku",
["lki"] = "ku",
["nds-de"] = "nds",
["nds-nl"] = "nds",
["pdt"] = "nds",
["sdh"] = "ku",
}

local ignore_caps = {
["ko"] = true,
}

local tracked = {
["se"] = true,
}

-- The main entry point.
-- This is the only function that can be invoked from a template.
function export.show(frame)
local params = {
[1] = {required = true, default = "und"},
[2] = {},
[3] = {list = true},
["alt"] = {},
["id"] = {},
["sc"] = {},
["tr"] = {},
["ts"] = {},
["lit"] = {},
}

local args = require("Module:parameters").process(frame:getParent().args, params)

local terminfo = {
lang = require("Module:languages").getByCode(args[1]) or require("Module:languages").err(args[1], 1),
sc = (args["sc"] and (require("Module:scripts").getByCode(args["sc"]) or error("The script code \"" .. args["sc"] .. "\" is not valid.")) or nil),
term = args[2] or (mw.title.getCurrentTitle().nsText == "Template" and "term") or nil,
alt = args["alt"],
id = args["id"],
genders = args[3],
tr = args["tr"],
ts = args["ts"],
lit = args["lit"],
interwiki = frame.args["interwiki"],
}

-- Translations must be for mainspace languages
if terminfo.lang:getType() == "reconstructed" or terminfo.lang:getType() == "appendix-constructed" then
error("Translations must be for attested and approved main-namespace languages.")
end

-- Don't show the interwiki link if there is nothing to link to.
if terminfo.term then
-- Track translations for particular languages
if tracked[terminfo.lang:getCode()] then
require("Module:debug").track("translations/" .. terminfo.lang:getCode())
end

local wmlangs = {}

if interwiki_langs[terminfo.lang:getCode()] then
wmlangs = {require("Module:wikimedia languages").getByCode(interwiki_langs[terminfo.lang:getCode()])}
else
wmlangs = terminfo.lang:getWikimediaLanguages()
end

-- Don't show the interwiki link if the language is not recognised by Wikimedia
-- or if the term contains links (for SOP translations)
if terminfo.term:find("[[", nil, true) or #wmlangs == 0 then
terminfo.interwiki = false
end

if wmlangs[1] and ignore_caps[wmlangs[1]:getCode()] then
terminfo.term2 = mw.ustring.gsub(terminfo.term, "^%^", "")
end

if terminfo.interwiki then
terminfo.interwiki =
"<span class=\"" .. terminfo.interwiki .. "\">&nbsp;[[:" ..
wmlangs[1]:getCode() .. ":" ..
terminfo.lang:makeEntryName(terminfo.term2 or terminfo.term) ..
"|(" .. wmlangs[1]:getCode() .. ")]]</span>"
end
else
-- Track what entries currently don't provide a term
require("Module:debug").track("translations/no term")
require("Module:debug").track("translations/no term/" .. terminfo.lang:getCode())
end

if terminfo.lang and terminfo.lang:getCode() == 'yue' and terminfo.tr then
terminfo.tr = mw.ustring.gsub(terminfo.tr, '([1-9-])','<sup>%1</sup>')
end

return m_links.full_link(terminfo, "translation", true)
end

return export

Menu di navigazione