Module:siwa-noun/data: Difference between revisions

no edit summary
No edit summary
No edit summary
 
(61 intermediate revisions by the same user not shown)
Line 15: Line 15:
local function exactly(source, pattern)
local function exactly(source, pattern)
return source:match("^" .. pattern .. "$")
return source:match("^" .. pattern .. "$")
end
local function same(foo, bar)
foo, bar = mw.ustring.toNFD(foo), mw.ustring.toNFD(bar) -- decompose diacritics
foo, bar = match(foo, "^."), match(bar, "^.") -- sort out the letter
return foo == bar and true or false
end
end


Line 192: Line 186:
data.forms["m"] = {s3 .. "mme"}
data.forms["m"] = {s3 .. "mme"}
loc = s3 .. "mmei"
loc = s3 .. "mmei"
elseif stem:match(v.."vv.$") then
data.forms["m"] = {s3 .. "vve"}
loc = s3 .. "vvei"
elseif stem:match(v.."[mpbvnrlkg].$") then
elseif stem:match(v.."[mpbvnrlkg].$") then
local stl = sub(stem, -2, -2)
local stl = sub(stem, -2, -2)
Line 278: Line 275:
na = true
na = true
end
end
elseif stem:match(v.."hh.$") then
data.forms["m"] = {s3 .. "hdi"}
loc = s3 .. "hdi"
elseif stem:match(v.."[mn][mn].$") then
elseif stem:match(v.."[mn][mn].$") then
data.forms["m"] = {s3 .. "ndi"}
data.forms["m"] = {s3 .. "ndi"}
Line 325: Line 325:
table.insert(data.forms["ine"], (ine or loc) .. ce[1])
table.insert(data.forms["ine"], (ine or loc) .. ce[1])
data.forms["ill"] = {(ill or loc) .. ce[2]}
data.forms["ill"] = {(ill or loc) .. ce[2]}
data.forms["ela"] = {(ela or loc) .. (--[[match(stem, "[vg].$") and "ga" or]] ce[3])}
data.forms["ela"] = {(ela or loc) .. (match(stem, "[vg].$") and "ga" or ce[3])}
data.forms["ade"] = {(ade or loc) .. ce[4]}
data.forms["ade"] = {(ade or loc) .. ce[4]}
table.insert(data.forms["all"], (all or loc) .. ce[5])
table.insert(data.forms["all"], (all or loc) .. ce[5])
table.insert(data.forms["abl"], (abl or loc) .. ce[6])
table.insert(data.forms["abl"], (abl or loc) .. ce[6])
end
end
Line 356: Line 357:
data.forms["m"] = {s3 .. "mmo"}
data.forms["m"] = {s3 .. "mmo"}
loc = s3 .. "mmoi"
loc = s3 .. "mmoi"
elseif stem:match(v.."hh.$") then
data.forms["m"] = {s3 .. "hmo"}
loc = s3 .. "hmoi"
elseif stem:match(v.."[bt].$") then
elseif stem:match(v.."[bt].$") then
data.forms["m"] = {s2 .. "bmo"}
data.forms["m"] = {s2 .. "bmo"}
Line 384: Line 388:
data.forms["m"] = {sub(stem, 1, -5) .. "ṡko"}
data.forms["m"] = {sub(stem, 1, -5) .. "ṡko"}
loc = sub(stem, 1, -5) .. "ṡkoi"
loc = sub(stem, 1, -5) .. "ṡkoi"
elseif stem:match(v.."hh.$") then
data.forms["m"] = {s3 .. "hko"}
loc = s3 .. "hkoi"
elseif stem:match(v.."[mnv][mnv].$") then
elseif stem:match(v.."[mnv][mnv].$") then
data.forms["m"] = {(sub(stem, -4, -4) == "o" and sub(stem, 1, -5) .. "õ" or s3) .. "kko"}
data.forms["m"] = {(sub(stem, -4, -4) == "o" and sub(stem, 1, -5) .. "õ" or s3) .. "kko"}
Line 414: Line 421:
ine, ade, all, abl = del .. "mi", del .. "mi", del .. "mi", del .. "mi"
ine, ade, all, abl = del .. "mi", del .. "mi", del .. "mi", del .. "mi"
na = true
na = true
elseif stem:match(v.."[bptd].$") then
elseif s1:match(v.."[bptd]$") then
data.forms["m"] = {s2 .. "bma"}
data.forms["m"] = {s2 .. "bma"}
loc = s2 .. "bmi"
loc = s2 .. "bmi"
elseif stem:match(v.."[mn][mn].$") then
elseif s1:match(v.."[mn][mn]$") then
data.forms["m"] = {s3 .. "mma"}
data.forms["m"] = {s3 .. "mma"}
loc = s3 .. "mmi"
loc = s3 .. "mmi"
elseif stem:match(v.."[mnv].$") then
elseif s1:match(v.."[rhgk][rhgk]$") then
data.forms["m"] = {s3 .. "hma"}
loc = s3 .. "hmi"
elseif s1:match(v.."[mnv]$") then
data.forms["m"] = {s2 .. "mma"}
data.forms["m"] = {s2 .. "mma"}
loc = s2 .. "mmi"
loc = s2 .. "mmi"
elseif stem:match(v.."[rhgk].$") then
elseif s1:match(v.."[rhgk]$") then
data.forms["m"] = {s2 .. "hma"}
data.forms["m"] = {s2 .. "hma"}
loc = s2 .. "hmi"
loc = s2 .. "hmi"
elseif stem:match(v.."l.$") then
elseif s1:match(v.."l$") then
data.forms["m"] = {s2 .. "lma"}
data.forms["m"] = {s2 .. "lma"}
loc = s2 .. "lmi"
loc = s2 .. "lmi"
Line 477: Line 487:
data.forms["m"] = {s3 .. "mmo"}
data.forms["m"] = {s3 .. "mmo"}
loc = s3 .. "mmoi"
loc = s3 .. "mmoi"
elseif stem:match(v.."hh.$") then
data.forms["m"] = {s3 .. "hmo"}
loc = s3 .. "hmoi"
elseif stem:match(v.."[btpd].$") then
elseif stem:match(v.."[btpd].$") then
data.forms["m"] = {s2 .. "bmo"}
data.forms["m"] = {s2 .. "bmo"}
Line 494: Line 507:
na = true
na = true
end
end
elseif stem:match("[ouyů]$") then
elseif stem:match("[ouyỷů]$") then
if args.ld then
if args.ld then
data.forms["m"] = {stem .. "ma"}
data.forms["m"] = {stem .. "ma"}
Line 667: Line 680:
table.insert(data.forms["ine"], (ine or loc) .. ce[1])
table.insert(data.forms["ine"], (ine or loc) .. ce[1])
data.forms["ill"] = {(ill or loc) .. ce[2]}
data.forms["ill"] = {(ill or loc) .. ce[2]}
data.forms["ela"] = {(ela or loc) .. ce[3]}
data.forms["ela"] = {(ela or loc) .. (match(stem, "[vg].$") and "ga" or ce[3])}
data.forms["ade"] = {(ade or loc) .. ce[4]}
data.forms["ade"] = {(ade or loc) .. ce[4]}
table.insert(data.forms["all"], (all or loc) .. ce[5])
table.insert(data.forms["all"], (all or loc) .. ce[5])
Line 679: Line 692:
["nolen"] = {type = "boolean"},
["nolen"] = {type = "boolean"},
["d"] = {type = "boolean"},
["d"] = {type = "boolean"},
["d2"] = {type = "boolean"},
["s"] = {type = "boolean"},
["s"] = {type = "boolean"},
},
},
Line 700: Line 714:
ine, all, abl = s1 .. "hi", s1 .. "hi", s1 .. "hi"
ine, all, abl = s1 .. "hi", s1 .. "hi", s1 .. "hi"
else
else
data.forms["m"] = {(args.d and s2 or s1) .. s .. "i"}
data.forms["m"] = {(args.d2 and s3 or args.d and s2 or s1) .. s .. "i"}
ill, ela, ade = (args.d and s2 or s1) .. "h", (args.d and s2 or s1) .. "h", (args.d and s2 or s1) .. "h"
ill, ela, ade = (args.d2 and s3 or args.d and s2 or s1) .. "h", (args.d2 and s3 or args.d and s2 or s1) .. "h", (args.d2 and s3 or args.d and s2 or s1) .. "h"
ine, all, abl = (args.d and s2 or s1) .. s .. "i", (args.d and s2 or s1) .. s .. "i", (args.d and s2 or s1) .. s .. "i"
ine, all, abl = (args.d2 and s3 or args.d and s2 or s1) .. s .. "i", (args.d2 and s3 or args.d and s2 or s1) .. s .. "i", (args.d2 and s3 or args.d and s2 or s1) .. s .. "i"
end
end
Line 733: Line 747:
data.forms["m"] = {stem .. "ta"}
data.forms["m"] = {stem .. "ta"}
loc = match(stem, "on$") and s2 .. "õri" or s1 .. "ri"
loc = match(stem, "on$") and s2 .. "õri" or s1 .. "ri"
elseif sv:match("[eiyůỉ]$") then
elseif sv:match("[eiyůỉę]$") then
data.forms["m"] = {s1 .. "s"}
data.forms["m"] = {s1 .. "s"}
loc = s1 .. "s" .. (args.d and "" or "i")
loc = s1 .. "s" .. (args.d and "" or "i")
Line 765: Line 779:
if args.ut then
if args.ut then
data.forms["m"] = {s2 .. "lda", s1 .. "tta"}
data.forms["m"] = {s2 .. "lda", s1 .. "tta"}
loc = s1 .. "ttai"
elseif sv:match("[aou]$") then
elseif sv:match("[aou]$") then
data.forms["m"] = {stem .. "ta"}
data.forms["m"] = {stem .. "ta"}
loc = stem .. "tai"
elseif sv:match("[eiyů]$") then
elseif sv:match("[eiyů]$") then
data.forms["m"] = {s1 .. "tsta", s1 .. "ddįa", s1 .. "tsitta"}
data.forms["m"] = {s1 .. "tsta", s1 .. "ddįa", s1 .. "tsitta"}
loc = s1 .. "tsti"
end
data.forms["ine"] = {(ine or loc) .. ce[1]}
data.forms["ill"] = {(ill or loc) .. ce[2]}
data.forms["ela"] = {(ela or loc) .. ce[3]}
data.forms["ade"] = {(ade or loc) .. ce[4]}
data.forms["all"] = {(all or loc) .. ce[5]}
data.forms["abl"] = {(abl or loc) .. ce[6]}
for n, case in pairs(cases) do
if sv:match("[eiyů]$") then
table.insert(data.forms[case], s1 .. "ddįi" .. ce[n])
table.insert(data.forms[case], s1 .. "tsitti" .. ce[n])
end
end
end
end
end
})
})
Line 813: Line 845:
end
end
for double, long in ipairs(dtl) do
for double, long in pairs(dtl) do
data.forms["m"][1] = gsub(data.forms["m"][1], double, long)
data.forms["m"][1] = gsub(data.forms["m"][1], double, long)
end
end
Line 823: Line 855:
[2] = {}, -- stressed vowel
[2] = {}, -- stressed vowel
["h"] = {type = "boolean"}, -- Human
["h"] = {type = "boolean"}, -- Human
["t"] = {type = "boolean"}, -- extra T
["av"] = {type = "boolean"}, -- After Vowel
["av"] = {type = "boolean"}, -- After Vowel
["s"] = {type = "boolean"},
["s"] = {type = "boolean"},
Line 847: Line 880:
data.forms["m_pl"] = {s2 .. (exactly(sv, "[ou]") and "ṡi" or "ka") .. "gi"}
data.forms["m_pl"] = {s2 .. (exactly(sv, "[ou]") and "ṡi" or "ka") .. "gi"}
elseif stem:match("mi$") then
elseif stem:match("mi$") then
data.forms["m_sg"] = {s2 .. "ta"}
data.forms["m_sg"] = {s2 .. (args.t and "t" or "") .. "ta"}
if stem:match(v.."..$") then table.insert(data.forms["m_sg"], s2 .. "tta") end
if stem:match(v.."..$") then table.insert(data.forms["m_sg"], s2 .. "tta") end
data.forms["u_pl"] = {stem .. "gi"}
data.forms["u_pl"] = {stem .. "gi"}
Line 854: Line 887:
table.insert(data.forms["u_pl"], s2 .. "mṡi")
table.insert(data.forms["u_pl"], s2 .. "mṡi")
end
end
data.forms["m_pl"] = {s2 .. "tagi"}
data.forms["m_pl"] = {s2 .. (args.t and "t" or "") .. "tagi"}
if stem:match(v.."..$") then table.insert(data.forms["m_pl"], s2 .. "ttagi") end
if stem:match(v.."..$") then table.insert(data.forms["m_pl"], s2 .. "ttagi") end
elseif stem:match("[bpv]a$") then
elseif stem:match("[bpv]a$") then
Line 864: Line 897:
elseif stem:match("[bpv]i$") then
elseif stem:match("[bpv]i$") then
local repl = gsub(s2, "h$", "k"); repl = gsub(repl, "ḍ$", "hh"); repl = gsub(repl, "lp$", "ll")
local repl = gsub(s2, "h$", "k"); repl = gsub(repl, "ḍ$", "hh"); repl = gsub(repl, "lp$", "ll")
      repl = gsub(repl, "p$", "ḥḥ")
      repl = gsub(repl, "p$", "ḥḥ"); repl = gsub(repl, "ṡ$", "ṡṡ")
