Вікісловник
ukwiktionary
https://uk.wiktionary.org/wiki/%D0%93%D0%BE%D0%BB%D0%BE%D0%B2%D0%BD%D0%B0_%D1%81%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B0
MediaWiki 1.47.0-wmf.12
case-sensitive
Медіа
Спеціальна
Обговорення
Користувач
Обговорення користувача
Вікісловник
Обговорення Вікісловника
Файл
Обговорення файлу
MediaWiki
Обговорення MediaWiki
Шаблон
Обговорення шаблону
Довідка
Обговорення довідки
Категорія
Обговорення категорії
Додаток
Обговорення додатка
Індекс
Обговорення індексу
Субтитри
Обговорення субтитрів
Модуль
Обговорення модуля
Подія
Обговорення події
ключ
0
5059
574072
572635
2026-07-23T20:12:14Z
Albedo
18
574072
wikitext
text/x-wiki
{{Cf|Ключ}}
{{=uk=}}
{{Омоніми|uk|3}}
== ключ I ==
=== Морфосинтаксичні ознаки ===
{{імен uk 4b m una|склади=клю́ч|клю́ч|ключ}}
{{морфо-uk|ключ|}}
=== Вимова ===
* {{transcriptions-uk|клю́ч|ключі́}}
* {{audio2|Uk-ключ.ogg|прослухати вимову}}
* {{транскрипція|кл`уч}}
=== Семантичні властивості ===
{{іл|Железарница Скопје 26.jpg}}
{{іл|Estoque (5454885098).jpg}}
==== Значення ====
# [[предмет|Предмет]], призначений для відкривання та закривання [[замок|замка]]. {{семантика|синоніми=|антоніми=|гіпероніми=|гіпоніми=}} {{приклад2|текст=||джерело=}}
{{списки семантичних зв’язків}}
==== Холоніми ====
#
==== Мероніми ====
#
===Усталені та термінологічні словосполучення, фразеологізми ===
*
==== Колокації ====
====Прислів'я та приказки ====
===Споріднені слова===
{{спорідн|
|згруб=
|змп=
|власні назви=
|прізвища=
|топоніми= Ключ <!-- На Львівщині рятувальники відшукали туристку, яка заблукала біля гори Ключ -->
|іменники=
|прикметники=
|дієприкметники=
|дієслова=
|прислівники=
}}
=== Етимологія ===
Від {{етимологія|uk}}
=== Переклад ===
{{переклад
|en= {{t|en|key}}, {{t|en|passport|}}
|ca= {{t|ca|clau|f}}
|fr= {{t|fr|clef|f}}
|it= {{t|it|chiave|f}}
|oc= {{t|oc|clau|f}}
|ru= {{t|ru|ключ|m}}
}}
{{переклад
|en= {{t|en|opener}}, {{позначка|консе́рвний ключ (ніж)}} {{t|en|can opener|}}
}}
{{ds|4|uk}}
{{Категорія|мова=uk|Предметні слова|Пристрої|Замки|||}}
== ключ II ==
===Морфосинтаксичні властивості===
{{імен uk 4b m una|склади={{склади|клю́ч}}|клю́ч|ключ}}
{{морфо-uk|ключ}}
===Вимова===
*{{transcriptions-uk|ключ|ключі}}
*{{audio|Uk-ключ.ogg|прослухати вимову}}
*{{транскрипція|к л' у ч}}
=== Семантичні властивості ===
==== Значення ====
{{семантика|синоніми=|антоніми=|гіпероніми=|гіпоніми=}} {{приклад2|||джерело=}}
{{списки семантичних зв’язків}}
==== Холоніми ====
#
==== Мероніми ====
#
===Усталені та термінологічні словосполучення, фразеологізми ===
*
==== Колокації ====
====Прислів'я та приказки ====
===Споріднені слова===
{{спорідн|
|згруб=
|змп=
|власні назви=
|прізвища=
|топоніми=
|іменники=
|прикметники=
|дієприкметники=
|дієслова=
|прислівники=
}}
=== Етимологія ===
Від {{етимологія|uk}}
=== Переклад ===
{{переклад|
|ar=
|be=
|bg=
|cs=
|crh=
|de=
|ee=
|el=
|en= {{позначка|(про птахи, хмари тощо)}} {{t|en|caravan|}}
}}
== ключ III ==
===Морфосинтаксичні властивості===
{{імен uk 4b m una|склади={{склади|клю́ч}}|клю́ч|ключ}}
{{морфо-uk|ключ}}
=== Вимова ===
* {{transcriptions-uk|клю́ч|ключі́}}
* {{audio|Uk-ключ.ogg|прослухати вимову}}
* {{транскрипція|к л' у ч}}
=== Семантичні властивості ===
==== Значення ====
{{спец.|uk}}
# {{комп.|uk}} {{семантика|синоніми=|антоніми=|гіпероніми=|гіпоніми=ключ-дубліка́т, картка-ключ, підключ}} {{приклад2|||джерело=}}
{{списки семантичних зв’язків}}
==== Холоніми ====
#
==== Мероніми ====
#
===Усталені та термінологічні словосполучення, фразеологізми ===
* [[ключ транзакції]]
* [[ключ шифрування]]
* [[об’єктний ключ]]
* [[ключ секретності]]
* [[ключ шифрування]]
* [[пошуковий ключ]]
* [[ключ пошуку]]
* [[вторинний ключ]]
* [[ключ упорядковування]]
* [[сеансовий ключ]]
* [[криптографічний ключ]]
* [[ключ захисту пам’яті]]
* [[системний ключ]]
* [[неузгіднений ключ]]
* [[ключ параметра]]
* [[сортувальний ключ]]
* [[ключ сортування]]
* [[ключ блокування клавіш]]
* [[ключ до коду]]
* [[зовнішній ключ]]
* [[апаратний ключ]]
* [[аналоговий ключ]]
* [[апаратний ключ]]
* [[вторинний ключ]]
* [[зовнішній ключ]]
* [[ідеальний ключ]]
* [[ключ бази даних]]
* [[ключ доступу]]
* [[ключ запису]]
* [[ключ захисту]]
* [[ключ захисту пам’яті]]
* [[ключ зчитування]]
* [[ключ керування]]
* [[ключ керування з покажчиком невідповідності]]
* [[ключ команди]]
* [[ключ користувача]]
* [[ключ пам’яті]]
* [[ключ параметра]]
* [[ключ пошуку]]
* [[ключ секретності]]
* [[ключ сортування]]
* [[ключ шифрування]]
* [[ключ комутаторний]]
* [[паралельно-послідовний ключ]]
* [[первинний ключ]]
* [[переговорний ключ]]
* [[передавальний ключ]]
* [[потенційний ключ]]
* [[селекторний ключ]]
* [[системний ключ]]
* [[струмовий ключ]]
* [[телеграфний ключ]]
* [[термостабільний ключ]]
* [[транзисторний ключ]]
* [[унікальний ключ]]
* [[частково закритий ключ]]
;елетктроніка
* [[двонапрямлений ключ]]
* [[діодний ключ]]
* [[електронний ключ]]
* [[КМОН-ключ]]
==== Колокації ====
====Прислів'я та приказки ====
===Споріднені слова===
{{спорідн|
|згруб=
|змп=
|власні назви=
|прізвища=
|топоніми=
|іменники=
|прикметники=
|дієприкметники=
|дієслова=
|прислівники=
}}
=== Етимологія ===
Від {{етимологія|uk}}
=== Переклад ===
{{переклад|
|ar=
|be=
|bg=
|cs=
|crh=
|de=
|ee=
|el=
|en=
|ru={{t|ru|ключ}}
}}
=== Джерела ===
* {{ulif|63309}}
* {{ulif|63310}}
{{довжина слова|4|lang=uk}}
<!-- {{categ|Слова, відсутні у ВТССУМ|}} -->
{{Категорія|мова=uk||||||}}
{{=be=|{{PAGENAME}}}}
=== Морфосинтаксичні ознаки ===
{{імен be 4b m una|склади=клю́ч|клю́ч|ключ}}
{{морфо-be|ключ}}
=== Вимова ===
* {{transcription|}}
* {{audio|Be-ключ.ogg|прослухати вимову}}
* {{транскрипція|}}
=== Семантичні властивості ===
==== Значення ====
# {{семантика|синоніми=|антоніми=|гіпероніми=|гіпоніми=}} {{приклад2|||джерело=}}
{{списки семантичних зв’язків}}
==== Холоніми ====
#
==== Мероніми ====
#
===Усталені та термінологічні словосполучення, фразеологізми ===
*
==== Колокації ====
====Прислів'я та приказки ====
===Споріднені слова===
{{спорідн|
|згруб=
|змп=
|власні назви=
|прізвища=
|топоніми=
|іменники=
|прикметники=
|дієприкметники=
|дієслова=
|прислівники=
}}
=== Етимологія ===
Від {{етимологія|be}}
=== Джерела ===
{{довжина слова|4|lang=be}}
{{Категорія|мова=be||||||}}
{{=ru=|{{PAGENAME}}}}
=== Морфосинтаксичні ознаки ===
{{імен ru 4b m una|склади=клю́ч|клю́ч|ключ}}
{{морфо-ru|ключ}}
=== Вимова ===
* {{transcription|}}
* {{audio|Ru-ключ.ogg|прослухати вимову}}
* {{транскрипція|}}
=== Семантичні властивості ===
==== Значення ====
# {{семантика|синоніми=|антоніми=|гіпероніми=|гіпоніми=}} {{приклад2|||джерело=}}
{{списки семантичних зв’язків}}
==== Холоніми ====
#
==== Мероніми ====
#
===Усталені та термінологічні словосполучення, фразеологізми ===
*
==== Колокації ====
====Прислів'я та приказки ====
===Споріднені слова===
{{спорідн|
|згруб=
|змп=
|власні назви=
|прізвища=
|топоніми=
|іменники=
|прикметники=
|дієприкметники=
|дієслова=
|прислівники=
}}
=== Етимологія ===
Від {{етимологія|ru}}
=== Джерела ===
{{довжина слова|4|lang=ru}}
{{Категорія|мова=ru||||||}}
{{multilang|3}}
{{unfinished|uk|s=1|e=1}}
[[Категорія:Болванки/uk]]
otwacj75ycb3bl2rv616qigoosqu5hj
Лугове
0
25621
574074
483538
2026-07-23T20:27:46Z
Albedo
18
574074
wikitext
text/x-wiki
{{Wikipedia}}
{{=uk=}}
===Морфосинтаксичні ознаки===
{{імен uk |склади=||}}
{{морфо-uk|}}
=== Вимова ===
* {{transcription|}}
* {{audio|Uk-Лугове.ogg|прослухати вимову}}
* {{транскрипція|}}
===Семантичні властивості===
==== Значення ====
# назва кількох населених пунктів в [[Україна|Україні]] {{приклад|}}
==== Синоніми ====
#
==== Гіпероніми ====
#
==== Гіпоніми ====
#
=== Усталені словосполучення, фразеологізми ===
*
===Споріднені слова===
* зменш.-пестливі форми:
* іменники:
* прикметники:
* дієслова:
* прислівники:
===Етимологія===
Від {{етимологія|}}
===Переклад===
{{переклад
|af=
|ain=
|art=
|ast=
|ba=
|be=
|bg=
|br=
|bs=
|ca=
|chu=
|co=
|cs=
|da=
|de=
|el=
|en=
|eo=
|es=
|et=
|fi=
|fo=
|fr=
|gl=
|gv=
|hr=
|hu=
|hy=
|ia=
|io=
|is=
|it=
|ja=
|ka=
|kim=
|kk=
|ko=
|krl=
|ky=
|la=
|lt=
|lv=
|mdf=
|mn=
|nah=
|nl=
|no=
|os=
|pl=
|ppol=
|pt=
|ru=
|sk=
|sl=
|slovio-c=
|slovio-l=
|sq=
|sr-c=
|sr-l=
|sv=
|tk=
|tr=
|tt=
|uz=
|vi=
|vro=
|zh=
|zh-cn=
|zh-tw=
}}
=== Джерела ===
* {{ulif|1681635}}
{{довжина слова|6|lang=uk}}
{{Категорія|мова=uk|Топоніми|Села України|ьвівська область|||}}
ni2gh4xl4tmyfwfz1bjk78lyar0sug0
574075
574074
2026-07-23T20:33:32Z
Albedo
18
574075
wikitext
text/x-wiki
{{=uk=}}
===Морфосинтаксичні ознаки===
{{імен uk (п 1b)-city n una|склади={{склади|Лугове}}|Лугов}}
{{морфо-uk|Луг|-ов|+е}}
=== Вимова ===
* {{transcription|}}
* {{audio|Uk-Лугове.ogg|прослухати вимову}}
* {{транскрипція|}}
===Семантичні властивості===
==== Значення ====
# назва кількох населених пунктів в [[Україна|Україні]] {{приклад|}}
==== Синоніми ====
#
==== Гіпероніми ====
#
==== Гіпоніми ====
#
===Усталені та термінологічні словосполучення, фразеологізми ===
*
==== Колокації ====
====Прислів’я та приказки ====
===Споріднені слова===
{{спорідн|
|згруб=
|змп=
|власні назви=
|прізвища=
|топоніми=
|іменники=
|прикметники=
|дієприкметники=
|дієслова=
|прислівники=
}}<!-- <noinclude>[[Категорія:Шаблони споріднених слів/uk]]</noinclude> -->
=== Етимологія ===
Від {{етимологія:|uk}}
=== Переклад ===
{{переклад|
|ar=
|be=
|bg=
|bs=
|cs=
|crh=
|chu.cyr=
|chu.glag=
|de=
|ee=
|el=
|en=
|eo=
|es=
|fi=
|fr=
|gag=
|he=
|hr=
|hsb=
|hu=
|hy=
|it=
|jct=
|kdr=
|ko=
|la=
|lt=
|lv=
|mk=
|pl=
|pr=
|pt=
|ro=
|ru=
|sk=
|sl=
|slovio-c=
|slovio-l=
|sr-c=
|sr-l=
|sv=
|tr=
|yi=
|zh=
}}
=== Джерела ===
* {{ulif|1681635}}
{{довжина слова|6|lang=uk}}
{{Wikipedia}}
{{Категорія|мова=uk|Топоніми|Села України|Львівська область|||}}
3xtmgwu3elouegft94yf96ysmitb0gu
εἰμί
0
90615
574071
574065
2026-07-23T18:32:30Z
It-is-Truly-Meet
32804
/* Вимова */
574071
wikitext
text/x-wiki
{{=grc=}}
===Морфологічні та синтаксичні властивості===
{{час-grc
|час=теперішній
|форма=a
|залог=
|act-1-s-ind=εἰμῐ́
|act-1-s-sub=[[ὦ]]
|act-1-s-opt=[[εἴην]]
|act-2-s-ind=[[εἶ]]
|act-2-s-sub=[[ᾖς]]
|act-2-s-opt=[[εἴης]]
|act-2-s-imp=[[ἴσθι]]
|act-3-s-ind=[[ἐστί]]([[ἐστίν|ν]])
|act-3-s-sub=[[ᾖ]]
|act-3-s-opt=[[εἴην]]
|act-3-s-imp=[[ἔστω]]
|act-2-d-ind=[[ἐστόν]]
|act-2-d-sub=[[ἦτον]]
|act-2-d-opt=[[εἶτον]]
|act-2-d-imp=[[ἔστον]]
|act-3-d-ind=[[ἐστόν]]
|act-3-d-sub=[[ἦτον]]
|act-3-d-opt=[[εἴτην]]
|act-3-d-imp=[[ἔστων]]
|act-1-p-ind=[[ἐσμέν]]
|act-1-p-sub=[[ὦμεν]]
|act-1-p-opt=[[εἶμεν]]
|act-2-p-ind=[[ἐστέ]]
|act-2-p-sub=[[ἦτε]]
|act-2-p-opt=[[εἶτε]]
|act-2-p-imp=[[ἔστε]]
|act-3-p-ind=[[εἰσί]]([[εἰσίν|ν]])
|act-3-p-sub=[[ὦσι]]([[ὦσιν|ν]])
|act-3-p-opt=[[εἶεν]]
|act-3-p-imp=[[ἔστωσαν]]
|infin=[[εἶναι]]
|particip=[[ὤν]], [[οὖσα]], [[ὄν]]
}}
{{час-grc
|час=імперфект
|залог=m
|act-1-s-ind=[[ἦ]]([[ἦν|ν]])
|mp-1-s-ind=[[ἤμην]]
|act-2-s-ind=[[ἦσθα]]
|mp-2-s-ind=[[ἔσο]]
|act-3-s-ind=[[ἦν]]
|act-2-d-ind=[[ἦστον]]
|act-3-d-ind=[[ἤστην]]
|act-1-p-ind=[[ἦμεν]]
|mp-1-p-ind=[[ἤμεθα]]
|act-2-p-ind=[[ἦτε]]
|act-3-p-ind=[[ἦσαν]]
}}
{{час-grc
|час=майбутній
|форма=m-p
|залог=m
|mp-1-s-ind=[[ἔσομαι]]
|mp-1-s-opt=[[ἐσοίμην]]
|mp-2-s-ind=[[ἔσῃ]], [[ἔσει]]
|mp-2-s-opt=[[ἔσοιο]]
|mp-3-s-ind=[[ἔσται]], [[ἔσεται]]
|mp-3-s-opt=[[ἔσοιτο]]
|mp-2-d-ind=[[ἔσεσθον]]
|mp-2-d-opt=[[ἔσοισθον]]
|mp-3-d-ind=[[ἔσεσθον]]
|mp-3-d-opt=[[ἐσοίσθην]]
|mp-1-p-ind=[[ἐσόμεθα]]
|mp-1-p-opt=[[ἐσοίμεθα]]
|mp-2-p-ind=[[ἔσεσθε]]
|mp-2-p-opt=[[ἔσοισθε]]
|mp-3-p-ind=[[ἔσονται]]
|mp-3-p-opt=[[ἔσοιντο]]
|infin-mp=[[ἔσεσθαι]]
|particip-mp=[[ἐσόμενος]], [[ἐσομένη]], [[ἐσόμενον]]
}}
{{дієсл grc|εἰμί|склади={{склади|εἰ|μί}}}}
{{морфо||ἐσ|μῐ́}}
===Вимова===
{{transcription-grc|εἰμί}}
===Семантичні властивості===
====Значення====
# ([[зв'язка]]) [[бути]] [з [[називним]] [[відмінком]]: «чимось», «кимось»] {{приклад|Εἶπεν αὐτοῖς ὁ Ἰησοῦς· Ἐγώ εἰμι ὁ ἄρτος τῆς ζωῆς· ὁ ἐρχόμενος πρὸς ἐμὲ οὐ μὴ πεινάσῃ, καὶ ὁ πιστεύων εἰς ἐμὲ οὐ μὴ διψήσει πώποτε. — Ісус же сказав їм: Я хліб життя. Хто до Мене приходить, не голодуватиме він, а хто вірує в Мене, ніколи не прагнутиме.|6:35|Книга Івана}}
# (про людей) [[жити]], [[існувати]]
# (3-я особа, безособова форма) можливо [з [[інфінітивом]]: «що…»]
====Синоніми====
# [[ἔξεστι]]
# [[γίγνομαι]]
====Антоніми====
# [[θνῄσκω]]
====Примітка щодо вживання====
* Чи не плутати з [[εἶμι]] («йти»).
* Використовується [[ἐγενόμην]] як [[аорист]] і [[γέγονα]] як [[перфектне]], від [[γίγνομαι]] (гігномай, «виникати»).
* Усі форми цього акта. виявить. (крім [[εἶ]]) є енклітиками.
===Похідні слова===
{{похідні-блок
|дієслова=ἔπειμι, ἔνειμι, συνένειμι, προένειμι, ὑπένειμι
}}
===Нащадки===
* [[Візантійська грецька]]: [[εἶμαι]] (ди там для подальших нащадків)
* [[Маріупольська грецька]]: [[и́ми]]
===Етимологія===
З [[праеллінського]] ''[[*ehmi]]'', з [[праіндоєвропейського]] ''[[*h₁ésmi]]'' («[[бути]], [[існувати]]»).
Споріднено [[давньоанглійському]] ''[[eom]]'' (від якого походить [[англійське]] ''[[am]]''), [[латинському]] ''[[sum]]'', [[санскритському]] [[अस्मि॑]] (''асмі''), [[праслов'янському]] [[esmь]], [[давньовірменському]] [[եմ]] (''ем'') і так далі. Док. у статті [[*h₁es-]] («бути, існувати»).
===Бібліографія===
* бути давньогрецькою (до 1453 року) - ''Російсько-давньогрецький (до 1453 року) словник'' | Hrvatski. (2026). Hrvatski.Com; Hrvatski. https://glosbe.com/ru/grc/%d0%b1%d1%8b%d1%82%d1%8chttps://glosbe.com/ru/grc/%d0%b1%d1%8b%d1%82%d1%8c
* G1510 - eimi - Грецький лексикон Стронга (MGNT. (2026). ''G1510 - eimi - Грецький лексикон Стронга (MGNT)''. Біблія з блакитними літерами. https://www.blueletterbible.org/lexicon/g1510/mgnt/mgnt/0-1/
* εἰμί. (н.д.). Logeion; Чиказький університет. Отримано 9 липня 2026 р. з https://logeion.uchicago.edu/%CE%B5%E1%BC%B0%CE%BC%CE%AF
l3b2qum9xw6zw5x8shkah9w79ap3ayg
574078
574071
2026-07-23T22:34:59Z
It-is-Truly-Meet
32804
/* Похідні слова */
574078
wikitext
text/x-wiki
{{=grc=}}
===Морфологічні та синтаксичні властивості===
{{час-grc
|час=теперішній
|форма=a
|залог=
|act-1-s-ind=εἰμῐ́
|act-1-s-sub=[[ὦ]]
|act-1-s-opt=[[εἴην]]
|act-2-s-ind=[[εἶ]]
|act-2-s-sub=[[ᾖς]]
|act-2-s-opt=[[εἴης]]
|act-2-s-imp=[[ἴσθι]]
|act-3-s-ind=[[ἐστί]]([[ἐστίν|ν]])
|act-3-s-sub=[[ᾖ]]
|act-3-s-opt=[[εἴην]]
|act-3-s-imp=[[ἔστω]]
|act-2-d-ind=[[ἐστόν]]
|act-2-d-sub=[[ἦτον]]
|act-2-d-opt=[[εἶτον]]
|act-2-d-imp=[[ἔστον]]
|act-3-d-ind=[[ἐστόν]]
|act-3-d-sub=[[ἦτον]]
|act-3-d-opt=[[εἴτην]]
|act-3-d-imp=[[ἔστων]]
|act-1-p-ind=[[ἐσμέν]]
|act-1-p-sub=[[ὦμεν]]
|act-1-p-opt=[[εἶμεν]]
|act-2-p-ind=[[ἐστέ]]
|act-2-p-sub=[[ἦτε]]
|act-2-p-opt=[[εἶτε]]
|act-2-p-imp=[[ἔστε]]
|act-3-p-ind=[[εἰσί]]([[εἰσίν|ν]])
|act-3-p-sub=[[ὦσι]]([[ὦσιν|ν]])
|act-3-p-opt=[[εἶεν]]
|act-3-p-imp=[[ἔστωσαν]]
|infin=[[εἶναι]]
|particip=[[ὤν]], [[οὖσα]], [[ὄν]]
}}
{{час-grc
|час=імперфект
|залог=m
|act-1-s-ind=[[ἦ]]([[ἦν|ν]])
|mp-1-s-ind=[[ἤμην]]
|act-2-s-ind=[[ἦσθα]]
|mp-2-s-ind=[[ἔσο]]
|act-3-s-ind=[[ἦν]]
|act-2-d-ind=[[ἦστον]]
|act-3-d-ind=[[ἤστην]]
|act-1-p-ind=[[ἦμεν]]
|mp-1-p-ind=[[ἤμεθα]]
|act-2-p-ind=[[ἦτε]]
|act-3-p-ind=[[ἦσαν]]
}}
{{час-grc
|час=майбутній
|форма=m-p
|залог=m
|mp-1-s-ind=[[ἔσομαι]]
|mp-1-s-opt=[[ἐσοίμην]]
|mp-2-s-ind=[[ἔσῃ]], [[ἔσει]]
|mp-2-s-opt=[[ἔσοιο]]
|mp-3-s-ind=[[ἔσται]], [[ἔσεται]]
|mp-3-s-opt=[[ἔσοιτο]]
|mp-2-d-ind=[[ἔσεσθον]]
|mp-2-d-opt=[[ἔσοισθον]]
|mp-3-d-ind=[[ἔσεσθον]]
|mp-3-d-opt=[[ἐσοίσθην]]
|mp-1-p-ind=[[ἐσόμεθα]]
|mp-1-p-opt=[[ἐσοίμεθα]]
|mp-2-p-ind=[[ἔσεσθε]]
|mp-2-p-opt=[[ἔσοισθε]]
|mp-3-p-ind=[[ἔσονται]]
|mp-3-p-opt=[[ἔσοιντο]]
|infin-mp=[[ἔσεσθαι]]
|particip-mp=[[ἐσόμενος]], [[ἐσομένη]], [[ἐσόμενον]]
}}
{{дієсл grc|εἰμί|склади={{склади|εἰ|μί}}}}
{{морфо||ἐσ|μῐ́}}
===Вимова===
{{transcription-grc|εἰμί}}
===Семантичні властивості===
====Значення====
# ([[зв'язка]]) [[бути]] [з [[називним]] [[відмінком]]: «чимось», «кимось»] {{приклад|Εἶπεν αὐτοῖς ὁ Ἰησοῦς· Ἐγώ εἰμι ὁ ἄρτος τῆς ζωῆς· ὁ ἐρχόμενος πρὸς ἐμὲ οὐ μὴ πεινάσῃ, καὶ ὁ πιστεύων εἰς ἐμὲ οὐ μὴ διψήσει πώποτε. — Ісус же сказав їм: Я хліб життя. Хто до Мене приходить, не голодуватиме він, а хто вірує в Мене, ніколи не прагнутиме.|6:35|Книга Івана}}
# (про людей) [[жити]], [[існувати]]
# (3-я особа, безособова форма) можливо [з [[інфінітивом]]: «що…»]
====Синоніми====
# [[ἔξεστι]]
# [[γίγνομαι]]
====Антоніми====
# [[θνῄσκω]]
====Примітка щодо вживання====
* Чи не плутати з [[εἶμι]] («йти»).
* Використовується [[ἐγενόμην]] як [[аорист]] і [[γέγονα]] як [[перфектне]], від [[γίγνομαι]] (гігномай, «виникати»).
* Усі форми цього акта. виявить. (крім [[εἶ]]) є енклітиками.
===Похідні слова===
{{спорідн
|дієслова=ἔπειμι, ἔνειμι, συνένειμι, προένειμι, ὑπένειμι
}}
===Нащадки===
* [[Візантійська грецька]]: [[εἶμαι]] (ди там для подальших нащадків)
* [[Маріупольська грецька]]: [[и́ми]]
===Етимологія===
З [[праеллінського]] ''[[*ehmi]]'', з [[праіндоєвропейського]] ''[[*h₁ésmi]]'' («[[бути]], [[існувати]]»).
Споріднено [[давньоанглійському]] ''[[eom]]'' (від якого походить [[англійське]] ''[[am]]''), [[латинському]] ''[[sum]]'', [[санскритському]] [[अस्मि॑]] (''асмі''), [[праслов'янському]] [[esmь]], [[давньовірменському]] [[եմ]] (''ем'') і так далі. Док. у статті [[*h₁es-]] («бути, існувати»).
===Бібліографія===
* бути давньогрецькою (до 1453 року) - ''Російсько-давньогрецький (до 1453 року) словник'' | Hrvatski. (2026). Hrvatski.Com; Hrvatski. https://glosbe.com/ru/grc/%d0%b1%d1%8b%d1%82%d1%8chttps://glosbe.com/ru/grc/%d0%b1%d1%8b%d1%82%d1%8c
* G1510 - eimi - Грецький лексикон Стронга (MGNT. (2026). ''G1510 - eimi - Грецький лексикон Стронга (MGNT)''. Біблія з блакитними літерами. https://www.blueletterbible.org/lexicon/g1510/mgnt/mgnt/0-1/
* εἰμί. (н.д.). Logeion; Чиказький університет. Отримано 9 липня 2026 р. з https://logeion.uchicago.edu/%CE%B5%E1%BC%B0%CE%BC%CE%AF
eni5cwo94556yl8wrujmqxx89q5r9vm
Шаблон:похідні-блок
10
90632
574068
574064
2026-07-23T17:31:01Z
It-is-Truly-Meet
32804
574068
wikitext
text/x-wiki
{| class="wikitable mw-collapsible {{#if:{{NAMESPACE}}||mw-collapsed}} | Шаблон:похідні-блок| mw-collapsed}}" style="margin: 0 0 0.2em; border-width: 1px"
|style="font-weight: bold; padding-left:5px;" width="100%" |Похідні
|-
|<ul>
<li>{{#if:{{{умласк|}}}
|зменш.-ласк. форми: {{{умласк}}}
}}</li>
<li>{{#if:{{{імена-власні|}}}
|імена власні: {{{імена-власні}}}
}}</li>
<li>{{#if:{{{іменники|}}}
|іменники: {{{іменники}}}
}}</li>
<li>{{#if:{{{прикметники|}}}
|прикметники: {{{прикметники}}}
}}</li>
<li>{{#if:{{{числові|}}}
|числові: {{{числові}}}
}}</li>
<li>{{#if:{{{дієслова|}}}
|дієслова: {{{дієслова}}}
}}</li>
<li>{{#if:{{{прислівники|}}}
|прислівники: {{{прислівники}}}
}}</li>
<li>{{#if:{{{повно|}}}
|повно: {{{повно}}}
}}</li>
</ul>
|}<noinclude>{{doc-inline}}
Таблиця, яка відображає похідні слова.
==Використання==
<pre>
{{похідні-блок
|умласк=
|імена-власні=
|іменники=
|прикметники=
|числові=
|дієслова=
|прислівники=
|повно=
}}
</pre>
{{doc-end}}
[[Категория:Шаблоны словоизменений/grc]]</noinclude>
4z7mwvnntklh3w1cutw9c9etywd632k
574073
574068
2026-07-23T20:14:11Z
Albedo
18
Перенаправлено на [[Шаблон:спорідн]]
574073
wikitext
text/x-wiki
#ПЕРЕНАПРАВЛЕННЯ [[Шаблон:спорідн]]
7kyci020e0qb2ea08zelyd5nci9lxc9
Модуль:transcription-grc
828
90634
574069
2026-07-23T18:30:45Z
It-is-Truly-Meet
32804
Цей код скопійовано з російської вікісловника.
574069
Scribunto
text/plain
local export = {}
local u = require("Module:utils")
local function get_index(tab, item)
for i, v in ipairs(tab) do
if v == item then
return i
end
end
return nil
end
local periods = {'cla', 'koi1', 'koi2', 'byz1', 'byz2'}
local inlinePeriods = {'cla', 'koi2', 'byz2'}
local IPAs = {}
local periodLabels = {['cla']="'''Аттическое произношение'''",
['koi1'] = 'Египетское произношение',
['koi2'] = "'''Койне'''",
['byz1'] = 'Византийское произношение',
['byz2'] = "'''Константинопольское произношение'''",
}
local d1 = '͜'
local d2 = '́'
local d3 = '̀'
local d4 = '᷄'
local d5 = '᷆'
local d6 = '᷇'
local d7 = '̆'
local l = {
[''] = {['end']=true},
[' '] = {['p'] = {['cla'] = ' '}},
['β'] = {['type'] = 'consonant', ['labial'] = true, ['stop'] = true, ['voiced']=true, ['clusters']={['δ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='b', ['koi1']='b', ['koi2']={{"-1=μ", "b" }, 'β'}, ['byz1']={{"-1=μ", "b" }, 'v'}, ['byz2']={{'1=β', ''}, {'-1=μ', 'b'}, 'v'}}},
['γ'] = {['type'] = 'consonant', ['dorsal'] = true, ['stop'] = true, ['voiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['ρ']=true},
['p'] = {['cla']={{'1.dorsal', 'ŋ'}, 'ɡ'}, ['koi1']={{'1.dorsal', 'ŋ'}, 'ɡ'},
['koi2']={{'1.dorsal', 'ŋ'}, 'ɣ'},
['byz1']={{'1.dorsal', {{'1-preFront', 'ɲ'}, 'ŋ'}}, {'0-preFront', {{'-1=γ', 'ɟ'}, 'ʝ'}}, 'ɣ'},
['byz2']={{'1.dorsal', {{'1-preFront', 'ɲ'}, 'ŋ'}}, {'0-preFront', {{'-1=γ', 'ɟ'}, 'ʝ'}}, 'ɣ'}}},
['δ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['voiced']=true, ['clusters']={['ρ']=true},
['p'] = {['cla']='d', ['koi1']='d', ['koi2']='ð', ['byz1']='ð', ['byz2']={{'1=δ', ''}, {'-1=ν', 'd'}, 'ð'}}},
['ζ'] = {['type'] = 'consonant', ['place']='coronal', ['fricative']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='zd', ['koi1']='z', ['koi2']='z', ['byz1']='z', ['byz2']='z'}},
['θ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['unvoiced']=true, ['aspirate']=true, ['clusters']={['ρ']=true},
['p'] = {['cla']='tʰ', ['koi1']='tʰ', ['koi2']='θ', ['byz1']='θ', ['byz2']={{'1=θ', ''}, 'θ'}}},
['κ'] = {['type'] = 'consonant', ['place']='dorsal', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['τ']=true, ['ρ']=true},
['p'] = {['cla']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['koi1']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['koi2']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['byz1']={{'1=κ', ''}, {'1.voiced+1.stop', 'ɡ'}, {'0-preFront', 'c'}, 'k'},
['byz2']={{'1=κ', ''}, {'1.voiced+1.stop', 'ɡ'}, {'0-preFront', 'c'}, 'k'}}},
['λ'] = {['type'] = 'consonant', ['place']='coronal', ['approximant']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='l', ['koi1']='l', ['koi2']='l', ['byz1']='l', ['byz2']={{'1=λ', ''}, 'l'}}},
['μ'] = {['type'] = 'consonant', ['place']='labial', ['nasal']=true, ['voiced']=true, ['clusters']={['ν']=true},
['p'] = {['cla']='m', ['koi1']='m', ['koi2']='m', ['byz1']='m', ['byz2']={{'1=μ/1=β', ''}, 'm'}}},
['ν'] = {['type'] = 'consonant', ['place']='coronal', ['nasal']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='n', ['koi1']='n', ['koi2']='n', ['byz1']='n', ['byz2']={{'1=ν/1=δ', ''}, 'n'}}},
['ξ'] = {['type'] = 'consonant', ['place']='dorsal', ['stop']=true, ['unvoiced']=true, ['sibilate']=true, ['clusters']={},
['p'] = {['cla']='kʰs', ['koi1']='kʰs', ['koi2']='xs', ['byz1']='ks', ['byz2']='ks'}},
['π'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['ρ']=true, ['τ']=true},
['p'] = {['cla']='p', ['koi1']='p', ['koi2']='p', ['byz1']='p', ['byz2']={{'1=π', ''}, 'p'}}},
['ρ'] = {['type'] = 'consonant', ['place']='coronal', ['trill']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']={{'1=ρ/1=ῥ/-1=ρ', 'r̥'}, 'r'}, ['koi1']={{'1=ρ/1=ῥ/-1=ρ', 'r̥'}, 'r'}, ['koi2']='r', ['byz1']='r', ['byz2']={{'1=ρ', ''}, 'r'}}},
['ῥ'] = {['type'] = 'consonant', ['place']='coronal', ['trill']=true, ['voiced']=false, ['clusters']={},
['p'] = {['cla']='r̥', ['koi1']='r̥', ['koi2']='r', ['byz1']='r', ['byz2']={{'1=ρ', ''}, 'r'}}},
['σ'] = {['type'] = 'consonant', ['place']='coronal', ['fricative']=true, ['unvoiced']=true, ['clusters']={['β']=true, ['θ']=true, ['κ']=true, ['μ']=true, ['π']=true, ['τ']=true, ['φ']=true, ['χ']=true, },
['p'] = {['cla']='s', ['koi1']='s', ['koi2']='s', ['byz1']='s', ['byz2']={{'1=σ', ''}, 's'}}},
['τ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['μ']=true, ['ρ']=true},
['p'] = {['cla']='t', ['koi1']='t', ['koi2']='t', ['byz1']='t', ['byz2']={{'1=τ', ''}, 't'}}},
['φ'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['clusters']={['θ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='pʰ', ['koi1']='pʰ', ['koi2']='ɸ', ['byz1']='f', ['byz2']={{'1=φ', ''}, 'f'}}},
['χ'] = {['type'] = 'consonant', ['dorsal']=true, ['stop']=true, ['unvoiced']=true, ['aspirate']=true, ['clusters']={['θ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='kʰ', ['koi1']='kʰ', ['koi2']='x',
['byz1']={{'1=χ', ''}, {'0-preFront', 'ç'}, 'x'},
['byz2']={{'1=χ', ''}, {'0-preFront', 'ç'}, 'x'}}},
['ψ'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['sibilate']=true, ['clusters']={},
['p'] = {['cla']='pʰs', ['koi1']='pʰs', ['koi2']='ɸs', ['byz1']='ps', ['byz2']='ps'}},
['ϝ'] = {['type'] = 'consonant', ['place']='labial', ['approximant']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='w', ['koi1']='', ['koi2']='', ['byz1']='', ['byz2']=''}},
['α'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='a', ['koi1']='a', ['koi2']='a', ['byz1']='a', ['byz2']='a'}},
['ε'] = {['type'] = 'vowel', ['length']='short',
['p'] = {['cla']='e', ['koi1']='ɛ', ['koi2']='e', ['byz1']='e', ['byz2']='e'}},
['η'] = {['type'] = 'vowel', ['length']='long',
['p'] = {['cla']='ɛ', ['koi1']='e', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['ι'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='i', ['koi1']='i', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['ο'] = {['type'] = 'vowel', ['length']='short',
['p'] = {['cla']='o', ['koi1']='o', ['koi2']='o', ['byz1']='o', ['byz2']='o'}},
['υ'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='y', ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['ω'] = {['type'] = 'vowel', ['length']='long',
['p'] = {['cla']='ɔ', ['koi1']='o', ['koi2']='o', ['byz1']='o', ['byz2']='o'}},
['ϊ'] = {['type'] = 'vowel', ['naked']='ι', ['diar']=true},
['ϋ'] = {['type'] = 'vowel', ['naked']='υ', ['diar']=true},
['ἀ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth'},
['ἐ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='smooth'},
['ἠ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth'},
['ἰ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='smooth'},
['ὀ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='smooth'},
['ὐ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='smooth'},
['ὠ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth'},
['ὰ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave'},
['ᾀ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['subi']=true},
['ᾐ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['subi']=true},
['ᾠ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['subi']=true},
['ᾰ'] = {['type'] = 'vowel', ['naked']='α', ['length']='short'},
['ῐ'] = {['type'] = 'vowel', ['naked']='ι', ['length']='short'},
['ῠ'] = {['type'] = 'vowel', ['naked']='υ', ['length']='short'},
['ἁ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='rough'},
['ἑ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='rough'},
['ἡ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='rough'},
['ἱ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='rough'},
['ὁ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='rough'},
['ὑ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='rough'},
['ὡ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='rough'},
['ά'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute'},
['ᾁ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='rough', ['subi']=true},
['ᾑ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='rough', ['subi']=true},
['ᾡ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='rough', ['subi']=true},
['ᾱ'] = {['type'] = 'vowel', ['naked']='α', ['length']='long'},
['ῑ'] = {['type'] = 'vowel', ['naked']='ι', ['length']='long'},
['ῡ'] = {['type'] = 'vowel', ['naked']='υ', ['length']='long'},
['ἂ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['accent']='grave'},
['ἒ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='smooth', ['accent']='grave'},
['ἢ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['accent']='grave'},
['ἲ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='smooth', ['accent']='grave'},
['ὂ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='smooth', ['accent']='grave'},
['ὒ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='smooth', ['accent']='grave'},
['ὢ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['accent']='grave'},
['ὲ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='grave'},
['ᾂ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾒ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾢ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾲ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['subi']=true},
['ῂ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['subi']=true},
['ῒ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave', ['diar']=true},
['ῢ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave', ['diar']=true},
['ῲ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['subi']=true},
['ἃ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['breath']='rough'},
['ἓ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='grave', ['breath']='rough'},
['ἣ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['breath']='rough'},
['ἳ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave', ['breath']='rough'},
['ὃ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='grave', ['breath']='rough'},
['ὓ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave', ['breath']='rough'},
['ὣ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['breath']='rough'},
['έ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute'},
['ᾃ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾓ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾣ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾳ'] = {['type'] = 'vowel', ['naked']='α', ['subi']=true},
['ῃ'] = {['type'] = 'vowel', ['naked']='η', ['subi']=true},
['ΐ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['diar']=true},
['ΰ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['diar']=true},
['ῳ'] = {['type'] = 'vowel', ['naked']='ω', ['subi']=true},
['ἄ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='smooth'},
['ἔ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute', ['breath']='smooth'},
['ἤ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='smooth'},
['ἴ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['breath']='smooth'},
['ὄ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute', ['breath']='smooth'},
['ὔ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['breath']='smooth'},
['ὤ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='smooth'},
['ὴ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave'},
['ᾄ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾔ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾤ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾴ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['subi']=true},
['ῄ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['subi']=true},
['ῴ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['subi']=true},
['ἅ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='rough'},
['ἕ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute', ['breath']='rough'},
['ἥ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='rough'},
['ἵ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['breath']='rough'},
['ὅ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute', ['breath']='rough'},
['ὕ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['breath']='rough'},
['ὥ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='rough'},
['ή'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute'},
['ᾅ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ᾕ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ᾥ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ἆ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='smooth'},
['ἦ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='smooth'},
['ἶ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['breath']='smooth'},
['ὖ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['breath']='smooth'},
['ὦ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='smooth'},
['ὶ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave'},
['ᾆ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾖ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾦ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾶ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum'},
['ῆ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum'},
['ῖ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum'},
['ῦ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum'},
['ῶ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum'},
['ἇ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='rough'},
['ἧ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='rough'},
['ἷ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['breath']='rough'},
['ὗ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['breath']='rough'},
['ὧ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='rough'},
['ί'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute'},
['ᾇ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾗ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾧ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾷ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['subi']=true},
['ῇ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['subi']=true},
['ῗ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['diar']=true},
['ῧ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['diar']=true},
['ῷ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['subi']=true},
['ὸ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='grave'},
['ό'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute'},
['ὺ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave'},
['ύ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute'},
['ὼ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave'},
['ώ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute'},
['αι'] = {['p'] = {['cla'] = {{'1.end', 'a'..d7..d1..'ɪ'..d7}, 'a'..d1..'ɪ'}, ['koi1']='ɛ', ['koi2']='ɛ', ['byz1']='e', ['byz2']='e'}},
['ει'] = {['p'] = {['cla'] = 'e', ['koi1']='i', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['οι'] = {['p'] = {['cla'] = {{'1.end', 'o'..d7..d1..'ɪ'..d7}, 'o'..d1..'ɪ'}, ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['υι'] = {['p'] = {['cla'] = 'y', ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['αυ'] = {['p'] = {['cla'] = 'a'..d1..'ʊ', ['koi1']={{'1.unvoiced', 'aʍ'}, 'aw'},
['koi2']={{'1.unvoiced', 'aɸ'}, 'aβ'}, ['byz1']={{'1.unvoiced', 'af'}, 'av'},
['byz2']={{'1.unvoiced', 'af'}, 'av'}}},
['ευ'] = {['p'] = {['cla'] = 'e'..d1..'ʊ', ['koi1']={{'1.unvoiced', 'eʍ'}, 'ew'},
['koi2']={{'1.unvoiced', 'eɸ'}, 'eβ'}, ['byz1']={{'1.unvoiced', 'ef'}, 'ev'},
['byz2']={{'1.unvoiced', 'ef'}, 'ev'}}},
['ου'] = {['p'] = {['cla'] = 'o', ['koi1']='u', ['koi2']='u', ['byz1']='u', ['byz2']='u'}},
}
local uStart = {['α'] = true, ['ε'] = true, ['ο'] = true}
local iStart = {['α'] = true, ['ε'] = true, ['ο'] = true, ['υ'] = true}
local iCons = {['b']=true, ['ɡ']=true, ['ŋ']=true, ['d']=true, ['z']=true,
['k']=true, ['l']=true, ['m']=true, ['n']=true, ['p']=true, ['r']=true,
['s']=true, ['t']=true, ['β']=true, ['ð']=true, ['ɣ']=true, ['ɸ']=true,
['θ']=true, ['x']=true, ['f']=true, ['v']=true, ['ɟ']=true, ['ʝ']=true,
['c']=true, ['ç']=true}
local iVows = {['a']=true, ['e']=true, ['i']=true, ['o']=true, ['u']=true,
['y']=true, ['ʊ']=true, ['ɪ']=true, ['ɛ']=true, ['ɔ']=true}
local iDias = {[d2]=true, [d3]=true, [d4]=true, [d5]=true, [d6]=true, [d7]=true,
['ʰ']=true, ['ː']=true, ['̥']=true}
local iLiqs = {['r']=true, ['l']=true, ['n']=true}
local iStops = {['b']=true, ['ɡ']=true, ['d']=true, ['k']=true, ['p']=true,
['t']=true, ['β']=true, ['ð']=true, ['ɣ']=true, ['ɸ']=true, ['θ']=true,
['x']=true, ['f']=true}
function export.create(frame)
local title = frame.args[1]
local startPer = frame.args['period']
if startPer then startPer = mw.ustring.lower(startPer) end
if startPer == 'койне' or startPer == 'koine' then
startPer = 'koi2'
elseif startPer == 'конст' then
startPer = 'byz2'
end
if not u.contains(inlinePeriods, startPer) then startPer = nil end
title = mw.ustring.lower(title)
title = mw.ustring.gsub(title, 'ς', 'σ')
title = mw.ustring.gsub(title, 'ῤ', 'ρ')
for i=1, #periods do
IPAs[periods[i]] = {['notes']={}}
end
local length = mw.ustring.len(title)
local x = 1
local letter = ''
local nextLetter = ''
local cla = {}
local alert = false
local naked = ''
local accent = ''
local diphthong = false
local function preFront(which)
local fronts = {['ι']=true, ['η']=true, ['ε']=true}
local nLet = mw.ustring.sub(title, x+1+which, x+1+which)
local nnLet = mw.ustring.sub(title, x+2+which, x+2+which)
if fronts[((l[nLet].naked) or nLet)] then
return true
elseif (nLet == 'a' or nLet == 'ο') and ((l[nnLet].naked or nnLet) == 'ι') then
return true
else
return false
end
end
local function decode(condition)
if mw.ustring.find(condition, '[+/]') then
local sep = mw.ustring.find(condition, "[/+][^/+]*$")
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
if mw.ustring.sub(condition, sep, sep) == '/' then
return decode(chunk1) or decode(chunk2)
elseif mw.ustring.sub(condition, sep, sep) == '+' then
return decode(chunk1) and decode(chunk2)
end
elseif mw.ustring.find(condition, '=') then
local sep = mw.ustring.find(condition, '=')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
local checkLetter
if tonumber(x+chunk1) < 1 then
checkLetter = ''
else
checkLetter = mw.ustring.sub(title, x+chunk1, x+chunk1)
end
return checkLetter == chunk2
elseif mw.ustring.find(condition, '%.') then
local sep = mw.ustring.find(condition, '%.')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
local checkLetter = mw.ustring.sub(title, x+chunk1, x+chunk1)
return l[checkLetter][chunk2]
elseif mw.ustring.find(condition, '%-') then
local sep = mw.ustring.find(condition, '%-')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
if chunk2 == 'preFront' then
return preFront(chunk1)
end
end
end
local function check(p, period)
if type(p) == 'string' then
return p
elseif type(p) == 'table' then
for i = 1, #p do
possP = p[i]
if type(possP) == 'string' then
return possP
elseif type(possP) == 'table' then
rawCondition = possP[1]
rawResult = possP[2]
local condition = decode(rawCondition)
if condition then
if type(rawResult) == 'string' then
return rawResult
else
return check(rawResult, period)
end
end
end
end
end
end
while x <= length do
letter = mw.ustring.sub(title, x, x)
nextLetter = mw.ustring.sub(title, x+1, x+1)
if not l[letter] then
elseif l[letter].type == 'consonant' then
for i = 1, #periods do
period = periods[i]
currentP = l[letter].p[period]
result = check(currentP, period)
table.insert(IPAs[period], result)
end
elseif l[letter].type == 'vowel' then
local diphthong = false
local vCurrent, vForm, vLength;
if iStart[letter] and (l[nextLetter] and l[nextLetter].type == 'vowel' and (nextLetter == 'ι' or (l[nextLetter].naked and l[nextLetter].naked == 'ι' and not l[nextLetter].diar))) then
diphthong = letter..'ι'
elseif uStart[letter] and (l[nextLetter] and l[nextLetter].type == 'vowel' and (nextLetter == 'υ' or (l[nextLetter].naked and l[nextLetter].naked == 'υ' and not l[nextLetter].diar))) then
diphthong = letter..'υ'
end
if diphthong then
vCurrent = nextLetter
vForm = diphthong
vLength = 'long'
x = x + 1
nextLetter = mw.ustring.sub(title, x+1, x+1)
else
vCurrent = letter
vForm = l[letter].naked or letter
vLength = l[vCurrent].length or l[vForm].length
end
for i = 1, #periods do
period = periods[i]
if period == 'cla' then
if l[vCurrent].breath == 'rough' then
table.insert(IPAs['cla'], 'h')
end
elseif period == 'koi1' then
if l[vCurrent].breath == 'rough' then
table.insert(IPAs['koi1'], '(h)')
end
end
if period ~= 'cla' then
if l[vCurrent].accent then
table.insert(IPAs[period], 'ˈ')
end
local vIP = check(l[vForm].p[period], period)
table.insert(IPAs[period], vIP)
else
if vLength == 'either' then
if l[vCurrent].accent == 'circum' then
vLength = 'long'
elseif l[vCurrent].subi then
vLength = 'long'
elseif nextLetter == '̄' or nextLetter == '¯' then
vLength = 'long'
elseif nextLetter == '̆' or nextLetter == '˘' then
vLength = 'short'
else
table.insert(IPAs.cla.notes, '')
end
end
local vIP = check(l[vForm].p.cla, cla)
if mw.ustring.len(vIP) > 1 then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d3
elseif l[vCurrent].accent == 'circum' then
vFP = mw.ustring.sub(vIP, 1, 1)..d2..mw.ustring.sub(vIP, 2)
else
vFP = vIP
end
elseif l[vCurrent].subi then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d1..'ːɪ'..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d1..'ːɪ'..d3
elseif l[vCurrent].accent == 'circum' then
vFP = vIP..d2..d1..'ːɪ'
else
vFP = vIP..d1..'ːɪ'
end
elseif vLength == 'long' then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d4..'ː'
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d5..'ː'
elseif l[vCurrent].accent == 'circum' then
vFP = vIP..d6..'ː'
else
vFP = vIP..'ː'
end
else
if l[vCurrent].accent == 'acute' then
vFP = vIP..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d3
else
vFP = vIP
end
end
table.insert(IPAs['cla'], vFP)
end
end
else
alert = true
end
x = x + 1
end
for i=1, #periods do
IPAs[periods[i]] = {['IPA']=table.concat(IPAs[periods[i]], ''), ['notes']=IPAs[periods[i]]['notes']}
end
for i=1, #periods do
local period = periods[i]
local word = IPAs[period].IPA
if word == '' then
return nil
end
local syllables = {}
local cVowel, nVowel, sBreak, stress, wordEnd, searching
while word ~= '' do
cVowel, nVowel, sBreak, stress = false, false, false, false
searching = 1
cVowelFound = false
while not cVowel do
letter = mw.ustring.sub(word, searching, searching)
if cVowelFound then
if iVows[letter] or iCons[letter] or letter == '' or letter == 'ˈ' then
cVowel = searching - 1
elseif iDias[letter] then
searching = searching + 1
elseif letter == d1 then
cVowelFound = false
searching = searching + 1
else
searching = searching + 1
end
else
if iVows[letter] then
cVowelFound = true
elseif letter == 'ˈ' then
stress = true
elseif letter == '' then
cVowel = true
wordEnd = true
end
searching = searching + 1
end
end
searching = cVowel + 1
while (not nVowel) and (not wordEnd) do
letter = mw.ustring.sub(word, searching, searching)
if iVows[letter] or letter == 'ˈ' then
nVowel = searching
elseif letter == '' then
wordEnd = true
else
searching = searching + 1
end
end
if wordEnd then
sBreak = mw.ustring.len(word)
elseif iLiqs[mw.ustring.sub(word, nVowel-1, nVowel-1)] then
if iStops[mw.ustring.sub(word, nVowel-2, nVowel-2)] then
sBreak = nVowel - 3
elseif mw.ustring.sub(word, nVowel-2, nVowel-2) == 'ʰ' and iStops[mw.ustring.sub(word, nVowel-3, nVowel-3)] then
sBreak = nVowel - 4
else
sBreak = nVowel - 2
end
elseif iCons[mw.ustring.sub(word, nVowel-1, nVowel-1)] then
sBreak = nVowel - 2
elseif mw.ustring.sub(word, nVowel-1, nVowel-1) == 'ʰ' and iStops[mw.ustring.sub(word, nVowel-2, nVowel-2)] then
sBreak = nVowel - 3
elseif mw.ustring.sub(word, nVowel-1, nVowel-1) == '̥' and mw.ustring.sub(word, nVowel-2, nVowel-2) == 'r' then
sBreak = nVowel - 3
else
sBreak = nVowel - 1
end
local syllable = mw.ustring.sub(word, 1, sBreak)
if stress then
if next(syllables) or syllable ~= word then
syllable = 'ˈ'..mw.ustring.gsub(syllable, 'ˈ', '')
else
syllable = mw.ustring.gsub(syllable, 'ˈ', '')
end
stress = false
end
table.insert(syllables, syllable)
word = mw.ustring.sub(word, sBreak+1)
end
if #syllables > 0 then
IPAs[period].IPA = table.concat(syllables, '.')
end
end
local startIndex = 1
if startPer then startIndex = get_index(inlinePeriods, startPer) end
local inlineProns = ''
local period
for i = startIndex, #inlinePeriods do
period = inlinePeriods[i]
inlineProns = inlineProns..'<span class="IPA" lang="grc">['..IPAs[period].IPA..']</span>'
if period ~= 'byz2' then
inlineProns = inlineProns..' → '
else
inlineProns = inlineProns..' {{скр-блок|опис=подробнее|id=t-grc-'.. title .. '|'
end
end
--local inlineProns = inlineProns..'|'
if startPer then startIndex = get_index(periods, startPer) end
local fullProns = '\n'
for i = startIndex, #periods do
period = periods[i]
local notes = ''
if #IPAs[period].notes > 0 then
notes = table.concat(IPAs[period].notes, '')
end
fullProns = fullProns..'* '..periodLabels[period]..': ['..IPAs[period].IPA..']'..notes
if period ~= 'byz2' then
fullProns = fullProns..'\n'
else
fullProns = fullProns..'}}'
end
end
local final = inlineProns..fullProns
return frame:preprocess(final)
end
return export
stnh6xlcx64jgse6hbexemp8npqs8id
574079
574069
2026-07-23T22:38:31Z
It-is-Truly-Meet
32804
574079
Scribunto
text/plain
local export = {}
local u = require("Module:utils")
local function get_index(tab, item)
for i, v in ipairs(tab) do
if v == item then
return i
end
end
return nil
end
local periods = {'cla', 'koi1', 'koi2', 'byz1', 'byz2'}
local inlinePeriods = {'cla', 'koi2', 'byz2'}
local IPAs = {}
local periodLabels = {['cla']="'''Аттична вимова'''",
['koi1'] = 'Єгипетська вимова',
['koi2'] = "'''Койне'''",
['byz1'] = 'Візантійська вимова',
['byz2'] = "'''Константинопольська вимова'''",
}
local d1 = '͜'
local d2 = '́'
local d3 = '̀'
local d4 = '᷄'
local d5 = '᷆'
local d6 = '᷇'
local d7 = '̆'
local l = {
[''] = {['end']=true},
[' '] = {['p'] = {['cla'] = ' '}},
['β'] = {['type'] = 'consonant', ['labial'] = true, ['stop'] = true, ['voiced']=true, ['clusters']={['δ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='b', ['koi1']='b', ['koi2']={{"-1=μ", "b" }, 'β'}, ['byz1']={{"-1=μ", "b" }, 'v'}, ['byz2']={{'1=β', ''}, {'-1=μ', 'b'}, 'v'}}},
['γ'] = {['type'] = 'consonant', ['dorsal'] = true, ['stop'] = true, ['voiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['ρ']=true},
['p'] = {['cla']={{'1.dorsal', 'ŋ'}, 'ɡ'}, ['koi1']={{'1.dorsal', 'ŋ'}, 'ɡ'},
['koi2']={{'1.dorsal', 'ŋ'}, 'ɣ'},
['byz1']={{'1.dorsal', {{'1-preFront', 'ɲ'}, 'ŋ'}}, {'0-preFront', {{'-1=γ', 'ɟ'}, 'ʝ'}}, 'ɣ'},
['byz2']={{'1.dorsal', {{'1-preFront', 'ɲ'}, 'ŋ'}}, {'0-preFront', {{'-1=γ', 'ɟ'}, 'ʝ'}}, 'ɣ'}}},
['δ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['voiced']=true, ['clusters']={['ρ']=true},
['p'] = {['cla']='d', ['koi1']='d', ['koi2']='ð', ['byz1']='ð', ['byz2']={{'1=δ', ''}, {'-1=ν', 'd'}, 'ð'}}},
['ζ'] = {['type'] = 'consonant', ['place']='coronal', ['fricative']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='zd', ['koi1']='z', ['koi2']='z', ['byz1']='z', ['byz2']='z'}},
['θ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['unvoiced']=true, ['aspirate']=true, ['clusters']={['ρ']=true},
['p'] = {['cla']='tʰ', ['koi1']='tʰ', ['koi2']='θ', ['byz1']='θ', ['byz2']={{'1=θ', ''}, 'θ'}}},
['κ'] = {['type'] = 'consonant', ['place']='dorsal', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['τ']=true, ['ρ']=true},
['p'] = {['cla']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['koi1']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['koi2']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['byz1']={{'1=κ', ''}, {'1.voiced+1.stop', 'ɡ'}, {'0-preFront', 'c'}, 'k'},
['byz2']={{'1=κ', ''}, {'1.voiced+1.stop', 'ɡ'}, {'0-preFront', 'c'}, 'k'}}},
['λ'] = {['type'] = 'consonant', ['place']='coronal', ['approximant']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='l', ['koi1']='l', ['koi2']='l', ['byz1']='l', ['byz2']={{'1=λ', ''}, 'l'}}},
['μ'] = {['type'] = 'consonant', ['place']='labial', ['nasal']=true, ['voiced']=true, ['clusters']={['ν']=true},
['p'] = {['cla']='m', ['koi1']='m', ['koi2']='m', ['byz1']='m', ['byz2']={{'1=μ/1=β', ''}, 'm'}}},
['ν'] = {['type'] = 'consonant', ['place']='coronal', ['nasal']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='n', ['koi1']='n', ['koi2']='n', ['byz1']='n', ['byz2']={{'1=ν/1=δ', ''}, 'n'}}},
['ξ'] = {['type'] = 'consonant', ['place']='dorsal', ['stop']=true, ['unvoiced']=true, ['sibilate']=true, ['clusters']={},
['p'] = {['cla']='kʰs', ['koi1']='kʰs', ['koi2']='xs', ['byz1']='ks', ['byz2']='ks'}},
['π'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['ρ']=true, ['τ']=true},
['p'] = {['cla']='p', ['koi1']='p', ['koi2']='p', ['byz1']='p', ['byz2']={{'1=π', ''}, 'p'}}},
['ρ'] = {['type'] = 'consonant', ['place']='coronal', ['trill']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']={{'1=ρ/1=ῥ/-1=ρ', 'r̥'}, 'r'}, ['koi1']={{'1=ρ/1=ῥ/-1=ρ', 'r̥'}, 'r'}, ['koi2']='r', ['byz1']='r', ['byz2']={{'1=ρ', ''}, 'r'}}},
['ῥ'] = {['type'] = 'consonant', ['place']='coronal', ['trill']=true, ['voiced']=false, ['clusters']={},
['p'] = {['cla']='r̥', ['koi1']='r̥', ['koi2']='r', ['byz1']='r', ['byz2']={{'1=ρ', ''}, 'r'}}},
['σ'] = {['type'] = 'consonant', ['place']='coronal', ['fricative']=true, ['unvoiced']=true, ['clusters']={['β']=true, ['θ']=true, ['κ']=true, ['μ']=true, ['π']=true, ['τ']=true, ['φ']=true, ['χ']=true, },
['p'] = {['cla']='s', ['koi1']='s', ['koi2']='s', ['byz1']='s', ['byz2']={{'1=σ', ''}, 's'}}},
['τ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['μ']=true, ['ρ']=true},
['p'] = {['cla']='t', ['koi1']='t', ['koi2']='t', ['byz1']='t', ['byz2']={{'1=τ', ''}, 't'}}},
['φ'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['clusters']={['θ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='pʰ', ['koi1']='pʰ', ['koi2']='ɸ', ['byz1']='f', ['byz2']={{'1=φ', ''}, 'f'}}},
['χ'] = {['type'] = 'consonant', ['dorsal']=true, ['stop']=true, ['unvoiced']=true, ['aspirate']=true, ['clusters']={['θ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='kʰ', ['koi1']='kʰ', ['koi2']='x',
['byz1']={{'1=χ', ''}, {'0-preFront', 'ç'}, 'x'},
['byz2']={{'1=χ', ''}, {'0-preFront', 'ç'}, 'x'}}},
['ψ'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['sibilate']=true, ['clusters']={},
['p'] = {['cla']='pʰs', ['koi1']='pʰs', ['koi2']='ɸs', ['byz1']='ps', ['byz2']='ps'}},
['ϝ'] = {['type'] = 'consonant', ['place']='labial', ['approximant']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='w', ['koi1']='', ['koi2']='', ['byz1']='', ['byz2']=''}},
['α'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='a', ['koi1']='a', ['koi2']='a', ['byz1']='a', ['byz2']='a'}},
['ε'] = {['type'] = 'vowel', ['length']='short',
['p'] = {['cla']='e', ['koi1']='ɛ', ['koi2']='e', ['byz1']='e', ['byz2']='e'}},
['η'] = {['type'] = 'vowel', ['length']='long',
['p'] = {['cla']='ɛ', ['koi1']='e', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['ι'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='i', ['koi1']='i', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['ο'] = {['type'] = 'vowel', ['length']='short',
['p'] = {['cla']='o', ['koi1']='o', ['koi2']='o', ['byz1']='o', ['byz2']='o'}},
['υ'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='y', ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['ω'] = {['type'] = 'vowel', ['length']='long',
['p'] = {['cla']='ɔ', ['koi1']='o', ['koi2']='o', ['byz1']='o', ['byz2']='o'}},
['ϊ'] = {['type'] = 'vowel', ['naked']='ι', ['diar']=true},
['ϋ'] = {['type'] = 'vowel', ['naked']='υ', ['diar']=true},
['ἀ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth'},
['ἐ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='smooth'},
['ἠ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth'},
['ἰ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='smooth'},
['ὀ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='smooth'},
['ὐ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='smooth'},
['ὠ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth'},
['ὰ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave'},
['ᾀ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['subi']=true},
['ᾐ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['subi']=true},
['ᾠ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['subi']=true},
['ᾰ'] = {['type'] = 'vowel', ['naked']='α', ['length']='short'},
['ῐ'] = {['type'] = 'vowel', ['naked']='ι', ['length']='short'},
['ῠ'] = {['type'] = 'vowel', ['naked']='υ', ['length']='short'},
['ἁ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='rough'},
['ἑ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='rough'},
['ἡ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='rough'},
['ἱ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='rough'},
['ὁ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='rough'},
['ὑ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='rough'},
['ὡ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='rough'},
['ά'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute'},
['ᾁ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='rough', ['subi']=true},
['ᾑ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='rough', ['subi']=true},
['ᾡ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='rough', ['subi']=true},
['ᾱ'] = {['type'] = 'vowel', ['naked']='α', ['length']='long'},
['ῑ'] = {['type'] = 'vowel', ['naked']='ι', ['length']='long'},
['ῡ'] = {['type'] = 'vowel', ['naked']='υ', ['length']='long'},
['ἂ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['accent']='grave'},
['ἒ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='smooth', ['accent']='grave'},
['ἢ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['accent']='grave'},
['ἲ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='smooth', ['accent']='grave'},
['ὂ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='smooth', ['accent']='grave'},
['ὒ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='smooth', ['accent']='grave'},
['ὢ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['accent']='grave'},
['ὲ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='grave'},
['ᾂ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾒ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾢ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾲ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['subi']=true},
['ῂ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['subi']=true},
['ῒ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave', ['diar']=true},
['ῢ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave', ['diar']=true},
['ῲ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['subi']=true},
['ἃ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['breath']='rough'},
['ἓ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='grave', ['breath']='rough'},
['ἣ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['breath']='rough'},
['ἳ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave', ['breath']='rough'},
['ὃ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='grave', ['breath']='rough'},
['ὓ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave', ['breath']='rough'},
['ὣ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['breath']='rough'},
['έ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute'},
['ᾃ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾓ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾣ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾳ'] = {['type'] = 'vowel', ['naked']='α', ['subi']=true},
['ῃ'] = {['type'] = 'vowel', ['naked']='η', ['subi']=true},
['ΐ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['diar']=true},
['ΰ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['diar']=true},
['ῳ'] = {['type'] = 'vowel', ['naked']='ω', ['subi']=true},
['ἄ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='smooth'},
['ἔ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute', ['breath']='smooth'},
['ἤ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='smooth'},
['ἴ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['breath']='smooth'},
['ὄ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute', ['breath']='smooth'},
['ὔ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['breath']='smooth'},
['ὤ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='smooth'},
['ὴ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave'},
['ᾄ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾔ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾤ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾴ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['subi']=true},
['ῄ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['subi']=true},
['ῴ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['subi']=true},
['ἅ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='rough'},
['ἕ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute', ['breath']='rough'},
['ἥ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='rough'},
['ἵ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['breath']='rough'},
['ὅ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute', ['breath']='rough'},
['ὕ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['breath']='rough'},
['ὥ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='rough'},
['ή'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute'},
['ᾅ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ᾕ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ᾥ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ἆ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='smooth'},
['ἦ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='smooth'},
['ἶ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['breath']='smooth'},
['ὖ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['breath']='smooth'},
['ὦ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='smooth'},
['ὶ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave'},
['ᾆ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾖ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾦ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾶ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum'},
['ῆ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum'},
['ῖ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum'},
['ῦ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum'},
['ῶ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum'},
['ἇ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='rough'},
['ἧ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='rough'},
['ἷ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['breath']='rough'},
['ὗ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['breath']='rough'},
['ὧ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='rough'},
['ί'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute'},
['ᾇ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾗ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾧ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾷ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['subi']=true},
['ῇ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['subi']=true},
['ῗ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['diar']=true},
['ῧ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['diar']=true},
['ῷ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['subi']=true},
['ὸ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='grave'},
['ό'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute'},
['ὺ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave'},
['ύ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute'},
['ὼ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave'},
['ώ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute'},
['αι'] = {['p'] = {['cla'] = {{'1.end', 'a'..d7..d1..'ɪ'..d7}, 'a'..d1..'ɪ'}, ['koi1']='ɛ', ['koi2']='ɛ', ['byz1']='e', ['byz2']='e'}},
['ει'] = {['p'] = {['cla'] = 'e', ['koi1']='i', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['οι'] = {['p'] = {['cla'] = {{'1.end', 'o'..d7..d1..'ɪ'..d7}, 'o'..d1..'ɪ'}, ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['υι'] = {['p'] = {['cla'] = 'y', ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['αυ'] = {['p'] = {['cla'] = 'a'..d1..'ʊ', ['koi1']={{'1.unvoiced', 'aʍ'}, 'aw'},
['koi2']={{'1.unvoiced', 'aɸ'}, 'aβ'}, ['byz1']={{'1.unvoiced', 'af'}, 'av'},
['byz2']={{'1.unvoiced', 'af'}, 'av'}}},
['ευ'] = {['p'] = {['cla'] = 'e'..d1..'ʊ', ['koi1']={{'1.unvoiced', 'eʍ'}, 'ew'},
['koi2']={{'1.unvoiced', 'eɸ'}, 'eβ'}, ['byz1']={{'1.unvoiced', 'ef'}, 'ev'},
['byz2']={{'1.unvoiced', 'ef'}, 'ev'}}},
['ου'] = {['p'] = {['cla'] = 'o', ['koi1']='u', ['koi2']='u', ['byz1']='u', ['byz2']='u'}},
}
local uStart = {['α'] = true, ['ε'] = true, ['ο'] = true}
local iStart = {['α'] = true, ['ε'] = true, ['ο'] = true, ['υ'] = true}
local iCons = {['b']=true, ['ɡ']=true, ['ŋ']=true, ['d']=true, ['z']=true,
['k']=true, ['l']=true, ['m']=true, ['n']=true, ['p']=true, ['r']=true,
['s']=true, ['t']=true, ['β']=true, ['ð']=true, ['ɣ']=true, ['ɸ']=true,
['θ']=true, ['x']=true, ['f']=true, ['v']=true, ['ɟ']=true, ['ʝ']=true,
['c']=true, ['ç']=true}
local iVows = {['a']=true, ['e']=true, ['i']=true, ['o']=true, ['u']=true,
['y']=true, ['ʊ']=true, ['ɪ']=true, ['ɛ']=true, ['ɔ']=true}
local iDias = {[d2]=true, [d3]=true, [d4]=true, [d5]=true, [d6]=true, [d7]=true,
['ʰ']=true, ['ː']=true, ['̥']=true}
local iLiqs = {['r']=true, ['l']=true, ['n']=true}
local iStops = {['b']=true, ['ɡ']=true, ['d']=true, ['k']=true, ['p']=true,
['t']=true, ['β']=true, ['ð']=true, ['ɣ']=true, ['ɸ']=true, ['θ']=true,
['x']=true, ['f']=true}
function export.create(frame)
local title = frame.args[1]
local startPer = frame.args['period']
if startPer then startPer = mw.ustring.lower(startPer) end
if startPer == 'койне' or startPer == 'koine' then
startPer = 'koi2'
elseif startPer == 'конст' then
startPer = 'byz2'
end
if not u.contains(inlinePeriods, startPer) then startPer = nil end
title = mw.ustring.lower(title)
title = mw.ustring.gsub(title, 'ς', 'σ')
title = mw.ustring.gsub(title, 'ῤ', 'ρ')
for i=1, #periods do
IPAs[periods[i]] = {['notes']={}}
end
local length = mw.ustring.len(title)
local x = 1
local letter = ''
local nextLetter = ''
local cla = {}
local alert = false
local naked = ''
local accent = ''
local diphthong = false
local function preFront(which)
local fronts = {['ι']=true, ['η']=true, ['ε']=true}
local nLet = mw.ustring.sub(title, x+1+which, x+1+which)
local nnLet = mw.ustring.sub(title, x+2+which, x+2+which)
if fronts[((l[nLet].naked) or nLet)] then
return true
elseif (nLet == 'a' or nLet == 'ο') and ((l[nnLet].naked or nnLet) == 'ι') then
return true
else
return false
end
end
local function decode(condition)
if mw.ustring.find(condition, '[+/]') then
local sep = mw.ustring.find(condition, "[/+][^/+]*$")
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
if mw.ustring.sub(condition, sep, sep) == '/' then
return decode(chunk1) or decode(chunk2)
elseif mw.ustring.sub(condition, sep, sep) == '+' then
return decode(chunk1) and decode(chunk2)
end
elseif mw.ustring.find(condition, '=') then
local sep = mw.ustring.find(condition, '=')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
local checkLetter
if tonumber(x+chunk1) < 1 then
checkLetter = ''
else
checkLetter = mw.ustring.sub(title, x+chunk1, x+chunk1)
end
return checkLetter == chunk2
elseif mw.ustring.find(condition, '%.') then
local sep = mw.ustring.find(condition, '%.')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
local checkLetter = mw.ustring.sub(title, x+chunk1, x+chunk1)
return l[checkLetter][chunk2]
elseif mw.ustring.find(condition, '%-') then
local sep = mw.ustring.find(condition, '%-')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
if chunk2 == 'preFront' then
return preFront(chunk1)
end
end
end
local function check(p, period)
if type(p) == 'string' then
return p
elseif type(p) == 'table' then
for i = 1, #p do
possP = p[i]
if type(possP) == 'string' then
return possP
elseif type(possP) == 'table' then
rawCondition = possP[1]
rawResult = possP[2]
local condition = decode(rawCondition)
if condition then
if type(rawResult) == 'string' then
return rawResult
else
return check(rawResult, period)
end
end
end
end
end
end
while x <= length do
letter = mw.ustring.sub(title, x, x)
nextLetter = mw.ustring.sub(title, x+1, x+1)
if not l[letter] then
elseif l[letter].type == 'consonant' then
for i = 1, #periods do
period = periods[i]
currentP = l[letter].p[period]
result = check(currentP, period)
table.insert(IPAs[period], result)
end
elseif l[letter].type == 'vowel' then
local diphthong = false
local vCurrent, vForm, vLength;
if iStart[letter] and (l[nextLetter] and l[nextLetter].type == 'vowel' and (nextLetter == 'ι' or (l[nextLetter].naked and l[nextLetter].naked == 'ι' and not l[nextLetter].diar))) then
diphthong = letter..'ι'
elseif uStart[letter] and (l[nextLetter] and l[nextLetter].type == 'vowel' and (nextLetter == 'υ' or (l[nextLetter].naked and l[nextLetter].naked == 'υ' and not l[nextLetter].diar))) then
diphthong = letter..'υ'
end
if diphthong then
vCurrent = nextLetter
vForm = diphthong
vLength = 'long'
x = x + 1
nextLetter = mw.ustring.sub(title, x+1, x+1)
else
vCurrent = letter
vForm = l[letter].naked or letter
vLength = l[vCurrent].length or l[vForm].length
end
for i = 1, #periods do
period = periods[i]
if period == 'cla' then
if l[vCurrent].breath == 'rough' then
table.insert(IPAs['cla'], 'h')
end
elseif period == 'koi1' then
if l[vCurrent].breath == 'rough' then
table.insert(IPAs['koi1'], '(h)')
end
end
if period ~= 'cla' then
if l[vCurrent].accent then
table.insert(IPAs[period], 'ˈ')
end
local vIP = check(l[vForm].p[period], period)
table.insert(IPAs[period], vIP)
else
if vLength == 'either' then
if l[vCurrent].accent == 'circum' then
vLength = 'long'
elseif l[vCurrent].subi then
vLength = 'long'
elseif nextLetter == '̄' or nextLetter == '¯' then
vLength = 'long'
elseif nextLetter == '̆' or nextLetter == '˘' then
vLength = 'short'
else
table.insert(IPAs.cla.notes, '')
end
end
local vIP = check(l[vForm].p.cla, cla)
if mw.ustring.len(vIP) > 1 then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d3
elseif l[vCurrent].accent == 'circum' then
vFP = mw.ustring.sub(vIP, 1, 1)..d2..mw.ustring.sub(vIP, 2)
else
vFP = vIP
end
elseif l[vCurrent].subi then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d1..'ːɪ'..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d1..'ːɪ'..d3
elseif l[vCurrent].accent == 'circum' then
vFP = vIP..d2..d1..'ːɪ'
else
vFP = vIP..d1..'ːɪ'
end
elseif vLength == 'long' then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d4..'ː'
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d5..'ː'
elseif l[vCurrent].accent == 'circum' then
vFP = vIP..d6..'ː'
else
vFP = vIP..'ː'
end
else
if l[vCurrent].accent == 'acute' then
vFP = vIP..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d3
else
vFP = vIP
end
end
table.insert(IPAs['cla'], vFP)
end
end
else
alert = true
end
x = x + 1
end
for i=1, #periods do
IPAs[periods[i]] = {['IPA']=table.concat(IPAs[periods[i]], ''), ['notes']=IPAs[periods[i]]['notes']}
end
for i=1, #periods do
local period = periods[i]
local word = IPAs[period].IPA
if word == '' then
return nil
end
local syllables = {}
local cVowel, nVowel, sBreak, stress, wordEnd, searching
while word ~= '' do
cVowel, nVowel, sBreak, stress = false, false, false, false
searching = 1
cVowelFound = false
while not cVowel do
letter = mw.ustring.sub(word, searching, searching)
if cVowelFound then
if iVows[letter] or iCons[letter] or letter == '' or letter == 'ˈ' then
cVowel = searching - 1
elseif iDias[letter] then
searching = searching + 1
elseif letter == d1 then
cVowelFound = false
searching = searching + 1
else
searching = searching + 1
end
else
if iVows[letter] then
cVowelFound = true
elseif letter == 'ˈ' then
stress = true
elseif letter == '' then
cVowel = true
wordEnd = true
end
searching = searching + 1
end
end
searching = cVowel + 1
while (not nVowel) and (not wordEnd) do
letter = mw.ustring.sub(word, searching, searching)
if iVows[letter] or letter == 'ˈ' then
nVowel = searching
elseif letter == '' then
wordEnd = true
else
searching = searching + 1
end
end
if wordEnd then
sBreak = mw.ustring.len(word)
elseif iLiqs[mw.ustring.sub(word, nVowel-1, nVowel-1)] then
if iStops[mw.ustring.sub(word, nVowel-2, nVowel-2)] then
sBreak = nVowel - 3
elseif mw.ustring.sub(word, nVowel-2, nVowel-2) == 'ʰ' and iStops[mw.ustring.sub(word, nVowel-3, nVowel-3)] then
sBreak = nVowel - 4
else
sBreak = nVowel - 2
end
elseif iCons[mw.ustring.sub(word, nVowel-1, nVowel-1)] then
sBreak = nVowel - 2
elseif mw.ustring.sub(word, nVowel-1, nVowel-1) == 'ʰ' and iStops[mw.ustring.sub(word, nVowel-2, nVowel-2)] then
sBreak = nVowel - 3
elseif mw.ustring.sub(word, nVowel-1, nVowel-1) == '̥' and mw.ustring.sub(word, nVowel-2, nVowel-2) == 'r' then
sBreak = nVowel - 3
else
sBreak = nVowel - 1
end
local syllable = mw.ustring.sub(word, 1, sBreak)
if stress then
if next(syllables) or syllable ~= word then
syllable = 'ˈ'..mw.ustring.gsub(syllable, 'ˈ', '')
else
syllable = mw.ustring.gsub(syllable, 'ˈ', '')
end
stress = false
end
table.insert(syllables, syllable)
word = mw.ustring.sub(word, sBreak+1)
end
if #syllables > 0 then
IPAs[period].IPA = table.concat(syllables, '.')
end
end
local startIndex = 1
if startPer then startIndex = get_index(inlinePeriods, startPer) end
local inlineProns = ''
local period
for i = startIndex, #inlinePeriods do
period = inlinePeriods[i]
inlineProns = inlineProns..'<span class="IPA" lang="grc">['..IPAs[period].IPA..']</span>'
if period ~= 'byz2' then
inlineProns = inlineProns..' → '
else
inlineProns = inlineProns..' {{скр-блок|опис=подробнее|id=t-grc-'.. title .. '|'
end
end
--local inlineProns = inlineProns..'|'
if startPer then startIndex = get_index(periods, startPer) end
local fullProns = '\n'
for i = startIndex, #periods do
period = periods[i]
local notes = ''
if #IPAs[period].notes > 0 then
notes = table.concat(IPAs[period].notes, '')
end
fullProns = fullProns..'* '..periodLabels[period]..': ['..IPAs[period].IPA..']'..notes
if period ~= 'byz2' then
fullProns = fullProns..'\n'
else
fullProns = fullProns..'}}'
end
end
local final = inlineProns..fullProns
return frame:preprocess(final)
end
return export
4bp50u5o3guf7q8wldhg31iq4o4xqx9
574081
574079
2026-07-24T03:01:45Z
It-is-Truly-Meet
32804
574081
Scribunto
text/plain
local export = {}
local u = require("Module:utils")
local function get_index(tab, item)
for i, v in ipairs(tab) do
if v == item then
return i
end
end
return nil
end
local periods = {'cla', 'koi1', 'koi2', 'byz1', 'byz2'}
local inlinePeriods = {'cla', 'koi2', 'byz2'}
local IPAs = {}
local periodLabels = {['cla']="'''Аттична вимова'''",
['koi1'] = 'Єгипетська вимова',
['koi2'] = "'''Койне'''",
['byz1'] = 'Візантійська вимова',
['byz2'] = "'''Константинопольська вимова'''",
}
local d1 = '͜'
local d2 = '́'
local d3 = '̀'
local d4 = '᷄'
local d5 = '᷆'
local d6 = '᷇'
local d7 = '̆'
local l = {
[''] = {['end']=true},
[' '] = {['p'] = {['cla'] = ' '}},
['β'] = {['type'] = 'consonant', ['labial'] = true, ['stop'] = true, ['voiced']=true, ['clusters']={['δ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='b', ['koi1']='b', ['koi2']={{"-1=μ", "b" }, 'β'}, ['byz1']={{"-1=μ", "b" }, 'v'}, ['byz2']={{'1=β', ''}, {'-1=μ', 'b'}, 'v'}}},
['γ'] = {['type'] = 'consonant', ['dorsal'] = true, ['stop'] = true, ['voiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['ρ']=true},
['p'] = {['cla']={{'1.dorsal', 'ŋ'}, 'ɡ'}, ['koi1']={{'1.dorsal', 'ŋ'}, 'ɡ'},
['koi2']={{'1.dorsal', 'ŋ'}, 'ɣ'},
['byz1']={{'1.dorsal', {{'1-preFront', 'ɲ'}, 'ŋ'}}, {'0-preFront', {{'-1=γ', 'ɟ'}, 'ʝ'}}, 'ɣ'},
['byz2']={{'1.dorsal', {{'1-preFront', 'ɲ'}, 'ŋ'}}, {'0-preFront', {{'-1=γ', 'ɟ'}, 'ʝ'}}, 'ɣ'}}},
['δ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['voiced']=true, ['clusters']={['ρ']=true},
['p'] = {['cla']='d', ['koi1']='d', ['koi2']='ð', ['byz1']='ð', ['byz2']={{'1=δ', ''}, {'-1=ν', 'd'}, 'ð'}}},
['ζ'] = {['type'] = 'consonant', ['place']='coronal', ['fricative']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='zd', ['koi1']='z', ['koi2']='z', ['byz1']='z', ['byz2']='z'}},
['θ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['unvoiced']=true, ['aspirate']=true, ['clusters']={['ρ']=true},
['p'] = {['cla']='tʰ', ['koi1']='tʰ', ['koi2']='θ', ['byz1']='θ', ['byz2']={{'1=θ', ''}, 'θ'}}},
['κ'] = {['type'] = 'consonant', ['place']='dorsal', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['τ']=true, ['ρ']=true},
['p'] = {['cla']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['koi1']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['koi2']={{'1.voiced+1.stop', 'ɡ'}, 'k'},
['byz1']={{'1=κ', ''}, {'1.voiced+1.stop', 'ɡ'}, {'0-preFront', 'c'}, 'k'},
['byz2']={{'1=κ', ''}, {'1.voiced+1.stop', 'ɡ'}, {'0-preFront', 'c'}, 'k'}}},
['λ'] = {['type'] = 'consonant', ['place']='coronal', ['approximant']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='l', ['koi1']='l', ['koi2']='l', ['byz1']='l', ['byz2']={{'1=λ', ''}, 'l'}}},
['μ'] = {['type'] = 'consonant', ['place']='labial', ['nasal']=true, ['voiced']=true, ['clusters']={['ν']=true},
['p'] = {['cla']='m', ['koi1']='m', ['koi2']='m', ['byz1']='m', ['byz2']={{'1=μ/1=β', ''}, 'm'}}},
['ν'] = {['type'] = 'consonant', ['place']='coronal', ['nasal']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='n', ['koi1']='n', ['koi2']='n', ['byz1']='n', ['byz2']={{'1=ν/1=δ', ''}, 'n'}}},
['ξ'] = {['type'] = 'consonant', ['place']='dorsal', ['stop']=true, ['unvoiced']=true, ['sibilate']=true, ['clusters']={},
['p'] = {['cla']='kʰs', ['koi1']='kʰs', ['koi2']='xs', ['byz1']='ks', ['byz2']='ks'}},
['π'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['ν']=true, ['ρ']=true, ['τ']=true},
['p'] = {['cla']='p', ['koi1']='p', ['koi2']='p', ['byz1']='p', ['byz2']={{'1=π', ''}, 'p'}}},
['ρ'] = {['type'] = 'consonant', ['place']='coronal', ['trill']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']={{'1=ρ/1=ῥ/-1=ρ', 'r̥'}, 'r'}, ['koi1']={{'1=ρ/1=ῥ/-1=ρ', 'r̥'}, 'r'}, ['koi2']='r', ['byz1']='r', ['byz2']={{'1=ρ', ''}, 'r'}}},
['ῥ'] = {['type'] = 'consonant', ['place']='coronal', ['trill']=true, ['voiced']=false, ['clusters']={},
['p'] = {['cla']='r̥', ['koi1']='r̥', ['koi2']='r', ['byz1']='r', ['byz2']={{'1=ρ', ''}, 'r'}}},
['σ'] = {['type'] = 'consonant', ['place']='coronal', ['fricative']=true, ['unvoiced']=true, ['clusters']={['β']=true, ['θ']=true, ['κ']=true, ['μ']=true, ['π']=true, ['τ']=true, ['φ']=true, ['χ']=true, },
['p'] = {['cla']='s', ['koi1']='s', ['koi2']='s', ['byz1']='s', ['byz2']={{'1=σ', ''}, 's'}}},
['τ'] = {['type'] = 'consonant', ['place']='coronal', ['stop']=true, ['unvoiced']=true, ['clusters']={['λ']=true, ['μ']=true, ['ρ']=true},
['p'] = {['cla']='t', ['koi1']='t', ['koi2']='t', ['byz1']='t', ['byz2']={{'1=τ', ''}, 't'}}},
['φ'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['clusters']={['θ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='pʰ', ['koi1']='pʰ', ['koi2']='ɸ', ['byz1']='f', ['byz2']={{'1=φ', ''}, 'f'}}},
['χ'] = {['type'] = 'consonant', ['dorsal']=true, ['stop']=true, ['unvoiced']=true, ['aspirate']=true, ['clusters']={['θ']=true, ['λ']=true, ['ρ']=true},
['p'] = {['cla']='kʰ', ['koi1']='kʰ', ['koi2']='x',
['byz1']={{'1=χ', ''}, {'0-preFront', 'ç'}, 'x'},
['byz2']={{'1=χ', ''}, {'0-preFront', 'ç'}, 'x'}}},
['ψ'] = {['type'] = 'consonant', ['place']='labial', ['stop']=true, ['unvoiced']=true, ['sibilate']=true, ['clusters']={},
['p'] = {['cla']='pʰs', ['koi1']='pʰs', ['koi2']='ɸs', ['byz1']='ps', ['byz2']='ps'}},
['ϝ'] = {['type'] = 'consonant', ['place']='labial', ['approximant']=true, ['voiced']=true, ['clusters']={},
['p'] = {['cla']='w', ['koi1']='', ['koi2']='', ['byz1']='', ['byz2']=''}},
['α'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='a', ['koi1']='a', ['koi2']='a', ['byz1']='a', ['byz2']='a'}},
['ε'] = {['type'] = 'vowel', ['length']='short',
['p'] = {['cla']='e', ['koi1']='ɛ', ['koi2']='e', ['byz1']='e', ['byz2']='e'}},
['η'] = {['type'] = 'vowel', ['length']='long',
['p'] = {['cla']='ɛ', ['koi1']='e', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['ι'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='i', ['koi1']='i', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['ο'] = {['type'] = 'vowel', ['length']='short',
['p'] = {['cla']='o', ['koi1']='o', ['koi2']='o', ['byz1']='o', ['byz2']='o'}},
['υ'] = {['type'] = 'vowel', ['length']='either',
['p'] = {['cla']='y', ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['ω'] = {['type'] = 'vowel', ['length']='long',
['p'] = {['cla']='ɔ', ['koi1']='o', ['koi2']='o', ['byz1']='o', ['byz2']='o'}},
['ϊ'] = {['type'] = 'vowel', ['naked']='ι', ['diar']=true},
['ϋ'] = {['type'] = 'vowel', ['naked']='υ', ['diar']=true},
['ἀ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth'},
['ἐ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='smooth'},
['ἠ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth'},
['ἰ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='smooth'},
['ὀ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='smooth'},
['ὐ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='smooth'},
['ὠ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth'},
['ὰ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave'},
['ᾀ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['subi']=true},
['ᾐ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['subi']=true},
['ᾠ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['subi']=true},
['ᾰ'] = {['type'] = 'vowel', ['naked']='α', ['length']='short'},
['ῐ'] = {['type'] = 'vowel', ['naked']='ι', ['length']='short'},
['ῠ'] = {['type'] = 'vowel', ['naked']='υ', ['length']='short'},
['ἁ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='rough'},
['ἑ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='rough'},
['ἡ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='rough'},
['ἱ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='rough'},
['ὁ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='rough'},
['ὑ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='rough'},
['ὡ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='rough'},
['ά'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute'},
['ᾁ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='rough', ['subi']=true},
['ᾑ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='rough', ['subi']=true},
['ᾡ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='rough', ['subi']=true},
['ᾱ'] = {['type'] = 'vowel', ['naked']='α', ['length']='long'},
['ῑ'] = {['type'] = 'vowel', ['naked']='ι', ['length']='long'},
['ῡ'] = {['type'] = 'vowel', ['naked']='υ', ['length']='long'},
['ἂ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['accent']='grave'},
['ἒ'] = {['type'] = 'vowel', ['naked']='ε', ['breath']='smooth', ['accent']='grave'},
['ἢ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['accent']='grave'},
['ἲ'] = {['type'] = 'vowel', ['naked']='ι', ['breath']='smooth', ['accent']='grave'},
['ὂ'] = {['type'] = 'vowel', ['naked']='ο', ['breath']='smooth', ['accent']='grave'},
['ὒ'] = {['type'] = 'vowel', ['naked']='υ', ['breath']='smooth', ['accent']='grave'},
['ὢ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['accent']='grave'},
['ὲ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='grave'},
['ᾂ'] = {['type'] = 'vowel', ['naked']='α', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾒ'] = {['type'] = 'vowel', ['naked']='η', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾢ'] = {['type'] = 'vowel', ['naked']='ω', ['breath']='smooth', ['accent']='grave', ['subi']=true},
['ᾲ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['subi']=true},
['ῂ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['subi']=true},
['ῒ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave', ['diar']=true},
['ῢ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave', ['diar']=true},
['ῲ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['subi']=true},
['ἃ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['breath']='rough'},
['ἓ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='grave', ['breath']='rough'},
['ἣ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['breath']='rough'},
['ἳ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave', ['breath']='rough'},
['ὃ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='grave', ['breath']='rough'},
['ὓ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave', ['breath']='rough'},
['ὣ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['breath']='rough'},
['έ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute'},
['ᾃ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾓ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾣ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave', ['breath']='rough', ['subi']=true},
['ᾳ'] = {['type'] = 'vowel', ['naked']='α', ['subi']=true},
['ῃ'] = {['type'] = 'vowel', ['naked']='η', ['subi']=true},
['ΐ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['diar']=true},
['ΰ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['diar']=true},
['ῳ'] = {['type'] = 'vowel', ['naked']='ω', ['subi']=true},
['ἄ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='smooth'},
['ἔ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute', ['breath']='smooth'},
['ἤ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='smooth'},
['ἴ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['breath']='smooth'},
['ὄ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute', ['breath']='smooth'},
['ὔ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['breath']='smooth'},
['ὤ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='smooth'},
['ὴ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='grave'},
['ᾄ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾔ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾤ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='smooth', ['subi']=true},
['ᾴ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['subi']=true},
['ῄ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['subi']=true},
['ῴ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['subi']=true},
['ἅ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='rough'},
['ἕ'] = {['type'] = 'vowel', ['naked']='ε', ['accent']='acute', ['breath']='rough'},
['ἥ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='rough'},
['ἵ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute', ['breath']='rough'},
['ὅ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute', ['breath']='rough'},
['ὕ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute', ['breath']='rough'},
['ὥ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='rough'},
['ή'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute'},
['ᾅ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ᾕ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ᾥ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute', ['breath']='rough', ['subi']=true},
['ἆ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='smooth'},
['ἦ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='smooth'},
['ἶ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['breath']='smooth'},
['ὖ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['breath']='smooth'},
['ὦ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='smooth'},
['ὶ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='grave'},
['ᾆ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾖ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾦ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='smooth', ['subi']=true},
['ᾶ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum'},
['ῆ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum'},
['ῖ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum'},
['ῦ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum'},
['ῶ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum'},
['ἇ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='rough'},
['ἧ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='rough'},
['ἷ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['breath']='rough'},
['ὗ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['breath']='rough'},
['ὧ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='rough'},
['ί'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='acute'},
['ᾇ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾗ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾧ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['breath']='rough', ['subi']=true},
['ᾷ'] = {['type'] = 'vowel', ['naked']='α', ['accent']='circum', ['subi']=true},
['ῇ'] = {['type'] = 'vowel', ['naked']='η', ['accent']='circum', ['subi']=true},
['ῗ'] = {['type'] = 'vowel', ['naked']='ι', ['accent']='circum', ['diar']=true},
['ῧ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='circum', ['diar']=true},
['ῷ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='circum', ['subi']=true},
['ὸ'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='grave'},
['ό'] = {['type'] = 'vowel', ['naked']='ο', ['accent']='acute'},
['ὺ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='grave'},
['ύ'] = {['type'] = 'vowel', ['naked']='υ', ['accent']='acute'},
['ὼ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='grave'},
['ώ'] = {['type'] = 'vowel', ['naked']='ω', ['accent']='acute'},
['αι'] = {['p'] = {['cla'] = {{'1.end', 'a'..d7..d1..'ɪ'..d7}, 'a'..d1..'ɪ'}, ['koi1']='ɛ', ['koi2']='ɛ', ['byz1']='e', ['byz2']='e'}},
['ει'] = {['p'] = {['cla'] = 'e', ['koi1']='i', ['koi2']='i', ['byz1']='i', ['byz2']='i'}},
['οι'] = {['p'] = {['cla'] = {{'1.end', 'o'..d7..d1..'ɪ'..d7}, 'o'..d1..'ɪ'}, ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['υι'] = {['p'] = {['cla'] = 'y', ['koi1']='y', ['koi2']='y', ['byz1']='y', ['byz2']='i'}},
['αυ'] = {['p'] = {['cla'] = 'a'..d1..'ʊ', ['koi1']={{'1.unvoiced', 'aʍ'}, 'aw'},
['koi2']={{'1.unvoiced', 'aɸ'}, 'aβ'}, ['byz1']={{'1.unvoiced', 'af'}, 'av'},
['byz2']={{'1.unvoiced', 'af'}, 'av'}}},
['ευ'] = {['p'] = {['cla'] = 'e'..d1..'ʊ', ['koi1']={{'1.unvoiced', 'eʍ'}, 'ew'},
['koi2']={{'1.unvoiced', 'eɸ'}, 'eβ'}, ['byz1']={{'1.unvoiced', 'ef'}, 'ev'},
['byz2']={{'1.unvoiced', 'ef'}, 'ev'}}},
['ου'] = {['p'] = {['cla'] = 'o', ['koi1']='u', ['koi2']='u', ['byz1']='u', ['byz2']='u'}},
}
local uStart = {['α'] = true, ['ε'] = true, ['ο'] = true}
local iStart = {['α'] = true, ['ε'] = true, ['ο'] = true, ['υ'] = true}
local iCons = {['b']=true, ['ɡ']=true, ['ŋ']=true, ['d']=true, ['z']=true,
['k']=true, ['l']=true, ['m']=true, ['n']=true, ['p']=true, ['r']=true,
['s']=true, ['t']=true, ['β']=true, ['ð']=true, ['ɣ']=true, ['ɸ']=true,
['θ']=true, ['x']=true, ['f']=true, ['v']=true, ['ɟ']=true, ['ʝ']=true,
['c']=true, ['ç']=true}
local iVows = {['a']=true, ['e']=true, ['i']=true, ['o']=true, ['u']=true,
['y']=true, ['ʊ']=true, ['ɪ']=true, ['ɛ']=true, ['ɔ']=true}
local iDias = {[d2]=true, [d3]=true, [d4]=true, [d5]=true, [d6]=true, [d7]=true,
['ʰ']=true, ['ː']=true, ['̥']=true}
local iLiqs = {['r']=true, ['l']=true, ['n']=true}
local iStops = {['b']=true, ['ɡ']=true, ['d']=true, ['k']=true, ['p']=true,
['t']=true, ['β']=true, ['ð']=true, ['ɣ']=true, ['ɸ']=true, ['θ']=true,
['x']=true, ['f']=true}
function export.create(frame)
local title = frame.args[1]
local startPer = frame.args['period']
if startPer then startPer = mw.ustring.lower(startPer) end
if startPer == 'койне' or startPer == 'koine' then
startPer = 'koi2'
elseif startPer == 'конст' then
startPer = 'byz2'
end
if not u.contains(inlinePeriods, startPer) then startPer = nil end
title = mw.ustring.lower(title)
title = mw.ustring.gsub(title, 'ς', 'σ')
title = mw.ustring.gsub(title, 'ῤ', 'ρ')
for i=1, #periods do
IPAs[periods[i]] = {['notes']={}}
end
local length = mw.ustring.len(title)
local x = 1
local letter = ''
local nextLetter = ''
local cla = {}
local alert = false
local naked = ''
local accent = ''
local diphthong = false
local function preFront(which)
local fronts = {['ι']=true, ['η']=true, ['ε']=true}
local nLet = mw.ustring.sub(title, x+1+which, x+1+which)
local nnLet = mw.ustring.sub(title, x+2+which, x+2+which)
if fronts[((l[nLet].naked) or nLet)] then
return true
elseif (nLet == 'a' or nLet == 'ο') and ((l[nnLet].naked or nnLet) == 'ι') then
return true
else
return false
end
end
local function decode(condition)
if mw.ustring.find(condition, '[+/]') then
local sep = mw.ustring.find(condition, "[/+][^/+]*$")
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
if mw.ustring.sub(condition, sep, sep) == '/' then
return decode(chunk1) or decode(chunk2)
elseif mw.ustring.sub(condition, sep, sep) == '+' then
return decode(chunk1) and decode(chunk2)
end
elseif mw.ustring.find(condition, '=') then
local sep = mw.ustring.find(condition, '=')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
local checkLetter
if tonumber(x+chunk1) < 1 then
checkLetter = ''
else
checkLetter = mw.ustring.sub(title, x+chunk1, x+chunk1)
end
return checkLetter == chunk2
elseif mw.ustring.find(condition, '%.') then
local sep = mw.ustring.find(condition, '%.')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
local checkLetter = mw.ustring.sub(title, x+chunk1, x+chunk1)
return l[checkLetter][chunk2]
elseif mw.ustring.find(condition, '%-') then
local sep = mw.ustring.find(condition, '%-')
local chunk1 = mw.ustring.sub(condition, 1, sep - 1)
local chunk2 = mw.ustring.sub(condition, sep + 1)
if chunk2 == 'preFront' then
return preFront(chunk1)
end
end
end
local function check(p, period)
if type(p) == 'string' then
return p
elseif type(p) == 'table' then
for i = 1, #p do
possP = p[i]
if type(possP) == 'string' then
return possP
elseif type(possP) == 'table' then
rawCondition = possP[1]
rawResult = possP[2]
local condition = decode(rawCondition)
if condition then
if type(rawResult) == 'string' then
return rawResult
else
return check(rawResult, period)
end
end
end
end
end
end
while x <= length do
letter = mw.ustring.sub(title, x, x)
nextLetter = mw.ustring.sub(title, x+1, x+1)
if not l[letter] then
elseif l[letter].type == 'consonant' then
for i = 1, #periods do
period = periods[i]
currentP = l[letter].p[period]
result = check(currentP, period)
table.insert(IPAs[period], result)
end
elseif l[letter].type == 'vowel' then
local diphthong = false
local vCurrent, vForm, vLength;
if iStart[letter] and (l[nextLetter] and l[nextLetter].type == 'vowel' and (nextLetter == 'ι' or (l[nextLetter].naked and l[nextLetter].naked == 'ι' and not l[nextLetter].diar))) then
diphthong = letter..'ι'
elseif uStart[letter] and (l[nextLetter] and l[nextLetter].type == 'vowel' and (nextLetter == 'υ' or (l[nextLetter].naked and l[nextLetter].naked == 'υ' and not l[nextLetter].diar))) then
diphthong = letter..'υ'
end
if diphthong then
vCurrent = nextLetter
vForm = diphthong
vLength = 'long'
x = x + 1
nextLetter = mw.ustring.sub(title, x+1, x+1)
else
vCurrent = letter
vForm = l[letter].naked or letter
vLength = l[vCurrent].length or l[vForm].length
end
for i = 1, #periods do
period = periods[i]
if period == 'cla' then
if l[vCurrent].breath == 'rough' then
table.insert(IPAs['cla'], 'h')
end
elseif period == 'koi1' then
if l[vCurrent].breath == 'rough' then
table.insert(IPAs['koi1'], '(h)')
end
end
if period ~= 'cla' then
if l[vCurrent].accent then
table.insert(IPAs[period], 'ˈ')
end
local vIP = check(l[vForm].p[period], period)
table.insert(IPAs[period], vIP)
else
if vLength == 'either' then
if l[vCurrent].accent == 'circum' then
vLength = 'long'
elseif l[vCurrent].subi then
vLength = 'long'
elseif nextLetter == '̄' or nextLetter == '¯' then
vLength = 'long'
elseif nextLetter == '̆' or nextLetter == '˘' then
vLength = 'short'
else
table.insert(IPAs.cla.notes, '')
end
end
local vIP = check(l[vForm].p.cla, cla)
if mw.ustring.len(vIP) > 1 then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d3
elseif l[vCurrent].accent == 'circum' then
vFP = mw.ustring.sub(vIP, 1, 1)..d2..mw.ustring.sub(vIP, 2)
else
vFP = vIP
end
elseif l[vCurrent].subi then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d1..'ːɪ'..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d1..'ːɪ'..d3
elseif l[vCurrent].accent == 'circum' then
vFP = vIP..d2..d1..'ːɪ'
else
vFP = vIP..d1..'ːɪ'
end
elseif vLength == 'long' then
if l[vCurrent].accent == 'acute' then
vFP = vIP..d4..'ː'
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d5..'ː'
elseif l[vCurrent].accent == 'circum' then
vFP = vIP..d6..'ː'
else
vFP = vIP..'ː'
end
else
if l[vCurrent].accent == 'acute' then
vFP = vIP..d2
elseif l[vCurrent].accent == 'grave' then
vFP = vIP..d3
else
vFP = vIP
end
end
table.insert(IPAs['cla'], vFP)
end
end
else
alert = true
end
x = x + 1
end
for i=1, #periods do
IPAs[periods[i]] = {['IPA']=table.concat(IPAs[periods[i]], ''), ['notes']=IPAs[periods[i]]['notes']}
end
for i=1, #periods do
local period = periods[i]
local word = IPAs[period].IPA
if word == '' then
return nil
end
local syllables = {}
local cVowel, nVowel, sBreak, stress, wordEnd, searching
while word ~= '' do
cVowel, nVowel, sBreak, stress = false, false, false, false
searching = 1
cVowelFound = false
while not cVowel do
letter = mw.ustring.sub(word, searching, searching)
if cVowelFound then
if iVows[letter] or iCons[letter] or letter == '' or letter == 'ˈ' then
cVowel = searching - 1
elseif iDias[letter] then
searching = searching + 1
elseif letter == d1 then
cVowelFound = false
searching = searching + 1
else
searching = searching + 1
end
else
if iVows[letter] then
cVowelFound = true
elseif letter == 'ˈ' then
stress = true
elseif letter == '' then
cVowel = true
wordEnd = true
end
searching = searching + 1
end
end
searching = cVowel + 1
while (not nVowel) and (not wordEnd) do
letter = mw.ustring.sub(word, searching, searching)
if iVows[letter] or letter == 'ˈ' then
nVowel = searching
elseif letter == '' then
wordEnd = true
else
searching = searching + 1
end
end
if wordEnd then
sBreak = mw.ustring.len(word)
elseif iLiqs[mw.ustring.sub(word, nVowel-1, nVowel-1)] then
if iStops[mw.ustring.sub(word, nVowel-2, nVowel-2)] then
sBreak = nVowel - 3
elseif mw.ustring.sub(word, nVowel-2, nVowel-2) == 'ʰ' and iStops[mw.ustring.sub(word, nVowel-3, nVowel-3)] then
sBreak = nVowel - 4
else
sBreak = nVowel - 2
end
elseif iCons[mw.ustring.sub(word, nVowel-1, nVowel-1)] then
sBreak = nVowel - 2
elseif mw.ustring.sub(word, nVowel-1, nVowel-1) == 'ʰ' and iStops[mw.ustring.sub(word, nVowel-2, nVowel-2)] then
sBreak = nVowel - 3
elseif mw.ustring.sub(word, nVowel-1, nVowel-1) == '̥' and mw.ustring.sub(word, nVowel-2, nVowel-2) == 'r' then
sBreak = nVowel - 3
else
sBreak = nVowel - 1
end
local syllable = mw.ustring.sub(word, 1, sBreak)
if stress then
if next(syllables) or syllable ~= word then
syllable = 'ˈ'..mw.ustring.gsub(syllable, 'ˈ', '')
else
syllable = mw.ustring.gsub(syllable, 'ˈ', '')
end
stress = false
end
table.insert(syllables, syllable)
word = mw.ustring.sub(word, sBreak+1)
end
if #syllables > 0 then
IPAs[period].IPA = table.concat(syllables, '.')
end
end
local startIndex = 1
if startPer then startIndex = get_index(inlinePeriods, startPer) end
local inlineProns = ''
local period
for i = startIndex, #inlinePeriods do
period = inlinePeriods[i]
inlineProns = inlineProns..'<span class="IPA" lang="grc">['..IPAs[period].IPA..']</span>'
if period ~= 'byz2' then
inlineProns = inlineProns..' → '
else
inlineProns = inlineProns..' {{скр-блок|опис=докладніше|id=t-grc-'.. title .. '|'
end
end
--local inlineProns = inlineProns..'|'
if startPer then startIndex = get_index(periods, startPer) end
local fullProns = '\n'
for i = startIndex, #periods do
period = periods[i]
local notes = ''
if #IPAs[period].notes > 0 then
notes = table.concat(IPAs[period].notes, '')
end
fullProns = fullProns..'* '..periodLabels[period]..': ['..IPAs[period].IPA..']'..notes
if period ~= 'byz2' then
fullProns = fullProns..'\n'
else
fullProns = fullProns..'}}'
end
end
local final = inlineProns..fullProns
return frame:preprocess(final)
end
return export
aaw2gfa7c9yo4muybloik61xy2zjrlr
Шаблон:transcription-grc
10
90635
574070
2026-07-23T18:31:32Z
It-is-Truly-Meet
32804
Цей код скопійовано з російської вікісловника.
574070
wikitext
text/x-wiki
<ul class="transcription" style="margin-left:0; list-style:none;"><li>[[w:Международный фонетический алфавит|МФА]]: {{#invoke:transcription-grc|create|{{{1|{{PAGENAME}}}}}|period={{{период|{{{period}}}}}}}}</li></ul>{{#if:{{{омофоны|}}}|{{омофоны|{{{омофоны}}}}}}}
gsaeraekplu28sm9f6w40m91j91o4fk
Шаблон:скр-блок
10
90636
574076
2026-07-23T22:27:40Z
It-is-Truly-Meet
32804
Цей код скопійовано з російської вікісловника.
574076
wikitext
text/x-wiki
<includeonly><span class="mw-collapsible-toggle mw-customtoggle-{{{id|Block_01}}}"
style="float:none; display: inline-block; vertical-align: super; font-size: x-small; color:#0645AD;">{{кс|{{#if: {{{опис|}}}|{{{опис|}}}|а также}}}}</span><div class="mw-collapsible mw-collapsed expand-child" id="mw-customcollapsible-{{{id|Block_01}}}">{{{1|}}}</div></includeonly>
snboos1e39b6q6a0d1bmxew5dqziafy
Шаблон:кс
10
90637
574077
2026-07-23T22:30:13Z
It-is-Truly-Meet
32804
Цей код скопійовано з російської вікісловника.
574077
wikitext
text/x-wiki
<nowiki>[</nowiki>{{{1}}}<nowiki>]</nowiki><noinclude>
Выводит текст в '''к'''вадратных '''с'''кобках.</noinclude>
p1s0kemm86eauxlv1hl61uf2j09ze1d
574080
574077
2026-07-23T22:42:31Z
It-is-Truly-Meet
32804
574080
wikitext
text/x-wiki
<nowiki>[</nowiki>{{{1}}}<nowiki>]</nowiki><noinclude>
<!-- Выводит текст в '''к'''вадратных '''с'''кобках. -->
Виводить текст у '''к'''вадратних '''д'''ужках.</noinclude>
e5awxerl44cmstpi4143n1sp39g7jfu