Модуль:grc-nouns-decl/1
Зовнішній вигляд
Документацію для цього модуля можна створити у Модуль:grc-nouns-decl/1/документація
-- αρχαία ελληνικά ουσιαστικά - 1η κλίση / ancient greek nouns - 1st declension 2021.06. Sarri.greek
-- INSTRUCTIONS & help at bottom of [[Module:grc-nouns-decl]] - ΟΔΗΓΙΕΣ στο τέλος της κύριας σελίδας
-- ======================= ΚΛΙΣΗ 1 αρχαία ελληνικά ================================= --
--[=[
ΠΕΡΙΕΧΟΜΕΝΑ
* [[στρατιά]], [[χώρα]]/[[γλῶσσα]]/[[σοφία]]/[[σφαῖρα]] _κούπα, [[θάλασσα]]/[[βοήθεια]]
* [[νεανίας]]/[[λογοθήρας]]
* [[ψυχή]], [[γνώμη], [[περισπωμένη]]
* [[ποιητής]], [[στρατιώτης]]/[[τοξότης]]& [[Ἀτρείδης]]/[[Κρονίδης]]
* συνηρημένα contracted: [[Ναυσικάα]]/[[μνᾶ]]], [[συκέα]]/[[συκῆ]], [[γαλέη]]/[[γαλῆ]], [[Βορέας]]/[[Βορρᾶς]], [[Ἑρμέας]]/[[Ἑρμῆς]]
Τα ιδιόκλιτα ονόματα Μηνᾶς, Φιλῆς, etc at page /4
Ιδιόκλιτα ελληνιστικό [[κοῦπα]]-ας, πληθ?? latin -es? κοῦπες? at/page4
TO DO
* Find a common catchword for [[Ναυσικάα]]+[[μνᾶ]]]
HELP copypaste
-- create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς"))
]=]--
export = {}
m_2 = require("Module:grc-nouns-decl/2") -- 2nd declension follows
-- repeat this, otherwise linkcontrols do not work
local languages = mw.loadData("Module:Languages")
-- ====================== Links -- Repeat here (from param page) for languages and for the uncontracted
function create_link (page, text)
local args = {}
-- articles are the same for for kath, gkm, grc -- test [[Λεβαδία]]
lang_iso = lang_iso or ''
local med = args['gkm'] or args['μσν'] or ''
local kathar = args['kath'] or args['καθ'] or ''
if args['gkm'] == '1' or args['μσν'] == '1' then lang_iso = 'gkm'
elseif args['kath'] == '1' or args['καθ'] == '1' then lang_iso = 'el'
else lang_iso = 'grc'
end
if text then
return '[[' .. page .. '#' .. languages[lang_iso]['link'] .. '|' .. text .. ']]'
else
return '[[' .. page .. '#' .. languages[lang_iso]['link'] .. '|' .. page .. ']]'
end
end
-- ======================= 1η κλίση [[στρατιά]] ===================================== --
export['στρατιά'] = function(frame) -- [[Πρότυπο:grc-κλίση-'στρατιά']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- rewrite default stemnumber = 3 (μείον 2)
else
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- override default stemnumber = 3 (μείον 2)
end
args['κλίση'] = '1'
args['θηλ'] = '1'
args['κατηγορία κλίσης'] = 'στρατιά'
args['τύπος'] = 'στρατιά'
args['όπως'] = 'στρατιά'
args['κατηγ0'] = 'Λέξεις οξύτονες'
args['υποκατ01'] = 'οξύτονα'
args['υποκατ02'] = 'θηλυκά οξύτονα'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ά" args['mod-οε+'] = "ᾱ́"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ᾶς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = "ᾷ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "άν" args['mod-αε+'] = "ᾱ́ν"
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "ά" args['mod-κε+'] = "ᾱ́" -- or, as in nom
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αί"
args['mod-γπθ'] = stem["θ"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αῖς"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "άς" args['mod-απ+'] = "ᾱ́ς"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- as in nominative
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "ά" args['mod-οδ+'] = "ᾱ́"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αῖν"
return decl(args)
end
-- group χώρα group γλῶσσα EDITOR_MUST_DEFINE δίχρ=
-- δεν μπορώ να φτιάξω τις υποκατηγορίες στο κλίση σοφία, οπότε φτιάχνω έξτρα funtion
-- ================ 1η κλίση [[χώρα]] & [[σοφία]] / [[γλῶσσα]] & [[δόξα]] / [[σφαῖρα]] ========================
--[=[
-- and CHECK [[ᾤα]], [[χημεία]], [[Εὔα]], [[κάννα]], [[λύσσα]]
-- handle (or make a Template)
σαν τα 'σφαίρα: Εὔα
* [[Ἄβα]] της Ἄβας αλλά πληθ Ἄβαι (@DGE) -- ΜΑΚΕ Ανδρομέδα -ας
* [[Σουσάννα]] και -άννης και άννας
* πιθανόν, λατινικές λέξεις. [[καλάνδαι]], μορφή του [[καλένδαι]] Δεν θα πρέπει να θεωρείται Κατ.γλώσσα ΕΚΚΡΕΜΟΤΗΤΑ
* το κοῦπα-ας ?πληθ κοῦπες? - βλ. ιδιόκλιτα /page4
]=]--
-- =================================================================================
export['χώρα'] = function(frame)
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
args['κλίση'] = '1'
args['θηλ'] = '1'
-- υπερομάδα χώρα & βλέπε 2 ομάδες χώρα-ας, γλώσσα-ης
-- κατηγορία κλίσης, τύπος, όπως, see below
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- rewrite default stemnumber = 3 (μείον 2)
else -- singular
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- override default stemnumber = 3 (μείον 2)
end
if mw.ustring.find(stem["θ"], m_data.vowel_perispomeni) -- vowel+perispomeni
then
args['κατηγ0'] = 'Λέξεις προπερισπώμενες'
args['υποκατ01'] = 'προπερισπώμενα'
args['υποκατ02'] = 'θηλυκά προπερισπώμενα'
else
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
end
stem["θ0"] = m_stems.word0(stem["θ"]) -- σφαιρ χωρ σοφι γλωσσ
-- stem["θ1"] = m_stems.word1(stem["θ0"])
stem["θ1"] = m_stems.PerispomeniToOxia(stem["θ"]) -- σφαίρ γλώσσ
stem["θ1π"] = m_stems.OxiaToPerispomeni(stem["θ"]) -- χώρ-α > χῶρ-αι, χημεία > χημεῖαι
-- DO NOT ACCEPT προπαροξύτονα. Τest at testpage [[τράπεζα]] [[ἀλήθεια]] ok, [[κόρυζα]] // έ and ό we not seen when i use OR STEM θιπ
if (stem["θ"] ~= m_stems.word1(stem["θ0"]) and stem["θ"] ~= stem["θ1π"])
-- and mw.ustring.find(stem["θ"], '[έό]') --PROBLEM with [[χόχαχα]] [[χέχαχα]]
-- impossibles like χαχαχεῖα just do not fill in stems.
or stem["θ"] == m_stems.word2(stem["θ0"])
-- but ACCEPT suffix lemmata like [[-τρα]]
and not mw.ustring.find(stem["θ"], '[-]')
then
return errorhere('ΛΑΘΟΣ ΚΛΙΣΗ. Χρησιμοποιήσατε κλίση για παροξύτονα.')
end
-- PURE ALPHA ============================== --
-- EXCEPTIONS [[σφαῖρα]] -- εξαιρέσεις: καθαρό άλφα που όμως είναι βραχύ. Τζάρτζανος παράγραφος 50. -- pure alpha BUT brachy
-- lemma = does not work
if -- this section is LOCKED: editors cannot change params
-- the [[σφαῖρα]] words:
args['λήμμα'] == 'μοῖρα' or args['λήμμα'] == 'πεῖρα' or args['λήμμα'] == 'πρῷρα'
or args['λήμμα'] == 'σπεῖρα' or args['λήμμα'] == 'σφαῖρα' or args['λήμμα'] == 'σφῦρα'
or args['λήμμα'] == 'αἶρα' -- koine
-- plus these bisyllabics:
or args['λήμμα'] == 'γαῖα' or args['λήμμα'] == 'γραῖα' or args['λήμμα'] == 'μαῖα' or args['λήμμα'] == 'μυῖα'
-- and hyphothetically, if table is needed at the plural lemma:
or args['λήμμα'] == 'μοῖραι' or args['λήμμα'] == 'πεῖραι' or args['λήμμα'] == 'πρῷραι'
or args['λήμμα'] == 'σπεῖραι' or args['λήμμα'] == 'σφαῖραι' or args['λήμμα'] == 'σφῦραι'
or args['λήμμα'] == 'αἶραι'
-- plus these bisyllabics:
or args['λήμμα'] == 'γαῖαι' or args['λήμμα'] == 'γραῖαι' or args['λήμμα'] == 'μαῖαι' or args['λήμμα'] == 'μυῖαι'
-- PLUS KOINE
or args['λήμμα'] == 'Εὔα'
then
args['γε'] = "ας"
args['γε+'] = "ᾱς"
args['δε'] = 'ᾳ'
args['ομάδα'] = 'χώρα'
args['κατηγορία κλίσης'] = 'σφαῖρα'
args['τύπος'] = 'σφαῖρα'
args['όπως'] = 'σφαῖρα'
args['σημ'] = "Εδώ, το <i>καθαρό α</i> (που ακολουθεί το ρ ή φωνήεν)<br>δεν είναι μακρό, αλλά κατ' εξαίρεσιν, βραχύ."
args['οεθ'] = stem["θ"] args['οε'] = "α" args['οε+'] = "ᾰ"
args['γεθ'] = stem["θ1"] --γε ΟΚ
args['δεθ'] = stem["θ1"] --δε ΟΚ
args['αεθ'] = stem["θ"] args['αε'] = "αν" args['αε+'] = "ᾰν"
args['κεθ'] = args['οεθ'] args['κε'] = args['οε'] args['κε+'] = args['οε+'] -- same as nominative
args['οπθ'] = stem["θ"] args['οπ'] = "αι"
if args['λήμμα'] == 'αἶρα' or args['λήμμα'] == 'αἶραι' then
args['γπθ'] = stem["θ0"] args['γπ'] = "άων" args['γπΛκειμ'] = '<sup>*</sup>'
args['παρατήρηση'] = '* Ανώμαλη γενική πληθυντικού αντί <b>-ῶν</b>.<br>** Ανώμαλη δοτική πληθυντικού αντί <b>-αις</b>.<br>'
else
args['γπθ'] = stem["θ0"] args['γπ'] = "ῶν"
end
if args['λήμμα'] == 'αἶρα' or args['λήμμα'] == 'αἶραι' then
args['δπθ'] = stem["θ1"] args['δπ'] = "ῃσιν" args['δπΛκειμ'] = '<sup>**</sup>'
else
args['δπθ'] = stem["θ1"] args['δπ'] = "αις"
end
args['απθ'] = stem["θ1"] args['απ'] = "ας" args['απ+'] = "ᾱς"
args['κπθ'] = args['οπθ'] args['κπ'] = args['οπ'] -- same as nominative
args['οδθ'] = stem["θ"] args['οδ'] = "α" args['οδ+'] = "ᾱ"
args['γδθ'] = stem["θ1"] args['γδ'] = "αιν"
else -- NOT σφαῖρα group
-- 1) non purum ᾰ ΜΗ καθαρό άλφα = βραχύ after consonant except ρ at end of stem
if mw.ustring.find(stem["θ"], '[βγδζθκλμνξπστφχψΒΓΔΖΘΚΛΜΝΞΠΣΤΦΧΨ]$')
and args['λήμμα'] ~= 'Ἄβα'
then
-- ᾰ is brachy, becomes -ης genitive, ῃ dative
-- if find.in.stem perispomeni [[γλῶσσα]] ᾰ (this includes macra, diphthongs, non ambiguous dichrona)
--gen/dat.sg = θ1 MAKE it OKSEIA γλώσσης
--nom.pl = θ keep it γλῶσσαι with -αι (brachy at end)
-- if find.in.stem okseia
-- if is is brachy ε ο = keep it as is η [[δόξα]] αι δόξαι
-- if it is macron or diphthong = impossible okseia BUT there is
--@DGE [[βούλλα]] -ης, en edd. frec. acent. [[βοῦλλα]] ? ΕΚΚΡΕΜΟΤΗΤΑ
-- if ambiguous dichronon then
-- if perispomeni, it is obviously macron [[μᾶζα]] μάζης μᾶζαι KEEP IT
-- if oskia, [[Κύρβα]] it cannot be macron, or it would have perispomeni. KEEP IT
-- if the editor does nothing, ERROR.
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾰ"
-- γεθ, δεθ
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾰν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nom
-- οπθ
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
-- all probalbe and improbable perismpomeni here
if mw.ustring.find(stem["θ"], m_data.vowel_perispomeni)
then
args['ομάδα'] = 'γλῶσσα'
args['κατηγορία κλίσης'] = 'γλῶσσα'
args['τύπος'] = 'γλῶσσα'
args['όπως'] = 'γλῶσσα'
-- make okseia at
args['mod-γεθ'] = stem["θ1"] args['mod-γε'] = 'ης' --args['mod-γε+'] = 'ης' ----- !!!!!!!!! repeat it για να μη βλέπει το γε+ = ας
args['mod-δεθ'] = stem["θ1"] args['mod-δε'] = 'ῃ'
args['mod-δπθ'] = stem["θ1"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ1"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-οδθ'] = stem["θ1"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ1"] args['mod-γδ'] = "αιν"
-- keep at nom.pl
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
--else -- if i find okseia
-- if it is brachy vowel, keep it
-- if other.vowel okseia, it cannot be a macron, it cannot be a diphthong,
-- it is an ambiguous.dicrhonon. with oskeia
-- but is cannot be a macron, so, it is brachy: I add all oxytona brachea dichrona
elseif mw.ustring.find(stem["θ"], '[έὲἔἒἕἓόὸὄὂὅὃΈῈἜἚἝἛΌῸὌὊὍὋάὰἄἂἅἃίὶἴἲἵἳΐῒύὺὔὒὕὓΰῢΆᾺἌἊἍἋΊῚἼἺἽἻΎῪὝὛ]')
then
args['ομάδα'] = 'γλῶσσα'
args['κατηγορία κλίσης'] = 'δόξα'
args['τύπος'] = 'δόξα'
args['όπως'] = 'δόξα'
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = 'ης'
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ῃ'
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
-- keep at nom.pl
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
end -- close what kind of stresses we find at the -η category
-- 2) a purum καθαρό ᾱ = μακρό
-- if at end of stem there is ρ or any vowel (or any diphthong) then we have ᾱ
elseif mw.ustring.find(stem["θ"], '[ρΡαᾳάᾴὰᾲᾶᾷἀᾀἄᾄἂᾂἆᾆἁᾁἅᾅἃᾃἇᾇᾰᾱεέὲἐἔἒἑἕἓηῃήῄὴῂῆῇἠᾐἤᾔἢᾒἦᾖἡᾑἥᾕἣᾓἧᾗιίὶῖἰἴἲἶἱἵἳἷϊΐῒῗῐῑοόὸὀὄὂὁὅὃυύὺῦὐὔὒὖὑὕὓὗϋΰῢῧῠῡωῳώῴὼῲῶῷὠᾠὤᾤὢᾢὦᾦὡᾡὥᾥὣᾣὧᾧΑᾼΆᾺἈᾈἌᾌἊᾊᾊἎᾎἉᾉἍᾍἋᾋἏᾏᾸᾹΕΈῈἘἜἚἙἝἛΗῌΉῊἨᾘἬᾜἪᾚᾚἮᾞἩᾙἭᾝἫᾛἯᾟΙΊῚἸἼἺἾἹἽἻἿῙῘΟΌῸὈὌὊὉὍὋΥΎῪὙὝὛὟῩῨΩῼῺὨᾨὬᾬὪᾪὮᾮὩᾩὭᾭὫᾫὯᾯ]$')
or args['λήμμα'] == 'Ἄβα' -- exceptions
then
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾱ"
-- γεθ, δεθ
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
-- οπθ
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
-- if find.in.stem perispomeni -- IMPOSSIBLE before a macron, but yes at pluralia tantum
-- if find.in.stem okseia
-- if it is a brachy = keep it [[φαρέτρα]]
-- if it is a macron make nom.pl PERISPOMENI [[χώρα]]
-- also if find diphthongs, make PERISPOMENI [[χημεία]]
-- if it is dicrhonon but not in a diphthong [[χύτρα]] we need the editor to tell us
-- |δίχρ=β we KEEP IT (this is also done fast in [[Πρότυπο:grc-κλίση-'σοφία']])
-- |δίχρ=μ macron, we make PERISPOMENH ?? I do not have an example
-- if it is UNKNOWN |δίχρ=? and we present the nom.pl as ...?...αι
-- all probalbe and improbable brachy+okseia here for [[φαρέτρα]] = KEEP IT Κατ.σοφία με βραχύ
if mw.ustring.find(stem["θ"], m_data.brachy_oxeia) -- brachy+okseia
or args['λήμμα'] == '-τρα'
then
args['ομάδα'] = 'χώρα'
args['κατηγορία κλίσης'] = 'φαρέτρα'
args['τύπος'] = 'φαρέτρα' -- βραχύ
args['όπως'] = 'σοφία'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾱ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ας" args['mod-γε+'] = "ᾱς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ᾳ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
-- else if macron+okseia make sg.pl perispomeni Κατ.χώρα
elseif mw.ustring.find(stem["θ"], m_data.macron_oxeia) -- macron+okseia or vareia
-- pluralia with perispomeni χῶραι
or mw.ustring.find(stem["θ"], m_data.vowel_perispomeni) -- vowel+perispomeni
then
args['ομάδα'] = 'χώρα'
args['κατηγορία κλίσης'] = 'χώρα'
args['τύπος'] = 'χώρα'
args['όπως'] = 'χώρα'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾱ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ας" args['mod-γε+'] = "ᾱς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ᾳ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
args['mod-οπθ'] = stem["θ1π"] args['mod-οπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
-- elsif find a dicrhonon+okseia but except in diphthongs
elseif mw.ustring.find(stem["θ"], m_data.dichronon_oxeia) -- dicrhonon+okesia or vareia
then
-- NOT in diphtongs the ι υ
if mw.ustring.find(stem["θ"], m_data.diphthong_tonos) -- diphthong+tonos (okseia, vareia, perispomeni) NOT dialytics ΐῒῗΰῢῧ [[Ἀγλαΐα]] + only the accented ones [[λειτουργία]] [[εὐδοκία]]
then -- make PERISPOMENI
args['ομάδα'] = 'χώρα'
args['κατηγορία κλίσης'] = 'χώρα'
args['τύπος'] = 'χώρα'
args['όπως'] = 'χώρα'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾱ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ας" args['mod-γε+'] = "ᾱς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ᾳ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
args['mod-οπθ'] = stem["θ1π"] args['mod-οπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
-- # υπάρχει υποκατ: φαρέτρα = χώρα|δίχρ=β και Πρότυπο σοφία = όλα τα ία?
else -- editor has to say
if args['δίχρ'] == 'β' then -- KEEP IT the σοφία words, fast at [[Template:grc-κλίση-'σοφία']]
args['ομάδα'] = 'χώρα'
args['κατηγορία κλίσης'] = 'σοφία'
args['τύπος'] = 'σοφία'
args['όπως'] = 'σοφία'
args['mod-σημ'] = 'Το δίχρονο φωνήεν της παραλήγουσας είναι βραχύ.'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾱ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ας" args['mod-γε+'] = "ᾱς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ᾳ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
-- if δίχρ=μ macron, MAKE PERISPOMENI
elseif args['δίχρ'] == 'μ' then
args['ομάδα'] = 'χώρα'
args['κατηγορία κλίσης'] = 'χώρα'
args['τύπος'] = 'χώρα'
args['όπως'] = 'χώρα'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾱ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ας" args['mod-γε+'] = "ᾱς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ᾳ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
args['mod-οπθ'] = stem["θ1π"] args['mod-οπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
-- but if there is NO INFO about this word at dictionaries
elseif args['δίχρ'] == '?' then
args['κατηγορία κλίσης'] = "χώρα"
args['τύπος'] = '-'
args['όπως'] = 'χώρα'
if args['α'] ~= 'εν' and args['α'] ~= 'ενδ' and args['α2'] ~= 'εν' and args['α2'] ~= 'ενδ' then
args['σημ'] = '<span style="color:red;">Δεν</span> υπάρχουν πληροφορίες για την προσωδία<br>του δίχρονου φωνήεντος στην παραλήγουσα.<br><span style="color:red;">Δεν</span> γνωρίζουμε πώς τονίζεται η ονομαστική πληθυντικού.'
end
page = mw.title.getCurrentTitle()
page.name = page.text:match( "^%s*(.-)%s*$" )
if page.namespace == 0 then -- Categories work only in MAIN namespace
args['κατηγ02'] = "Λέξεις με άγνωστη προσωδία"
args['κατηγ03'] = "Ουσιαστικά που κλίνονται όπως η ομάδα 'χώρα' με άγνωστη προσωδία"
end
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾱ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ας" args['mod-γε+'] = "ᾱς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ᾳ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
args['οπΛ'] = '...<span style="color:red;">?</span>...αι' -- LOCKED for editors
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['κπΛ'] = args['οπΛ'] -- LOCKED -- same as nominative
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
-- if the editor does nothing, ERROR.
elseif args['δίχρ'] ~= 'β' and args['δίχρ'] ~= 'μ' and args['δίχρ'] ~= '?'
or (args['δίχρ'] == '' or args['δίχρ'] == nil)
then
return error_dichr(errordichrstring) -- cf error fucntions at Module
end -- close if |δίχρ=
end -- close if diphtong
end -- close elseifs for okseia at purum
end -- close if non purum
end -- close sphaera EXCEPTIONS
return decl(args)
end -- close χώρα
-- -----------extra σοφία (as χώρα, with δίχρ=β as standard)
-- =================================================================================
export['σοφία'] = function(frame) -- [[Πρότυπο:grc-κλίση-'σοφία']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- σοφί-αι rewrite default stemnumber = 3 (μείον 2)
else
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- σοφί-α
end
stem["θ0"] = m_stems.word0(stem["θ"]) -- σοφι
-- accept only -ία words, do not accept diphthongs
if mw.ustring.find(stem["θ"], '[ίὶἴἲἵἳΐῒ]')
then
if mw.ustring.find(stem["θ"], m_data.diphthong_tonos) -- diphthong+tonos (okseia, vareia, perispomeni) NOT dialytics ΐῒῗΰῢῧ
then
return errorhere("ΛΑΘΟΣ ΚΛΙΣΗ. Επιλέξτε την κλίση {{grc-κλίση-'χώρα'}}.")
-- like [[ἀγριελαία]]
else
args['κλίση'] = '1'
args['θηλ'] = '1'
args['ομάδα'] = 'χώρα'
args['κατηγορία κλίσης'] = 'σοφία'
args['τύπος'] = 'σοφία'
args['όπως'] = 'σοφία'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾱ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ας" args['mod-γε+'] = "ᾱς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ᾳ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
end -- close if diphghong
else -- if not find ί
return errorhere("ΛΑΘΟΣ ΚΛΙΣΗ. Επιλέξτε την κλίση {{grc-κλίση-'χώρα'}}.")
end
return decl(args)
end -- close σοφία
-- no group θάλασσα
-- ======================= 1η κλίση [[θάλασσα]]/[[βοήθεια]] =====================================
-- Το άλφα πάντα βραχύ (ακόμη και το α καθαρόν)
-- [[βοήθεια]] με γενική -ας βοηθείας
-- [[θάλασσα]] με γενική -ης θαλάσσης
--- να μην δέχεται παροξύτονα όπως [[χώρα]] [[σοφία]] ( = βλ. κλίση 'χώρα')
-- ΕΞΑΙΡΕΣΕΙΣ:
-- ονόματα ελληνιστικά όπως ?
-- ===============================================================================
export['θάλασσα'] = function(frame) -- [[Πρότυπο:grc-κλίση-'θάλασσα']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- rewrite default stemnumber = 3 (μείον 2)
else
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- override default stemnumber = 3 (μείον 2)
end
args['κλίση'] = '1'
args['θηλ'] = '1'
-- κατηγορία κλίσης below
args['κατηγ0'] = 'Λέξεις προπαροξύτονες'
args['υποκατ01'] = 'προπαροξύτονα'
args['υποκατ02'] = 'θηλυκά προπαροξύτονα'
stem["θ0"] = m_stems.word0(stem["θ"]) -- θαλασσ
stem["θ1"] = m_stems.word1(stem["θ0"]) -- θαλάσσ
stem["θ1π"] = m_stems.OxiaToPerispomeni(stem["θ1"]) -- HYPOTHETICAL CONTROL θαλᾶσσ ...εῖα words
-- # CAREFUL, DO NOT WRITE m_stems.OxiaToPerispomeni(stem["θ"]) --> it cannnot see έ and ό accented (e.g. [[ὠφέλεια]])
-- the converted stem MUST be accented at last syllable, not ANY syllable
-- DO NOT ACCEPT παροξύτονα. Test at [[χώρα]], [[σοφία]]
if (stem["θ"] == stem["θ1"] or stem["θ"] == stem["θ1π"]) --(also impossible words like ...εῖα )
-- but ACCEPT suffix lemmata like [[-αινα]], [[-εια]]
and not mw.ustring.find(stem["θ"], '[-]')
then
return errorhere('ΛΑΘΟΣ ΚΛΙΣΗ. Χρησιμοποιήσατε κλίση για προπαροξύτονα.')
end
-- ALPHA ============================== --
-- normally a purum alpha is macron, but for PROparoxytones, it is brachy
-- 1) non purum ᾰ ΜΗ καθαρό άλφα = after consonant except ρ at end of stem (capitals not needed? ΒΓΔΖΘΚΛΜΝΞΠΣΤΦΧΨ)
if mw.ustring.find(stem["θ"], '[βγδζθκλμνξπστφχψ]$') -- $ means: at the end of
then
-- ᾰ is brachy, becomes -ης genitive, ῃ dative
args['κατηγορία κλίσης'] = 'θάλασσα'
args['τύπος'] = 'θάλασσα'
args['όπως'] = 'θάλασσα'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾰ"
args['mod-γεθ'] = stem["θ1"] args['mod-γε'] = "ης"
args['mod-δεθ'] = stem["θ1"] args['mod-δε'] = "ῃ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾰν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
-- plural common for both, see below
-- 2) a purum καθαρό ᾱ = μακρό, but not for proparoxytones (otherwise we would have η βοηθεία)
else -- if vowel/diphthong or ρ
args['κατηγορία κλίσης'] = 'βοήθεια'
args['τύπος'] = 'βοήθεια'
args['όπως'] = 'βοήθεια'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "α" args['mod-οε+'] = "ᾰ"
args['mod-γεθ'] = stem["θ1"] args['mod-γε'] = "ας" args['mod-γε+'] = "ᾱς"
args['mod-δεθ'] = stem["θ1"] args['mod-δε'] = "ᾳ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾰν"
args['mod-κεθ'] = args['mod-οεθ'] args['mod-κε'] = args['mod-οε'] args['mod-κε+'] = args['mod-οε+'] -- same as nominative
-- plural common for both, see below
end -- close if βγδ...
-- plural for both:
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ1"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ1"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-κπθ'] = args['mod-οπθ'] args['mod-κπ'] = args['mod-οπ'] -- same as nominative
args['mod-οδθ'] = stem["θ1"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ1"] args['mod-γδ'] = "αιν"
return decl(args)
end
-- group νεανίας EDITOR_MUST_DEFINE δίχρ=
-- ### perhaps cat for hellenistic Koine names, genitive -α ? ΕΚΚΡΕΜΟΤΗΤΑ
-- ### to do: the pluralia like [[λογοθῆραι]] are not recognized
-- ======================= 1η κλίση [[νεανίας]] [[λογοθήρας]] ===================================== --
-- [[νεανίας]] with bracy, νεανίαι
-- [[λογοθήρας]] with macron MACRON penultima [[οἰνοθήρας]] [[-θήρας]] NEEDS perispomeni οἰνοθῆραι
-- and diphthong [[μητραλοίας]]
export['νεανίας'] = function(frame) -- [[Πρότυπο:grc-κλίση-'νεανίας']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or '' --do not change
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
-- stem is DEFAULT singular=plural. Default stem ok. minus 2 letters, args['μείον'] = 2 (stemnumber = 3)
-- but i shall rewrite them all, just in case
local stem = {}
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- νεανί λαγοθήρ
stem["θ0"] = m_stems.word0(stem["θ"]) -- νεανι λαγοθηρ
stem["θπ"] = m_stems.OxiaToPerispomeni(stem["θ"]) -- λογοθῆρ
args['κλίση'] = '1'
args['αρσ'] = '1'
args['ομάδα'] = 'νεανίας'
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
if mw.ustring.find(stem["θ"], m_data.vowel_perispomeni) -- vowel+perispomeni
then
args['κατηγ0'] = 'Λέξεις προπερισπώμενες'
args['υποκατ01'] = 'προπερισπώμενα'
args['υποκατ02'] = 'αρσενικά προπερισπώμενα'
else
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'αρσενικά παροξύτονα'
end
else
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'αρσενικά παροξύτονα'
end
-- if mw.ustring.find(stem["θ"], dichrona(dichr)['μ'])then return errorhere('*Κλίση: Θα πρέπει να ορίσουμε το δίχρονο φωνήεν..
-- if not mw.ustring.find(args['λήμμα'], 'ίας') or mw.ustring.find(args['λήμμα'], 'ίαι') --plural [[ἐτησίαι]]
--PLAN: if the accent is on a
-- perispomeni is IMPOSSIBLE (because -ας is macron)
-- on a brachy, then, OKSEIA [[λακέτας]], λακέται
-- on a macron,then PERISPOMENI at plural [[-θήρας]], θῆραι
-- on a dicrhonon -- if ambiguous editor must
-- if it is -ίας, -ίδας and their plural = brachy
-- if in a diphthong = macron, get PERISPOMENH
-- |δίχρ=β (all the -ίας ίδας and their plurals)
-- |δίχρ=μ
-- |δίχρ=? unknown prosody + its Category [[βύας]]
-- if nothing, give error +its Category
-- 1) if brachy all probalbe and improbable brachy+okseia e.g. [[λακέτας]]
if mw.ustring.find(stem["θ"], m_data.brachy_oxeia) -- brachy+okseia or vareia
then
args['κατηγορία κλίσης'] = 'νεανίας'
args['τύπος'] = 'νεανίας'
args['όπως'] = 'νεανίας'
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
-- 2) else if macron+okseia
elseif mw.ustring.find(stem["θ"], m_data.macron_oxeia) -- macron+okseia or vareia
-- or pluralia have perispomeni:
or mw.ustring.find(stem["θ"], m_data.vowel_perispomeni) -- vowel+perispomeni
then
-- plural singular gets perispomeni -- check pluarlia tantum e.g. λογοθῆραι
args['κατηγορία κλίσης'] = 'λογοθήρας'
args['τύπος'] = 'λογοθήρας'
args['όπως'] = 'λογοθήρας'
args['mod-οπθ'] = stem["θπ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θπ"] args['mod-κπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
-- 3) -- elsif find a dichronon+okseia but except in diphthongs (and -ίας, -ίδας)
elseif mw.ustring.find(stem["θ"], m_data.dichronon_oxeia) -- dicrhonon+okseia or vareia
then
-- diphthongs [[Αἰνείας]] [[μητραλοίας]]
-- mw.ustring.find(stem["θ"], '[αΑεΕηΗοΟ][ίὶῖἴἲἶἵἳἷΊῚἼἺἾἽἻἿύὺῦὔὒὖὑὕὓὗΎῪὝὛὟ]') -- not dialytics ΐῒῗΰῢῧ
if mw.ustring.find(stem["θ"], m_data.diphthong_tonos) -- diphthong+tonos (okseia, vareia, perispomeni) not dialytics ΐῒῗΰῢῧ
then
args['κατηγορία κλίσης'] = 'λογοθήρας'
args['τύπος'] = 'λογοθήρας'
args['όπως'] = 'λογοθήρας'
args['mod-οπθ'] = stem["θπ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θπ"] args['mod-κπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
--EXCEPTION1 -ίας, -ίδας always brachy, CAREFUL: not είας είδας, diphthongs. [[νεανίας]] [[Βρασίδας]]
elseif mw.ustring.find(args['λήμμα'], 'ίας') or mw.ustring.find(args['λήμμα'], 'ίαι')
or mw.ustring.find(args['λήμμα'], 'ΐας') or mw.ustring.find(args['λήμμα'], 'ΐαι')
or mw.ustring.find(args['λήμμα'], 'ίδας') or mw.ustring.find(args['λήμμα'], 'ίδαι')
or mw.ustring.find(args['λήμμα'], 'ΐδας') or mw.ustring.find(args['λήμμα'], 'ΐδαι')
then
args['δίχρ'] = 'β'
args['mod-σημ'] = 'Το φωνήεν της παραλήγουσας είναι βραχύ.'
args['κατηγορία κλίσης'] = 'νεανίας'
args['τύπος'] = 'νεανίας'
args['όπως'] = 'νεανίας'
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αι"
-- γπ ΕΞΑΙΡΕΣΗ: check pl.tantum [[ἐτησίαι]] τῶν ἐτησίων
if args['λήμμα'] == 'ἐτησίαι' or args['λήμμα'] == 'ἐτησίας'
or PAGENAME == 'ἐτησίαι' or PAGENAME == 'ἐτησίας'
then -- LOCKED editors cannot change
args['εξ'] = '1' -- Category, exceptions
args['γπθ'] = "ἐτησί" args['γπ'] = "ων"
args['γπΛκειμ'] = '<sup>*</sup>'
args['σημ'] = "* Εξαίρεση της 1ης κλίσης: τῶν ἐτησίων<br> η γενική πληθυντικού "
.. "<b>δεν</b> τονίζεται στη λήγουσα.<br>"
.. "Το δίχρονο φωνήεν της παραλήγουσας είναι βραχύ."
else
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
end
elseif args['δίχρ'] == 'β'
then -- check [[Ἀννίβας]]
args['mod-σημ'] = 'Το φωνήεν της παραλήγουσας είναι βραχύ.'
args['κατηγορία κλίσης'] = 'νεανίας'
args['τύπος'] = 'νεανίας'
args['όπως'] = 'νεανίας'
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
elseif args['δίχρ'] == 'μ' then -- make perispomeni
args['mod-σημ'] = 'Το φωνήεν της παραλήγουσας είναι μακρό.'
args['κατηγορία κλίσης'] = 'λογοθήρας'
args['τύπος'] = 'λογοθήρας'
args['όπως'] = 'λογοθήρας'
args['mod-οπθ'] = stem["θπ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θπ"] args['mod-κπ'] = "αι"
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
elseif args['δίχρ'] == '?' then
args['κατηγορία κλίσης'] = "νεανίας"
args['τύπος'] = '-'
args['όπως'] = 'νεανίας'
if args['α'] ~= 'εν' and args['α'] ~= 'ενδ' and args['α2'] ~= 'εν' and args['α2'] ~= 'ενδ' then
args['σημ'] = '<span style="color:red;">Δεν</span> υπάρχουν πληροφορίες για την προσωδία<br>του δίχρονου φωνήεντος στην παραλήγουσα.<br><span style="color:red;">Δεν</span> γνωρίζουμε πώς τονίζεται η ονομαστική πληθυντικού.'
end
args['κατηγ02'] = "Λέξεις με άγνωστη προσωδία"
args['κατηγ03'] = "Ουσιαστικά που κλίνονται όπως η ομάδα 'νεανίας' με άγνωστη προσωδία"
args['οπΛ'] = '...<span style="color:red;">?</span>...αι' -- LOCKED
args['κπΛ'] = '...<span style="color:red;">?</span>...αι' -- LOCKED
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
-- if the editor does nothing, ERROR.
elseif args['δίχρ'] ~= 'β' and args['δίχρ'] ~= 'μ' and args['δίχρ'] ~= '?'
or (args['δίχρ'] == '' or args['δίχρ'] == nil)
then
return error_dichr(errordichrstring) -- cf error fucntions at Module
end -- close if |δίχρ=
end -- close if brachy, if macron...
-- common cases for ALL
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ας" args['mod-οε+'] = "ᾱς"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = 'ου'
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ᾳ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "αν" args['mod-αε+'] = "ᾱν"
-- [[λαγοθήρας]] has irr.voc.sg
if args['λήμμα'] == 'λαγοθήρας' then
args['mod-κεθ'] = args['mod-κεθ']
args['mod-κε'] = args['mod-κε']
args['mod-κε+'] = args['mod-κε+']
else args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "α"args['mod-κε+'] = "ᾱ"
end
-- οπ, γπ above
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
-- κπ above
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
return decl(args)
end
-- ======================= 1η κλίση [[ψυχή]] ===================================== --
export['ψυχή'] = function(frame) -- [[Πρότυπο:grc-κλίση-'ψυχή']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" )
else lemma = args['λήμμα']
end
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- rewrite default stemnumber = 3 (μείον 2)
else
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- override default stemnumber = 3 (μείον 2)
end
args['κλίση'] = '1'
args['θηλ'] = '1'
args['κατηγορία κλίσης'] = 'ψυχή'
args['τύπος'] = 'ψυχή'
args['όπως'] = 'ψυχή'
args['κατηγ0'] = 'Λέξεις οξύτονες'
args['υποκατ01'] = 'οξύτονα'
args['υποκατ02'] = 'θηλυκά οξύτονα'
-- rewrite all stems: There was a problem for pluralia -- check [[Παγαί]]
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ή"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = 'ῆς'
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ῇ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "ήν"
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "ή"
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αί"
args['mod-γπθ'] = stem["θ"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αῖς"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "άς" args['mod-απ+'] = "ᾱ́ς"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αί"
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "ά" args['mod-οδ+'] = "ᾱ́"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αῖν"
return decl(args)
end
-- group γνώμη EDITOR_MUST_DEFINE δίχρ=
-- ======================= 1η κλίση [[γνώμη]] [[βελόνη]] [[νίκη]] (ῑ) [[δίκη]] (ῐ) =====================================
-- 1η κλίση παροξύτονα θηλυκό -η
-- [[γνώμη]] μακρά παραλήγουσα -- [[βελόνη]] βραχεία παραλήγουσα
-- δεν υπάρχουν προπαροξύτονα (λόγο της μακράς λήγουσας)
-- check [[λόχμη]] (γπ2=αισι ν2=1)
-- ===============================================================================
export['γνώμη'] = function(frame) -- [[Πρότυπο:grc-κλίση-'γνώμη']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
-- stems
local stem = {}
-- check [[Ἀθῆναι]]
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- rewrite default stemnumber = 3 (μείον 2)
else
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- override default stemnumber = 3 (μείον 2)
end
args['κλίση'] = '1'
args['θηλ'] = '1'
args['ομάδα'] = 'γνώμη'
-- κατηγορία κλίσης below
stem["θ0"] = m_stems.word0(stem["θ"]) -- γνωμ βελον
stem["θπ"] = m_stems.OxiaToPerispomeni(stem["θ"]) -- γνῶμ
--PLAN: if the accent is on a
-- perispomeni is IMPOSSIBLE (because -η is macron)
-- on a brachy, then, OKSEIA [[βελόνη]], βελόναι / ἀχαιΐνη, ης (ἡ) [ᾰῐν]
-- on a macron, then PERISPOMENI at plural [[γνώμη]], γνῶμαι
-- on a dicrhonon
-- if in a diphthong = macron, get PERISPOMENH Ionic.[[πείνη]] πεῖναι --βλ. και [[πεῖνα]]
-- if ambiguous editor must
-- |δίχρ=β
-- |δίχρ=μ
-- |δίχρ=? unknown prosody + its Category [[βύας]]
-- |δίχρ=αβέβαιο π.χ. [[φλάσκη]]
-- if nothing, give error +its Category
-- 1) if brachy all probalbe and improbable brachy+okseia e.g. [[βελόνη]], βελόναι / ἀχαιΐνη, ης (ἡ) [ᾰῐν]
if mw.ustring.find(stem["θ"], m_data.brachy_oxeia) -- brachy+okseia or vareia
then -- plural keeps OKSEIA
args['κατηγορία κλίσης'] = 'βελόνη'
args['τύπος'] = 'βελόνη'
args['όπως'] = 'βελόνη'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αι"
-- 2) else if macron+okseia or diphtong
elseif mw.ustring.find(stem["θ"], m_data.macron_oxeia) -- macron+okseia or vareia
then -- plural singular gets perispomeni
args['κατηγορία κλίσης'] = 'γνώμη'
args['τύπος'] = 'γνώμη'
args['όπως'] = 'γνώμη'
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
args['κατηγ0'] = 'Λέξεις προπερισπώμενες'
args['υποκατ01'] = 'προπερισπώμενα'
args['υποκατ02'] = 'θηλυκά προπερισπώμενα'
else
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
end
args['mod-οπθ'] = stem["θπ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θπ"] args['mod-κπ'] = "αι"
-- vowel+perismpomeni, keep it -- check [[Ἀθῆναι]]
elseif mw.ustring.find(stem["θ"], m_data.vowel_perispomeni) -- macron when vowel+perispomeni
then
args['κατηγορία κλίσης'] = 'γνώμη'
args['τύπος'] = 'γνώμη'
args['όπως'] = 'γνώμη'
args['κατηγ0'] = 'Λέξεις προπερισπώμενες'
args['υποκατ01'] = 'προπερισπώμενα'
args['υποκατ02'] = 'θηλυκά προπερισπώμενα'
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αι"
-- 3) -- elsif find ambiguous dichronon(+okseia, dialytics included) but except in diphthongs (not dialytics)
elseif mw.ustring.find(stem["θ"], m_data.dichronon_oxeia) -- dicrhronon+okseia or vareia
then
-- if diphthongs
if mw.ustring.find(stem["θ"], m_data.diphthong_tonos) -- diphthong+tonos (okseia, vareia, perispomeni) not dialytics ΐῒῗΰῢῧ
then -- plural perispomeni
args['κατηγορία κλίσης'] = 'γνώμη'
args['τύπος'] = 'γνώμη'
args['όπως'] = 'γνώμη'
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
args['κατηγ0'] = 'Λέξεις προπερισπώμενες'
args['υποκατ01'] = 'προπερισπώμενα'
args['υποκατ02'] = 'θηλυκά προπερισπώμενα'
else
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
end
args['mod-οπθ'] = stem["θπ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θπ"] args['mod-κπ'] = "αι"
elseif args['δίχρ'] == 'β' -- [[δίκη]] ῐ
then
args['mod-σημ'] = 'Το φωνήεν της παραλήγουσας είναι βραχύ.'
args['κατηγορία κλίσης'] = 'δίκη'
args['τύπος'] = 'δίκη'
args['όπως'] = 'βελόνη'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αι"
elseif args['δίχρ'] == 'μ' -- [[νίκη]]
then
args['mod-σημ'] = 'Το φωνήεν της παραλήγουσας είναι μακρό.'
args['κατηγορία κλίσης'] = 'νίκη'
args['τύπος'] = 'νίκη'
args['όπως'] = 'γνώμη'
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
args['κατηγ0'] = 'Λέξεις προπερισπώμενες'
args['υποκατ01'] = 'προπερισπώμενα'
args['υποκατ02'] = 'θηλυκά προπερισπώμενα'
else
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
end
args['mod-οπθ'] = stem["θπ"] args['mod-οπ'] = "αι"
args['mod-κπθ'] = stem["θπ"] args['mod-κπ'] = "αι"
-- αβέβαιο = assumed brachy especially for Koine e.g. [[φλάσκη]]
elseif args['δίχρ'] == 'αβέβαιο' then
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι" args['mod-οπΛκειμ'] = '*?'
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αι" args['mod-κπΛκειμ'] = '*?'
args['κατηγορία κλίσης'] = 'δίκη'
args['τύπος'] = 'δίκη'
args['όπως'] = 'βελόνη'
args['κατηγ02'] = "Λέξεις με αβέβαιη προσωδία"
args['κατηγ03'] = "Ουσιαστικά που κλίνονται όπως η ομάδα 'γνώμη' με αβέβαιη προσωδία"
args['κατηγ04'] = "Ουσιαστικά που κλίνονται όπως το 'δίκη' με αβέβαιη προσωδία"
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
-- write nothgin nothing
else
args['mod-σημ'] = '* Η προσωδία για το δίχρονο φωνήεν της παραλήγουσας είναι <span style="color:red;">αβέβαιη</span>.<br>Αν είναι βραχύ, ο πληθυντικός οξύνεται. Αν είναι μακρό, περισπάται.'
end
elseif args['δίχρ'] == '?' then
args['τύπος'] = 'γνώμη' -- not '-'
args['όπως'] = 'γνώμη'
args['κατηγ02'] = "Λέξεις με άγνωστη προσωδία"
args['κατηγ03'] = "Ουσιαστικά που κλίνονται όπως η ομάδα 'γνώμη' με άγνωστη προσωδία"
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
-- write nothing
else
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
end
if args['α'] ~= 'εν' and args['α'] ~= 'ενδ' and args['α2'] ~= 'εν' and args['α2'] ~= 'ενδ' then
args['σημ'] = '<span style="color:red;">Δεν</span> υπάρχουν πληροφορίες για την προσωδία<br>του δίχρονου φωνήεντος στην παραλήγουσα.<br><span style="color:red;">Δεν</span> γνωρίζουμε πώς τονίζεται η ονομαστική πληθυντικού.'
args['κατηγορία κλίσης'] = "γνώμη"
args['τύπος'] = '-'
args['όπως'] = 'γνώμη'
end
args['οπΛ'] = '...<span style="color:red;">?</span>...αι' -- LOCKED
args['κπΛ'] = '...<span style="color:red;">?</span>...αι' -- LOCKED
-- if the editor does nothing, ERROR.
elseif args['δίχρ'] ~= 'β' and args['δίχρ'] ~= 'μ' and args['δίχρ'] ~= '?' and args['δίχρ'] ~= 'αβέβαιο'
or (args['δίχρ'] == '' or args['δίχρ'] == nil)
then
return error_dichr(errordischrstring) -- at Module, section errors Check [[ἀμφιλύκη]]
end -- close if |δίχρ=
end -- close if brachy, if macron, if dichronon
-- cases for ALL
-- rewrite all stems: There was a problem for pluralia -- check [[Ἀθῆναι]]
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "η"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = 'ης'
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = "ῃ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "ην"
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "η"
-- οπ above and
if args['λήμμα'] == '-η' then args['mod-οπ'] = "αι" args['mod-κπ'] = "αι" end
args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
-- κπ above
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
return decl(args)
end
-- ======================= 1η κλίση [[περισπωμένη]] =====================================
-- 1η κλίση παροξύτονα θηλυκό --μένη, ουσιαστικοποιημένες μετοχές, substantivized participle fem
-- ===============================================================================
export['περισπωμένη'] = function(frame) -- [[Πρότυπο:grc-κλίση-'περισπωμένη']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- περισπώμεν-ες -- rewrite default stemnumber = 3 (μείον 2)
args['κατηγ0'] = 'Λέξεις προπαροξύτονες'
args['υποκατ01'] = 'προπαροξύτονα'
args['υποκατ02'] = 'θηλυκά προπαροξύτονα'
else
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- περισπωμέν-η
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
end
stem["θ0"] = m_stems.word0(stem["θ"]) -- περισπωμεν
stem["θ1"] = m_stems.word1(stem["θ0"]) -- περισπωμέν
stem["θ2"] = m_stems.word2(stem["θ0"]) -- περισπώμεν
args['κλίση'] = '1'
args['θηλ'] = '1'
args['κατηγορία κλίσης'] = 'περισπωμένη'
args['τύπος'] = 'περισπωμένη'
args['όπως'] = 'περισπωμένη'
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "η"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = 'ης'
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = "ῃ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "ην"
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "η"
args['mod-οπθ'] = stem["θ2"] args['mod-οπ'] = "αι"
args['mod-γπθ'] = stem["θ"] args['mod-γπ'] = "ων"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
args['mod-κπθ'] = stem["θ2"] args['mod-κπ'] = "αι"
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
return decl(args)
end
-- ======================= 1η κλίση [[ποιητής]] ===================================== --
export['ποιητής'] = function(frame) -- [[Πρότυπο:grc-κλίση-'ποιητής']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or '' --do not change
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
-- stem is DEFAULT -- singular=plural. Default stem ok. minus 2 letters, args['μείον'] = 2 (stemnumber = 3)
local stem = {}
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3)
args['κλίση'] = '1'
args['αρσ'] = '1'
args['κατηγορία κλίσης'] = 'ποιητής'
args['τύπος'] = 'ποιητής'
args['όπως'] = 'ποιητής'
args['κατηγ0'] = 'Λέξεις οξύτονες'
args['υποκατ01'] = 'οξύτονα'
args['υποκατ02'] = 'αρσενικά οξύτονα'
-- no need to rewrite the stem
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ής"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = 'οῦ'
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ῇ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "ήν"
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "ά" args['mod-κε+'] = "ᾰ́"
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αί"
args['mod-γπθ'] = stem["θ"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αῖς"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "άς" args['mod-απ+'] = "ᾱ́ς"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αί"
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "ά" args['mod-οδ+'] = "ᾱ́"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αῖν"
return decl(args)
end
-- EDITOR_MUST_DEFINE δίχρ=
-- groups στρατιώτης * Ἀτρείδης = PLUS SUPERcat [[:Κατηγορία:Ουσιαστικά που κλίνονται όπως τα -ης (αρχαία ελληνικά)]]
-- ================ 1η κλίση [[στρατιώτης]]/[[τοξότης]]& [[Ἀτρείδης]]/[[Κρονίδης]] ========================
--[=[
-- κλητική σε -ᾰ κατηγορία κλίσης στρατιώτης οπθ ΠΕΡΙΣΠΩΜΕΝΗ [[στρατιῶται]]
-- τοξότης οπθ ΟΞΕΙΑ και τα δίχρονα βραχέα -- και -της, + εθνικά -πώλης, -ώνης -άρχης, -μέτρης, -τρίβης
-- κλητική σε -η ομάαδα Ἀτρείδης -- Ἀτρείδης οπθ ΠΕΡΙΣΠΩΜΕΝΗ [[Ἀτρεῖδαι]] -- Κρονίδης οπθ ΟΞΕΙΑ
-- ΑΓΝΩΣΤΟ ΔΙΧΡΟΝΟ ? [[:Κατηγορία:Λέξεις με άγνωστη προσωδία (αρχαία ελληνικά)]]
]=]--
-- =================================================================================
export['στρατιώτης'] = function(frame) -- [[Πρότυπο:grc-κλίση-'στρατιώτης']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" ) -- αφαίρεση κενών στην αρχή και στο τέλος. Υπάρχει σε όλα τα Module.
else lemma = args['λήμμα']
end
-- stem is DEFAULT -- singular=plural. Default stem ok. minus 2 letters, args['μείον'] = 2 (stemnumber = 3)
-- but i write it, to have a clear view the whole word
-- ## ΕΚΚΡΕΜΟΤΗΤΑ για pluralia παροξύτονα ή προπερισπώμενα
local stem = {}
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- στρατιώτ
stem["θ0"] = m_stems.word0(stem["θ"]) -- στρατιωτ
stem["θ1"] = m_stems.word1(stem["θ0"]) -- στρατιώτ
stem["θ1ο"] = m_stems.PerispomeniToOxia(stem["θ"]) -- if I am at the plural page στρατιῶται,
-- -εῖδαι and wish to show full table
-- no,... there is no condiction for it. Better write λήμμα=στρατιώτης
stem["θ1π"] = m_stems.OxiaToPerispomeni(stem["θ"]) -- στρατιῶτ
-- args['ομάδα'] = 'στρατιώτης' -- see blow 2 groups
args['κλίση'] = '1'
args['αρσ'] = '1'
args['υποκατ0'] = 'που κλίνονται όπως τα -ης' -- supergroup
-- accent
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
if mw.ustring.find(stem["θ"], m_data.vowel_perispomeni) -- vowel+perispomeni
then
args['κατηγ0'] = 'Λέξεις προπερισπώμενες'
args['υποκατ01'] = 'προπερισπώμενα'
args['υποκατ02'] = 'αρσενικά προπερισπώμενα'
if mw.ustring.find(args['λήμμα'], 'εῖδαι$') then
args['υποκατ03'] = 'που λήγουν σε -εῖδαι'
end
else
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'αρσενικά παροξύτονα'
end
else -- singular always paroxytone
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'αρσενικά παροξύτονα'
-- Για χρήση καταλόγου στη Μορφολογία, ονομάτων που λήγουν σε [[-είδης]]
if mw.ustring.find(args['λήμμα'], 'είδης$') then
args['υποκατ03'] = 'που λήγουν σε -είδης'
end
end
-- Control proparoxytones: there are NO προπαροξύτονα (λήγουσα = μακρά)
-- ................
-- cases κε, οπ need to be written AFTER all conditions
-- common cases for ALL
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ης"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = 'ου'
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = 'ῃ'
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = 'ην'
-- κεθ, κε DO NOT WRITE HERE. Write UNDER the conditions for οπθ
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αι" -- οπθ
args['mod-γπθ'] = stem["θ"] args['mod-γπθ'] = stem["θ0"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αις"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ας" args['mod-απ+'] = "ᾱς"
-- args['mod-κπθ'] = args['mod-οπθ'] cf οπθ
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = args['mod-οπ'] -- same as nom κπ = οπ above
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "α" args['mod-οδ+'] = "ᾱ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αιν"
-- οπθ:
-- ===================== define accented syllable as macron, brachy or ambiguous
-- It works, only when i write here, and cannot with args['λήμμα']
-- DO NOT WRITE THIS HERE prosody = ""
-- brachy+oxia/varia
if mw.ustring.find(stem["θ"], m_data.brachy_oxeia) then prosody = 'βραχύ' end -- brachy+okseia or vareia
-- macron
if mw.ustring.find(args['λήμμα'], m_data.vowel_perispomeni) -- any vowel+perispomeni
or mw.ustring.find(args['λήμμα'], m_data.macron_oxeia) -- marcon+okseia or vareia
then
prosody = 'μακρό'
end
-- ambiguous dicrhona α ι υ Return: unknown
if mw.ustring.find(args['λήμμα'], m_data.dichronon_oxeia) -- dichronon+okseia or vareia -- all ambiguous accented (NOT perispomeni, NOT subscript iota)
then
--but not in diphthong
if mw.ustring.find(args['λήμμα'], m_data.diphthong_tonos) -- diphthong+tonos (okseia, vareia, perispomeni) not dialytics ΐῒῗΰῢῧ
then prosody = 'μακρό'
else
-- standard brachy
if mw.ustring.find(args['λήμμα'], 'ίδης') or mw.ustring.find(args['λήμμα'], 'ίδαι') -- [[Κρονίδης]] but not diphthongs like [[Ἀτρείδης]]
or mw.ustring.find(args['λήμμα'], 'ΐδης') or mw.ustring.find(args['λήμμα'], 'ΐδαι') -- ?
-- more? is -άδης always brachy
then
prosody = 'βραχύ'
else
prosody = 'άγνωστο'
end
end
end
-- ================ define vocative singular
if mw.ustring.find(args['λήμμα'], 'της$') or mw.ustring.find(args['λήμμα'], 'ται$') -- ### check if there are irrelevant words
or args['εθν'] == '1' -- ethnic names Πέρσης, Σκύθης
-- add pluralsa, if declension is at the plural page
-- or args['λήμμα'] == 'Πέρσης' or args['λήμμα'] == 'Πέρσαι' -- as male name, vocative Πέρση
or args['λήμμα'] == 'Σκύθης' or args['λήμμα'] == 'Σκύθαι' -- @Bailly2020: ῠ = οἱ Σκύθαι
or mw.ustring.find(args['λήμμα'], 'άρχης$') or mw.ustring.find(args['λήμμα'], 'άρχαι$') -- brachy ά
or mw.ustring.find(args['λήμμα'], 'μέτρης$') or mw.ustring.find(args['λήμμα'], 'μέτραι$')
or mw.ustring.find(args['λήμμα'], 'πώλης$') or mw.ustring.find(args['λήμμα'], 'πῶλαι$')
or mw.ustring.find(args['λήμμα'], 'τρίβης$') or mw.ustring.find(args['λήμμα'], 'τρίβαι$') -- brachy ι
or mw.ustring.find(args['λήμμα'], 'ώνης$') or mw.ustring.find(args['λήμμα'], 'ῶναι$')
-- is there more?
then
voc = 'alpha'
args['ομάδα'] = 'στρατιώτης'
else
voc = 'eta'
args['ομάδα'] = 'Ἀτρείδης'
end
if prosody == 'βραχύ' then
args['mod-οπθ'] = stem["θ"]
args['mod-κπθ'] = stem["θ"]
end
if prosody == 'μακρό' then
args['mod-οπθ'] = stem["θ1π"]
args['mod-κπθ'] = stem["θ1π"]
end -- check pluralia with |α=πλ
if prosody == 'άγνωστο' then
if args['δίχρ'] == 'β'
or mw.ustring.find(args['λήμμα'], 'άρχης$') or mw.ustring.find(args['λήμμα'], 'άρχαι$') -- brachy ά
or mw.ustring.find(args['λήμμα'], 'τρίβης$') or mw.ustring.find(args['λήμμα'], 'τρίβαι$') -- brachy ι
-- fix -ίδης NOT in diphthong [[Κρονίδης]]
then
prosody = 'βραχύ' -- get the Categories in Appendix check [[γυμνασιάρχης]]
args['mod-οπθ'] = stem["θ"] -- brachy
args['mod-κπθ'] = stem["θ"]
args['mod-σημ'] = 'Το δίχρονο φωνήεν της παραλήγουσας είναι βραχύ.'
elseif args['δίχρ'] == 'μ' then
prosody = 'μακρό' -- get the Categories in Appendix check [[πολίτης]]
args['mod-οπθ'] = stem["θ1π"] -- macron -- check pluralia with |α=πλ
args['mod-κπθ'] = stem["θ1π"]
args['mod-σημ'] = 'Το δίχρονο φωνήεν της παραλήγουσας είναι μακρό.'
-- no info from dictionaries
elseif args['δίχρ'] == '?' then
args['mod-οπθ'] = args['mod-οπΛ']
args['mod-οπ'] = args['mod-οπΛ']
args['οπΛ'] = '...<span style="color:red;">?</span>...αι' -- LOCKED
args['mod-κπθ'] = args['mod-κπΛ']
args['mod-κπ'] = args['mod-κπΛ']
args['κπΛ'] = '...<span style="color:red;">?</span>...αι' -- DO NOT WRITE args['οπΛ'] -- check [[ταυροκαθάπτης]]
-- if args['α'] ~= 'εν' and args['α'] ~= 'ενδ' and args['α2'] ~= 'εν' and args['α2'] ~= 'ενδ' then
args['σημ'] = '<span style="color:red;">Δεν</span> υπάρχουν πληροφορίες για την προσωδία<br>του δίχρονου φωνήεντος στην παραλήγουσα ώστε να γίνει σωστά ο τονισμός.'
-- end
-- args['όπως'] = -- see at vocative
args['κατηγορία κλίσης'] = "στρατιώτης"
args['τύπος'] = '-'
args['κατηγ02'] = "Λέξεις με άγνωστη προσωδία"
args['κατηγ03'] = "Ουσιαστικά που κλίνονται όπως η ομάδα 'στρατιώτης' με άγνωστη προσωδία"
-- if the editor does nothing, ERROR.
elseif args['δίχρ'] ~= 'β' and args['δίχρ'] ~= 'μ' and args['δίχρ'] ~= '?'
or (args['δίχρ'] == '' or args['δίχρ'] == nil)
then
return error_dichr(errordichrstring) -- cf error fucntions at Module
end -- close if ?
end -- close unknown prosody
-- write here condictions for vocative singular
-- args['κε'] = ""
if voc == 'alpha' then
-- EXCEPTION is locked
if args['λήμμα'] == 'δεσπότης' or args['λήμμα'] == 'δεσπόται' then
args['κεθ'] = 'δέσποτ'
args['κε'] = "α"
args['κε+'] = "ᾰ"
args['εξ'] = '1'
args['κεΛκειμ'] = "<sup>*</sup>"
args['σημ'] = '* Εξαίρεση κλητικής ενικού με αναβιβασμό του τόνου.'
args['κατηγορία κλίσης'] = 'τοξότης'
args['τύπος'] = 'τοξότης'
args['όπως'] = 'τοξότης'
else -- cannot put end here. Must continue with else -- check [[ταυροκαθάπτης]]
if args['δίχρ'] == '?' then
args['κατηγορία κλίσης'] = 'στρατιώτης'
args['-'] = "στρατιώτης" -- need. check [[ταυροκαθάπτης]]
args['όπως'] = 'στρατιώτης'
args['mod-κεθ'] = args['mod-κεΛ']
args['mod-κε'] = args['mod-κεΛ']
args['κεΛ'] = '...<span style="color:red;">?</span>...ᾰ' -- LOCKED
args['παράρτημα'] = '[[Παράρτημα:Ουσιαστικά (αρχαία ελληνικά)/1|1η κλίση]]'
.. ", ομάδα «[[:Κατηγορία:Ουσιαστικά που κλίνονται όπως η ομάδα 'στρατιώτης' (αρχαία ελληνικά)|στρατιώτης]]» - "
.. '[[Παράρτημα:Ουσιαστικά (αρχαία ελληνικά)|<span title="Παράρτημα:Ουσιαστικά (αρχαία)">Παράρτημα:Ουσιαστικά</span>]]'
else
args['mod-κε'] = "α" args['mod-κε+'] = "ᾰ"
args['mod-κεθ'] = args['mod-οπθ']
if prosody == 'βραχύ' then
args['κατηγορία κλίσης'] = 'τοξότης'
args['τύπος'] = 'τοξότης'
args['όπως'] = 'τοξότης'
elseif prosody == 'μακρό' then
args['κατηγορία κλίσης'] = 'στρατιώτης'
args['τύπος'] = 'στρατιώτης'
args['όπως'] = 'στρατιώτης'
end
end -- close if ?
end -- close δέσποτα
else -- eta vocative singular
args['mod-κε'] = "η" args['mod-κε+'] = "η" -- write again ke+
args['mod-κεθ'] = stem["θ1"] -- and stem["θ1ο"] pluaralia like Ἀτρεῖδαι
if prosody == 'βραχύ' then
args['κατηγορία κλίσης'] = 'Κρονίδης'
args['τύπος'] = 'Κρονίδης'
args['όπως'] = 'Κρονίδης'
elseif prosody == 'μακρό' then
args['κατηγορία κλίσης'] = 'Ἀτρείδης'
args['τύπος'] = 'Ἀτρείδης'
args['όπως'] = 'Ἀτρείδης'
elseif prosody == 'άγνωστο' then
args['κατηγορία κλίσης'] = 'Ἀτρείδης'
args['τύπος'] = '-'
args['όπως'] = 'Ἀτρείδης'
args['παράρτημα'] = '[[Παράρτημα:Ουσιαστικά (αρχαία ελληνικά)/1|1η κλίση]]'
.. ", ομάδα «[[:Κατηγορία:Ουσιαστικά που κλίνονται όπως η ομάδα 'Ἀτρείδης' (αρχαία ελληνικά)|Ἀτρείδης]]» - "
.. '[[Παράρτημα:Ουσιαστικά (αρχαία ελληνικά)|<span title="Παράρτημα:Ουσιαστικά (αρχαία)">Παράρτημα:Ουσιαστικά</span>]]'
end
end
return decl(args)
end -- close στρατιώτης
-- --------------------------ΣΥΝΗΡΗΜΕΝΑ CONTRACTED ----------------------------------- --
-- ======================= 1η κλίση συνηρημένο ? -άα (Ναυσικάα, ενικός) - [[μνᾶ]] ===================================== --
-- f.linkcontrol & f.create_link used here
-- ΕΚΚΡΕΜΟΤΗΤΑ ?? να βρεθεί λέξη με -άα + ᾶ (με ενικό και με πληθυντικό)
-- LSJ: always contracted in Att. / Ion. nom. pl. μνέαι acc. pl. μνέας μνέ[ας] but acc. sg. μνῆν Herod. gen. μνῆς gen. pl. μνέων nom. pl. μνέες f.l. for μνέαι in Luc. Syr.D. 48:—
export['μνα'] = function(frame)-- [[Πρότυπο:grc-κλίση-'μνα']] = μνᾶ
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" )
else lemma = args['λήμμα']
end
args['κλίση'] = '1'
args['θηλ'] = '1'
args['ομάδα'] = 'Ναυσικάα μνᾶ'
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
if mw.ustring.find(args['λήμμα'], 'άαι$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-4)
args['κατηγορία κλίσης'] = 'Ναυσικάα'
args['τύπος'] = 'Ναυσικάα'
args['όπως'] = 'Ναυσικάα'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
else -- (not -άαι but -αῖ)
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3)
args['κατηγορία κλίσης'] = 'μνᾶ'
args['τύπος'] = 'μνᾶ'
args['όπως'] = 'μνᾶ'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'θηλυκά περισπώμενα'
end
else --singular
if mw.ustring.find(args['λήμμα'], 'άα$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- -άα
args['κατηγορία κλίσης'] = 'Ναυσικάα'
args['τύπος'] = 'Ναυσικάα'
args['όπως'] = 'Ναυσικάα'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
else -- (not -άα but -ᾶ)
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- -ᾶ
args['κατηγορία κλίσης'] = 'μνᾶ'
args['τύπος'] = 'μνᾶ'
args['όπως'] = 'μνᾶ'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'θηλυκά περισπώμενα'
end
end
-- only uncontracted, omit contracted
if args['σνρ'] == '-' or args ['ασυν'] == 'μόνο' then
if args ['ασυν'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'Ναυσικάα μνᾶ' μόνο ασυναίρετα"
args['mod-σημ'] = 'Μόνο ασυναίρετο.'
end
args['mod-οεΛ'] = create_link(stem["θ"] .."άα" .. "", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color(""))
args['mod-γεΛ'] = create_link(stem["θ"] .."άα" .. "ς", stem_color(stem["θ"]) .. infix_color("αᾱ") .. ending_color("ς"))
args['mod-δεΛ'] = linkcontrol3((stem["θ"]), "ά", "ᾳ")
args['mod-αεΛ'] = create_link(stem["θ"] .."άα" .. "ν", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color("ν"))
args['mod-κεΛ'] = create_link(stem["θ"] .."άα" .. "", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color(""))
args['mod-οπΛ'] = linkcontrol3((stem["θ"]), "ά", "αι")
args['mod-γπΛ'] = linkcontrol3((stem["θ"]), "ά", "ῶν")
args['mod-δπΛ'] = linkcontrol3((stem["θ"]), "ά", "αις")
args['mod-απΛ'] = create_link(stem["θ"] .."άα" .. "ς", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color("ς"))
args['mod-κπΛ'] = linkcontrol3((stem["θ"]), "ά", "αι")
args['mod-οδΛ'] = create_link(stem["θ"] .."άα" .. "", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color(""))
args['mod-γδΛ'] = linkcontrol3((stem["θ"]), "ά", "αιν")
end
-- uncontracted & contracted follows >
if args['ασυν'] ~= '-' and args ['σνρ'] ~= '-' and args['ασυν'] ~= 'μόνο' and args ['σνρ'] ~= 'μόνο' then
args['mod-οεΛκειμ1'] = create_link(stem["θ"] .."άα" .. "", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color("")) .. ' > '
args['mod-γεΛκειμ1'] = create_link(stem["θ"] .."άα" .. "ς", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color("ς")) .. ' > '
args['mod-δεΛκειμ1'] = linkcontrol3((stem["θ"]), "ά", "ᾳ") .. ' > '
args['mod-αεΛκειμ1'] = create_link(stem["θ"] .."άα" .. "ν", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color("ν")) .. ' > '
args['mod-κεΛκειμ1'] = create_link(stem["θ"] .."άα" .. "", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color("")) .. ' > '
args['mod-οπΛκειμ1'] = linkcontrol3((stem["θ"]), "ά", "αι") .. ' > '
args['mod-γπΛκειμ1'] = linkcontrol3((stem["θ"]), "α", "ῶν") .. ' > '
args['mod-δπΛκειμ1'] = linkcontrol3((stem["θ"]), "ά", "αις") .. ' > '
args['mod-απΛκειμ1'] = create_link(stem["θ"] .."άα" .. "ς", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color("ς")) .. ' > '
args['mod-κπΛκειμ1'] = linkcontrol3((stem["θ"]), "ά", "αι") .. ' > '
args['mod-οδΛκειμ1'] = create_link(stem["θ"] .."άα" .. "", stem_color(stem["θ"]) .. infix_color("άᾱ") .. ending_color("")) .. ' > '
args['mod-γδΛκειμ1'] = linkcontrol3((stem["θ"]), "ά", "αιν") .. ' > '
end
-- contracted or both
if (args['ασυν'] == '-' or args ['σνρ'] == 'μόνο' or args['σνρ'] == '' or args['σνρ'] == nil) and args['ασυν'] ~= 'μόνο' then
if args ['σνρ'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'Ναυσικάα μνᾶ' μόνο συνηρημένα"
args['mod-σημ'] = 'Μόνο συνηρημένο.'
end
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ᾶ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ᾶς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = "ᾷ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "ᾶν"
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "ᾶ"
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αῖ"
args['mod-γπθ'] = stem["θ"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αῖς"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ᾶς"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αῖ"
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "ᾶ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αῖν"
end
return decl(args)
end
-- ======================= 1η κλίση συνηρημένο [[συκέα]]/[[συκῆ]] ===================================== --
-- f.linkcontrol & f.create_link used here
export['συκή'] = function(frame) -- [[Πρότυπο:grc-κλίση-'συκή']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" )
else lemma = args['λήμμα']
end
args['κλίση'] = '1'
args['θηλ'] = '1'
args['ομάδα'] = 'συκέα συκῆ'
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
if mw.ustring.find(args['λήμμα'], 'έαι$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-4)
args['κατηγορία κλίσης'] = 'συκέα'
args['τύπος'] = 'συκέα'
args['όπως'] = 'συκέα'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
else -- (not -έαι but -αῖ)
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3)
args['κατηγορία κλίσης'] = 'συκῆ'
args['τύπος'] = 'συκῆ'
args['όπως'] = 'συκῆ'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'θηλυκά περισπώμενα'
end
else --singular
if mw.ustring.find(args['λήμμα'], 'έα$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- -έα
args['κατηγορία κλίσης'] = 'συκέα'
args['τύπος'] = 'συκέα'
args['όπως'] = 'συκέα'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
else -- (not -έα but -ῆ)
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- -ῆ
args['κατηγορία κλίσης'] = 'συκῆ'
args['τύπος'] = 'συκῆ'
args['όπως'] = 'συκῆ'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'θηλυκά περισπώμενα'
end
end
-- only uncontracted, omit contracted
if args['σνρ'] == '-' or args ['ασυν'] == 'μόνο' then
if args ['ασυν'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'συκέα συκῆ' μόνο ασυναίρετα"
args['mod-σημ'] = 'Μόνο ασυναίρετο.'
end
args['mod-οεΛ'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color(""))
args['mod-γεΛ'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς"))
args['mod-δεΛ'] = linkcontrol3((stem["θ"]), "έ", "ᾳ")
args['mod-αεΛ'] = create_link(stem["θ"] .."έα" .. "ν", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ν"))
args['mod-κεΛ'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color(""))
args['mod-οπΛ'] = linkcontrol3((stem["θ"]), "έ", "αι")
args['mod-γπΛ'] = linkcontrol3((stem["θ"]), "ε", "ῶν")
args['mod-δπΛ'] = linkcontrol3((stem["θ"]), "έ", "αις")
args['mod-απΛ'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς"))
args['mod-κπΛ'] = linkcontrol3((stem["θ"]), "έ", "αι")
args['mod-οδΛ'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color(""))
args['mod-γδΛ'] = linkcontrol3((stem["θ"]), "έ", "αιν")
end
-- uncontracted & contracted follows >
if args['ασυν'] ~= '-' and args ['σνρ'] ~= '-' and args['ασυν'] ~= 'μόνο' and args ['σνρ'] ~= 'μόνο' then
args['mod-οεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("")) .. ' > '
args['mod-γεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς")) .. ' > '
args['mod-δεΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "ᾳ") .. ' > '
args['mod-αεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ν", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ν")) .. ' > '
args['mod-κεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("")) .. ' > '
args['mod-οπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αι") .. ' > '
args['mod-γπΛκειμ1'] = linkcontrol3((stem["θ"]), "ε", "ῶν") .. ' > '
args['mod-δπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αις") .. ' > '
args['mod-απΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς")) .. ' > '
args['mod-κπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αι") .. ' > '
args['mod-οδΛκειμ1'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("")) .. ' > '
args['mod-γδΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αιν") .. ' > '
end
-- contracted or both
if (args['ασυν'] == '-' or args ['σνρ'] == 'μόνο' or args['σνρ'] == '' or args['σνρ'] == nil) and args['ασυν'] ~= 'μόνο' then
if args ['σνρ'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'συκέα συκῆ' μόνο συνηρημένα"
args['mod-σημ'] = 'Μόνο συνηρημένο.'
end
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ῆ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ῆς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = "ῇ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "ῆν"
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "ῆ"
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αῖ"
args['mod-γπθ'] = stem["θ"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αῖς"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ᾶς"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αῖ"
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "ᾶ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αῖν"
end
return decl(args)
end
-- ======================= 1η κλίση συνηρημένο [[[γαλέη]]/[[γαλῆ]] ===================================== --
-- f.linkcontrol & f.create_link used here
export['γαλή'] = function(frame) -- [[Πρότυπο:grc-κλίση-'γαλή']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" )
else lemma = args['λήμμα']
end
args['κλίση'] = '1'
args['θηλ'] = '1'
args['ομάδα'] = 'γαλέη γαλῆ'
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
if mw.ustring.find(args['λήμμα'], 'έαι$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-4)
args['κατηγορία κλίσης'] = 'γαλέη'
args['τύπος'] = 'γαλέη'
args['όπως'] = 'γαλέη'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
else -- (not -έαι but -αῖ)
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3)
args['κατηγορία κλίσης'] = 'γαλῆ'
args['τύπος'] = 'γαλῆ'
args['όπως'] = 'γαλῆ'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'θηλυκά περισπώμενα'
end
else --singular
if mw.ustring.find(args['λήμμα'], 'έη$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- -έη
args['κατηγορία κλίσης'] = 'γαλέη'
args['τύπος'] = 'γαλέη'
args['όπως'] = 'γαλέη'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'θηλυκά παροξύτονα'
else -- (not -έη but -ῆ)
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-2) -- -ῆ
args['κατηγορία κλίσης'] = 'γαλῆ'
args['τύπος'] = 'γαλῆ'
args['όπως'] = 'γαλῆ'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'θηλυκά περισπώμενα'
end
end
-- only uncontracted, omit contracted
if args['σνρ'] == '-' or args ['ασυν'] == 'μόνο' then
if args ['ασυν'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'γαλέη γαλῆ' μόνο ασυναίρετα"
args['mod-σημ'] = 'Μόνο ασυναίρετο.'
end
args['mod-οεΛ'] = linkcontrol3((stem["θ"]), "έη", "")
args['mod-γεΛ'] = linkcontrol3((stem["θ"]), "έη", "ς")
args['mod-δεΛ'] = linkcontrol3((stem["θ"]), "έ", "ῃ")
args['mod-αεΛ'] = linkcontrol3((stem["θ"]), "έη", "ν")
args['mod-κεΛ'] = linkcontrol3((stem["θ"]), "έη", "")
args['mod-οπΛ'] = linkcontrol3((stem["θ"]), "έ", "αι")
args['mod-γπΛ'] = linkcontrol3((stem["θ"]), "ε", "ῶν")
args['mod-δπΛ'] = linkcontrol3((stem["θ"]), "έ", "αις")
args['mod-απΛ'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς"))
args['mod-κπΛ'] = linkcontrol3((stem["θ"]), "έ", "αι")
args['mod-οδΛ'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color(""))
args['mod-γδΛ'] = linkcontrol3((stem["θ"]), "έ", "αιν")
end
-- uncontracted & contracted follows >
if args['ασυν'] ~= '-' and args ['σνρ'] ~= '-' and args['ασυν'] ~= 'μόνο' and args ['σνρ'] ~= 'μόνο' then
args['mod-οεΛκειμ1'] = linkcontrol3((stem["θ"]), "έη", "") .. ' > '
args['mod-γεΛκειμ1'] = linkcontrol3((stem["θ"]), "έη", "ς") .. ' > '
args['mod-δεΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "ῃ") .. ' > '
args['mod-αεΛκειμ1'] = linkcontrol3((stem["θ"]), "έη", "ν") .. ' > '
args['mod-κεΛκειμ1'] = linkcontrol3((stem["θ"]), "έη", "") .. ' > '
args['mod-οπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αι") .. ' > '
args['mod-γπΛκειμ1'] = linkcontrol3((stem["θ"]), "ε", "ῶν") .. ' > '
args['mod-δπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αις") .. ' > '
args['mod-απΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς")) .. ' > '
args['mod-κπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αι") .. ' > '
args['mod-οδΛκειμ1'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("")) .. ' > '
args['mod-γδΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αιν") .. ' > '
end
-- contracted or both
if (args['ασυν'] == '-' or args ['σνρ'] == 'μόνο' or args['σνρ'] == '' or args['σνρ'] == nil) and args['ασυν'] ~= 'μόνο' then
if args ['σνρ'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'γαλέη γαλῆ' μόνο συνηρημένα"
args['mod-σημ'] = 'Μόνο συνηρημένο.'
end
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ῆ"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "ῆς"
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = "ῇ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "ῆν"
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "ῆ"
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αῖ"
args['mod-γπθ'] = stem["θ"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αῖς"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ᾶς"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αῖ"
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "ᾶ"
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αῖν"
end
return decl(args)
end
-- ======================= 1η κλίση συνηρημένο [[[Βορέας]]/[[Βορρᾶς]] ===================================== --
-- f.linkcontrol & f.create_link used here
-- 1η κλίση Βορ-έας, αττική διάλεκτος: Βορρᾶς Is this unique?
export['βορράς'] = function(frame) -- [[Πρότυπο:grc-κλίση-'βορράς']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" )
else lemma = args['λήμμα']
end
args['κλίση'] = '1'
args['αρσ'] = '1'
args['ομάδα'] = 'Βορέας Βορρᾶς'
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
if mw.ustring.find(args['λήμμα'], 'έαι$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-4)
args['κατηγορία κλίσης'] = 'Βορέας'
args['τύπος'] = 'Βορέας'
args['όπως'] = 'Βορέας'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'αρσενικά παροξύτονα'
else -- (not -έαι but -αῖ) ??
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3)
args['κατηγορία κλίσης'] = 'Βορρᾶς'
args['τύπος'] = 'Βορρᾶς'
args['όπως'] = 'Βορρᾶς'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'αρσενικά περισπώμενα'
end
else --singular
if mw.ustring.find(args['λήμμα'], 'έας$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-4) -- -έας
args['κατηγορία κλίσης'] = 'Βορέας'
args['τύπος'] = 'Βορέας'
args['όπως'] = 'Βορέας'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'αρσενικά παροξύτονα'
else -- (not -έας but -ᾶς)
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-4) -- -Βορ-ρ-ᾶς
args['κατηγορία κλίσης'] = 'Βορρᾶς'
args['τύπος'] = 'Βορρᾶς'
args['όπως'] = 'Βορρᾶς'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'αρσενικά περισπώμενα'
end
end
-- only uncontracted, omit contracted
if args['σνρ'] == '-' or args ['ασυν'] == 'μόνο' then
if args ['ασυν'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'Βορέας Βορρᾶς' μόνο ασυναίρετα"
args['mod-σημ'] = 'Μόνο ασυναίρετο.'
end
args['mod-οεΛ'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς"))
args['mod-γεΛ'] = linkcontrol3((stem["θ"]), "έ", "ου")
args['mod-δεΛ'] = linkcontrol3((stem["θ"]), "έ", "ᾳ")
args['mod-αεΛ'] = create_link(stem["θ"] .."έα" .. "ν", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ν"))
args['mod-κεΛ'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color(""))
args['mod-οπΛ'] = linkcontrol3((stem["θ"]), "έ", "αι")
args['mod-γπΛ'] = linkcontrol3((stem["θ"]), "έ", "ων")
args['mod-δπΛ'] = linkcontrol3((stem["θ"]), "έ", "αις")
args['mod-απΛ'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς"))
args['mod-κπΛ'] = linkcontrol3((stem["θ"]), "έ", "αι")
args['mod-οδΛ'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color(""))
args['mod-γδΛ'] = linkcontrol3((stem["θ"]), "έ", "αιν")
end
-- uncontracted & contracted follows >
if args['ασυν'] ~= '-' and args ['σνρ'] ~= '-' and args['ασυν'] ~= 'μόνο' and args ['σνρ'] ~= 'μόνο' then
args['mod-οεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς")) .. ' > '
args['mod-γεΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "ου") .. ' > '
args['mod-δεΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "ᾳ") .. ' > '
args['mod-αεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ν", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ν")) .. ' > '
args['mod-κεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("")) .. ' > '
args['mod-οπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αι") .. ' > '
args['mod-γπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "ων") .. ' > '
args['mod-δπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αις") .. ' > '
args['mod-απΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς")) .. ' > '
args['mod-κπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αι") .. ' > '
args['mod-οδΛκειμ1'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("")) .. ' > '
args['mod-γδΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αιν") .. ' > '
end
-- contracted or both
if (args['ασυν'] == '-' or args ['σνρ'] == 'μόνο' or args['σνρ'] == '' or args['σνρ'] == nil) and args['ασυν'] ~= 'μόνο' then
if args ['σνρ'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'Βορέας Βορρᾶς' μόνο συνηρημένα"
args['mod-σημ'] = 'Μόνο συνηρημένο.'
end
args['mod-οεθ'] = stem["θ"] .. 'ρ' args['mod-οε'] = "ᾶς"
args['mod-γεθ'] = stem["θ"] .. 'ρ' args['mod-γε'] = "ᾶ"
-- !!! & Βορροῦ, DGE, http://www.perseus.tufts.edu/hopper/text?doc=Perseus%3Atext%3A1999.04.0007%3Apart%3D2%3Achapter%3D13%3Asection%3D14
-- args['mod-γε2θ'] = stem["θ"] .. 'ρ' args['mod-γε2'] = "οῦ"
args['mod-γεΛκειμ'] = "<br> & " .. create_link(stem["θ"] .. 'ρ' .. "οῦ", stem_color(stem["θ"]) .. infix_color("ρ") .. ending_color("οῦ"))
args['mod-δεθ'] = stem["θ"] .. 'ρ' args['mod-δε'] = "ᾷ"
args['mod-αεθ'] = stem["θ"] .. 'ρ' args['mod-αε'] = "ᾶν"
args['mod-κεθ'] = stem["θ"] .. 'ρ' args['mod-κε'] = "ᾶ"
-- plurals ????
args['mod-οπθ'] = stem["θ"] .. 'ρ' args['mod-οπ'] = "αῖ" -- Βορρεῖς ?? plu. nom. -εῖς Alciphr.1.1.1
args['mod-γπθ'] = stem["θ"] .. 'ρ' args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] .. 'ρ' args['mod-δπ'] = "οῖς"
args['mod-απθ'] = stem["θ"] .. 'ρ' args['mod-απ'] = "ᾶς"
args['mod-κπθ'] = stem["θ"] .. 'ρ' args['mod-κπ'] = "αῖ"
args['mod-οδθ'] = stem["θ"] .. 'ρ' args['mod-οδ'] = "ᾶ" -- ######## CHECK dual ?????
args['mod-γδθ'] = stem["θ"] .. 'ρ' args['mod-γδ'] = "αῖν" -- ######## CHECK dual ?????
end
return decl(args)
end
-- ?? Ερμέας is not contracting, it is just another form.So I use comma, not >
-- Dictionary has only a redirect from Ἑρμέας
-- Ikonomou Grammar: έχουν και μετά τη συναίρεση τις καταλήξεις των ασυναίρετων τύπων. Μόνο το εα στον ενικό το συναιρούν σε η
-- ======================= 1η κλίση συνηρημένο [[Ἑρμέας]]/[[Ἑρμῆς]] ===================================== --
-- f.linkcontrol & f.create_link used here
export['Ερμής'] = function(frame) -- [[Πρότυπο:grc-κλίση-'Ερμής']]
local args = frame:getParent().args
-- lemma
local lemma = args['λήμμα'] or ''
PAGENAME = mw.title.getCurrentTitle().text
if lemma == '' or lemma == nil then args['λήμμα'] = PAGENAME:match( "^%s*(.-)%s*$" )
else lemma = args['λήμμα']
end
args['κλίση'] = '1'
args['αρσ'] = '1'
args['ομάδα'] = 'Ἑρμέας Ἑρμῆς'
-- stems
local stem = {}
if args['α'] == "πλ" or args['α2'] == "πλ" or args['α'] == "πλδ" or args['α2'] == "πλδ" then
if mw.ustring.find(args['λήμμα'], 'έαι$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-4)
args['κατηγορία κλίσης'] = 'Ἑρμέας'
args['τύπος'] = 'Ἑρμέας'
args['όπως'] = 'Ἑρμέας'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'αρσενικά παροξύτονα'
else -- (not -έαι but -αῖ) ??
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3)
args['κατηγορία κλίσης'] = 'Ἑρμῆς'
args['τύπος'] = 'Ἑρμῆς'
args['όπως'] = 'Ἑρμῆς'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'αρσενικά περισπώμενα'
end
else --singular
if mw.ustring.find(args['λήμμα'], 'έας$') then -- $ = at the end
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-4) -- -έας
args['κατηγορία κλίσης'] = 'Ἑρμέας'
args['τύπος'] = 'Ἑρμέας'
args['όπως'] = 'Ἑρμέας'
args['κατηγ0'] = 'Λέξεις παροξύτονες'
args['υποκατ01'] = 'παροξύτονα'
args['υποκατ02'] = 'αρσενικά παροξύτονα'
else -- (not -έας but -ῆς)
stem["θ"] = mw.ustring.sub(args['λήμμα'],1,-3) -- -Ἑρμ-ῆς
args['κατηγορία κλίσης'] = 'Ἑρμῆς'
args['τύπος'] = 'Ἑρμῆς'
args['όπως'] = 'Ἑρμῆς'
args['κατηγ0'] = 'Λέξεις περισπώμενες'
args['υποκατ01'] = 'περισπώμενα'
args['υποκατ02'] = 'αρσενικά περισπώμενα'
end
end
-- only uncontracted, omit contracted
if args['σνρ'] == '-' or args ['ασυν'] == 'μόνο' then
if args ['ασυν'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'Ἑρμέας Ἑρμῆς' μόνο ασυναίρετα"
args['mod-σημ'] = 'Μόνο ασυναίρετο.'
end
args['mod-οεΛ'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς"))
args['mod-γεΛ'] = linkcontrol3((stem["θ"]), "έ", "ου")
args['mod-δεΛ'] = linkcontrol3((stem["θ"]), "έ", "ᾳ")
args['mod-αεΛ'] = create_link(stem["θ"] .."έα" .. "ν", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ν"))
args['mod-κεΛ'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color(""))
args['mod-οπΛ'] = linkcontrol3((stem["θ"]), "έ", "αι")
args['mod-γπΛ'] = linkcontrol3((stem["θ"]), "έ", "ων")
args['mod-δπΛ'] = linkcontrol3((stem["θ"]), "έ", "αις")
args['mod-απΛ'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς"))
args['mod-κπΛ'] = linkcontrol3((stem["θ"]), "έ", "αι")
args['mod-οδΛ'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color(""))
args['mod-γδΛ'] = linkcontrol3((stem["θ"]), "έ", "αιν")
end
-- uncontracted & contracted follows >
if args['ασυν'] ~= '-' and args ['σνρ'] ~= '-' and args['ασυν'] ~= 'μόνο' and args ['σνρ'] ~= 'μόνο' then
args['mod-οεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς")) .. ', '
args['mod-γεΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "ου") .. ' > '
args['mod-δεΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "ᾳ") .. ', '
args['mod-αεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ν", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ν")) .. ', '
args['mod-κεΛκειμ1'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("")) .. ', '
args['mod-οπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αι") .. ' > '
args['mod-γπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "ων") .. ' > '
args['mod-δπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αις") .. ' > '
args['mod-απΛκειμ1'] = create_link(stem["θ"] .."έα" .. "ς", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("ς")) .. ' > '
args['mod-κπΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αι") .. ' > '
args['mod-οδΛκειμ1'] = create_link(stem["θ"] .."έα" .. "", stem_color(stem["θ"]) .. infix_color("έᾱ") .. ending_color("")) .. ' > '
args['mod-γδΛκειμ1'] = linkcontrol3((stem["θ"]), "έ", "αιν") .. ' > '
end
-- contracted or both
if (args['ασυν'] == '-' or args ['σνρ'] == 'μόνο' or args['σνρ'] == '' or args['σνρ'] == nil) and args['ασυν'] ~= 'μόνο' then
if args ['σνρ'] == 'μόνο' then
args['υποκατ04'] = "που κλίνονται όπως η ομάδα 'Ἑρμέας Ἑρμῆς' μόνο συνηρημένα"
args['mod-σημ'] = 'Μόνο συνηρημένο.'
end
args['mod-οεθ'] = stem["θ"] args['mod-οε'] = "ῆς"
args['mod-γεθ'] = stem["θ"] args['mod-γε'] = "οῦ" -- ???????? 2η?
args['mod-δεθ'] = stem["θ"] args['mod-δε'] = "ῇ"
args['mod-αεθ'] = stem["θ"] args['mod-αε'] = "ῆν"
args['mod-αεΛκειμ'] = "<br> & " .. create_link(stem["θ"] .."ῆ", stem_color(stem["θ"]) .. ending_color("ῆ"))
args['mod-κεθ'] = stem["θ"] args['mod-κε'] = "ῆ"
args['mod-οπθ'] = stem["θ"] args['mod-οπ'] = "αῖ"
args['mod-γπθ'] = stem["θ"] args['mod-γπ'] = "ῶν"
args['mod-δπθ'] = stem["θ"] args['mod-δπ'] = "αῖς"
args['mod-απθ'] = stem["θ"] args['mod-απ'] = "ᾶς"
args['mod-κπθ'] = stem["θ"] args['mod-κπ'] = "αῖ"
args['mod-οδθ'] = stem["θ"] args['mod-οδ'] = "ᾶ" -- ??????? Why not η?
args['mod-γδθ'] = stem["θ"] args['mod-γδ'] = "αῖν"
end
return decl(args)
end
return export