data.forms["m_sg"] = {repl .. "umi"}
data.forms["m_sg"] = {repl .. "umi"}
data.forms["u_pl"] = {stem .. "gi"}
data.forms["u_pl"] = {stem .. "gi"}
Line 875: Line 908:
elseif stem:match("[tn][ao]$") then
elseif stem:match("[tn][ao]$") then
data.forms["u_pl"] = {stem .. "gi"}
data.forms["u_pl"] = {stem .. "gi"}
if stem:match(nv.."..$") and not stem:match("[tsḍlgġksṡr]..$") then
if stem:match(nv.."..$") and not stem:match("[tsḍlgġksṡrd]..$") then
data.forms["m_sg"] = {s2 .. "ųa"}
data.forms["m_sg"] = {s2 .. "ųa"}
data.forms["m_pl"] = {s2 .. "ųagi"}
data.forms["m_pl"] = {s2 .. "ųagi"}
Line 932: Line 965:
elseif stem:match("[lr]i$") then
elseif stem:match("[lr]i$") then
data.forms["u_pl"] = {s1 .. (av and "hi" or "igi")}
data.forms["u_pl"] = {s1 .. (av and "hi" or "igi")}
data.forms["m_sg"] = {s2 .. (stem:match("dli$") and "dįa" or "tṡa")}
data.forms["m_sg"] = {s2 .. (stem:match("dli$") and "dįa" or s1:match("r$") and "" or "l") .. "tṡa"}
data.forms["m_pl"] = {s2 .. (stem:match("dli$") and "dįagi" or "tṡagi")}
data.forms["m_pl"] = {s2 .. (stem:match("dli$") and "dįagi" or s1:match("r$") and "" or "l") .. "tṡagi"}
elseif stem:match("lu$") then
elseif stem:match("lu$") then
data.forms["u_pl"] = {s1 .. (av and "hi" or "ugi")}
data.forms["u_pl"] = {s1 .. (av and "hi" or "ugi")}
Line 946: Line 979:
data.forms["m_sg"] = {s2 .. "tṡa"}
data.forms["m_sg"] = {s2 .. "tṡa"}
data.forms["m_pl"] = {s2 .. "tṡagi"}
data.forms["m_pl"] = {s2 .. "tṡagi"}
data.forms["m_sg"][1] = gsub(data.forms["m_sg"][1], "kt", "ht")
data.forms["m_pl"][1] = gsub(data.forms["m_pl"][1], "kt", "ht")
elseif stem:match("g[aoi]$") then
elseif stem:match("g[aoi]$") then
data.forms["u_pl"] = {stem .. "gi"}
data.forms["u_pl"] = {stem .. "gi"}
Line 958: Line 993:
elseif stem:match("h[ao]$") then
elseif stem:match("h[ao]$") then
data.forms["u_pl"] = {stem .. "gi"}
data.forms["u_pl"] = {stem .. "gi"}
data.forms["m_sg"] = {s2 .. "ra"}
data.forms["m_sg"] = {(args.d and s3 or s2) .. "ra"}
data.forms["m_pl"] = {s2 .. "ragi"}
data.forms["m_pl"] = {(args.d and s3 or s2) .. "ragi"}
elseif stem:match("hi$") then
elseif stem:match("hi$") then
data.forms["u_pl"] = {stem .. "gi"}
data.forms["u_pl"] = {stem .. "gi"}
Line 971: Line 1,006:
if match(data.forms["u_pl"][1], "igi$") then
if match(data.forms["u_pl"][1], "igi$") then
table.insert(data.forms["u_pl"], s1 .. "ęgi")
table.insert(data.forms["u_pl"], sub(data.forms["u_pl"][1], 1, -4) .. "ęgi")
end
end
if match(data.forms["m_pl"][1], "igi$") then
if match(data.forms["m_pl"][1], "igi$") then
table.insert(data.forms["m_pl"], s1 .. "ęgi")
table.insert(data.forms["m_pl"], sub(data.forms["m_pl"][1], 1, -4) .. "ęgi")
end
end
end
end
})
})
data["aḍba"] = function(args, data)
data.forms["u_pl"] = {"aḍba"}
data.forms["m_pl"] = {"aubba"}
end


