Module:siwa-noun/data: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 20: Line 20:
data["a"] = {
data["a"] = {
params = {
params = {
["nolen"] = {}, -- No LENition
["nolen"] = {type = "boolean"}, -- No LENition
["ld"] = {}, -- Lenition Declension
["ld"] = {type = "boolean"}, -- Lenition Declension
["d"] = {}, -- vowel Deletion
["d"] = {type = "boolean"}, -- vowel Deletion
["s"] = {type = "boolean"}, -- Stressed
},
},
}
}
setmetatable(data["a"], {__call = function(self, args, data)
setmetatable(data["a"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
table.insert(data.categories, "Siwa a-declension " .. data.pos)
table.insert(data.categories, "Siwa a-declension " .. data.pos)
Line 93: Line 94:
data["e"] = {
data["e"] = {
params = {
params = {
["nolen"] = {},
["nolen"] = {type = "boolean"},
["ld"] = {},
["ld"] = {type = "boolean"},
["d"] = {},
["d"] = {type = "boolean"},
["s"] = {type = "boolean"},
},
},
}
}
setmetatable(data["e"], {__call = function(self, args, data)
setmetatable(data["e"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
table.insert(data.categories, "Siwa e-declension " .. data.pos)
table.insert(data.categories, "Siwa e-declension " .. data.pos)
Line 218: Line 220:
data["i"] = {
data["i"] = {
params = {
params = {
["nolen"] = {},
["nolen"] = {type = "boolean"},
["ld"] = {},
["ld"] = {type = "boolean"},
["s"] = {type = "boolean"},
},
},
}
}
setmetatable(data["i"], {__call = function(self, args, data)
setmetatable(data["i"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
table.insert(data.categories, "Siwa i-declension " .. data.pos)
table.insert(data.categories, "Siwa i-declension " .. data.pos)
Line 299: Line 302:
data["o"] = {
data["o"] = {
params = {
params = {
["nolen"] = {},
["nolen"] = {type = "boolean"},
["ld"] = {},
["ld"] = {type = "boolean"},
["s"] = {type = "boolean"},
},
},
}
}
setmetatable(data["o"], {__call = function(self, args, data)
setmetatable(data["o"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
table.insert(data.categories, "Siwa o-declension " .. data.pos)
table.insert(data.categories, "Siwa o-declension " .. data.pos)
Line 414: Line 418:
data["u"] = {
data["u"] = {
params = {
params = {
["nolen"] = {},
["nolen"] = {type = "boolean"},
["ld"] = {},
["ld"] = {type = "boolean"},
["s"] = {type = "boolean"},
},
},
}
}
setmetatable(data["u"], {__call = function(self, args, data)
setmetatable(data["u"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
table.insert(data.categories, "Siwa u-declension " .. data.pos)
table.insert(data.categories, "Siwa u-declension " .. data.pos)
Line 495: Line 500:
data["y"] = {
data["y"] = {
params = {
params = {
["nolen"] = {},
["nolen"] = {type = "boolean"},
["ld"] = {},
["ld"] = {type = "boolean"},
["s"] = {}, -- Stressed lenition
["s"] = {type = "boolean"},
},
},
}
}
Line 626: Line 631:
data["s"] = {
data["s"] = {
params = {
params = {
["nolen"] = {},
["nolen"] = {type = "boolean"},
["d"] = {},
["d"] = {type = "boolean"},
["s"] = {}, -- Stressed
["s"] = {type = "boolean"},
},
},
}
}
setmetatable(data["s"], {__call = function(self, args, data)
setmetatable(data["s"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
table.insert(data.categories, "Siwa s-declension " .. data.pos)
table.insert(data.categories, "Siwa s-declension " .. data.pos)
Line 666: Line 671:
params = {
params = {
[2] = {},
[2] = {},
["nolen"] = {},
["nolen"] = {type = "boolean"},
["s"] = {type = "boolean"},
},
},
}
}
setmetatable(data["n"], {__call = function(self, args, data)
setmetatable(data["n"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local sv = args[2]
local sv = args[2]
Line 697: Line 703:
params = {
params = {
[2] = {},
[2] = {},
["nolen"] = {},
["nolen"] = {type = "boolean"},
["ut"] = {},
["ut"] = {},
["s"] = {type = "boolean"},
},
},
}
}
setmetatable(data["t"], {__call = function(self, args, data)
setmetatable(data["t"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local sv = args[2]
local sv = args[2]
Line 722: Line 729:
params = {
params = {
[2] = {},
[2] = {},
["nolen"] = {},
["nolen"] = {type = "boolean"},
["str"] = {type = "boolean"},
["s"] = {type = "boolean"},
},
},
}
}
setmetatable(data["l"], {__call = function(self, args, data)
setmetatable(data["l"], {__call = function(self, args, data)
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head))
local stem = args.nolen and data.head or m_com.coalescence(m_com.lenition(data.head), args.s)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
local s1, s2, s3 = sub(stem, 1, -2), sub(stem, 1, -3), sub(stem, 1, -4)
table.insert(data.categories, "Siwa l-declension " .. data.pos)
table.insert(data.categories, "Siwa l-declension " .. data.pos)
Line 758: Line 767:
params = {
params = {
[2] = {}, -- stressed vowel
[2] = {}, -- stressed vowel
["h"] = {}, -- Human
["h"] = {type = "boolean"}, -- Human
["av"] = {},
["av"] = {type = "boolean"},
["s"] = {type = "boolean"},
},
},
}
}