Module:qhv-adj/data: Difference between revisions

no edit summary
No edit summary
No edit summary
 
(29 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 stems = sub(stem, -1) == "s" and sub(stem, 1, -2) .. "j" or stem
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 48: Line 50:
data.forms["nom_a_sg"] = {stem .. "or"}
data.forms["nom_a_sg"] = {stem .. "or"}
data.forms["acc_a_sg"] = data.forms["nom_a_sg"]
data.forms["acc_a_sg"] = data.forms["nom_a_sg"]
data.forms["gen_a_sg"] = {stems .. "ro"}
data.forms["gen_a_sg"] = {stemr .. "o"}
data.forms["dat_a_sg"] = {stems .. "ro", stem .. "rot"}
data.forms["dat_a_sg"] = {stemr .. "o", stemr .. "ot"}
data.forms["loc_a_sg"] = data.forms["dat_a_sg"]
data.forms["loc_a_sg"] = data.forms["dat_a_sg"]
data.forms["ins_a_sg"] = {stems .. "ros"}
data.forms["ins_a_sg"] = {stemr .. "os"}
data.forms["com_a_sg"] = {stems .. "ron", stem .. "rom"}
data.forms["com_a_sg"] = {stemr .. "on", stemr .. "om"}
data.forms["voc_a_sg"] = {stem .. "os"}
data.forms["voc_a_sg"] = {stem .. "os"}
Line 82: Line 84:
data.forms["voc_t_pl"] = {stem .. "as"}
data.forms["voc_t_pl"] = {stem .. "as"}
data.forms["nom_a_pl"] = {stems .. "ra"}
data.forms["nom_a_pl"] = {stemr .. "a"}
data.forms["acc_a_pl"] = data.forms["nom_a_pl"]
data.forms["acc_a_pl"] = data.forms["nom_a_pl"]
data.forms["gen_a_pl"] = {stems .. "ro", stems .. "rot"}
data.forms["gen_a_pl"] = {stemr .. "o", stemr .. "ot"}
data.forms["dat_a_pl"] = data.forms["gen_a_pl"]
data.forms["dat_a_pl"] = data.forms["gen_a_pl"]
data.forms["loc_a_pl"] = data.forms["gen_a_pl"]
data.forms["loc_a_pl"] = data.forms["gen_a_pl"]
data.forms["ins_a_pl"] = {stems .. "ros"}
data.forms["ins_a_pl"] = {stemr .. "os"}
data.forms["com_a_pl"] = {stems .. "ron", stems.. "rom"}
data.forms["com_a_pl"] = {stemr .. "on", stemr .. "om"}
data.forms["voc_a_pl"] = {stem .. "as"}
data.forms["voc_a_pl"] = {stem .. "as"}


Line 121: Line 123:
data.forms["post_nom_a_sg"] = {stem .. "or"}
data.forms["post_nom_a_sg"] = {stem .. "or"}
data.forms["post_acc_a_sg"] = data.forms["post_nom_a_sg"]
data.forms["post_acc_a_sg"] = data.forms["post_nom_a_sg"]
data.forms["post_gen_a_sg"] = {stem .. "ro"}
data.forms["post_gen_a_sg"] = {stemr .. "o"}
data.forms["post_dat_a_sg"] = {stem .. "rot"}
data.forms["post_dat_a_sg"] = {stemr .. "ot"}
data.forms["post_loc_a_sg"] = data.forms["post_dat_a_sg"]
data.forms["post_loc_a_sg"] = data.forms["post_dat_a_sg"]
data.forms["post_ins_a_sg"] = {stem .. "roso"}
data.forms["post_ins_a_sg"] = {stemr .. "oso"}
data.forms["post_com_a_sg"] = {stem .. "romo"}
data.forms["post_com_a_sg"] = {stemr .. "omo"}
data.forms["post_voc_a_sg"] = {stem .. "os"}
data.forms["post_voc_a_sg"] = {stem .. "os"}


Line 155: Line 157:
data.forms["post_voc_t_pl"] = {stem .. "as"}
data.forms["post_voc_t_pl"] = {stem .. "as"}
data.forms["post_nom_a_pl"] = {stems .. "ra"}
data.forms["post_nom_a_pl"] = {stemr .. "a"}
data.forms["post_acc_a_pl"] = data.forms["post_nom_a_pl"]
data.forms["post_acc_a_pl"] = data.forms["post_nom_a_pl"]
data.forms["post_gen_a_pl"] = {stems .. "roti"}
data.forms["post_gen_a_pl"] = {stemr .. "oti"}
data.forms["post_dat_a_pl"] = data.forms["post_gen_a_pl"]
data.forms["post_dat_a_pl"] = data.forms["post_gen_a_pl"]
data.forms["post_loc_a_pl"] = data.forms["post_gen_a_pl"]
data.forms["post_loc_a_pl"] = data.forms["post_gen_a_pl"]
data.forms["post_ins_a_pl"] = {stems .. "rossi"}
data.forms["post_ins_a_pl"] = {stemr .. "ossi"}
data.forms["post_com_a_pl"] = {stems .. "rommi"}
data.forms["post_com_a_pl"] = {stemr .. "ommi"}
data.forms["post_voc_a_pl"] = {stem .. "as"}
data.forms["post_voc_a_pl"] = {stem .. "as"}
end
end
Line 173: 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 stem
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 stems = sub(stem, -1) == "s" and sub(stem, 1, -3) .. "j" or stem
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 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"}
data.forms["comp"] = {stem .. "kta"}
data.forms["comp"] = {stemny .. "kta"}
data.forms["sup"] = {stem .. "je"}
data.forms["sup"] = {stemny .. "je"}
data.forms["nom_l_sg"] = {stem .. "e"}
data.forms["nom_l_sg"] = {stem .. "e"}
Line 191: Line 196:
data.forms["voc_l_sg"] = {stem .. "es"}
data.forms["voc_l_sg"] = {stem .. "es"}
data.forms["nom_t_sg"] = {stem .. "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 198: 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 .. "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 209: Line 214:
data.forms["voc_l_pl"] = {stem .. "is"}
data.forms["voc_l_pl"] = {stem .. "is"}
data.forms["nom_t_pl"] = {stem .. "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 228: 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 .. "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 235: 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 .. "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 246: 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 .. "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 264: Line 269:
setmetatable(d["IIr"], {__call = function(self, args, data)
setmetatable(d["IIr"], {__call = function(self, args, data)
local stem = args[1]
local stem = args[1]
local stems = sub(stem, -1) == "s" and sub(stem, 1, -3) .. "j" or stem
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 274: Line 278:
data.forms["nom_l_sg"] = {stem .. "z"}
data.forms["nom_l_sg"] = {stem .. "z"}
data.forms["acc_l_sg"] = data.forms["nom_l_sg"]
data.forms["acc_l_sg"] = data.forms["nom_l_sg"]
data.forms["gen_l_sg"] = {stems .. "ro"}
data.forms["gen_l_sg"] = {stem .. "ro"}
data.forms["dat_l_sg"] = {stems .. "ro", stem .. "rot"}
data.forms["dat_l_sg"] = {stem .. "ro", stem .. "rot"}
data.forms["loc_l_sg"] = {stems .. "rē"}
data.forms["loc_l_sg"] = {stem .. "rē"}
data.forms["ins_l_sg"] = {stems .. "ros"}
data.forms["ins_l_sg"] = {stem .. "ros"}
data.forms["com_l_sg"] = {stems .. "ron", stems .. "rom"}
data.forms["com_l_sg"] = {stem .. "ron", stem .. "rom"}
data.forms["voc_l_sg"] = {stems .. "res"}
data.forms["voc_l_sg"] = {stem .. "res"}
data.forms["nom_t_sg"] = {stems .. "rior"}
data.forms["nom_t_sg"] = {stem .. "rior"}
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"] = {stems .. "rȳr"}
data.forms["gen_t_sg"] = {stem .. "rȳr"}
data.forms["dat_t_sg"] = data.forms["gen_t_sg"]
data.forms["dat_t_sg"] = data.forms["gen_t_sg"]
data.forms["loc_t_sg"] = data.forms["gen_t_sg"]
data.forms["loc_t_sg"] = data.forms["gen_t_sg"]
data.forms["ins_t_sg"] = {stems .. "rȳs"}
data.forms["ins_t_sg"] = {stem .. "rȳs"}
data.forms["com_t_sg"] = {stems .. "rȳn", stems .. "rȳm"}
data.forms["com_t_sg"] = {stem .. "rȳn", stem .. "rȳm"}
data.forms["voc_t_sg"] = {stems .. "rios"}
data.forms["voc_t_sg"] = {stem .. "rios"}
data.forms["nom_l_pl"] = {stems .. "ri"}
data.forms["nom_l_pl"] = {stem .. "ri"}
data.forms["acc_l_pl"] = data.forms["nom_l_pl"]
data.forms["acc_l_pl"] = data.forms["nom_l_pl"]
data.forms["gen_l_pl"] = {stems .. "ro", stems .. "rot"}
data.forms["gen_l_pl"] = {stem .. "ro", stem .. "rot"}
data.forms["dat_l_pl"] = data.forms["gen_l_pl"]
data.forms["dat_l_pl"] = data.forms["gen_l_pl"]
data.forms["loc_l_pl"] = data.forms["gen_l_pl"]
data.forms["loc_l_pl"] = data.forms["gen_l_pl"]
data.forms["ins_l_pl"] = {stems .. "ros"}
data.forms["ins_l_pl"] = {stem .. "ros"}
data.forms["com_l_pl"] = {stems .. "ron", stems .. "rom"}
data.forms["com_l_pl"] = {stem .. "ron", stem .. "rom"}
data.forms["voc_l_pl"] = {stems .. "ris"}
data.forms["voc_l_pl"] = {stem .. "ris"}
data.forms["nom_t_pl"] = {stems .. "riar"}
data.forms["nom_t_pl"] = {stem .. "riar"}
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"] = {stems .. "rȳ", stems .. "rȳt"}
data.forms["gen_t_pl"] = {stem .. "rȳ", stem .. "rȳt"}
data.forms["dat_t_pl"] = data.forms["gen_t_pl"]
data.forms["dat_t_pl"] = data.forms["gen_t_pl"]
data.forms["loc_t_pl"] = data.forms["gen_t_pl"]
data.forms["loc_t_pl"] = data.forms["gen_t_pl"]
data.forms["ins_t_pl"] = {stems .. "rȳs"}
data.forms["ins_t_pl"] = {stem .. "rȳs"}
data.forms["com_t_pl"] = {stems .. "rȳn", stems .. "rȳm"}
data.forms["com_t_pl"] = {stem .. "rȳn", stem .. "rȳm"}
data.forms["voc_t_pl"] = {stems .. "rīs"}
data.forms["voc_t_pl"] = {stem .. "rīs"}




data.forms["post_nom_l_sg"] = {stem .. "z"}
data.forms["post_nom_l_sg"] = {stem .. "z"}
data.forms["post_acc_l_sg"] = data.forms["post_nom_l_sg"]
data.forms["post_acc_l_sg"] = data.forms["post_nom_l_sg"]
data.forms["post_gen_l_sg"] = {stems .. "ro"}
data.forms["post_gen_l_sg"] = {stem .. "ro"}
data.forms["post_dat_l_sg"] = {stems .. "rot"}
data.forms["post_dat_l_sg"] = {stem .. "rot"}
data.forms["post_loc_l_sg"] = {stems .. "rē"}
data.forms["post_loc_l_sg"] = {stem .. "rē"}
data.forms["post_ins_l_sg"] = {stems .. "rose"}
data.forms["post_ins_l_sg"] = {stem .. "rose"}
data.forms["post_com_l_sg"] = {stems .. "rome"}
data.forms["post_com_l_sg"] = {stem .. "rome"}
data.forms["post_voc_l_sg"] = {stems .. "res"}
data.forms["post_voc_l_sg"] = {stem .. "res"}
data.forms["post_nom_t_sg"] = {stems .. "rior"}
data.forms["post_nom_t_sg"] = {stem .. "rior"}
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"] = {stems .. "rȳro"}
data.forms["post_gen_t_sg"] = {stem .. "rȳro"}
data.forms["post_dat_t_sg"] = data.forms["post_gen_t_sg"]
data.forms["post_dat_t_sg"] = data.forms["post_gen_t_sg"]
data.forms["post_loc_t_sg"] = data.forms["post_gen_t_sg"]
data.forms["post_loc_t_sg"] = data.forms["post_gen_t_sg"]
data.forms["post_ins_t_sg"] = {stems .. "rȳso"}
data.forms["post_ins_t_sg"] = {stem .. "rȳso"}
data.forms["post_com_t_sg"] = {stems .. "rȳmo"}
data.forms["post_com_t_sg"] = {stem .. "rȳmo"}
data.forms["post_voc_t_sg"] = {stems .. "rios"}
data.forms["post_voc_t_sg"] = {stem .. "rios"}
data.forms["post_nom_l_pl"] = {stems .. "ri"}
data.forms["post_nom_l_pl"] = {stem .. "ri"}
data.forms["post_acc_l_pl"] = data.forms["post_nom_l_pl"]
data.forms["post_acc_l_pl"] = data.forms["post_nom_l_pl"]
data.forms["post_gen_l_pl"] = {stems .. "roti"}
data.forms["post_gen_l_pl"] = {stem .. "roti"}
data.forms["post_dat_l_pl"] = data.forms["post_gen_l_pl"]
data.forms["post_dat_l_pl"] = data.forms["post_gen_l_pl"]
data.forms["post_loc_l_pl"] = data.forms["post_gen_l_pl"]
data.forms["post_loc_l_pl"] = data.forms["post_gen_l_pl"]
data.forms["post_ins_l_pl"] = {stems .. "rossi"}
data.forms["post_ins_l_pl"] = {stem .. "rossi"}
data.forms["post_com_l_pl"] = {stems .. "rommi"}
data.forms["post_com_l_pl"] = {stem .. "rommi"}
data.forms["post_voc_l_pl"] = {stems .. "ris"}
data.forms["post_voc_l_pl"] = {stem .. "ris"}
data.forms["post_nom_t_pl"] = {stems .. "riar"}
data.forms["post_nom_t_pl"] = {stem .. "riar"}
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"] = {stems .. "rȳti"}
data.forms["post_gen_t_pl"] = {stem .. "rȳti"}
data.forms["post_dat_t_pl"] = data.forms["post_gen_t_pl"]
data.forms["post_dat_t_pl"] = data.forms["post_gen_t_pl"]
data.forms["post_loc_t_pl"] = data.forms["post_gen_t_pl"]
data.forms["post_loc_t_pl"] = data.forms["post_gen_t_pl"]
data.forms["post_ins_t_pl"] = {stems .. "rȳssi"}
data.forms["post_ins_t_pl"] = {stem .. "rȳssi"}
data.forms["post_com_t_pl"] = {stems .. "rȳmmi"}
data.forms["post_com_t_pl"] = {stem .. "rȳmmi"}
data.forms["post_voc_t_pl"] = {stems .. "rīs"}
data.forms["post_voc_t_pl"] = {stem .. "rīs"}
end
end
})
})
Line 354: Line 358:
setmetatable(d["III"], {__call = function(self, args, data)
setmetatable(d["III"], {__call = function(self, args, data)
local stem = args[1]
local stem = args[1]
local stems = sub(stem, -1) == "s" and sub(stem, 1, -3) .. "j" 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"] = {stem .. "pa"}
data.forms["eq"] = {stemm .. "ipa"}
data.forms["comp"] = {stem .. "kta"}
data.forms["comp"] = {stem .. "ikta"}
data.forms["sup"] = {stem .. "je"}
data.forms["sup"] = {stem .. "ije"}
data.forms["nom_l_sg"] = {stem .. "ie"}
data.forms["nom_l_sg"] = {stem .. "ie"}