data["aumulhi"] = function(args, data)
data["aumulhi"] = function(args, data)
Line 1,056: Line 1,096:
data.forms["all"] = {"ivveibma", "iobibma"}
data.forms["all"] = {"ivveibma", "iobibma"}
data.forms["abl"] = {"ivveiska", "iobiska"}
data.forms["abl"] = {"ivveiska", "iobiska"}
end
data["eu"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"eu"}
data.forms["m"] = {"eme"}
end
end


Line 1,095: Line 1,142:
data.forms["u"] = {"gảgi"}
data.forms["u"] = {"gảgi"}
data.forms["m"] = {"gęįagi"}
data.forms["m"] = {"gęįagi"}
end
data["gei"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"gei"}
data.forms["m"] = {"geįe"}
end
end


Line 1,123: Line 1,163:
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"goi"}
data.forms["u"] = {"goi"}
data.forms["m"] = {"gogįo"}
data.forms["m"] = {"goįo"}
end
end


Line 1,291: Line 1,331:
data.forms["u_pl"] = {"koḍḍa"}
data.forms["u_pl"] = {"koḍḍa"}
data.forms["m_pl"] = {"kỏhha"}
data.forms["m_pl"] = {"kỏhha"}
end
data["koḍga"] = function(args, data)
data.decl_type = "dual"
table.insert(data.categories, "Siwa dual nouns")
data.forms["u_pl"] = {"koḍga"}
data.forms["m_pl"] = {"kỏgga"}
end
end


