Вікісловник 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|прослухати вимову}} *{{транскрипція|к&nbsp;л'&nbsp;у&nbsp;ч}} === Семантичні властивості === ==== Значення ==== {{семантика|синоніми=|антоніми=|гіпероніми=|гіпоніми=}} {{приклад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|прослухати вимову}} * {{транскрипція|к&nbsp;л'&nbsp;у&nbsp;ч}} === Семантичні властивості === ==== Значення ==== {{спец.|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