Module:etymology/templates/internal: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
-- For internal use only with [[Module:etymology/templates]] and its submodules. | -- For internal use only with [[Module:etymology/templates]] and its submodules. | ||
local process_params = require("Module:parameters").process | |||
local export = {} | local export = {} | ||
function | do | ||
local function get_params(frame, has_text, no_family) | |||
local alias_of_t = {alias_of = "t"} | |||
local boolean = {type = "boolean"} | |||
local plain = {} | |||
local params = { | |||
[1] = { | |||
required = true, | |||
type = "language", | |||
default = "und" | |||
}, | |||
[2] = { | |||
required = true, | |||
sublist = true, | |||
type = "language", | |||
family = not no_family, | |||
default = "und" | |||
}, | |||
[3] = plain, | |||
[4] = {alias_of = "alt"}, | |||
[5] = alias_of_t, | |||
["alt"] = plain, | |||
["cat"] = plain, | |||
["g"] = {list = true}, | |||
["gloss"] = alias_of_t, | |||
["id"] = plain, | |||
["lit"] = plain, | |||
["pos"] = plain, | |||
["t"] = plain, | |||
["tr"] = plain, | |||
["ts"] = plain, | |||
["sc"] = {type = "script"}, | |||
["senseid"] = plain, | |||
["nocat"] = boolean, | |||
["sort"] = plain, | |||
["conj"] = plain, | |||
} | |||
if has_text then | |||
params["notext"] = boolean | |||
params["nocap"] = boolean | |||
end | |||
return process_params(frame:getParent().args, params) | |||
end | end | ||
function export.parse_2_lang_args(frame, has_text, no_family) | |||
local args = get_params(frame, has_text, no_family) | |||
local sources = args[2] | |||
function export. | return args, args[1], { | ||
lang = sources[#sources], | |||
sc = args["sc"], | |||
term = args[3], | |||
alt = args["alt"], | |||
id = args["id"], | |||
genders = args["g"], | |||
tr = args["tr"], | |||
ts = args["ts"], | |||
gloss = args["t"], | |||
pos = args["pos"], | |||
lit = args["lit"] | |||
}, #sources > 1 and sources or nil | |||
end | end | ||
end | end | ||
return export | return export |
Latest revision as of 10:30, 7 August 2024
Documentation for this module may be created at Module:etymology/templates/internal/doc
-- For internal use only with [[Module:etymology/templates]] and its submodules.
local process_params = require("Module:parameters").process
local export = {}
do
local function get_params(frame, has_text, no_family)
local alias_of_t = {alias_of = "t"}
local boolean = {type = "boolean"}
local plain = {}
local params = {
[1] = {
required = true,
type = "language",
default = "und"
},
[2] = {
required = true,
sublist = true,
type = "language",
family = not no_family,
default = "und"
},
[3] = plain,
[4] = {alias_of = "alt"},
[5] = alias_of_t,
["alt"] = plain,
["cat"] = plain,
["g"] = {list = true},
["gloss"] = alias_of_t,
["id"] = plain,
["lit"] = plain,
["pos"] = plain,
["t"] = plain,
["tr"] = plain,
["ts"] = plain,
["sc"] = {type = "script"},
["senseid"] = plain,
["nocat"] = boolean,
["sort"] = plain,
["conj"] = plain,
}
if has_text then
params["notext"] = boolean
params["nocap"] = boolean
end
return process_params(frame:getParent().args, params)
end
function export.parse_2_lang_args(frame, has_text, no_family)
local args = get_params(frame, has_text, no_family)
local sources = args[2]
return args, args[1], {
lang = sources[#sources],
sc = args["sc"],
term = args[3],
alt = args["alt"],
id = args["id"],
genders = args["g"],
tr = args["tr"],
ts = args["ts"],
gloss = args["t"],
pos = args["pos"],
lit = args["lit"]
}, #sources > 1 and sources or nil
end
end
return export