Module:siwa-noun/data: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 71: Line 71:
-- TODO: add alternative forms with table.insert
-- TODO: add alternative forms with table.insert
for n, case in pairs(cases) do
for n, case in pairs(cases) do
if stem:match(v.."nn.$") and data.q == "s" then
if stem:match(v.."nn.$") and data.q == "s" and not args.ld then
table.insert(data.forms[case], s3 .. "nṡi" .. ce[n])
table.insert(data.forms[case], s3 .. "nṡi" .. ce[n])
elseif stem:match(v.."n.$") and data.q == "s" then
elseif stem:match(v.."n.$") and data.q == "s" and not args.ld then
table.insert(data.forms[case], s2 .. "nṡi" .. ce[n])
table.insert(data.forms[case], s2 .. "nṡi" .. ce[n])
elseif stem:match(v.."[pb].$") and data.q == "s" then
elseif stem:match(v.."[pb].$") and data.q == "s" and not args.ld then
table.insert(data.forms[case], s2 .. "pṡi" .. ce[n])
table.insert(data.forms[case], s2 .. "pṡi" .. ce[n])
end
end
Line 185: Line 185:
-- TODO: add alternative forms with table.insert
-- TODO: add alternative forms with table.insert
for n, case in pairs(cases) do
for n, case in pairs(cases) do
if stem:match("[^mpbvnrlkg]o$") then
if stem:match("[^mpbvnrlkg]o$") and not args.ld then
table.insert(data.forms[case], s1 .. "obi" .. ce[n])
table.insert(data.forms[case], s1 .. "obi" .. ce[n])
end
end
Line 366: Line 366:
-- TODO: add alternative forms with table.insert
-- TODO: add alternative forms with table.insert
for n, case in pairs(cases) do
for n, case in pairs(cases) do
if stem:match(v.."[mnkg]i$") then
if stem:match(v.."[mnkg]i$") and not args.ld then
table.insert(data.forms[case], s2 .. "kki" .. ce[n])
table.insert(data.forms[case], s2 .. "kki" .. ce[n])
elseif stem:match(v.."[lrs]ki$") or stem:match(v.."sġi$") then
elseif (stem:match(v.."[lrs]ki$") or stem:match(v.."sġi$")) and not args.ld then
table.insert(data.forms[case], s2 .. "kki" .. ce[n])
table.insert(data.forms[case], s2 .. "kki" .. ce[n])
end
end
Line 444: Line 444:
-- TODO: add alternative forms with table.insert
-- TODO: add alternative forms with table.insert
for n, case in pairs(cases) do
for n, case in pairs(cases) do
if stem:match(v.."[mn][mn][oyuů]$") then
if stem:match(v.."[mn][mn][oyuů]$") and not args.ld then
table.insert(data.forms[case], s3 .. "mmoi" .. ce[n])
table.insert(data.forms[case], s3 .. "mmoi" .. ce[n])
elseif stem:match(v.."[mn][oyuů]$") or stem:match(v.."sġi$") then
elseif (stem:match(v.."[mn][oyuů]$") or stem:match(v.."sġi$")) and not args.ld then
table.insert(data.forms[case], s2 .. "mmoi" .. ce[n])
table.insert(data.forms[case], s2 .. "mmoi" .. ce[n])
end
end