Line 1,408: Line 1,441:
end
end


data["sambo"] = function(args, data)
data["niebini"] = function(args, data)
table.insert(data.categories, "Siwa irregular nouns")
table.insert(data.categories, "Siwa irregular nouns")
data.forms["u_sg"] = {"sambo"}
data.forms["u_sg"] = {"niebini"}
data.forms["u_pl"] = {"sảmbogi"}
data.forms["u_pl"] = {"niebinhi", "niebinṡi"}
data.forms["m_sg"] = {"sảmoųi"}
data.forms["m_sg"] = {"nieigįa", "niẻddįa"}
data.forms["m_pl"] = {"sąmoṡi"}
data.forms["m_pl"] = {"nieigįagi", "niẻddįagi"}
end
 
data["nige"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"nige"}
data.forms["m"] = {"niddįi"}
end
end


data["totami"] = function(args, data)
data["oaḍbi"] = function(args, data)
data.decl_type = "irregular"
data.decl_type = "dual"
table.insert(data.categories, "Siwa irregular nouns")
table.insert(data.categories, "Siwa dual nouns")
data.forms["u_sg"] = {"totami"}
data.forms["u_sg"] = {"oadi"}
data.forms["u_pl"] = {"totamṡi"}
data.forms["u_pl"] = {"oaḍbi"}
data.forms["m_sg"] = {"vaika"}
data.forms["m_pl"] = {"vaubbi", "vaubba"}
end
 
