45,633
edits
No edit summary |
No edit summary |
||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
local sub = mw.ustring.sub | local sub = mw.ustring.sub | ||
local gsub = mw.ustring.gsub | |||
local d = {} | local d = {} | ||
Line 10: | Line 11: | ||
setmetatable(d["I"], {__call = function(self, args, data) | setmetatable(d["I"], {__call = function(self, args, data) | ||
local stem = args[1] | local stem = args[1] | ||
local | local stemr = (sub(stem, -2) == "rz" and sub(stem, 1, -2) .. "j" or sub(stem, -1) == "s" and sub(stem, 1, -2) .. "j" | ||
or sub(stem, -1) == "j" and stem or sub(stem, -1) == "h" and sub(stem, 1, -2) .. "rh" or stem .. "r") | |||
data.decl_type = "I" | data.decl_type = "I" | ||
table.insert(data.categories, "High Valyrian class-I adjectives") | if not data.no_cat then table.insert(data.categories, "High Valyrian class-I adjectives") end | ||
data.forms["eq"] = {stem .. "āpa"} | data.forms["eq"] = {stem .. "āpa"} | ||
Line 175: | Line 175: | ||
setmetatable(d["II"], {__call = function(self, args, data) | setmetatable(d["II"], {__call = function(self, args, data) | ||
local stem = args[1] | local stem = args[1] | ||
local stemm = sub(stem, -1) == "n" and sub(stem, 1, -2) .. "m" or sub(stem, -1) == "ñ" and sub(stem, 1, -2) .. "m" or | local stemj = sub(stem, -2) == "sr" and sub(stem, 1, -3) .. "r" or sub(stem, -2) == "ēj" and sub(stem, 1, -3) .. "ī" or stem | ||
local ny = sub(stem, -1) == "ñ" | local stemm = sub(stem, -1) == "n" and sub(stem, 1, -2) .. "m" or sub(stem, -1) == "ñ" and sub(stem, 1, -2) .. "m" or stemj | ||
local stemny = ny and sub(stem, 1, -2) .. "n" or | local ny = sub(stem, -1) == "ñ"; local j = sub(stem, -1) == "j" | ||
local stemny = ny and sub(stem, 1, -2) .. "n" or stemj | |||
data.decl_type = "II" | data.decl_type = "II" | ||
table.insert(data.categories, "High Valyrian class-II adjectives") | if not data.no_cat then table.insert(data.categories, "High Valyrian class-II adjectives") end | ||
data.forms["eq"] = {stemm .. "pa"} | data.forms["eq"] = {stemm .. "pa"} | ||
Line 194: | Line 196: | ||
data.forms["voc_l_sg"] = {stem .. "es"} | data.forms["voc_l_sg"] = {stem .. "es"} | ||
data.forms["nom_t_sg"] = {stem .. (ny and "or" or "ior")} | data.forms["nom_t_sg"] = {stem .. ((ny or j) and "or" or "ior")} | ||
data.forms["acc_t_sg"] = data.forms["nom_t_sg"] | data.forms["acc_t_sg"] = data.forms["nom_t_sg"] | ||
data.forms["gen_t_sg"] = {stem .. "ȳr"} | data.forms["gen_t_sg"] = {stem .. "ȳr"} | ||
Line 201: | Line 203: | ||
data.forms["ins_t_sg"] = {stem .. "ȳs"} | data.forms["ins_t_sg"] = {stem .. "ȳs"} | ||
data.forms["com_t_sg"] = {stem .. "ȳn", stem .. "ȳm"} | data.forms["com_t_sg"] = {stem .. "ȳn", stem .. "ȳm"} | ||
data.forms["voc_t_sg"] = {stem .. (ny and "os" or "ios")} | data.forms["voc_t_sg"] = {stem .. ((ny or j) and "os" or "ios")} | ||
data.forms["nom_l_pl"] = {stem .. "i"} | data.forms["nom_l_pl"] = {stem .. "i"} | ||
Line 212: | Line 214: | ||
data.forms["voc_l_pl"] = {stem .. "is"} | data.forms["voc_l_pl"] = {stem .. "is"} | ||
data.forms["nom_t_pl"] = {stem .. (ny and "ar" or "iar")} | data.forms["nom_t_pl"] = {stem .. ((ny or j) and "ar" or "iar")} | ||
data.forms["acc_t_pl"] = data.forms["nom_t_pl"] | data.forms["acc_t_pl"] = data.forms["nom_t_pl"] | ||
data.forms["gen_t_pl"] = {stem .. "ȳ", stem .. "ȳt"} | data.forms["gen_t_pl"] = {stem .. "ȳ", stem .. "ȳt"} | ||
Line 231: | Line 233: | ||
data.forms["post_voc_l_sg"] = {stem .. "es"} | data.forms["post_voc_l_sg"] = {stem .. "es"} | ||
data.forms["post_nom_t_sg"] = {stem .. (ny and "or" or "ior")} | data.forms["post_nom_t_sg"] = {stem .. ((ny or j) and "or" or "ior")} | ||
data.forms["post_acc_t_sg"] = data.forms["post_nom_t_sg"] | data.forms["post_acc_t_sg"] = data.forms["post_nom_t_sg"] | ||
data.forms["post_gen_t_sg"] = {stem .. "ȳro"} | data.forms["post_gen_t_sg"] = {stem .. "ȳro"} | ||
Line 238: | Line 240: | ||
data.forms["post_ins_t_sg"] = {stem .. "ȳso"} | data.forms["post_ins_t_sg"] = {stem .. "ȳso"} | ||
data.forms["post_com_t_sg"] = {stem .. "ȳmo"} | data.forms["post_com_t_sg"] = {stem .. "ȳmo"} | ||
data.forms["post_voc_t_sg"] = {stem .. (ny and "os" or "ios")} | data.forms["post_voc_t_sg"] = {stem .. ((ny or j) and "os" or "ios")} | ||
data.forms["post_nom_l_pl"] = {stem .. "i"} | data.forms["post_nom_l_pl"] = {stem .. "i"} | ||
Line 249: | Line 251: | ||
data.forms["post_voc_l_pl"] = {stem .. "is"} | data.forms["post_voc_l_pl"] = {stem .. "is"} | ||
data.forms["post_nom_t_pl"] = {stem .. (ny and "ar" or "iar")} | data.forms["post_nom_t_pl"] = {stem .. ((ny or j) and "ar" or "iar")} | ||
data.forms["post_acc_t_pl"] = data.forms["post_nom_t_pl"] | data.forms["post_acc_t_pl"] = data.forms["post_nom_t_pl"] | ||
data.forms["post_gen_t_pl"] = {stem .. "ȳti"} | data.forms["post_gen_t_pl"] = {stem .. "ȳti"} | ||
Line 268: | Line 270: | ||
local stem = args[1] | local stem = args[1] | ||
data.decl_type = "IIr" | data.decl_type = "IIr" | ||
table.insert(data.categories, "High Valyrian class-IIr adjectives") | if not data.no_cat then table.insert(data.categories, "High Valyrian class-IIr adjectives") end | ||
data.forms["eq"] = {stem .. "rpa"} | data.forms["eq"] = {stem .. "rpa"} | ||
Line 358: | Line 360: | ||
local stemm = sub(stem, -1) == "n" and sub(stem, 1, -2) .. "m" or stem | local stemm = sub(stem, -1) == "n" and sub(stem, 1, -2) .. "m" or stem | ||
data.decl_type = "III" | data.decl_type = "III" | ||
table.insert(data.categories, "High Valyrian class-III adjectives") | if not data.no_cat then table.insert(data.categories, "High Valyrian class-III adjectives") end | ||
data.forms["eq"] = {stemm .. " | data.forms["eq"] = {stemm .. "ipa"} | ||
data.forms["comp"] = {stem .. " | data.forms["comp"] = {stem .. "ikta"} | ||
data.forms["sup"] = {stem .. " | data.forms["sup"] = {stem .. "ije"} | ||
data.forms["nom_l_sg"] = {stem .. "ie"} | data.forms["nom_l_sg"] = {stem .. "ie"} |