data["omna"] = function(args, data)
data.decl_type = "dual"
table.insert(data.categories, "Siwa dual nouns")
data.forms["u_pl"] = {"omna"}
data.forms["m_pl"] = {"ỏbba"}
end
 
data["ỏ"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"ỏ"}
data.forms["m"] = {"obo", "ỏbo"}
end
 
data["pỷka"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"pỷka"}
data.forms["m"] = {"pyby"}
end
 
data["retema"] = function(args, data)
data.decl_type = "irregular"
table.insert(data.categories, "Siwa irregular nouns")
data.forms["u_sg"] = {"retema"}
data.forms["u_pl"] = {"revva"}
data.forms["m_sg"] = {"sitema"}
data.forms["m_pl"] = {"sivva"}
end
 
data["rįaḍba"] = function(args, data)
data.decl_type = "dual"
table.insert(data.categories, "Siwa dual nouns")
data.forms["u_sg"] = {"rįanna"}
data.forms["u_pl"] = {"rįaḍba"}
data.forms["m_sg"] = {"rįanka"}
data.forms["m_pl"] = {"rįaubba"}
end
 
data["rủ"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"rủ"}
data.forms["m"] = {"rumu"}
end
 
data["rỷ"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"rỷ"}
data.forms["m"] = {"rymy"}
end
 
data["sảhpa"] = function(args, data)
data.decl_type = "dual"
table.insert(data.categories, "Siwa dual nouns")
data.forms["u_sg"] = {"sảhta"}
data.forms["u_pl"] = {"sảhpa"}
data.forms["m_sg"] = {"sảhhųa"}
data.forms["m_pl"] = {"sảmġa"}
end
 
data["saḍba"] = function(args, data)
data.decl_type = "dual"
table.insert(data.categories, "Siwa dual nouns")
data.forms["u_sg"] = {"sata"}
data.forms["u_pl"] = {"saḍba"}
data.forms["m_sg"] = {"savva"}
data.forms["m_pl"] = {"saubba"}
end
 
data["sambo"] = function(args, data)
table.insert(data.categories, "Siwa irregular nouns")
data.forms["u_sg"] = {"sambo"}
data.forms["u_pl"] = {"sảmbogi"}
data.forms["m_sg"] = {"sảmoųi"}
data.forms["m_pl"] = {"sąmoṡi"}
end
 
data["sẻu"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"sẻu"}
data.forms["m"] = {"sůbů"}
end
 
data["tiebba"] = function(args, data)
data.decl_type = "dual"
table.insert(data.categories, "Siwa dual nouns")
data.forms["u_sg"] = {"tiemo"}
data.forms["u_pl"] = {"tiebba"}
data.forms["m_sg"] = {"tieka"}
data.forms["m_pl"] = {"tiehba"}
end
 
data["tỏ"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"tỏ"}
data.forms["m"] = {"tobo"}
end
 
data["totami"] = function(args, data)
data.decl_type = "irregular"
table.insert(data.categories, "Siwa irregular nouns")
data.forms["u_sg"] = {"totami"}
data.forms["u_pl"] = {"totamṡi"}
data.forms["m_sg"] = {"todatta"}
data.forms["m_sg"] = {"todatta"}
data.forms["m_pl"] = {"todattagi"}
data.forms["m_pl"] = {"todattagi"}
end
data["tṡemi"] = function(args, data)
table.insert(data.categories, "Siwa irregular adjectives")
data.forms["u"] = {"tṡemi"}
data.forms["m"] = {"tṡebi"}
data.forms["ine"] = {"tṡebi" .. ce[1]}
data.forms["ill"] = {"tṡebi" .. ce[2]}
data.forms["ela"] = {"tṡebi" .. ce[3]}
data.forms["ade"] = {"tṡebi" .. ce[4]}
data.forms["all"] = {"tṡebi" .. ce[5]}
data.forms["abl"] = {"tṡebi" .. ce[6]}
end
data["umpa"] = function(args, data)
data.decl_type = "dual"
table.insert(data.categories, "Siwa dual nouns")
data.forms["u_sg"] = {"uba"}
data.forms["u_pl"] = {"umpa"}
data.forms["m_sg"] = {"oama"}
data.forms["m_pl"] = {"ủppa"}
end
data["vả"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"vả"}
data.forms["m"] = {"vęįa"}
end
data["ỷ"] = function(args, data)
data.decl_type = "coalescence"
table.insert(data.categories, "Siwa diphthong-coalescence nouns")
data.forms["u"] = {"ỷ"}
data.forms["m"] = {"yby"}
end
end


return data
return data