Wiksiyonaryo
tlwiktionary
https://tl.wiktionary.org/wiki/Wiksiyonaryo:Unang_Pahina
MediaWiki 1.48.0-wmf.4
case-sensitive
Midya
Natatangi
Usapan
Tagagamit
Usapang tagagamit
Wiksiyonaryo
Usapang Wiksiyonaryo
Talaksan
Usapang talaksan
MediaWiki
Usapang MediaWiki
Padron
Usapang padron
Tulong
Usapang tulong
Kategorya
Usapang kategorya
TimedText
TimedText talk
Module
Module talk
Event
Event talk
aklat
0
2799
178651
178640
2026-11-12T02:29:29Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178651
wikitext
text/x-wiki
=={{=tl=}}==
[[Image:Pieni2.jpg|thumb|isang uri ng aklat]]
===Alternatibong pagbaybay===
* {{alt|tl|aclat||obsolete|Abecedario}}
===Pagbigkas===
{{tl-pr|aklát}}
===Pangngalan===
{{tl-noun|aklát|b=+}}
{{wp|}}
# anumang [[koleksiyon]] ng mga [[papel]] na [[bigkis|binigkis]] sa isang bahagi at naglalaman ng [[limbag|nilimbag]] o [[sulat|sinulat]] na [[teksto]], [[larawan]], atbp.
#: {{syn|tl|libro}}
#: {{ux|tl|Ginawa niyang '''aklat''' yung mga papel na naglalaman sa komiks niya.}}
# anumang [[manuskrito|manuskritong]] nilimbag, madalas [[prosa]] kagaya ng [[nobela]], na nilalagyan ng [[pabalat]]
#: {{syn|tl|libro}}
#: {{ux|tl|Maraming bagong labas na '''aklat''' na mabibili sa pamilihan na yon.}}
# isang [[bahagi]] ng [[mahaba|mahabang]] [[gawa]] kagaya ng [[Bibliya]]
#: {{ux|tl|Nagmula sa '''aklat''' ni Mateo ang binasa ng pari sa misa.}}
#: {{syn|tl|tomo|bolyum}}
# {{lb|tl|obsolete}} [[buklat|pagbuklat]] {{lb|tl|ng aklat}}
====Hinangong kataga====
{{col3|tl|aklatan|aklat-pampaaralan|aklat-dasalan|aklat-sanayan|aklat-tuosan|paaklatan|lunsad-aklat|Aklat ni Mormon|aklat-katitikan}}
====Salin====
{{trans-top|manuskrito o koleksiyon}}
* {{=ast=}}: {{t+|ast|llibru|m}}
* {{=es=}}: {{t+|es|libro|m}}, {{t+|es|libraco|m}} {{qualifier|pampanira}}
* {{=gl=}}: {{t+|gl|libro|m}}, {{t+|gl|livro|m}} {{qualifier|reintegrasyonista}}
* {{=ja=}}: {{t+|ja|本|tr=hon}}, {{t+|ja|書籍|tr=shoseki}}, {{t+|ja|ブック|tr=bukku}}
* {{=en=}}: {{t+|en|book}}
* {{=ca=}}: {{t+|ca|llibre|m}}
* {{=la=}}: {{t+|la|liber|m}}
* {{=osp=}}: {{t+|osp|libro|m}}
* {{=pt=}}: {{t+|pt|livro|m}}
* {{=fr=}}: {{t+|fr|livre|m}}
{{trans-bottom}}
{{trans-top|bahagi ng mahabang gawa}}
* {{=ja=}}: {{t+|ja|巻|tr=kan}}, {{t+|ja|編|tr=hen}}
* {{=en=}}: {{t|en|book}}, {{t|en|volume}}, {{t|en|tome}}
{{trans-bottom}}
====Tingnan din====
* [[buklat]]
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
===Anagrama===
* {{anagrams|tl|a=aaklt|talak|takal|katal|latak|kalat}}
{{C|tl|Aklat|Paglilimbag}}
f3k7z0hejaywsldqzybia1cdfwn7k3r
178652
178651
2026-11-12T02:31:42Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178652
wikitext
text/x-wiki
=={{=tl=}}==
[[Image:Pieni2.jpg|thumb|isang uri ng aklat]]
===Alternatibong pagbaybay===
* {{alt|tl|aclat||obsolete|Abecedario}}
===Pagbigkas===
{{tl-pr|aklát}}
===Pangngalan===
{{tl-noun|aklát|b=+}}
{{wp|}}
# {{senseid|tl|nilimbag}} anumang [[manuskrito|manuskritong]] nilimbag, madalas [[prosa]] kagaya ng [[nobela]], na nilalagyan ng [[pabalat]]
#: {{syn|tl|libro}}
#: {{ux|tl|Maraming bagong labas na '''aklat''' na mabibili sa pamilihan na yon.}}
# {{senseid|tl|koleksiyon ng papel}} anumang [[koleksiyon]] ng mga [[papel]] na [[bigkis|binigkis]] sa isang bahagi at naglalaman ng [[limbag|nilimbag]] o [[sulat|sinulat]] na [[teksto]], [[larawan]], atbp.
#: {{syn|tl|libro}}
#: {{ux|tl|Ginawa niyang '''aklat''' yung mga papel na naglalaman sa komiks niya.}}
# {{senseid|tl|bahagi ng mahabang gawa}} isang [[bahagi]] ng [[mahaba|mahabang]] [[gawa]] kagaya ng [[Bibliya]]
#: {{ux|tl|Nagmula sa '''aklat''' ni Mateo ang binasa ng pari sa misa.}}
#: {{syn|tl|tomo|bolyum}}
# {{lb|tl|obsolete}} [[buklat|pagbuklat]] {{lb|tl|ng aklat}}
====Hinangong kataga====
{{col3|tl|aklatan|aklat-pampaaralan|aklat-dasalan|aklat-sanayan|aklat-tuosan|paaklatan|lunsad-aklat|Aklat ni Mormon|aklat-katitikan}}
====Salin====
{{trans-top|manuskrito o koleksiyon}}
* {{=ast=}}: {{t+|ast|llibru|m}}
* {{=es=}}: {{t+|es|libro|m}}, {{t+|es|libraco|m}} {{qualifier|pampanira}}
* {{=gl=}}: {{t+|gl|libro|m}}, {{t+|gl|livro|m}} {{qualifier|reintegrasyonista}}
* {{=ja=}}: {{t+|ja|本|tr=hon}}, {{t+|ja|書籍|tr=shoseki}}, {{t+|ja|ブック|tr=bukku}}
* {{=en=}}: {{t+|en|book}}
* {{=ca=}}: {{t+|ca|llibre|m}}
* {{=la=}}: {{t+|la|liber|m}}
* {{=osp=}}: {{t+|osp|libro|m}}
* {{=pt=}}: {{t+|pt|livro|m}}
* {{=fr=}}: {{t+|fr|livre|m}}
{{trans-bottom}}
{{trans-top|bahagi ng mahabang gawa}}
* {{=ja=}}: {{t+|ja|巻|tr=kan}}, {{t+|ja|編|tr=hen}}
* {{=en=}}: {{t|en|book}}, {{t|en|volume}}, {{t|en|tome}}
{{trans-bottom}}
====Tingnan din====
* [[buklat]]
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
===Anagrama===
* {{anagrams|tl|a=aaklt|talak|takal|katal|latak|kalat}}
{{C|tl|Aklat|Paglilimbag}}
b1y3usittns1vky0g2m88fatgttnk9v
178653
178652
2026-11-12T02:32:04Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178653
wikitext
text/x-wiki
=={{=tl=}}==
[[Image:Pieni2.jpg|thumb|isang uri ng aklat]]
===Alternatibong pagbaybay===
* {{alt|tl|aclat||obsolete|Abecedario}}
===Pagbigkas===
{{tl-pr|aklát}}
===Pangngalan===
{{tl-noun|aklát|b=+}}
{{wp|}}
# {{senseid|tl|nilimbag}} anumang [[manuskrito|manuskritong]] nilimbag, madalas [[prosa]] kagaya ng [[nobela]], na nilalagyan ng [[pabalat]]
#: {{syn|tl|libro}}
#: {{ux|tl|Maraming bagong labas na '''aklat''' na mabibili sa pamilihan na yon.}}
# {{senseid|tl|koleksiyon ng papel}} anumang [[koleksiyon]] ng mga [[papel]] na [[bigkis|binigkis]] sa isang bahagi at naglalaman ng [[limbag|nilimbag]] o [[sulat|sinulat]] na [[teksto]], [[larawan]], atbp.
#: {{syn|tl|libro}}
#: {{ux|tl|Ginawa niyang '''aklat''' yung mga papel na naglalaman sa komiks niya.}}
# {{senseid|tl|bahagi ng mahabang gawa}} isang [[bahagi]] ng [[mahaba|mahabang]] [[gawa]] kagaya ng [[Bibliya]]
#: {{syn|tl|tomo|bolyum}}
#: {{ux|tl|Nagmula sa '''aklat''' ni Mateo ang binasa ng pari sa misa.}}
# {{lb|tl|obsolete}} [[buklat|pagbuklat]] {{lb|tl|ng aklat}}
====Hinangong kataga====
{{col3|tl|aklatan|aklat-pampaaralan|aklat-dasalan|aklat-sanayan|aklat-tuosan|paaklatan|lunsad-aklat|Aklat ni Mormon|aklat-katitikan}}
====Salin====
{{trans-top|manuskrito o koleksiyon}}
* {{=ast=}}: {{t+|ast|llibru|m}}
* {{=es=}}: {{t+|es|libro|m}}, {{t+|es|libraco|m}} {{qualifier|pampanira}}
* {{=gl=}}: {{t+|gl|libro|m}}, {{t+|gl|livro|m}} {{qualifier|reintegrasyonista}}
* {{=ja=}}: {{t+|ja|本|tr=hon}}, {{t+|ja|書籍|tr=shoseki}}, {{t+|ja|ブック|tr=bukku}}
* {{=en=}}: {{t+|en|book}}
* {{=ca=}}: {{t+|ca|llibre|m}}
* {{=la=}}: {{t+|la|liber|m}}
* {{=osp=}}: {{t+|osp|libro|m}}
* {{=pt=}}: {{t+|pt|livro|m}}
* {{=fr=}}: {{t+|fr|livre|m}}
{{trans-bottom}}
{{trans-top|bahagi ng mahabang gawa}}
* {{=ja=}}: {{t+|ja|巻|tr=kan}}, {{t+|ja|編|tr=hen}}
* {{=en=}}: {{t|en|book}}, {{t|en|volume}}, {{t|en|tome}}
{{trans-bottom}}
====Tingnan din====
* [[buklat]]
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
===Anagrama===
* {{anagrams|tl|a=aaklt|talak|takal|katal|latak|kalat}}
{{C|tl|Aklat|Paglilimbag}}
19mul9wqtyxna27h1497u6byjrd3t7c
178654
178653
2026-11-12T02:32:39Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178654
wikitext
text/x-wiki
=={{=tl=}}==
[[Image:Pieni2.jpg|thumb|isang uri ng aklat]]
===Alternatibong pagbaybay===
* {{alt|tl|aclat||obsolete|Abecedario}}
===Pagbigkas===
{{tl-pr|aklát}}
===Pangngalan===
{{tl-noun|aklát|b=+}}
{{wp|}}
# {{senseid|tl|nilimbag}} anumang [[manuskrito|manuskritong]] nilimbag, madalas [[prosa]] kagaya ng [[nobela]], na nilalagyan ng [[pabalat]]
#: {{syn|tl|libro}}
#: {{ux|tl|Maraming bagong labas na '''aklat''' na mabibili sa pamilihan na yon.}}
# {{senseid|tl|koleksiyon ng papel}} anumang [[koleksiyon]] ng mga [[papel]] na [[bigkis|binigkis]] sa isang bahagi at naglalaman ng [[limbag|nilimbag]] o [[sulat|sinulat]] na [[teksto]], [[larawan]], atbp.
#: {{syn|tl|libro}}
#: {{ux|tl|Ginawa niyang '''aklat''' yung mga papel na naglalaman ng komiks niya.}}
# {{senseid|tl|bahagi ng mahabang gawa}} isang [[bahagi]] ng [[mahaba|mahabang]] [[gawa]] kagaya ng [[Bibliya]]
#: {{syn|tl|tomo|bolyum}}
#: {{ux|tl|Nagmula sa '''aklat''' ni Mateo ang binasa ng pari sa misa.}}
# {{lb|tl|obsolete}} [[buklat|pagbuklat]] {{lb|tl|ng aklat}}
====Hinangong kataga====
{{col3|tl|aklatan|aklat-pampaaralan|aklat-dasalan|aklat-sanayan|aklat-tuosan|paaklatan|lunsad-aklat|Aklat ni Mormon|aklat-katitikan}}
====Salin====
{{trans-top|manuskrito o koleksiyon}}
* {{=ast=}}: {{t+|ast|llibru|m}}
* {{=es=}}: {{t+|es|libro|m}}, {{t+|es|libraco|m}} {{qualifier|pampanira}}
* {{=gl=}}: {{t+|gl|libro|m}}, {{t+|gl|livro|m}} {{qualifier|reintegrasyonista}}
* {{=ja=}}: {{t+|ja|本|tr=hon}}, {{t+|ja|書籍|tr=shoseki}}, {{t+|ja|ブック|tr=bukku}}
* {{=en=}}: {{t+|en|book}}
* {{=ca=}}: {{t+|ca|llibre|m}}
* {{=la=}}: {{t+|la|liber|m}}
* {{=osp=}}: {{t+|osp|libro|m}}
* {{=pt=}}: {{t+|pt|livro|m}}
* {{=fr=}}: {{t+|fr|livre|m}}
{{trans-bottom}}
{{trans-top|bahagi ng mahabang gawa}}
* {{=ja=}}: {{t+|ja|巻|tr=kan}}, {{t+|ja|編|tr=hen}}
* {{=en=}}: {{t|en|book}}, {{t|en|volume}}, {{t|en|tome}}
{{trans-bottom}}
====Tingnan din====
* [[buklat]]
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
===Anagrama===
* {{anagrams|tl|a=aaklt|talak|takal|katal|latak|kalat}}
{{C|tl|Aklat|Paglilimbag}}
8jiz0sjw8i9cj9x4ziijior9ap9l4oe
libro
0
3002
178642
178603
2026-11-12T02:05:52Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178642
wikitext
text/x-wiki
=={{=tl=}}==
[[Talaksan:Delphine, Madame de Staël, Paris, 1803 04.jpg|thumb|mga libro (kahulugan 1)]]
===Alternatibong pagbaybay===
* {{alt|tl|libdo||obsolete}}
===Etimolohiya===
{{ety|tl|:bor|es:libro|tree=1}}
{{bor+|tl|es|libro}} na may paglipat sa diin, mula sa {{der|tl|la|liber|librum}}.
===Pagbigkas===
{{tl-pr|libró}}
===Pangngalan===
{{tl-noun|libró|b=+}}
# {{senseid|tl|aklat}} [[aklat]]
# {{lb|tl|colloquial}} [[talaan]] {{q|ng [[taya]], bayad, atbp.}}
#: {{syn|tl|aklat-talaan|libro-de-rehistro}}
# {{senseid|tl|iskrip}} {{lb|tl|theater}} [[iskrip]] ng isang [[dula]], [[opera]], o [[musikal]]
#: {{syn|tl|libreto}}
# {{senseid|tl|pagtutuos}} {{lb|tl|accounting}} [[kronolohiko|kronolohikong]] talaan ng mga [[bayad]] o [[resibo]]
#: {{syn|tl|libro de-kuwenta|aklat-tuosan|ledyer|dyornal}}
# {{senseid|tl|anatomiya}} {{lb|tl|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}} na karaniwang [[sangkap]] ng [[kare-kare]], [[goto]], atbp.
#: {{syn|tl|tuwalya|omasum}}
====Hinangong kataga====
{{col3|tl|libruhin|pagsasalibro}}
====Kaugnay na kataga====
{{col3|tl|libreto|libreriya|libreta|libro mayor|tenedor-de-libros}}
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
* {{R:Vocabulario de la lengua tagala 1613|389|Libro) Libdo (pc) C. qualquiera yalo entienden en eſpañol corupto}}
=={{=es=}}==
===Pagbigkas===
{{es-pr}}
===Etimolohiya 1===
{{etymon|es|:inh|osp:libro|tree=1}}
{{inh+|es|osp|libro}}, isang {{lbor|es|la|liber||aklat|nocap=1}}. Kapatid ng {{cog|ast|llibru}}, {{cog|ca|llibre}}, {{cog|fr|livre}}, {{cog|gl|libro}}, {{cog|it|libro}}{{,}} at {{cog|pt|livro}}.
====Pangngalan====
{{es-noun|m}}
{{wp|es:}}
# [[aklat]]
#: {{syn|es|códice|tomo|volumen}}
# [[iskrip]] ng isang [[dula]] o [[drama]]; {{l|tl|libro|id=iskrip}}; [[libreto]]
#: {{syn|es|libreto}}
# {{lb|es|figurative}} anumang [[lathalain]] na nagbibigay ng [[gabay]] o [[panuto]]
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
#: {{syn|es|librillo|omaso}}
# [[buwis]] na kinokolekta ng [[estado]]
=====Hiponimo=====
{{col|es
|gran libro
|libro blanco
|libro de acuerdos
|libro de asiento
|libro de becerro
|libro de bolsillo
|libro de caballerías
|libro de cabecera
|libro de caja
|libro de contabilidad
|libro de cuentas ajustadas
|libro de cuentos
|libro de escolaridad
|libro de estilo
|libro de familia
|libro de fondo
|libro de frases
|libro de hechizos
|libro de honor
|libro de horas
|libro de inventarios
|libro de la vida
|libro de las sombras
|libro de lo salvado
|libro de mano
|libro de memoria
|libro de misa
|Libro de Mormón
|libro de música
|libro de oro
|libro mayor
|libro de surtido
|libro de texto
|libro de visitas
|libro diario
|libro electrónico
|libro sagrado
}}
=====Hinangong kataga=====
{{col|es
|audiolibro
|cantar a libro abierto
|de libro
|hablar como un libro
|librito
|librote
|libraco
|librería
|libreta
|libro cerrado<t:saradong aklat><ll:idyoma>
|libro abierto
|libro de caballerías
|pulmón en libro
|teneduría de libros
|tragalibros
}}
=====Kaugnay na kataga=====
{{col|es
|librero
|libreto
}}
=====Anak na kataga=====
{{topN}}
* {{desc|cbk|libro}}
* {{desc|bcl|libro|bor=1}}
* {{desc|ceb|libro|bor=1}}
* {{desc|nhe|libro|bor=1}}
* {{desc|ivb|libro|bor=1}}
* {{desc|pbg|liuru|bor=1}}
* {{desc|qu|liwru|bor=1}}
* {{desc|tl|libro|bor=1}}
* {{desc|bor=1|nhi|libro}}
{{bottomN}}
====Tingnan din====
* {{l|es|tomo}}
===Etimolohiya 2===
====Pandiwa====
{{head|es|verb form}}
# {{es-verb form of|librar}}
===Sanggunian===
* {{R:es:DCECH|libro|643|vol=G–Ma}}
===Magbasa pa===
* {{R:es:DRAE}}
==Esperanto==
===Pangngalan===
<!--{{infl|eo|pangngalan}}-->
{{eo-noun}}
# [[aklat]]
=={{=gl=}}==
===Alternatibong pagbaybay===
* {{alt|gl|livro||reinteg}}
===Etimolohiya 1===
Mula {{inh|gl|roa-opt|livro}} (ika-13 siglo, ''{{w|Cantigas de Santa Maria}}''), mula {{inh|gl|la|liber|liber, librum|aklat}}. Ikumpara sa {{cog|pt|livro}}.
====Pagbigkas====
{{gl-pr}}
* {{hyph|gl|li|bro}}
====Pangngalan====
{{gl-noun|m}}
# [[aklat]]
#* {{quote-book|gl|year=2010|translator=Moisés Barcia|title=Unha lectora fóra do común|page=back cover|passage=Nunca mostrara moito interese pola lectura, pero tomou en préstamo un '''libro''', e a este seguíronlle moitos outros, tantos que pouco a pouco a afección se converteu en devoción, o que perturbou as relacións coa súa familia, os ministros, a servidume e os amigos.|translation=Hindi naman siya nagpakita ng interes sa pagbabasa, ngunit nanghiram pa rin siya ng '''aklat''', na kalauna'y sunod-sunod, hanggang sa sobrang dami ay umabot sa punto ng debosyon na gumambala sa relasyon niya sa kanyang pamilya, mga ministro, paninilbihan, at mga kaibigan niya.}}
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
#: {{syn|gl|entrefollo|santafollo}}
=====Hinangong kataga=====
{{col3|gl|libriño}}
====Sanggunian====
* {{R:gl:DRAG}}
* {{R:gl:TILG}}
* {{R:TLPGP}}
* {{R:gl:DDGM}}
* {{R:gl:CX}}
===Etimolohiya 2===
====Pandiwa====
{{head|gl|verb form}}
# {{gl-verb form of|librar}}
=={{=it=}}==
===Etimolohiya===
{{etymon|it|:lbor|la:liber}}
{{lbor|it|la|liber|librum|t=aklat}}.
===Pagbigkas===
{{it-pr|lìbro<audio:It-un libro.ogg><audio:It-libro.ogg>}}
===Pangngalan===
{{it-noun|m|pagename=libro|dim=librétto,librìno,libriccìno<qq:mas karaniwan>,librettìno|dim_derog=librùccio,librettùccio,libricciòlo|derog=libriciàttolo,libràttolo<q:pampanitikan>|aug=libróne|pej=libràccio}}
# [[aklat]]
# {{lb|it|botany}} [[ploema]]; [[kadahunan]]
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
====Hinangong kataga====
* {{l|it|libro di testo}}
====Kaugnay na kataga====
{{col2|it|libraio|librario|libreria|libresco|libretto|librone}}
===Magbasa pa===
* {{R:it:Collins}}
* {{R:it:Trec}}
===Anagrama===
* {{anagrams|it|a=bilor|broli}}
=={{=osp=}}==
===Alternatibong pagbaybay===
* {{alter|osp|liuro}}
===Etimolohiya===
{{etymon|osp|:lbor|la:liber<alt:librum><id:peel>}}
{{lbor|osp|la|liber|librum}}.
===Pagbigkas===
* {{IPA|osp|/ˈliβɾo/}}
===Pangngalan===
{{osp-noun|m}}
# [[aklat]]
#* {{quote-book|osp|year=c. 1200|author=Almerich|title=[[w:Fazienda de Ultramar|Fazienda de Ultramar]]|section=f. 20v
|passage=dixo el nŕo ſenor a moẏſen qui peccare en mi deſfer loe de mio '''libro'''. Agora ue e di ami pueblo cuemo fable {{...}}
|norm=Dixo el nuestro Sennor a Moysen “Qui peccare en mí, desfer-lo-é de mío '''libro'''. Agora ve e di a mi pueblo cuemo fablé {{...}}”
|translation=Sinabi ng ating Panginoon kay Moises, "Kung sinuman ang nagkasala sa akin, aking buburahin sa '''aklat''' ko. Ngayon, humayo ka at sabihin mo sa aking bayan ang sinabi ko sa iyo. {{...}}”}}
====Anak na kataga====
{{topN}}
* {{desc|lad|livro//ליב'רו}}
* {{desc|es|libro}} {{see desc}}
{{bottomN}}
gsfbl11qgga6iun4u8b9j39jy5xnmfv
178643
178642
2026-11-12T02:06:16Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178643
wikitext
text/x-wiki
=={{=tl=}}==
[[Talaksan:Delphine, Madame de Staël, Paris, 1803 04.jpg|thumb|mga libro (kahulugan 1)]]
===Alternatibong pagbaybay===
* {{alt|tl|libdo||obsolete}}
===Etimolohiya===
{{ety|tl|:bor|es:libro|tree=1}}
{{bor+|tl|es|libro}} na may paglipat sa diin, mula sa {{der|tl|la|liber|librum}}.
===Pagbigkas===
{{tl-pr|libró}}
===Pangngalan===
{{tl-noun|libró|b=+}}
# {{senseid|tl|aklat}} [[aklat]]
# {{lb|tl|colloquial}} [[talaan]] {{q|ng [[taya]], bayad, atbp.}}
#: {{syn|tl|aklat-talaan|libro-de-rehistro}}
# {{senseid|tl|iskrip}} {{lb|tl|theater}} [[iskrip]] ng isang [[dula]] o [[drama]]
#: {{syn|tl|libreto}}
# {{senseid|tl|pagtutuos}} {{lb|tl|accounting}} [[kronolohiko|kronolohikong]] talaan ng mga [[bayad]] o [[resibo]]
#: {{syn|tl|libro de-kuwenta|aklat-tuosan|ledyer|dyornal}}
# {{senseid|tl|anatomiya}} {{lb|tl|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}} na karaniwang [[sangkap]] ng [[kare-kare]], [[goto]], atbp.
#: {{syn|tl|tuwalya|omasum}}
====Hinangong kataga====
{{col3|tl|libruhin|pagsasalibro}}
====Kaugnay na kataga====
{{col3|tl|libreto|libreriya|libreta|libro mayor|tenedor-de-libros}}
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
* {{R:Vocabulario de la lengua tagala 1613|389|Libro) Libdo (pc) C. qualquiera yalo entienden en eſpañol corupto}}
=={{=es=}}==
===Pagbigkas===
{{es-pr}}
===Etimolohiya 1===
{{etymon|es|:inh|osp:libro|tree=1}}
{{inh+|es|osp|libro}}, isang {{lbor|es|la|liber||aklat|nocap=1}}. Kapatid ng {{cog|ast|llibru}}, {{cog|ca|llibre}}, {{cog|fr|livre}}, {{cog|gl|libro}}, {{cog|it|libro}}{{,}} at {{cog|pt|livro}}.
====Pangngalan====
{{es-noun|m}}
{{wp|es:}}
# [[aklat]]
#: {{syn|es|códice|tomo|volumen}}
# [[iskrip]] ng isang [[dula]] o [[drama]]; {{l|tl|libro|id=iskrip}}; [[libreto]]
#: {{syn|es|libreto}}
# {{lb|es|figurative}} anumang [[lathalain]] na nagbibigay ng [[gabay]] o [[panuto]]
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
#: {{syn|es|librillo|omaso}}
# [[buwis]] na kinokolekta ng [[estado]]
=====Hiponimo=====
{{col|es
|gran libro
|libro blanco
|libro de acuerdos
|libro de asiento
|libro de becerro
|libro de bolsillo
|libro de caballerías
|libro de cabecera
|libro de caja
|libro de contabilidad
|libro de cuentas ajustadas
|libro de cuentos
|libro de escolaridad
|libro de estilo
|libro de familia
|libro de fondo
|libro de frases
|libro de hechizos
|libro de honor
|libro de horas
|libro de inventarios
|libro de la vida
|libro de las sombras
|libro de lo salvado
|libro de mano
|libro de memoria
|libro de misa
|Libro de Mormón
|libro de música
|libro de oro
|libro mayor
|libro de surtido
|libro de texto
|libro de visitas
|libro diario
|libro electrónico
|libro sagrado
}}
=====Hinangong kataga=====
{{col|es
|audiolibro
|cantar a libro abierto
|de libro
|hablar como un libro
|librito
|librote
|libraco
|librería
|libreta
|libro cerrado<t:saradong aklat><ll:idyoma>
|libro abierto
|libro de caballerías
|pulmón en libro
|teneduría de libros
|tragalibros
}}
=====Kaugnay na kataga=====
{{col|es
|librero
|libreto
}}
=====Anak na kataga=====
{{topN}}
* {{desc|cbk|libro}}
* {{desc|bcl|libro|bor=1}}
* {{desc|ceb|libro|bor=1}}
* {{desc|nhe|libro|bor=1}}
* {{desc|ivb|libro|bor=1}}
* {{desc|pbg|liuru|bor=1}}
* {{desc|qu|liwru|bor=1}}
* {{desc|tl|libro|bor=1}}
* {{desc|bor=1|nhi|libro}}
{{bottomN}}
====Tingnan din====
* {{l|es|tomo}}
===Etimolohiya 2===
====Pandiwa====
{{head|es|verb form}}
# {{es-verb form of|librar}}
===Sanggunian===
* {{R:es:DCECH|libro|643|vol=G–Ma}}
===Magbasa pa===
* {{R:es:DRAE}}
==Esperanto==
===Pangngalan===
<!--{{infl|eo|pangngalan}}-->
{{eo-noun}}
# [[aklat]]
=={{=gl=}}==
===Alternatibong pagbaybay===
* {{alt|gl|livro||reinteg}}
===Etimolohiya 1===
Mula {{inh|gl|roa-opt|livro}} (ika-13 siglo, ''{{w|Cantigas de Santa Maria}}''), mula {{inh|gl|la|liber|liber, librum|aklat}}. Ikumpara sa {{cog|pt|livro}}.
====Pagbigkas====
{{gl-pr}}
* {{hyph|gl|li|bro}}
====Pangngalan====
{{gl-noun|m}}
# [[aklat]]
#* {{quote-book|gl|year=2010|translator=Moisés Barcia|title=Unha lectora fóra do común|page=back cover|passage=Nunca mostrara moito interese pola lectura, pero tomou en préstamo un '''libro''', e a este seguíronlle moitos outros, tantos que pouco a pouco a afección se converteu en devoción, o que perturbou as relacións coa súa familia, os ministros, a servidume e os amigos.|translation=Hindi naman siya nagpakita ng interes sa pagbabasa, ngunit nanghiram pa rin siya ng '''aklat''', na kalauna'y sunod-sunod, hanggang sa sobrang dami ay umabot sa punto ng debosyon na gumambala sa relasyon niya sa kanyang pamilya, mga ministro, paninilbihan, at mga kaibigan niya.}}
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
#: {{syn|gl|entrefollo|santafollo}}
=====Hinangong kataga=====
{{col3|gl|libriño}}
====Sanggunian====
* {{R:gl:DRAG}}
* {{R:gl:TILG}}
* {{R:TLPGP}}
* {{R:gl:DDGM}}
* {{R:gl:CX}}
===Etimolohiya 2===
====Pandiwa====
{{head|gl|verb form}}
# {{gl-verb form of|librar}}
=={{=it=}}==
===Etimolohiya===
{{etymon|it|:lbor|la:liber}}
{{lbor|it|la|liber|librum|t=aklat}}.
===Pagbigkas===
{{it-pr|lìbro<audio:It-un libro.ogg><audio:It-libro.ogg>}}
===Pangngalan===
{{it-noun|m|pagename=libro|dim=librétto,librìno,libriccìno<qq:mas karaniwan>,librettìno|dim_derog=librùccio,librettùccio,libricciòlo|derog=libriciàttolo,libràttolo<q:pampanitikan>|aug=libróne|pej=libràccio}}
# [[aklat]]
# {{lb|it|botany}} [[ploema]]; [[kadahunan]]
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
====Hinangong kataga====
* {{l|it|libro di testo}}
====Kaugnay na kataga====
{{col2|it|libraio|librario|libreria|libresco|libretto|librone}}
===Magbasa pa===
* {{R:it:Collins}}
* {{R:it:Trec}}
===Anagrama===
* {{anagrams|it|a=bilor|broli}}
=={{=osp=}}==
===Alternatibong pagbaybay===
* {{alter|osp|liuro}}
===Etimolohiya===
{{etymon|osp|:lbor|la:liber<alt:librum><id:peel>}}
{{lbor|osp|la|liber|librum}}.
===Pagbigkas===
* {{IPA|osp|/ˈliβɾo/}}
===Pangngalan===
{{osp-noun|m}}
# [[aklat]]
#* {{quote-book|osp|year=c. 1200|author=Almerich|title=[[w:Fazienda de Ultramar|Fazienda de Ultramar]]|section=f. 20v
|passage=dixo el nŕo ſenor a moẏſen qui peccare en mi deſfer loe de mio '''libro'''. Agora ue e di ami pueblo cuemo fable {{...}}
|norm=Dixo el nuestro Sennor a Moysen “Qui peccare en mí, desfer-lo-é de mío '''libro'''. Agora ve e di a mi pueblo cuemo fablé {{...}}”
|translation=Sinabi ng ating Panginoon kay Moises, "Kung sinuman ang nagkasala sa akin, aking buburahin sa '''aklat''' ko. Ngayon, humayo ka at sabihin mo sa aking bayan ang sinabi ko sa iyo. {{...}}”}}
====Anak na kataga====
{{topN}}
* {{desc|lad|livro//ליב'רו}}
* {{desc|es|libro}} {{see desc}}
{{bottomN}}
4gsqt1t8faxs9no3893hzelnsa1y0uu
178644
178643
2026-11-12T02:10:08Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178644
wikitext
text/x-wiki
=={{=tl=}}==
[[Talaksan:Delphine, Madame de Staël, Paris, 1803 04.jpg|thumb|mga libro (kahulugan 1)]]
===Alternatibong pagbaybay===
* {{alt|tl|libdo||obsolete}}
===Etimolohiya===
{{ety|tl|:bor|es:libro|tree=1}}
{{bor+|tl|es|libro}} na may paglipat sa diin, mula sa {{der|tl|la|liber|librum}}.
===Pagbigkas===
{{tl-pr|libró}}
===Pangngalan===
{{tl-noun|libró|b=+}}
# {{senseid|tl|aklat}} [[aklat]]
# {{lb|tl|colloquial}} [[talaan]] {{q|ng [[taya]], bayad, atbp.}}
#: {{syn|tl|aklat-talaan|libro-de-rehistro}}
# {{senseid|tl|iskrip}} {{lb|tl|theater}} [[iskrip]] ng isang [[dula]] o [[drama]]
#: {{syn|tl|libreto}}
# {{senseid|tl|pagtutuos}} {{lb|tl|accounting}} [[kronolohiko|kronolohikong]] talaan ng mga [[bayad]] o [[resibo]]
#: {{syn|tl|libro de-kuwenta|aklat-tuosan|ledyer|dyornal}}
# {{senseid|tl|anatomiya}} {{lb|tl|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}} na karaniwang [[sangkap]] ng [[kare-kare]], [[goto]], atbp.
#: {{syn|tl|tuwalya|omasum}}
====Hinangong kataga====
{{col3|tl|libruhin|pagsasalibro}}
====Kaugnay na kataga====
{{col3|tl|libreto|libreriya|libreta|libro mayor|tenedor-de-libros}}
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
* {{R:Vocabulario de la lengua tagala 1613|389|Libro) Libdo (pc) C. qualquiera yalo entienden en eſpañol corupto}}
=={{=es=}}==
===Pagbigkas===
{{es-pr}}
===Etimolohiya 1===
{{etymon|es|:inh|osp:libro|tree=1}}
{{inh+|es|osp|libro}}, isang {{lbor|es|la|liber||aklat|nocap=1}}. Kapatid ng {{cog|ast|llibru}}, {{cog|ca|llibre}}, {{cog|fr|livre}}, {{cog|gl|libro}}, {{cog|it|libro}}{{,}} at {{cog|pt|livro}}.
====Pangngalan====
{{es-noun|m}}
{{wp|es:}}
# [[aklat]]
#: {{syn|es|códice|tomo|volumen}}
# {{l|tl|libro|id=iskrip}}, [[libreto]] {{gl|iskrip ng isang dula o drama}}
#: {{syn|es|libreto}}
# {{lb|es|figurative}} anumang [[lathalain]] na nagbibigay ng [[gabay]] o [[panuto]]
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
#: {{syn|es|librillo|omaso}}
# [[buwis]] na kinokolekta ng [[estado]]
=====Hiponimo=====
{{col|es
|gran libro
|libro blanco
|libro de acuerdos
|libro de asiento
|libro de becerro
|libro de bolsillo
|libro de caballerías
|libro de cabecera
|libro de caja
|libro de contabilidad
|libro de cuentas ajustadas
|libro de cuentos
|libro de escolaridad
|libro de estilo
|libro de familia
|libro de fondo
|libro de frases
|libro de hechizos
|libro de honor
|libro de horas
|libro de inventarios
|libro de la vida
|libro de las sombras
|libro de lo salvado
|libro de mano
|libro de memoria
|libro de misa
|Libro de Mormón
|libro de música
|libro de oro
|libro mayor
|libro de surtido
|libro de texto
|libro de visitas
|libro diario
|libro electrónico
|libro sagrado
}}
=====Hinangong kataga=====
{{col|es
|audiolibro
|cantar a libro abierto
|de libro
|hablar como un libro
|librito
|librote
|libraco
|librería
|libreta
|libro cerrado<t:saradong aklat><ll:idyoma>
|libro abierto
|libro de caballerías
|pulmón en libro
|teneduría de libros
|tragalibros
}}
=====Kaugnay na kataga=====
{{col|es
|librero
|libreto
}}
=====Anak na kataga=====
{{topN}}
* {{desc|cbk|libro}}
* {{desc|bcl|libro|bor=1}}
* {{desc|ceb|libro|bor=1}}
* {{desc|nhe|libro|bor=1}}
* {{desc|ivb|libro|bor=1}}
* {{desc|pbg|liuru|bor=1}}
* {{desc|qu|liwru|bor=1}}
* {{desc|tl|libro|bor=1}}
* {{desc|bor=1|nhi|libro}}
{{bottomN}}
====Tingnan din====
* {{l|es|tomo}}
===Etimolohiya 2===
====Pandiwa====
{{head|es|verb form}}
# {{es-verb form of|librar}}
===Sanggunian===
* {{R:es:DCECH|libro|643|vol=G–Ma}}
===Magbasa pa===
* {{R:es:DRAE}}
==Esperanto==
===Pangngalan===
<!--{{infl|eo|pangngalan}}-->
{{eo-noun}}
# [[aklat]]
=={{=gl=}}==
===Alternatibong pagbaybay===
* {{alt|gl|livro||reinteg}}
===Etimolohiya 1===
Mula {{inh|gl|roa-opt|livro}} (ika-13 siglo, ''{{w|Cantigas de Santa Maria}}''), mula {{inh|gl|la|liber|liber, librum|aklat}}. Ikumpara sa {{cog|pt|livro}}.
====Pagbigkas====
{{gl-pr}}
* {{hyph|gl|li|bro}}
====Pangngalan====
{{gl-noun|m}}
# [[aklat]]
#* {{quote-book|gl|year=2010|translator=Moisés Barcia|title=Unha lectora fóra do común|page=back cover|passage=Nunca mostrara moito interese pola lectura, pero tomou en préstamo un '''libro''', e a este seguíronlle moitos outros, tantos que pouco a pouco a afección se converteu en devoción, o que perturbou as relacións coa súa familia, os ministros, a servidume e os amigos.|translation=Hindi naman siya nagpakita ng interes sa pagbabasa, ngunit nanghiram pa rin siya ng '''aklat''', na kalauna'y sunod-sunod, hanggang sa sobrang dami ay umabot sa punto ng debosyon na gumambala sa relasyon niya sa kanyang pamilya, mga ministro, paninilbihan, at mga kaibigan niya.}}
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
#: {{syn|gl|entrefollo|santafollo}}
=====Hinangong kataga=====
{{col3|gl|libriño}}
====Sanggunian====
* {{R:gl:DRAG}}
* {{R:gl:TILG}}
* {{R:TLPGP}}
* {{R:gl:DDGM}}
* {{R:gl:CX}}
===Etimolohiya 2===
====Pandiwa====
{{head|gl|verb form}}
# {{gl-verb form of|librar}}
=={{=it=}}==
===Etimolohiya===
{{etymon|it|:lbor|la:liber}}
{{lbor|it|la|liber|librum|t=aklat}}.
===Pagbigkas===
{{it-pr|lìbro<audio:It-un libro.ogg><audio:It-libro.ogg>}}
===Pangngalan===
{{it-noun|m|pagename=libro|dim=librétto,librìno,libriccìno<qq:mas karaniwan>,librettìno|dim_derog=librùccio,librettùccio,libricciòlo|derog=libriciàttolo,libràttolo<q:pampanitikan>|aug=libróne|pej=libràccio}}
# [[aklat]]
# {{lb|it|botany}} [[ploema]]; [[kadahunan]]
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
====Hinangong kataga====
* {{l|it|libro di testo}}
====Kaugnay na kataga====
{{col2|it|libraio|librario|libreria|libresco|libretto|librone}}
===Magbasa pa===
* {{R:it:Collins}}
* {{R:it:Trec}}
===Anagrama===
* {{anagrams|it|a=bilor|broli}}
=={{=osp=}}==
===Alternatibong pagbaybay===
* {{alter|osp|liuro}}
===Etimolohiya===
{{etymon|osp|:lbor|la:liber<alt:librum><id:peel>}}
{{lbor|osp|la|liber|librum}}.
===Pagbigkas===
* {{IPA|osp|/ˈliβɾo/}}
===Pangngalan===
{{osp-noun|m}}
# [[aklat]]
#* {{quote-book|osp|year=c. 1200|author=Almerich|title=[[w:Fazienda de Ultramar|Fazienda de Ultramar]]|section=f. 20v
|passage=dixo el nŕo ſenor a moẏſen qui peccare en mi deſfer loe de mio '''libro'''. Agora ue e di ami pueblo cuemo fable {{...}}
|norm=Dixo el nuestro Sennor a Moysen “Qui peccare en mí, desfer-lo-é de mío '''libro'''. Agora ve e di a mi pueblo cuemo fablé {{...}}”
|translation=Sinabi ng ating Panginoon kay Moises, "Kung sinuman ang nagkasala sa akin, aking buburahin sa '''aklat''' ko. Ngayon, humayo ka at sabihin mo sa aking bayan ang sinabi ko sa iyo. {{...}}”}}
====Anak na kataga====
{{topN}}
* {{desc|lad|livro//ליב'רו}}
* {{desc|es|libro}} {{see desc}}
{{bottomN}}
8s8fja7ohla5vnqr5yje66ek8m9yb03
178645
178644
2026-11-12T02:11:15Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178645
wikitext
text/x-wiki
=={{=tl=}}==
[[Talaksan:Delphine, Madame de Staël, Paris, 1803 04.jpg|thumb|mga libro (kahulugan 1)]]
===Alternatibong pagbaybay===
* {{alt|tl|libdo||obsolete}}
===Etimolohiya===
{{ety|tl|:bor|es:libro|tree=1}}
{{bor+|tl|es|libro}} na may paglipat sa diin, mula sa {{der|tl|la|liber|librum}}.
===Pagbigkas===
{{tl-pr|libró}}
===Pangngalan===
{{tl-noun|libró|b=+}}
# {{senseid|tl|aklat}} [[aklat]]
# {{lb|tl|colloquial}} [[talaan]] {{q|ng [[taya]], bayad, atbp.}}
#: {{syn|tl|aklat-talaan|libro-de-rehistro}}
# {{senseid|tl|iskrip}} {{lb|tl|theater}} [[iskrip]] ng isang [[dula]] o [[drama]]
#: {{syn|tl|libreto}}
# {{senseid|tl|pagtutuos}} {{lb|tl|accounting}} [[kronolohiko|kronolohikong]] talaan ng mga [[bayad]] o [[resibo]]
#: {{syn|tl|libro de-kuwenta|aklat-tuosan|ledyer|dyornal}}
# {{senseid|tl|anatomiya}} {{lb|tl|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}} na karaniwang [[sangkap]] ng [[kare-kare]], [[goto]], atbp.
#: {{syn|tl|tuwalya|omasum}}
====Hinangong kataga====
{{col3|tl|libruhin|pagsasalibro}}
====Kaugnay na kataga====
{{col3|tl|libreto|libreriya|libreta|libro mayor|tenedor-de-libros}}
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
* {{R:Vocabulario de la lengua tagala 1613|389|Libro) Libdo (pc) C. qualquiera yalo entienden en eſpañol corupto}}
=={{=es=}}==
===Pagbigkas===
{{es-pr}}
===Etimolohiya 1===
{{etymon|es|:inh|osp:libro|tree=1}}
{{inh+|es|osp|libro}}, isang {{lbor|es|la|liber||aklat|nocap=1}}. Kapatid ng {{cog|ast|llibru}}, {{cog|ca|llibre}}, {{cog|fr|livre}}, {{cog|gl|libro}}, {{cog|it|libro}}{{,}} at {{cog|pt|livro}}.
====Pangngalan====
{{es-noun|m}}
{{wp|es:}}
# [[aklat]]
#: {{syn|es|códice|tomo|volumen}}
# {{l|tl|libro|id=iskrip}}, [[libreto]] {{gl|iskrip ng isang dula o drama}}
#: {{syn|es|libreto}}
# {{lb|es|figurative}} anumang [[lathalain]] na nagbibigay ng [[gabay]] o [[panuto]]
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
#: {{syn|es|librillo|omaso}}
# [[buwis]] na kinokolekta ng [[estado]]
=====Hiponimo=====
{{col|es
|gran libro
|libro blanco
|libro de acuerdos
|libro de asiento
|libro de becerro
|libro de bolsillo
|libro de caballerías
|libro de cabecera
|libro de caja
|libro de contabilidad
|libro de cuentas ajustadas
|libro de cuentos
|libro de escolaridad
|libro de estilo
|libro de familia
|libro de fondo
|libro de frases
|libro de hechizos
|libro de honor
|libro de horas
|libro de inventarios
|libro de la vida
|libro de las sombras
|libro de lo salvado
|libro de mano
|libro de memoria
|libro de misa
|Libro de Mormón
|libro de música
|libro de oro
|libro mayor
|libro de surtido
|libro de texto
|libro de visitas
|libro diario
|libro electrónico
|libro sagrado
}}
=====Hinangong kataga=====
{{col|es
|audiolibro
|cantar a libro abierto
|de libro
|hablar como un libro
|librito
|librote
|libraco
|librería
|libreta
|libro cerrado<t:saradong aklat><ll:idyoma>
|libro abierto
|libro de caballerías
|pulmón en libro
|teneduría de libros
|tragalibros
}}
=====Kaugnay na kataga=====
{{col|es
|librero
|libreto
}}
=====Anak na kataga=====
{{topN}}
* {{desc|cbk|libro}}
* {{desc|bcl|libro|bor=1}}
* {{desc|ceb|libro|bor=1}}
* {{desc|nhe|libro|bor=1}}
* {{desc|ivb|libro|bor=1}}
* {{desc|pbg|liuru|bor=1}}
* {{desc|qu|liwru|bor=1}}
* {{desc|tl|libro|bor=1}}
* {{desc|bor=1|nhi|libro}}
{{bottomN}}
====Tingnan din====
* {{l|es|tomo}}
===Etimolohiya 2===
====Pandiwa====
{{head|es|verb form}}
# {{es-verb form of|librar}}
===Sanggunian===
* {{R:es:DCECH|libro|643|vol=G–Ma}}
===Magbasa pa===
* {{R:es:DRAE}}
==Esperanto==
===Pangngalan===
<!--{{infl|eo|pangngalan}}-->
{{eo-noun}}
# [[aklat]]
=={{=gl=}}==
===Alternatibong pagbaybay===
* {{alt|gl|livro||reinteg}}
===Etimolohiya 1===
Mula {{inh|gl|roa-opt|livro}} (ika-13 siglo, ''{{w|Cantigas de Santa Maria}}''), mula {{inh|gl|la|liber|liber, librum|aklat}}. Ikumpara sa {{cog|pt|livro}}.
====Pagbigkas====
{{gl-pr}}
* {{hyph|gl|li|bro}}
====Pangngalan====
{{gl-noun|m}}
# [[aklat]]
#* {{quote-book|gl|year=2010|translator=Moisés Barcia|title=Unha lectora fóra do común|page=back cover|passage=Nunca mostrara moito interese pola lectura, pero tomou en préstamo un '''libro''', e a este seguíronlle moitos outros, tantos que pouco a pouco a afección se converteu en devoción, o que perturbou as relacións coa súa familia, os ministros, a servidume e os amigos.|translation=Hindi naman siya nagpakita ng interes sa pagbabasa, ngunit nanghiram pa rin siya ng '''aklat''', na kalauna'y sunod-sunod, hanggang sa sobrang dami ay umabot sa punto ng debosyon na gumambala sa relasyon niya sa kanyang pamilya, mga ministro, paninilbihan, at mga kaibigan niya.}}
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
#: {{syn|gl|entrefollo|santafollo}}
=====Hinangong kataga=====
{{col3|gl|libriño}}
====Sanggunian====
* {{R:gl:DRAG}}
* {{R:gl:TILG}}
* {{R:TLPGP}}
* {{R:gl:DDGM}}
* {{R:gl:CX}}
===Etimolohiya 2===
====Pandiwa====
{{head|gl|verb form}}
# {{gl-verb form of|librar}}
=={{=it=}}==
===Etimolohiya===
{{etymon|it|:lbor|la:liber}}
{{lbor|it|la|liber|librum|t=aklat}}.
===Pagbigkas===
{{it-pr|lìbro<audio:It-un libro.ogg><audio:It-libro.ogg>}}
===Pangngalan===
{{it-noun|m|pagename=libro|dim=librétto,librìno,libriccìno<qq:mas karaniwan>,librettìno|dim_derog=librùccio,librettùccio,libricciòlo|derog=libriciàttolo,libràttolo<q:pampanitikan>|aug=libróne|pej=libràccio}}
# [[aklat]]
# {{lb|it|botany}} [[ploema]]; [[kadahunan]]
# {{lb|es|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}}; {{l|tl|libro|id=anatomiya}}
====Hinangong kataga====
* {{l|it|libro di testo}}
====Kaugnay na kataga====
{{col2|it|libraio|librario|libreria|libresco|libretto|librone}}
===Magbasa pa===
* {{R:it:Collins}}
* {{R:it:Trec}}
===Anagrama===
* {{anagrams|it|a=bilor|broli}}
=={{=osp=}}==
===Alternatibong pagbaybay===
* {{alter|osp|liuro}}
===Etimolohiya===
{{etymon|osp|:lbor|la:liber<alt:librum><id:peel>}}
{{lbor|osp|la|liber|librum}}.
===Pagbigkas===
* {{IPA|osp|/ˈliβɾo/}}
===Pangngalan===
{{osp-noun|m}}
# [[aklat]]
#* {{quote-book|osp|year=c. 1200|author=Almerich|title=[[w:Fazienda de Ultramar|Fazienda de Ultramar]]|section=f. 20v
|passage=dixo el nŕo ſenor a moẏſen qui peccare en mi deſfer loe de mio '''libro'''. Agora ue e di ami pueblo cuemo fable {{...}}
|norm=Dixo el nuestro Sennor a Moysen “Qui peccare en mí, desfer-lo-é de mío '''libro'''. Agora ve e di a mi pueblo cuemo fablé {{...}}”
|translation=Sinabi ng ating Panginoon kay Moises, "Kung sinuman ang nagkasala sa akin, aking buburahin sa '''aklat''' ko. Ngayon, humayo ka at sabihin mo sa aking bayan ang sinabi ko sa iyo. {{...}}”}}
====Anak na kataga====
{{topN}}
* {{desc|lad|livro//ליב'רו}}
* {{desc|es|libro}} {{see desc}}
{{bottomN}}
74sx2d4fz6d0wdtvbiqwr7p4vxioy80
178646
178645
2026-11-12T02:11:37Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178646
wikitext
text/x-wiki
=={{=tl=}}==
[[Talaksan:Delphine, Madame de Staël, Paris, 1803 04.jpg|thumb|mga libro (kahulugan 1)]]
===Alternatibong pagbaybay===
* {{alt|tl|libdo||obsolete}}
===Etimolohiya===
{{ety|tl|:bor|es:libro|tree=1}}
{{bor+|tl|es|libro}} na may paglipat sa diin, mula sa {{der|tl|la|liber|librum}}.
===Pagbigkas===
{{tl-pr|libró}}
===Pangngalan===
{{tl-noun|libró|b=+}}
# {{senseid|tl|aklat}} [[aklat]]
# {{lb|tl|colloquial}} [[talaan]] {{q|ng [[taya]], bayad, atbp.}}
#: {{syn|tl|aklat-talaan|libro-de-rehistro}}
# {{senseid|tl|iskrip}} {{lb|tl|theater}} [[iskrip]] ng isang [[dula]] o [[drama]]
#: {{syn|tl|libreto}}
# {{senseid|tl|pagtutuos}} {{lb|tl|accounting}} [[kronolohiko|kronolohikong]] talaan ng mga [[bayad]] o [[resibo]]
#: {{syn|tl|libro de-kuwenta|aklat-tuosan|ledyer|dyornal}}
# {{senseid|tl|anatomiya}} {{lb|tl|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}} na karaniwang [[sangkap]] ng [[kare-kare]], [[goto]], atbp.
#: {{syn|tl|tuwalya|omasum}}
====Hinangong kataga====
{{col3|tl|libruhin|pagsasalibro}}
====Kaugnay na kataga====
{{col3|tl|libreto|libreriya|libreta|libro mayor|tenedor-de-libros}}
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
* {{R:Vocabulario de la lengua tagala 1613|389|Libro) Libdo (pc) C. qualquiera yalo entienden en eſpañol corupto}}
=={{=es=}}==
===Pagbigkas===
{{es-pr}}
===Etimolohiya 1===
{{etymon|es|:inh|osp:libro|tree=1}}
{{inh+|es|osp|libro}}, isang {{lbor|es|la|liber||aklat|nocap=1}}. Kapatid ng {{cog|ast|llibru}}, {{cog|ca|llibre}}, {{cog|fr|livre}}, {{cog|gl|libro}}, {{cog|it|libro}}{{,}} at {{cog|pt|livro}}.
====Pangngalan====
{{es-noun|m}}
{{wp|es:}}
# [[aklat]]
#: {{syn|es|códice|tomo|volumen}}
# {{l|tl|libro|id=iskrip}}, [[libreto]] {{gl|iskrip ng isang dula o drama}}
#: {{syn|es|libreto}}
# {{lb|es|figurative}} anumang [[lathalain]] na nagbibigay ng [[gabay]] o [[panuto]]
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
#: {{syn|es|librillo|omaso}}
# [[buwis]] na kinokolekta ng [[estado]]
=====Hiponimo=====
{{col|es
|gran libro
|libro blanco
|libro de acuerdos
|libro de asiento
|libro de becerro
|libro de bolsillo
|libro de caballerías
|libro de cabecera
|libro de caja
|libro de contabilidad
|libro de cuentas ajustadas
|libro de cuentos
|libro de escolaridad
|libro de estilo
|libro de familia
|libro de fondo
|libro de frases
|libro de hechizos
|libro de honor
|libro de horas
|libro de inventarios
|libro de la vida
|libro de las sombras
|libro de lo salvado
|libro de mano
|libro de memoria
|libro de misa
|Libro de Mormón
|libro de música
|libro de oro
|libro mayor
|libro de surtido
|libro de texto
|libro de visitas
|libro diario
|libro electrónico
|libro sagrado
}}
=====Hinangong kataga=====
{{col|es
|audiolibro
|cantar a libro abierto
|de libro
|hablar como un libro
|librito
|librote
|libraco
|librería
|libreta
|libro cerrado<t:saradong aklat><ll:idyoma>
|libro abierto
|libro de caballerías
|pulmón en libro
|teneduría de libros
|tragalibros
}}
=====Kaugnay na kataga=====
{{col|es
|librero
|libreto
}}
=====Anak na kataga=====
{{topN}}
* {{desc|cbk|libro}}
* {{desc|bcl|libro|bor=1}}
* {{desc|ceb|libro|bor=1}}
* {{desc|nhe|libro|bor=1}}
* {{desc|ivb|libro|bor=1}}
* {{desc|pbg|liuru|bor=1}}
* {{desc|qu|liwru|bor=1}}
* {{desc|tl|libro|bor=1}}
* {{desc|bor=1|nhi|libro}}
{{bottomN}}
====Tingnan din====
* {{l|es|tomo}}
===Etimolohiya 2===
====Pandiwa====
{{head|es|verb form}}
# {{es-verb form of|librar}}
===Sanggunian===
* {{R:es:DCECH|libro|643|vol=G–Ma}}
===Magbasa pa===
* {{R:es:DRAE}}
==Esperanto==
===Pangngalan===
<!--{{infl|eo|pangngalan}}-->
{{eo-noun}}
# [[aklat]]
=={{=gl=}}==
===Alternatibong pagbaybay===
* {{alt|gl|livro||reinteg}}
===Etimolohiya 1===
Mula {{inh|gl|roa-opt|livro}} (ika-13 siglo, ''{{w|Cantigas de Santa Maria}}''), mula {{inh|gl|la|liber|liber, librum|aklat}}. Ikumpara sa {{cog|pt|livro}}.
====Pagbigkas====
{{gl-pr}}
* {{hyph|gl|li|bro}}
====Pangngalan====
{{gl-noun|m}}
# [[aklat]]
#* {{quote-book|gl|year=2010|translator=Moisés Barcia|title=Unha lectora fóra do común|page=back cover|passage=Nunca mostrara moito interese pola lectura, pero tomou en préstamo un '''libro''', e a este seguíronlle moitos outros, tantos que pouco a pouco a afección se converteu en devoción, o que perturbou as relacións coa súa familia, os ministros, a servidume e os amigos.|translation=Hindi naman siya nagpakita ng interes sa pagbabasa, ngunit nanghiram pa rin siya ng '''aklat''', na kalauna'y sunod-sunod, hanggang sa sobrang dami ay umabot sa punto ng debosyon na gumambala sa relasyon niya sa kanyang pamilya, mga ministro, paninilbihan, at mga kaibigan niya.}}
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
#: {{syn|gl|entrefollo|santafollo}}
=====Hinangong kataga=====
{{col3|gl|libriño}}
====Sanggunian====
* {{R:gl:DRAG}}
* {{R:gl:TILG}}
* {{R:TLPGP}}
* {{R:gl:DDGM}}
* {{R:gl:CX}}
===Etimolohiya 2===
====Pandiwa====
{{head|gl|verb form}}
# {{gl-verb form of|librar}}
=={{=it=}}==
===Etimolohiya===
{{etymon|it|:lbor|la:liber}}
{{lbor|it|la|liber|librum|t=aklat}}.
===Pagbigkas===
{{it-pr|lìbro<audio:It-un libro.ogg><audio:It-libro.ogg>}}
===Pangngalan===
{{it-noun|m|pagename=libro|dim=librétto,librìno,libriccìno<qq:mas karaniwan>,librettìno|dim_derog=librùccio,librettùccio,libricciòlo|derog=libriciàttolo,libràttolo<q:pampanitikan>|aug=libróne|pej=libràccio}}
# [[aklat]]
# {{lb|it|botany}} [[ploema]]; [[kadahunan]]
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
====Hinangong kataga====
* {{l|it|libro di testo}}
====Kaugnay na kataga====
{{col2|it|libraio|librario|libreria|libresco|libretto|librone}}
===Magbasa pa===
* {{R:it:Collins}}
* {{R:it:Trec}}
===Anagrama===
* {{anagrams|it|a=bilor|broli}}
=={{=osp=}}==
===Alternatibong pagbaybay===
* {{alter|osp|liuro}}
===Etimolohiya===
{{etymon|osp|:lbor|la:liber<alt:librum><id:peel>}}
{{lbor|osp|la|liber|librum}}.
===Pagbigkas===
* {{IPA|osp|/ˈliβɾo/}}
===Pangngalan===
{{osp-noun|m}}
# [[aklat]]
#* {{quote-book|osp|year=c. 1200|author=Almerich|title=[[w:Fazienda de Ultramar|Fazienda de Ultramar]]|section=f. 20v
|passage=dixo el nŕo ſenor a moẏſen qui peccare en mi deſfer loe de mio '''libro'''. Agora ue e di ami pueblo cuemo fable {{...}}
|norm=Dixo el nuestro Sennor a Moysen “Qui peccare en mí, desfer-lo-é de mío '''libro'''. Agora ve e di a mi pueblo cuemo fablé {{...}}”
|translation=Sinabi ng ating Panginoon kay Moises, "Kung sinuman ang nagkasala sa akin, aking buburahin sa '''aklat''' ko. Ngayon, humayo ka at sabihin mo sa aking bayan ang sinabi ko sa iyo. {{...}}”}}
====Anak na kataga====
{{topN}}
* {{desc|lad|livro//ליב'רו}}
* {{desc|es|libro}} {{see desc}}
{{bottomN}}
ksp0yw0fjoll4v41jg0vul109vdnh5u
178657
178646
2026-11-12T03:41:56Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178657
wikitext
text/x-wiki
=={{=tl=}}==
[[Talaksan:Delphine, Madame de Staël, Paris, 1803 04.jpg|thumb|mga libro (kahulugan 1)]]
===Alternatibong pagbaybay===
* {{alt|tl|libdo||obsolete}}
===Etimolohiya===
{{ety|tl|:bor|es:libro|tree=1}}
{{bor+|tl|es|libro}} na may paglipat sa diin, mula sa {{der|tl|la|liber|librum}}.
===Pagbigkas===
{{tl-pr|libró}}
===Pangngalan===
{{tl-noun|libró|b=+}}
# {{senseid|tl|aklat}} [[aklat]]
# {{lb|tl|colloquial}} [[talaan]] {{q|ng [[taya]], bayad, atbp.}}
#: {{syn|tl|aklat-talaan|libro-de-rehistro}}
# {{senseid|tl|iskrip}} {{lb|tl|theater}} [[iskrip]] ng isang [[dula]] o [[drama]]
#: {{syn|tl|libreto}}
# {{senseid|tl|pagtutuos}} {{lb|tl|accounting}} [[kronolohiko|kronolohikong]] talaan ng mga [[bayad]] o [[resibo]]
#: {{syn|tl|libro de-kuwenta|aklat-tuosan|ledyer|dyornal}}
# {{senseid|tl|anatomiya}} {{lb|tl|anatomy}} ikatlong bahagi ng [[sikmura]] ng isang [[ruminante]] {{q|[[baka]], [[usa]], atbp.}} na karaniwang [[sangkap]] ng [[kare-kare]], [[goto]], atbp.
#: {{syn|tl|tuwalya|omasum}}
====Hinangong kataga====
{{col3|tl|libruhin|pagsasalibro}}
====Kaugnay na kataga====
{{col3|tl|libreto|libreriya|libreta|libro mayor|tenedor-de-libros}}
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
* {{R:Vocabulario de la lengua tagala 1613|389|Libro) Libdo (pc) C. qualquiera yalo entienden en eſpañol corupto}}
=={{=es=}}==
===Pagbigkas===
{{es-pr}}
===Etimolohiya 1===
{{etymon|es|:inh|osp:libro|tree=1}}
{{inh+|es|osp|libro}}, isang {{lbor|es|la|liber||aklat|nocap=1}}. Kapatid ng {{cog|ast|llibru}}, {{cog|ca|llibre}}, {{cog|fr|livre}}, {{cog|gl|libro}}, {{cog|it|libro}}{{,}} at {{cog|pt|livro}}.
====Pangngalan====
{{es-noun|m}}
{{wp|es:}}
# [[aklat]]
#: {{syn|es|códice|tomo|volumen}}
#: {{ux|es|Estoy leyendo un '''libro''' sobre la historia de España.|Binabasa ko ngayon ang '''aklat''' na tungkol sa kasaysayan ng Espanya.}}
# {{l|tl|libro|id=iskrip}}, [[libreto]] {{gl|iskrip ng isang dula o drama}}
#: {{syn|es|libreto}}
#: {{ux|es|Ella escribió el '''libro''' para la nueva obra de teatro.|Siya ang nagsulat sa '''libro''' ng bagong dula.}}
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
#: {{syn|es|librillo|omaso}}
#: {{ux|es|La mucosa del '''libro''' tiene pliegues que parecen páginas.|Nagmumukhang mga pahina ang mukosa ng '''libro'''.}}
# [[ambag]]; [[buwis]]
#: {{ux|es|No he pagado los '''libros.'''|Hindi pa ako nagbabayad ng '''buwis'''.}}
=====Hiponimo=====
{{col|es
|gran libro
|libro blanco
|libro de acuerdos
|libro de asiento
|libro de becerro
|libro de bolsillo
|libro de caballerías
|libro de cabecera
|libro de caja
|libro de contabilidad
|libro de cuentas ajustadas
|libro de cuentos
|libro de escolaridad
|libro de estilo
|libro de familia
|libro de fondo
|libro de frases
|libro de hechizos
|libro de honor
|libro de horas
|libro de inventarios
|libro de la vida
|libro de las sombras
|libro de lo salvado
|libro de mano
|libro de memoria
|libro de misa
|Libro de Mormón
|libro de música
|libro de oro
|libro mayor
|libro de surtido
|libro de texto
|libro de visitas
|libro diario
|libro electrónico
|libro sagrado
}}
=====Hinangong kataga=====
{{col|es
|audiolibro
|cantar a libro abierto
|de libro
|hablar como un libro
|librito
|librote
|libraco
|librería
|libreta
|libro cerrado<t:saradong aklat><ll:idyoma>
|libro abierto
|libro de caballerías
|pulmón en libro
|teneduría de libros
|tragalibros
}}
=====Kaugnay na kataga=====
{{col|es
|librero
|libreto
}}
=====Anak na kataga=====
{{topN}}
* {{desc|cbk|libro}}
* {{desc|bcl|libro|bor=1}}
* {{desc|ceb|libro|bor=1}}
* {{desc|nhe|libro|bor=1}}
* {{desc|ivb|libro|bor=1}}
* {{desc|pbg|liuru|bor=1}}
* {{desc|qu|liwru|bor=1}}
* {{desc|tl|libro|bor=1}}
* {{desc|bor=1|nhi|libro}}
{{bottomN}}
====Tingnan din====
* {{l|es|tomo}}
===Etimolohiya 2===
====Pandiwa====
{{head|es|verb form}}
# {{es-verb form of|librar}}
===Sanggunian===
* {{R:es:DCECH|libro|643|vol=G–Ma}}
===Magbasa pa===
* {{R:es:DRAE}}
==Esperanto==
===Pangngalan===
<!--{{infl|eo|pangngalan}}-->
{{eo-noun}}
# [[aklat]]
=={{=gl=}}==
===Alternatibong pagbaybay===
* {{alt|gl|livro||reinteg}}
===Etimolohiya 1===
Mula {{inh|gl|roa-opt|livro}} (ika-13 siglo, ''{{w|Cantigas de Santa Maria}}''), mula {{inh|gl|la|liber|liber, librum|aklat}}. Ikumpara sa {{cog|pt|livro}}.
====Pagbigkas====
{{gl-pr}}
* {{hyph|gl|li|bro}}
====Pangngalan====
{{gl-noun|m}}
# [[aklat]]
#* {{quote-book|gl|year=2010|translator=Moisés Barcia|title=Unha lectora fóra do común|page=back cover|passage=Nunca mostrara moito interese pola lectura, pero tomou en préstamo un '''libro''', e a este seguíronlle moitos outros, tantos que pouco a pouco a afección se converteu en devoción, o que perturbou as relacións coa súa familia, os ministros, a servidume e os amigos.|translation=Hindi naman siya nagpakita ng interes sa pagbabasa, ngunit nanghiram pa rin siya ng '''aklat''', na kalauna'y sunod-sunod, hanggang sa sobrang dami ay umabot sa punto ng debosyon na gumambala sa relasyon niya sa kanyang pamilya, mga ministro, paninilbihan, at mga kaibigan niya.}}
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
#: {{syn|gl|entrefollo|santafollo}}
=====Hinangong kataga=====
{{col3|gl|libriño}}
====Sanggunian====
* {{R:gl:DRAG}}
* {{R:gl:TILG}}
* {{R:TLPGP}}
* {{R:gl:DDGM}}
* {{R:gl:CX}}
===Etimolohiya 2===
====Pandiwa====
{{head|gl|verb form}}
# {{gl-verb form of|librar}}
=={{=it=}}==
===Etimolohiya===
{{etymon|it|:lbor|la:liber}}
{{lbor|it|la|liber|librum|t=aklat}}.
===Pagbigkas===
{{it-pr|lìbro<audio:It-un libro.ogg><audio:It-libro.ogg>}}
===Pangngalan===
{{it-noun|m|pagename=libro|dim=librétto,librìno,libriccìno<qq:mas karaniwan>,librettìno|dim_derog=librùccio,librettùccio,libricciòlo|derog=libriciàttolo,libràttolo<q:pampanitikan>|aug=libróne|pej=libràccio}}
# [[aklat]]
# {{lb|it|botany}} [[ploema]]; [[kadahunan]]
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
====Hinangong kataga====
* {{l|it|libro di testo}}
====Kaugnay na kataga====
{{col2|it|libraio|librario|libreria|libresco|libretto|librone}}
===Magbasa pa===
* {{R:it:Collins}}
* {{R:it:Trec}}
===Anagrama===
* {{anagrams|it|a=bilor|broli}}
=={{=osp=}}==
===Alternatibong pagbaybay===
* {{alter|osp|liuro}}
===Etimolohiya===
{{etymon|osp|:lbor|la:liber<alt:librum><id:peel>}}
{{lbor|osp|la|liber|librum}}.
===Pagbigkas===
* {{IPA|osp|/ˈliβɾo/}}
===Pangngalan===
{{osp-noun|m}}
# [[aklat]]
#* {{quote-book|osp|year=c. 1200|author=Almerich|title=[[w:Fazienda de Ultramar|Fazienda de Ultramar]]|section=f. 20v
|passage=dixo el nŕo ſenor a moẏſen qui peccare en mi deſfer loe de mio '''libro'''. Agora ue e di ami pueblo cuemo fable {{...}}
|norm=Dixo el nuestro Sennor a Moysen “Qui peccare en mí, desfer-lo-é de mío '''libro'''. Agora ve e di a mi pueblo cuemo fablé {{...}}”
|translation=Sinabi ng ating Panginoon kay Moises, "Kung sinuman ang nagkasala sa akin, aking buburahin sa '''aklat''' ko. Ngayon, humayo ka at sabihin mo sa aking bayan ang sinabi ko sa iyo. {{...}}”}}
====Anak na kataga====
{{topN}}
* {{desc|lad|livro//ליב'רו}}
* {{desc|es|libro}} {{see desc}}
{{bottomN}}
3kn3s3fp219ikqr0rjn7891x5b7u63u
dula
0
27424
178641
132082
2026-11-12T02:02:57Z
GinawaSaHapon
3989
178641
wikitext
text/x-wiki
=={{=tl=}}==
===Alternatibong pagbaybay===
* {{alt|tl|dola||obsolete|Abecedario}}
===Etimolohiya===
Mula Proto-Gitnang Pilipino ''*dúlaʔ'' (“maglaro; magsaya”). Ikumpara sa {{cog|ceb|dula}}, {{cog|kyk|duwa}}, at {{cog|mg|dola|alt=dôla}}. Tingnan din ang {{ncog|pam|tula}}. Ipinakilala noong ika-20 siglo ang modernong kahulugan nito na {{m-g|pagtatanghal}}.
===Pagbigkas===
{{tl-pr|dulâ,dulà}}
===Pangngalan===
{{tl-noun|dulâ,dulà|b=+}}
# [[akda|akda]] at [[pagtatanghal]] na naglalaman ng [[dayalogo]] at [[kilos]] na itinatanghal ng mga [[aktor]] sa harap ng mga [[manonood]], madalas mula sa isang [[entablado]]
#: {{syn|tl|drama}}
# {{lb|tl|obsolete}} [[kasiyahan]]; [[katuwaan]]
====Hinangong kataga====
{{col3|tl|dulaan|dulain|isadula|magsadula|madula|madulain|mandudula|pagsasadula|pandudula|pandula|dulambuhay|dula-dulaan|lakandula|tagapagdula}}
====Tingnan din====
{{col3|tl|sarsuwela|parsa}}
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
* {{R:Diccionario tagálog-hispano|229}}
* {{R:Vocabulario de la lengua tagala 1860}}
===Anagrama===
* {{anagrams|tl|a=adlu|luad}}
6muv84w77h985ixyv4dtguo5clo6iyr
178650
178641
2026-11-12T02:21:54Z
GinawaSaHapon
3989
/* Pangngalan */
178650
wikitext
text/x-wiki
=={{=tl=}}==
===Alternatibong pagbaybay===
* {{alt|tl|dola||obsolete|Abecedario}}
===Etimolohiya===
Mula Proto-Gitnang Pilipino ''*dúlaʔ'' (“maglaro; magsaya”). Ikumpara sa {{cog|ceb|dula}}, {{cog|kyk|duwa}}, at {{cog|mg|dola|alt=dôla}}. Tingnan din ang {{ncog|pam|tula}}. Ipinakilala noong ika-20 siglo ang modernong kahulugan nito na {{m-g|pagtatanghal}}.
===Pagbigkas===
{{tl-pr|dulâ,dulà}}
===Pangngalan===
{{tl-noun|dulâ,dulà|b=+}}
# [[akda|akda]] na naglalaman ng [[dayalogo]] at [[kilos]] na itinatanghal ng mga [[aktor]] sa harap ng mga [[manonood]], madalas mula sa isang [[entablado]]
#: {{syn|tl|drama}}
#: {{ux|tl|Isinulat pa noong panahon ng mga Amerikano ang '''dulang '''ito.}}
# tumutukoy din sa [[pagtatanghal]] sa naturang akda
#: {{ux|tl|Manonood sila ng '''dula '''mamayang hapon.}}
# {{lb|tl|obsolete}} [[kasiyahan]]; [[katuwaan]]
====Hinangong kataga====
{{col3|tl|dulaan|dulain|isadula|magsadula|madula|madulain|mandudula|pagsasadula|pandudula|pandula|dulambuhay|dula-dulaan|lakandula|tagapagdula}}
====Tingnan din====
{{col3|tl|sarsuwela|parsa}}
===Magbasa pa===
* {{R:Pambansang Diksiyonaryo}}
* {{R:Diccionario tagálog-hispano|229}}
* {{R:Vocabulario de la lengua tagala 1860}}
===Anagrama===
* {{anagrams|tl|a=adlu|luad}}
nxcj67thrz2h72abz1eudgow1s04w8y
Module:labels/data/lang/es
828
35023
178660
178633
2026-11-12T06:11:58Z
GinawaSaHapon
3989
178660
Scribunto
text/plain
local labels = {}
labels["Aprika"] = {
aliases = {"Africa"},
Wikipedia = "White Africans of European ancestry#Spanish in Africa",
regional_categories = "African",
parent = true,
}
labels["al-Andalus"] = {
aliases = {"Al-Andalus"},
Wikipedia = "Andalusian Spanish",
regional_categories = "Andalusian",
-- no parent because same category as label 'Andalusia'
}
labels["Andalusia"] = {
aliases = {"Andalucía", "Andalucia", "Andalusian"},
Wikipedia = "Andalusian Spanish",
regional_categories = "Andalusian",
parent = "southern Spain",
}
labels["Andes"] = {
the = true,
aliases = {"Andean"},
Wikipedia = "Andean Spanish",
regional_categories = "Andean",
parent = "South America",
}
labels["Antilyas"] = {
aliases = {"Antilles"},
Wikipedia = true,
regional_categories = true,
parent = "Caribbean",
}
labels["Aragon"] = {
aliases = {"Aragonese", "Aragón"},
Wikipedia = true,
regional_categories = "Aragonese",
parent = "northern Spain",
}
labels["Arhentina"] = {
aliases = {"Argentinian", "Argentine", "Argentina"},
Wikipedia = "Argentine Spanish",
regional_categories = "Argentine",
parent = "Rioplatense",
}
labels["Asturias"] = {
aliases = {"Asturian"},
Wikipedia = true,
regional_categories = "Asturian",
parent = "northern Spain",
}
labels["Basko"] = {
aliases = {"Basque Country", "Basque"},
the = true,
Wikipedia = "Basque Country (autonomous community)",
regional_categories = "Basque",
parent = "northern Spain",
}
labels["Belis"] = {
aliases = {"Belizean", "Belize"},
Wikipedia = "Belizean Spanish",
regional_categories = "Belizean",
parent = "Central America",
}
labels["Bolibya"] = {
aliases = {"Bolivian", "Bolivia"},
Wikipedia = "Bolivian Spanish",
regional_categories = "Bolivian",
parent = "Andes",
}
labels["Burgos"] = {
aliases = {"Burgalese"},
Wikipedia = "Province of Burgos",
regional_categories = "Burgalese",
parent = "northern Spain",
}
labels["Cádiz"] = {
aliases = {"Cadiz", "Gaditan"},
Wikipedia = "Province of Cádiz",
regional_categories = "Gaditan",
parent = "Andalusia",
}
labels["California"] = {
aliases = {"Californian"},
Wikipedia = "Spanish language in California",
regional_categories = "Californian",
parent = "US",
}
labels["Kapuluang Kanaryo"] = {
aliases = {"Canaries", "Canarias", "Canary", "Canary Islands"},
Wikipedia = "Canarian Spanish",
regional_categories = "Canarian",
parent = "Spain",
}
labels["Cantabria"] = {
aliases = {"Cantabrian"},
Wikipedia = true,
regional_categories = "Cantabrian",
parent = "northern Spain",
}
labels["Karibe"] = {
aliases = {"West Indies", "Caribbean"},
Wikipedia = "Caribbean Spanish",
regional_categories = true,
parent = true,
}
labels["Gitnang Amerika"] = {
aliases = {"Central American", "Central America"},
Wikipedia = "Central American Spanish",
regional_categories = "Central American",
parent = "Latin America",
}
labels["Cheli"] = {
Wikipedia = true,
plain_categories = true,
region = "Madrid",
country = "Spain",
parent = "Madrid,slang",
}
labels["Tsile"] = {
aliases = {"Chilean", "Chile"},
Wikipedia = "Chilean Spanish",
regional_categories = "Chilean",
parent = "Cono Sur",
}
labels["Kolombiya"] = {
aliases = {"Colombian", "Colombia"},
Wikipedia = "Colombian Spanish",
regional_categories = "Colombian",
parent = "South America",
}
labels["Costa Rica"] = {
aliases = {"Costa Rican", "CR"},
Wikipedia = "Costa Rican Spanish",
regional_categories = "Costa Rican",
parent = "Central America",
}
labels["Kuba"] = {
aliases = {"Cuban", "Cuba"},
Wikipedia = "Cuban Spanish",
regional_categories = "Cuban",
parent = "Caribbean",
}
labels["Republika Dominikana"] = {
aliases = {"Dominican", "dominicano", "Dom. Rep.", "DR", "RD", "Dominican Republic"},
Wikipedia = "Dominican Spanish",
regional_categories = "Dominican",
parent = "Caribbean",
}
labels["Maagang Modernong Espanyol"] = { --TLCHANGE
aliases = {"early modern Spanish", "early modern", "Early Modern", "Early Modern Spanish"}, --TLCHANGE
def = "Spanish as spoken between the 15th century and the end of the 17th century",
noreg = true,
plain_categories = true,
Wikipedia = true,
parent = true,
english_name = "Early Modern Spanish", --TLCHANGE
}
labels["Ekwador"] = {
aliases = {"Ecuadorian", "Ecuador"},
Wikipedia = "Ecuadorian Spanish",
regional_categories = "Ecuadorian",
parent = "Andes",
}
labels["El Salvador"] = {
aliases = {"Salvadorian", "Salvadoran"},
Wikipedia = "Salvadoran Spanish",
regional_categories = "Salvadoran",
parent = "Central America",
}
labels["Ginea Ekwatoryal"] = {
aliases = {"Equatorial Guinean", "Equatoguinean", "Equatorial Guinea"},
Wikipedia = "Equatoguinean Spanish",
regional_categories = "Equatoguinean",
parent = "Africa",
}
labels["Extremadura"] = {
aliases = {"Extremaduran"},
Wikipedia = true,
regional_categories = "Extremaduran",
parent = "southern Spain",
}
labels["Galisya"] = {
aliases = {"Galician", "Galicia"},
Wikipedia = "Galicia (Spain)",
regional_categories = "Galician",
parent = "northern Spain",
}
labels["Germanía"] = {
aliases = {"Germania", "germanía", "germania"},
Wikipedia = true,
plain_categories = true,
def = "[[Germanía]], a Spanish [[argot]] used by criminals in [[Spain]] in the 16th and 17th century",
noreg = true,
country = "Spain",
parent = "Spain",
othercat = "Spanish cant,Early Modern Spanish",
}
labels["Granada"] = {
aliases = {"Granadan"},
Wikipedia = true,
regional_categories = "Granadan",
parent = "Andalusia",
}
labels["Guatemala"] = {
aliases = {"Guatemalan"},
Wikipedia = "Guatemalan Spanish",
regional_categories = "Guatemalan",
parent = "Central America",
}
labels["Honduras"] = {
aliases = {"Honduran"},
Wikipedia = "Honduran Spanish",
regional_categories = "Honduran",
parent = "Central America",
}
labels["Huelva"] = {
aliases = {"Huelvan"},
Wikipedia = "Province of Huelva",
regional_categories = "Huelvan",
parent = "Andalusia",
}
labels["La Rioja"] = {
aliases = {"Rioja", "Riojan", "Riojano"},
Wikipedia = true,
regional_categories = "Riojan",
parent = "northern Spain",
}
labels["Latin Amerika"] = {
aliases = {"Latin American Spanish", "Lat. Am.", "LatAm", "LATAM", "Latin America"},
Wikipedia = "Spanish language in the Americas",
regional_categories = "Latin American",
parent = true,
}
labels["León"] = {
aliases = {"Leon", "Leonese"},
Wikipedia = "Province of León",
regional_categories = "Leonese",
parent = "northern Spain",
}
labels["Llanito"] = {
aliases = {"Yanito", "llanito", "yanito", "Gibraltar", "Gibraltarian"},
Wikipedia = true,
plain_categories = true,
region = "Gibraltar",
parent = "Andalusia",
}
labels["Louisiana"] = {
aliases = {"New Orleans", "Louisianian"},
Wikipedia = true,
regional_categories = "Louisianian",
parent = "US",
}
labels["Lunfardo"] = {
def = "[[Lunfardo]], a Spanish [[argot]] with origins in [[Buenos Aires]]",
aliases = {"lunfardo"},
Wikipedia = true,
plain_categories = true,
parent = "Argentina,Uruguay",
othercat = "Spanish cant",
}
labels["Madrid"] = {
aliases = {"Madrilenian"},
Wikipedia = "Community of Madrid",
regional_categories = "Madrilenian",
parent = "Spain",
}
labels["Málaga"] = {
aliases = {"Malaga", "Malagan"},
Wikipedia = "Province of Málaga",
regional_categories = "Malagan",
parent = "Andalusia",
}
labels["Mehiko"] = {
aliases = {"Mexican", "México", "Mexico"},
Wikipedia = "Mexican Spanish",
regional_categories = "Mexican",
parent = "Latin America",
}
labels["Morelos"] = {
alias = {"Morelense"},
Wikipedia = true,
regional_categories = "Morelense",
parent = "Mexico",
}
labels["Maruekos"] = {
aliases = {"Moroccan", "Moroko", "Morocco"},
Wikipedia = true,
regional_categories = "Moroccan",
parent = "Africa",
}
labels["Mursiya"] = {
aliases = {"Murcian", "Murcia"},
Wikipedia = "Murcian Spanish",
regional_categories = "Murcian",
parent = "southern Spain",
}
labels["Nabaro"] = {
aliases = {"Navarrese", "Navarre"},
Wikipedia = true,
regional_categories = "Navarrese",
parent = "northern Spain",
}
labels["New Mexico"] = {
aliases = {"New Mexican", "Neomexicano"},
Wikipedia = "New Mexican Spanish",
regional_categories = "New Mexican",
parent = "US",
}
labels["Lungsod ng Nueva York"] = {
aliases = {"NYC", "New York city", "New York City"},
Wikipedia = true,
regional_categories = true,
parent = "US",
}
labels["Nikaragua"] = {
aliases = {"Nicaraguan", "Nicaragua"},
Wikipedia = "Nicaraguan Spanish",
regional_categories = "Nicaraguan",
parent = "Central America",
}
labels["hilagang Espanya"] = {
aliases = {"Northern Spain", "north of Spain", "northern Peninsular", "Northern Peninsular", "northern Spain"},
regional_categories = "Northern Peninsular",
parent = "Spain",
}
labels["Oaxaca"] = {
aliases = {"Oaxacan"},
Wikipedia = true,
regional_categories = "Oaxacan",
parent = "Mexico",
}
labels["Palensiya"] = {
aliases = {"Palencian", "Palencia"},
Wikipedia = true,
regional_categories = "Palencian",
parent = "northern Spain",
}
labels["Panama"] = {
aliases = {"Panamanian"},
Wikipedia = "Panamanian Spanish",
regional_categories = "Panamanian",
parent = "Central America",
}
labels["Paraguay"] = {
aliases = {"Paraguayan"},
Wikipedia = "Paraguayan Spanish",
regional_categories = "Paraguayan",
parent = "Cono Sur",
}
labels["Peru"] = {
aliases = {"Peruvian", "Perú"},
Wikipedia = "Peruvian Spanish",
regional_categories = "Peruvian",
parent = "Andes",
}
labels["Pilipinas"] = { --TLCHANGE "Philippines"
the = true,
aliases = {"Philippine", "Philippines"}, --TLCHANGE
Wikipedia = "Philippine Spanish",
regional_categories = "Pilipino", --TLCHANGE "Philippine",
parent = true,
}
labels["Puerto Rico"] = {
aliases = {"Puerto Rican"},
Wikipedia = "Puerto Rican Spanish",
regional_categories = "Puerto Rican",
parent = "Caribbean,US",
}
labels["Rioplatense"] = {
region = "the {{w|Río de la Plata basin}}",
aliases = {"rioplatense", "River Plate", "Río de la Plata", "Rio de la Plata", "Rioplatense Spanish"},
Wikipedia = "Rioplatense Spanish",
regional_categories = true,
parent = "Cono Sur",
}
labels["Sebilya"] = {
aliases = {"Sevilla", "Sevillan", "Seville"},
Wikipedia = "Province of Seville",
regional_categories = "Sevillian",
parent = "Andalusia",
}
labels["Sinaloa"] = {
alias = "Sinaloense",
Wikipedia = true,
regional_categories = "Sinaloense",
parent = "Mexico",
}
labels["Timog Amerika"] = {
aliases = {"South American", "South America"},
Wikipedia = "Spanish language in South America",
regional_categories = "South American",
parent = "Latin America",
}
labels["Katimugang Kono"] = {
aliases = {"Cono Sur", "Southern Cone"},
regional_categories = true,
Wikipedia = "Southern Cone",
parent = "South America",
}
labels["katimugang Espanya"] = {
display = "southern {{w|Peninsular Spanish|Spain}}",
aliases = {"Southern Spain", "south of Spain", "southern Peninsular", "Southern Peninsular", "southern Spain"},
regional_categories = "Southern Peninsular",
parent = "Spain",
}
labels["Espanya"] = {
aliases = {"Spanish", "ES", "Europe", "European", "Spain"},
Wikipedia = "Peninsular Spanish",
regional_categories = "Peninsular",
parent = true,
}
labels["Spanglish"] = {
aliases = {"Pocho", "pocho"},
Wikipedia = true,
plain_categories = true,
def = "A language blend of English and Spanish, or the mixing of them together in a sentence",
noreg = true,
parent = true,
}
labels["Texas"] = {
aliases = {"TX", "Texan"},
Wikipedia = "Texan Spanish",
regional_categories = "Texan",
parent = "US",
}
labels["Estados Unidos"] = {
region = "the {{w|United States of America}}",
aliases = {"United States Spanish", "US Spanish", "U.S.", "United States", "United States of America", "USA", "US"},
Wikipedia = "Spanish language in the United States",
regional_categories = "United States",
parent = true,
}
labels["Uruguay"] = {
aliases = {"Uruguayan"},
Wikipedia = "Uruguayan Spanish",
regional_categories = "Uruguayan",
parent = "Rioplatense",
}
labels["Balensiya"] = {
aliases = {"Valencian", "Valencia"},
Wikipedia = true,
regional_categories = "Valencian",
parent = "Spain",
}
labels["Benesuela"] = {
aliases = {"Venezuelan", "Venezuela"},
Wikipedia = "Venezuelan Spanish",
regional_categories = "Venezuelan",
parent = "South America",
}
labels["Samora"] = {
aliases = {"Zamoran", "Zamora"},
Wikipedia = "Province of Zamora",
regional_categories = "Zamoran",
parent = "northern Spain",
}
labels["bago 1815"] = {
aliases = {"pre-1815"},
Wikipedia = "Spanish orthography",
}
labels["bago 2010"] = {
aliases = {"pre-2010"},
Wikipedia = "Spanish orthogrpahy",
}
------------------------------------ former accent qualifiers ------------------------------------
labels["ceceo"] = {
Wikipedia = true,
}
labels["distinción"] = {
aliases = {"distincion"},
Wikipedia = true,
}
labels["lleísmo"] = {
Wikipedia = "Yeísmo",
}
labels["seseo"] = {
Wikipedia = true,
}
labels["yeísmo"] = {
Wikipedia = "Yeísmo",
}
return require("Module:labels").finalize_data(labels)
pinggpoctn1ae22q83m6368iwghkqou
178661
178660
2026-11-12T06:14:26Z
GinawaSaHapon
3989
178661
Scribunto
text/plain
local labels = {}
labels["Aprika"] = {
aliases = {"Africa"},
Wikipedia = "White Africans of European ancestry#Spanish in Africa",
regional_categories = "African",
parent = true,
}
labels["al-Andalus"] = {
aliases = {"Al-Andalus"},
Wikipedia = "Andalusian Spanish",
regional_categories = "Andalusian",
-- no parent because same category as label 'Andalusia'
}
labels["Andalusia"] = {
aliases = {"Andalucía", "Andalucia", "Andalusian"},
Wikipedia = "Andalusian Spanish",
regional_categories = "Andalusian",
parent = "southern Spain",
}
labels["Andes"] = {
the = true,
aliases = {"Andean"},
Wikipedia = "Andean Spanish",
regional_categories = "Andean",
parent = "South America",
}
labels["Antilyas"] = {
aliases = {"Antilles"},
Wikipedia = true,
regional_categories = true,
parent = "Caribbean",
}
labels["Aragon"] = {
aliases = {"Aragonese", "Aragón"},
Wikipedia = true,
regional_categories = "Aragonese",
parent = "northern Spain",
}
labels["Arhentina"] = {
aliases = {"Argentinian", "Argentine", "Argentina"},
Wikipedia = "Argentine Spanish",
regional_categories = "Argentine",
parent = "Rioplatense",
}
labels["Asturias"] = {
aliases = {"Asturian"},
Wikipedia = true,
regional_categories = "Asturian",
parent = "northern Spain",
}
labels["Basko"] = {
aliases = {"Basque Country", "Basque"},
the = true,
Wikipedia = "Basque Country (autonomous community)",
regional_categories = "Basque",
parent = "northern Spain",
}
labels["Belis"] = {
aliases = {"Belizean", "Belize"},
Wikipedia = "Belizean Spanish",
regional_categories = "Belizean",
parent = "Central America",
}
labels["Bolibya"] = {
aliases = {"Bolivian", "Bolivia"},
Wikipedia = "Bolivian Spanish",
regional_categories = "Bolivian",
parent = "Andes",
}
labels["Burgos"] = {
aliases = {"Burgalese"},
Wikipedia = "Province of Burgos",
regional_categories = "Burgalese",
parent = "northern Spain",
}
labels["Cádiz"] = {
aliases = {"Cadiz", "Gaditan"},
Wikipedia = "Province of Cádiz",
regional_categories = "Gaditan",
parent = "Andalusia",
}
labels["California"] = {
aliases = {"Californian"},
Wikipedia = "Spanish language in California",
regional_categories = "Californian",
parent = "US",
}
labels["Kapuluang Kanaryo"] = {
aliases = {"Canaries", "Canarias", "Canary", "Canary Islands"},
Wikipedia = "Canarian Spanish",
regional_categories = "Canarian",
parent = "Spain",
}
labels["Cantabria"] = {
aliases = {"Cantabrian"},
Wikipedia = true,
regional_categories = "Cantabrian",
parent = "northern Spain",
}
labels["Karibe"] = {
aliases = {"West Indies", "Caribbean"},
Wikipedia = "Caribbean Spanish",
regional_categories = true,
parent = true,
}
labels["Gitnang Amerika"] = {
aliases = {"Central American", "Central America"},
Wikipedia = "Central American Spanish",
regional_categories = "Central American",
parent = "Latin America",
}
labels["Cheli"] = {
Wikipedia = true,
plain_categories = true,
region = "Madrid",
country = "Spain",
parent = "Madrid,slang",
}
labels["Tsile"] = {
aliases = {"Chilean", "Chile"},
Wikipedia = "Chilean Spanish",
regional_categories = "Chilean",
parent = "Cono Sur",
}
labels["Kolombiya"] = {
aliases = {"Colombian", "Colombia"},
Wikipedia = "Colombian Spanish",
regional_categories = "Colombian",
parent = "South America",
}
labels["Costa Rica"] = {
aliases = {"Costa Rican", "CR"},
Wikipedia = "Costa Rican Spanish",
regional_categories = "Costa Rican",
parent = "Central America",
}
labels["Kuba"] = {
aliases = {"Cuban", "Cuba"},
Wikipedia = "Cuban Spanish",
regional_categories = "Cuban",
parent = "Caribbean",
}
labels["Republika Dominikana"] = {
aliases = {"Dominican", "dominicano", "Dom. Rep.", "DR", "RD", "Dominican Republic"},
Wikipedia = "Dominican Spanish",
regional_categories = "Dominican",
parent = "Caribbean",
}
labels["Maagang Modernong Espanyol"] = { --TLCHANGE
aliases = {"early modern Spanish", "early modern", "Early Modern", "Early Modern Spanish"}, --TLCHANGE
def = "Spanish as spoken between the 15th century and the end of the 17th century",
noreg = true,
plain_categories = true,
Wikipedia = true,
parent = true,
english_name = "Early Modern Spanish", --TLCHANGE
}
labels["Ekwador"] = {
aliases = {"Ecuadorian", "Ecuador"},
Wikipedia = "Ecuadorian Spanish",
regional_categories = "Ecuadorian",
parent = "Andes",
}
labels["El Salvador"] = {
aliases = {"Salvadorian", "Salvadoran"},
Wikipedia = "Salvadoran Spanish",
regional_categories = "Salvadoran",
parent = "Central America",
}
labels["Ginea Ekwatoryal"] = {
aliases = {"Equatorial Guinean", "Equatoguinean", "Equatorial Guinea"},
Wikipedia = "Equatoguinean Spanish",
regional_categories = "Equatoguinean",
parent = "Africa",
}
labels["Extremadura"] = {
aliases = {"Extremaduran"},
Wikipedia = true,
regional_categories = "Extremaduran",
parent = "southern Spain",
}
labels["Galisya"] = {
aliases = {"Galician", "Galicia"},
Wikipedia = "Galicia (Spain)",
regional_categories = "Galician",
parent = "northern Spain",
}
labels["Germanía"] = {
aliases = {"Germania", "germanía", "germania"},
Wikipedia = true,
plain_categories = true,
def = "[[Germanía]], a Spanish [[argot]] used by criminals in [[Spain]] in the 16th and 17th century",
noreg = true,
country = "Spain",
parent = "Spain",
othercat = "Spanish cant,Early Modern Spanish",
}
labels["Granada"] = {
aliases = {"Granadan"},
Wikipedia = true,
regional_categories = "Granadan",
parent = "Andalusia",
}
labels["Guatemala"] = {
aliases = {"Guatemalan"},
Wikipedia = "Guatemalan Spanish",
regional_categories = "Guatemalan",
parent = "Central America",
}
labels["Honduras"] = {
aliases = {"Honduran"},
Wikipedia = "Honduran Spanish",
regional_categories = "Honduran",
parent = "Central America",
}
labels["Huelva"] = {
aliases = {"Huelvan"},
Wikipedia = "Province of Huelva",
regional_categories = "Huelvan",
parent = "Andalusia",
}
labels["La Rioja"] = {
aliases = {"Rioja", "Riojan", "Riojano"},
Wikipedia = true,
regional_categories = "Riojan",
parent = "northern Spain",
}
labels["Latin Amerika"] = {
aliases = {"Latin American Spanish", "Lat. Am.", "LatAm", "LATAM", "Latin America"},
Wikipedia = "Spanish language in the Americas",
regional_categories = "Latin American",
parent = true,
}
labels["León"] = {
aliases = {"Leon", "Leonese"},
Wikipedia = "Province of León",
regional_categories = "Leonese",
parent = "northern Spain",
}
labels["Llanito"] = {
aliases = {"Yanito", "llanito", "yanito", "Gibraltar", "Gibraltarian"},
Wikipedia = true,
plain_categories = true,
region = "Gibraltar",
parent = "Andalusia",
}
labels["Louisiana"] = {
aliases = {"New Orleans", "Louisianian"},
Wikipedia = true,
regional_categories = "Louisianian",
parent = "US",
}
labels["Lunfardo"] = {
def = "[[Lunfardo]], a Spanish [[argot]] with origins in [[Buenos Aires]]",
aliases = {"lunfardo"},
Wikipedia = true,
plain_categories = true,
parent = "Argentina,Uruguay",
othercat = "Spanish cant",
}
labels["Madrid"] = {
aliases = {"Madrilenian"},
Wikipedia = "Community of Madrid",
regional_categories = "Madrilenian",
parent = "Spain",
}
labels["Málaga"] = {
aliases = {"Malaga", "Malagan"},
Wikipedia = "Province of Málaga",
regional_categories = "Malagan",
parent = "Andalusia",
}
labels["Mehiko"] = {
aliases = {"Mexican", "México", "Mexico"},
Wikipedia = "Mexican Spanish",
regional_categories = "Mexican",
parent = "Latin America",
}
labels["Morelos"] = {
alias = {"Morelense"},
Wikipedia = true,
regional_categories = "Morelense",
parent = "Mexico",
}
labels["Maruekos"] = {
aliases = {"Moroccan", "Moroko", "Morocco"},
Wikipedia = true,
regional_categories = "Moroccan",
parent = "Africa",
}
labels["Mursiya"] = {
aliases = {"Murcian", "Murcia"},
Wikipedia = "Murcian Spanish",
regional_categories = "Murcian",
parent = "southern Spain",
}
labels["Nabaro"] = {
aliases = {"Navarrese", "Navarre"},
Wikipedia = true,
regional_categories = "Navarrese",
parent = "northern Spain",
}
labels["New Mexico"] = {
aliases = {"New Mexican", "Neomexicano"},
Wikipedia = "New Mexican Spanish",
regional_categories = "New Mexican",
parent = "US",
}
labels["Lungsod ng Nueva York"] = {
aliases = {"NYC", "New York city", "New York City"},
Wikipedia = true,
regional_categories = true,
parent = "US",
}
labels["Nikaragua"] = {
aliases = {"Nicaraguan", "Nicaragua"},
Wikipedia = "Nicaraguan Spanish",
regional_categories = "Nicaraguan",
parent = "Central America",
}
labels["hilagang Espanya"] = {
display = "hilagang {{w|Peninsular Spain|Espanya}}",
aliases = {"Northern Spain", "north of Spain", "northern Peninsular", "Northern Peninsular", "northern Spain"},
regional_categories = "Northern Peninsular",
parent = "Spain",
}
labels["Oaxaca"] = {
aliases = {"Oaxacan"},
Wikipedia = true,
regional_categories = "Oaxacan",
parent = "Mexico",
}
labels["Palensiya"] = {
aliases = {"Palencian", "Palencia"},
Wikipedia = true,
regional_categories = "Palencian",
parent = "northern Spain",
}
labels["Panama"] = {
aliases = {"Panamanian"},
Wikipedia = "Panamanian Spanish",
regional_categories = "Panamanian",
parent = "Central America",
}
labels["Paraguay"] = {
aliases = {"Paraguayan"},
Wikipedia = "Paraguayan Spanish",
regional_categories = "Paraguayan",
parent = "Cono Sur",
}
labels["Peru"] = {
aliases = {"Peruvian", "Perú"},
Wikipedia = "Peruvian Spanish",
regional_categories = "Peruvian",
parent = "Andes",
}
labels["Pilipinas"] = { --TLCHANGE "Philippines"
the = true,
aliases = {"Philippine", "Philippines"}, --TLCHANGE
Wikipedia = "Philippine Spanish",
regional_categories = "Pilipino", --TLCHANGE "Philippine",
parent = true,
}
labels["Puerto Rico"] = {
aliases = {"Puerto Rican"},
Wikipedia = "Puerto Rican Spanish",
regional_categories = "Puerto Rican",
parent = "Caribbean,US",
}
labels["Rioplatense"] = {
region = "the {{w|Río de la Plata basin}}",
aliases = {"rioplatense", "River Plate", "Río de la Plata", "Rio de la Plata", "Rioplatense Spanish"},
Wikipedia = "Rioplatense Spanish",
regional_categories = true,
parent = "Cono Sur",
}
labels["Sebilya"] = {
aliases = {"Sevilla", "Sevillan", "Seville"},
Wikipedia = "Province of Seville",
regional_categories = "Sevillian",
parent = "Andalusia",
}
labels["Sinaloa"] = {
alias = "Sinaloense",
Wikipedia = true,
regional_categories = "Sinaloense",
parent = "Mexico",
}
labels["Timog Amerika"] = {
aliases = {"South American", "South America"},
Wikipedia = "Spanish language in South America",
regional_categories = "South American",
parent = "Latin America",
}
labels["Katimugang Kono"] = {
aliases = {"Cono Sur", "Southern Cone"},
regional_categories = true,
Wikipedia = "Southern Cone",
parent = "South America",
}
labels["katimugang Espanya"] = {
display = "southern {{w|Peninsular Spanish|Spain}}",
aliases = {"Southern Spain", "south of Spain", "southern Peninsular", "Southern Peninsular", "southern Spain"},
regional_categories = "Southern Peninsular",
parent = "Spain",
}
labels["Espanya"] = {
aliases = {"Spanish", "ES", "Europe", "European", "Spain"},
Wikipedia = "Peninsular Spanish",
regional_categories = "Peninsular",
parent = true,
}
labels["Spanglish"] = {
aliases = {"Pocho", "pocho"},
Wikipedia = true,
plain_categories = true,
def = "A language blend of English and Spanish, or the mixing of them together in a sentence",
noreg = true,
parent = true,
}
labels["Texas"] = {
aliases = {"TX", "Texan"},
Wikipedia = "Texan Spanish",
regional_categories = "Texan",
parent = "US",
}
labels["Estados Unidos"] = {
region = "the {{w|United States of America}}",
aliases = {"United States Spanish", "US Spanish", "U.S.", "United States", "United States of America", "USA", "US"},
Wikipedia = "Spanish language in the United States",
regional_categories = "United States",
parent = true,
}
labels["Uruguay"] = {
aliases = {"Uruguayan"},
Wikipedia = "Uruguayan Spanish",
regional_categories = "Uruguayan",
parent = "Rioplatense",
}
labels["Balensiya"] = {
aliases = {"Valencian", "Valencia"},
Wikipedia = true,
regional_categories = "Valencian",
parent = "Spain",
}
labels["Benesuela"] = {
aliases = {"Venezuelan", "Venezuela"},
Wikipedia = "Venezuelan Spanish",
regional_categories = "Venezuelan",
parent = "South America",
}
labels["Samora"] = {
aliases = {"Zamoran", "Zamora"},
Wikipedia = "Province of Zamora",
regional_categories = "Zamoran",
parent = "northern Spain",
}
labels["bago 1815"] = {
aliases = {"pre-1815"},
Wikipedia = "Spanish orthography",
}
labels["bago 2010"] = {
aliases = {"pre-2010"},
Wikipedia = "Spanish orthogrpahy",
}
------------------------------------ former accent qualifiers ------------------------------------
labels["ceceo"] = {
Wikipedia = true,
}
labels["distinción"] = {
aliases = {"distincion"},
Wikipedia = true,
}
labels["lleísmo"] = {
Wikipedia = "Yeísmo",
}
labels["seseo"] = {
Wikipedia = true,
}
labels["yeísmo"] = {
Wikipedia = "Yeísmo",
}
return require("Module:labels").finalize_data(labels)
to6yaqrbb9osfaj9ocntak71g5i2ak5
Module:es-pronunc
828
35650
178659
178041
2026-11-12T06:07:36Z
GinawaSaHapon
3989
178659
Scribunto
text/plain
--[=[
This module implements the templates {{es-pr}} and {{es-IPA}}.
Author: Benwing2
]=]
local export = {}
local m_IPA = require("Module:IPA")
local m_str_utils = require("Module:string utilities")
local m_table = require("Module:table")
local audio_module = "Module:audio"
local decorations_module = "Module:decorations"
local headword_data_module = "Module:headword/data"
local homophones_module = "Module:homophones"
local hyphenation_module = "Module:hyphenation"
local labels_module = "Module:labels"
local links_module = "Module:links"
local parameters_module = "Module:parameters"
local parse_utilities_module = "Module:parse utilities"
local references_module = "Module:references"
local rhymes_module = "Module:rhymes"
local force_cat = false -- for testing
--[=[
FIXME:
1. Port latest changes to production module. [DONE]
2. Finish work on rhymes and hyphenation. [DONE]
3. Handle <hmp:...> for homophones. [DONE]
4. Don't add comma before phonetic IPA. [DONE]
5. Handle secondary stress, suffixes, etc. in syllabification. [DONE]
6. Need some changes to syllable splitting in consonant clusters. (e.g. 'cum‧min‧gto‧ni‧ta') [DONE]
7. Fix handling of references to correspond to Portuguese module. [DONE]
8. Propagate qualifiers on individual pronun terms to rhymes and hyph.
9. Support raw phonemic/phonetic pronunciations. [DONE]
10. Support overall audio. [DONE]
11. Keep th/ph/kh/gh/tz ([[Ertzaintza]]) together when syllabifying (but not bh due to [[subhumano]], [[subhistoria]], etc.). [DONE]
12. Support <q:...> and <qq:...> on audio. [DONE]
13. Support <a:...> and <aa:...> (using {{a|...}}, left and right) on terms, rhymes, hyphenation, homophones and
audio. [DONE]
14. Support # instead of ; as separator between audio file and gloss and make sure it works if gloss has embedded # or
;. [DONE]
15. Use parse_inline_modifiers() in [[Module:parse utilities]]. [DONE]
]=]
--[=[
About styles, dialects and isoglosses:
From the standpoint of pronunciation, a given dialect is defined by isoglosses, which specify differences
in the way of pronouncing certain phonemes. You can think of a dialect as a collection of isoglosses.
For example, one isogloss is "distinción" (pronouncing written ''s'' and ''c/z'' differently) vs. "seseo"
(pronouncing them the same). Another is "lleísmo" (pronouncing written ''ll'' and ''y'' differently) vs.
"yeísmo" (pronouncing them the same). The dominant pronunciation in Spain can be described as
distinción + yeísmo, while the pronunciation in rural northern Spain can be described as distinción + lleísmo
and the pronunciation across much of the Andes mountains, Paraguay, and the Philippines can be described as seseo + lleísmo.
Specifically, the following isoglosses are recognized (note, the isogloss specs as used in this module
dispense with written accents):
-- "distincion" = pronouncing ''s'' and ''c/z'' differently
-- "seseo" = pronouncing ''s'' and ''c/z'' the same
-- "lleismo" = pronouncing ''ll'' and ''y'' differently
-- "yeismo" = pronouncing ''ll'' and ''y'' the same
-- "rioplatense" = Rioplatense speech, i.e. seseo+yeismo with ''ll'' and ''y'' pronounced specially, and a
clear distinction between initial ''hi-'' vs. initial ''ll-/y-''
-- "sheismo" = a type of Rioplatense speech, characteristic of Buenos Aires, where ''ll'' and ''y'' are
pronounced as /ʃ/
-- "zheismo" = a type of Rioplatense speech, found outside of Buenos Aires, where ''ll'' and ''y'' are
pronounced as /ʒ/
-- "quito" = seseo + lleismo, but pronouncing ''ll'' as /ʒ/
-- "yucatan" = seseo + yeismo, intervocalic ''y'' is pronounced ''i'' and lost in contact with ''i'' or ''e''
These isoglosses can be combined to yield one of the following eight dialects:
-- "distincion-lleismo": distinción + lleísmo
-- "distincion-yeismo": distinción + yeísmo
-- "seseo-lleismo": seseo + lleísmo
-- "seseo-yeismo": seseo + yeísmo
-- "rioplatense-sheismo": Rioplatense with /ʃ/ (Buenos Aires)
-- "rioplatense-zheismo": Rioplatense with /ʒ/ (non-Buenos Aires)
-- "quito"
-- "yucatan"
A "style" here is a set of dialects that pronounce a given word in a given fashion. For example, if we are only
considering the distinción/seseo and lleísmo/yeísmo isoglosses, there are four conceivable dialects (all of
which in fact exist). However, for a given word, more than one dialect may pronounce it the same. For
example, a word like [[paz]] has a ''z'' but no ''ll'', and so there are only two possible pronunciations for
the four dialects. Here, the two styles are "Spain" and "Latin America". Correspondingly, a word like [[pollo]]
with an ''ll'' but no ''z'' has two styles, which can approximately be described as "most of Spain and Latin
America" vs. "rural northern Spain, Andes Mountains, Paraguay, Philippines".
A "style spec" (indicated by the style= parameter to {{es-IPA}}) restricts the output to certain styles.
A style spec can be one of the following:
1. An isogloss, e.g. "distincion", "rioplatense"; if specified, only styles containing this isogloss are output.
2. A negated isogloss, e.g. "-rioplatense".
3. An intersection of isoglosses ("A and B"), e.g. "distincion+lleismo". This can be used to restrict to specific
dialects.
4. A union of isoglosses ("A or B"), e.g. "distincion,zheismo". If both plus and comma are used, plus takes
precedence, e.g. "seseo+lleismo,zheismo" means either the "seseo+lleismo" dialect or the "rioplatense-zheismo"
dialect.
An example where the style= parameter might be used is with the word [[bluetooth]], which has one pronunciation
in Spain/distinción (respelled "blutuz") but another in Latin America/seseo (respelled "blutud"). This might be
represented using {{es-pr}} as {{es-pr|blutuz<style:distincion>|blutud<style:seseo>}}.
]=]
local lang = require("Module:languages").getByCode("es")
local decompose = require("Module:es-common").decompose
local u = m_str_utils.char
local rfind = m_str_utils.find
local rsubn = m_str_utils.gsub
local rsplit = m_str_utils.split
local ulower = m_str_utils.lower
local ulen = m_str_utils.len
local unfd = mw.ustring.toNFD
local unfc = mw.ustring.toNFC
local AC = u(0x0301) -- acute = ́
local GR = u(0x0300) -- grave = ̀
local CFLEX = u(0x0302) -- circumflex = ̂
local TILDE = u(0x0303) -- tilde = ̃
local SYLDIV = u(0xFFF0) -- used to represent a user-specific syllable divider (.) so we won't change it
local vowel = "aeiouüyAEIOUÜY" -- vowel; include y so we get single-word y correct and for syllabifying from spelling
local V = "[" .. vowel .. "]" -- vowel class
local accent = AC .. GR .. CFLEX
local accent_c = "[" .. accent .. "]"
local stress = AC .. GR
local stress_c = "[" .. AC .. GR .. "]"
local ipa_stress = "ˈˌ"
local ipa_stress_c = "[" .. ipa_stress .. "]"
local sylsep = "%-." .. SYLDIV -- hyphen included for syllabifying from spelling
local sylsep_c = "[" .. sylsep .. "]"
local wordsep = "# "
local separator_not_wordsep = accent .. ipa_stress .. sylsep
local separator = separator_not_wordsep .. wordsep
local separator_c = "[" .. separator .. "]"
local C = "[^" .. vowel .. separator .. "]" -- consonant class including h
local C_NOT_H = "[^" .. vowel .. separator .. "h]" -- consonant class not including h
local C_OR_WORDSEP = "[^" .. vowel .. separator_not_wordsep .. "]" -- consonant class including h, or word separator
local T = "[^" .. vowel .. "lrɾjw" .. separator .. "]" -- obstruent or nasal
local unstressed_words = m_table.listToSet({
"el", "la", "los", "las", -- definite articles
"un", -- single-syllable indefinite articles
"me", "te", "se", "lo", "le", "nos", "os", "les", -- unstressed object pronouns
"mi", "mis", "tu", "tus", "su", "sus", -- unstressed possessive pronouns
"que", "si", -- subordinating conjunctions
"y", "e", "o", "u", "mas", -- coordinating conjunctions
"de", "del", "a", "al", -- basic prepositions + combinations with articles
"por", "en", "con", -- other prepositions
})
-- version of rsubn() that discards all but the first return value
local function rsub(term, foo, bar)
local retval = rsubn(term, foo, bar)
return retval
end
-- version of rsubn() that returns a 2nd argument boolean indicating whether
-- a substitution was made.
local function rsubb(term, foo, bar)
local retval, nsubs = rsubn(term, foo, bar)
return retval, nsubs > 0
end
-- apply rsub() repeatedly until no change
local function rsub_repeatedly(term, foo, bar)
while true do
local new_term = rsub(term, foo, bar)
if new_term == term then
return term
end
term = new_term
end
end
local function split_on_comma(term)
if not term then
return nil
end
if term:find(",%s") then
return require(parse_utilities_module).split_on_comma(term)
elseif term:find(",") then
return rsplit(term, ",")
else
return {term}
end
end
-- Remove any HTML from the formatted text and resolve links, since the extra characters don't contribute to the
-- displayed length.
local function convert_to_raw_text(text)
text = rsub(text, "<.->", "")
if text:find("%[%[") then
text = require(links_module).remove_links(text)
end
return text
end
-- Return the approximate displayed length in characters.
local function textual_len(text)
return ulen(convert_to_raw_text(text))
end
local function construct_default_differences(dialect)
if dialect == "distincion-lleismo" then
return {
distincion_different = false,
lleismo_different = false,
sheismo_different = false,
need_rioplat = false,
need_quito = false,
need_yucatan = false,
}
end
return nil
end
-- Main syllable-division algorithm. Can be called either directly on spelling (when hyphenating) or after
-- non-trivial processing of respelling in the direction of pronunciation (when generating pronunciation).
local function syllabify_from_spelling_or_pronun(text, is_spelling)
-- Part 1: Divide before the last consonant in a cluster of consonants between vowels (but don't divide a VhV
-- sequence; [[prohibir]] should be prohi.bir). Then move the syllable division marker leftwards over clusters that
-- can form onsets.
text = rsub_repeatedly(text, "(" .. V .. accent_c .. "*)(" .. C_NOT_H .. V .. ")", "%1.%2")
text = rsub_repeatedly(text, "(" .. V .. accent_c .. "*" .. C .. "+)(" .. C .. V .. ")", "%1.%2")
-- Puerto Rico + most of Spain divide tl as t.l. Mexico and the Canary Islands have .tl. Unclear what other regions
-- do. Here we choose to go with .tl. See https://catalog.ldc.upenn.edu/docs/LDC2019S07/Syllabification_Rules_in_Spanish.pdf
-- and https://www.spanishdict.com/guide/spanish-syllables-and-syllabification-rules.
-- NOTE: When run on pronun, we have already eliminated c and v, but not when run on spelling.
-- When run on pronun, don't include r, which at this point represents the trill.
local cluster_r = is_spelling and "rɾ" or "ɾ"
-- Don't divide Cl or Cr where C is a stop or fricative, except for dl.
text = rsub(text, "([pbfvkctg])%.([l" .. cluster_r .. "])", ".%1%2")
text = text:gsub("d%.([" .. cluster_r .. "])", ".d%1")
-- Don't divide ch, sh, ph, th, dh, fh, kh or gh. Do allow bh to be divided ([[subhumano]], [[subhúmedo]], etc.).
text = rsub(text, "([csptdfkg])%.h", ".%1h")
-- Don't divide ll or rr.
text = rsub(text, "([lr])%.%1", ".%1%1")
-- Don't divide tz ([[Ertzaintza]], [[quetzal]], [[hertziano]] and other words of Basque, Nahuatl and German
-- origin).
text = rsub(text, "t%.z", ".tz")
-- Per https://catalog.ldc.upenn.edu/docs/LDC2019S07/Syllabification_Rules_in_Spanish.pdf, tl at the end of a word
-- (as in nahuatl, Popocatepetl etc.) is divided .tl from the previous vowel.
if is_spelling then
text = text:gsub("([^. %-])tl$", "%1.tl")
text = text:gsub("([^. %-])(tl[ %-])", "%1.%2")
else
text = text:gsub("([^.#])tl#", "%1.tl")
end
-- Part 2: Divide hiatuses. Any aeo, or stressed iuüy, should be syllabically divided from a following aeo or
-- stressed iuüy. Also divide ii and uu sequences ([[antiincendios]], [[shiita]], [[vacuum]]). Note that words with
-- ii or uu next to a vowel (e.g. [[hawaiiano]]) will not make it to this point unchanged; the i or u adjacent to
-- a vowel (or the second one if both are adjacent to vowels) will get converted to a consonant symbol (temporarily
-- when syllabifying spelling).
text = rsub_repeatedly(text, "([aeoAEO]" .. accent_c .. "*)(h?[aeo])", "%1.%2")
text = rsub_repeatedly(text, "([aeoAEO]" .. accent_c .. "*)(h?" .. V .. stress_c .. ")", "%1.%2")
text = rsub(text, "([iuüyIUÜY]" .. stress_c .. ")(h?[aeo])", "%1.%2")
text = rsub_repeatedly(text, "([iuüyIUÜY]" .. stress_c .. ")(h?" .. V .. stress_c .. ")", "%1.%2")
text = rsub_repeatedly(text, "([iI]" .. accent_c .. "*)(h?i)", "%1.%2")
text = rsub_repeatedly(text, "([uU]" .. accent_c .. "*)(h?u)", "%1.%2")
return text
end
local function syllabify_from_spelling(text)
text = decompose(text)
-- start at FFF1 because FFF0 is used for SYLDIV
-- Temporary replacements for characters we want treated as default consonants. The C and related consonant regexes
-- treat all unknown characters as consonants.
local TEMP_I = u(0xFFF1)
local TEMP_U = u(0xFFF2)
local TEMP_Y_CONS = u(0xFFF3)
local TEMP_QU = u(0xFFF4)
local TEMP_QU_CAPS = u(0xFFF5)
local TEMP_GU = u(0xFFF6)
local TEMP_GU_CAPS = u(0xFFF7)
local TEMP_H = u(0xFFF8)
-- Change user-specified . into SYLDIV so we don't shuffle it around when dividing into syllables.
text = text:gsub("%.", SYLDIV)
text = rsub(text, "y(" .. V .. ")", TEMP_Y_CONS .. "%1")
-- We don't want to break -sh- except in desh-, e.g. [[deshuesar]], [[deshonra]], [[deshecho]]. Normally, -sh- is
-- automatically preserved, so we replace the h with a temporary symbol to avoid this.
text = text:gsub("^([Dd]es)h", "%1" .. TEMP_H)
text = text:gsub("([ %-][Dd]es)h", "%1" .. TEMP_H)
-- qu mostly handled correctly automatically, but not in quietud
text = rsub(text, "qu(" .. V .. ")", TEMP_QU .. "%1")
text = rsub(text, "Qu(" .. V .. ")", TEMP_QU_CAPS .. "%1")
text = rsub(text, "gu(" .. V .. ")", TEMP_GU .. "%1")
text = rsub(text, "Gu(" .. V .. ")", TEMP_GU_CAPS .. "%1")
local vowel_to_glide = { ["i"] = TEMP_I, ["u"] = TEMP_U }
-- i and u between vowels -> consonant-like substitutions: [[paranoia]], [[baiano]], [[abreuense]], [[alauita]],
-- [[Malaui]], etc.; also with h, as in [[marihuana]], [[parihuela]], [[antihielo]], [[pelluhuano]], [[náhuatl]],
-- etc. When we do this we need to help the syllabification particularly of words with -hiV- and -huV- in them,
-- otherwise we get e.g. 'an.tih.ie.lo' because we converted the i following the h to a consonant. Add .* at the
-- beginning so we go right-to-left, in the case of [[hawaiiano]] -> ha.wai.iano.
text = rsub_repeatedly(text, "(.*" .. V .. accent_c .. "*)(h?)([iu])(" .. V .. ")",
function (v1, h, iu, v2) return v1 .. "." .. h .. vowel_to_glide[iu] .. v2 end
)
text = syllabify_from_spelling_or_pronun(text, "is spelling")
text = text:gsub(SYLDIV, ".")
text = text:gsub(TEMP_I, "i")
text = text:gsub(TEMP_U, "u")
text = text:gsub(TEMP_Y_CONS, "y")
text = text:gsub(TEMP_QU, "qu")
text = text:gsub(TEMP_QU_CAPS, "Qu")
text = text:gsub(TEMP_GU, "gu")
text = text:gsub(TEMP_GU_CAPS, "Gu")
text = text:gsub(TEMP_H, "h")
text = unfc(text)
-- No qualifiers from dialect tags because we assume all dialects hyphenate the same way.
-- FIXME: There are region-specific ways of hyphenating -tl-. See above. We don't currently handle this properly.
return text
end
-- Generate the IPA of a given respelling, where a respelling is the representation of the pronunciation of a given
-- Spanish term using Spanish spelling conventions (augmented in a few cases with extra conventions such as 'sh' for
-- /ʃ/).
-- ɟ and ĉ are used internally to represent [ʝ⁓ɟ͡ʝ] and [t͡ʃ]
--
function export.IPA(text, dialect, phonetic)
local distincion = dialect == "distincion-lleismo" or dialect == "distincion-yeismo"
local lleismo = dialect == "distincion-lleismo" or dialect == "seseo-lleismo" or dialect == "quito"
local rioplat = dialect == "rioplatense-sheismo" or dialect == "rioplatense-zheismo"
local sheismo = dialect == "rioplatense-sheismo"
local quito = dialect == "quito"
local yucatan = dialect == "yucatan"
local distincion_different = false
local lleismo_different = false
local need_rioplat = false
local need_quito = false
local need_yucatan = false
local initial_hi = false
local sheismo_different = false
-- start at FFF1 because FFF0 is used for SYLDIV
local TEMP_Y = u(0xFFF1)
local TEMP_W = u(0xFFF2)
text = ulower(text or mw.loadData("Module:headword/data").pagename)
-- decompose everything but ç, ñ and ü
text = decompose(text)
-- convert commas and en/en dashes to IPA foot boundaries
text = rsub(text, "%s*[,–—]%s*", " | ")
-- question mark or exclamation point in the middle of a sentence -> IPA foot boundary
text = rsub(text, "([^%s])%s*[¡!¿?]%s*([^%s])", "%1 | %2")
-- canonicalize multiple spaces and remove leading and trailing spaces
local function canon_spaces(text)
text = rsub(text, "%s+", " ")
text = rsub(text, "^ ", "")
text = rsub(text, " $", "")
return text
end
text = canon_spaces(text)
-- Make prefixes unstressed unless they have an explicit stress marker; also make certain
-- monosyllabic words (e.g. [[el]], [[la]], [[de]], [[en]], etc.) without stress marks be
-- unstressed.
local words = rsplit(text, " ")
for i, word in ipairs(words) do
if rfind(word, "%-$") and not rfind(word, accent_c) or unstressed_words[word] then
-- add CFLEX to the last vowel not the first one, or we will mess up 'que' by
-- adding the CFLEX after the 'u'
words[i] = rsub(word, "^(.*" .. V .. ")", "%1" .. CFLEX)
end
end
text = table.concat(words, " ")
-- Convert hyphens to spaces, to handle [[Austria-Hungría]], [[franco-italiano]], etc.
text = rsub(text, "%-", " ")
-- canonicalize multiple spaces again, which may have been introduced by hyphens
text = canon_spaces(text)
-- now eliminate punctuation
text = rsub(text, "[¡!¿?']", "")
-- put # at word beginning and end and double ## at text/foot boundary beginning/end
text = rsub(text, " | ", "# | #")
text = "##" .. rsub(text, " ", "# #") .. "##"
--determining whether "y" is a consonant or a vowel
text = rsub(text, "y(" .. V .. ")", "ɟ%1") -- not the real sound
-- word-final -ay/-ey/-oy/-uy is stressed whereas word-final -ai/-ei/-oi/-ui is not; in addition,
-- word-final -uy is /uj/ whereas word-final -ui is /wi/ (e.g. [[muy]] vs. [[fui]])
text = rsub(text, "([aeou])y#", "%1" .. TEMP_Y .. "#") -- a temporary symbol; replaced with i below
text = rsub(text, "y", "i")
-- handle certain combinations; sh handling needs to go before x handling to avoid issues with [[exhausto]]
text = rsub(text, "ch", "ĉ") --not the real sound
-- We want to keep desh- ([[deshuesar]]) as-is. Converting to des- won't work because we want it syllabified as
-- 'des.we.saɾ' not #'de.swe.saɾ' (cf. [[desuelo]] /de.swe.lo/ from [[desolar]]).
text = rsub(text, "#desh", "!") --temporary symbol
text = rsub(text, "sh", "ʃ")
text = rsub(text, "!", "#desh") --restore
text = rsub(text, "#[ckp]([st])", "#%1") -- [[ctónico]], [[psicología]], [[pterodáctilo]]
--x
text = rsub(text, "#x", "#s") -- xenofobia, xilófono, etc.
text = rsub(text, "x", "ks")
--c, g, q
text = rsub(text, "c([ie])", (distincion and "θ" or "z") .. "%1") -- not the real LatAm sound
text = rsub(text, "g([ie])", "x%1") -- must happen after handling of x above
text = rsub(text, "gu([ie])", "g%1")
text = rsub(text, "gü([ie])", "gu%1")
-- following must happen before stress assignment; [[branding]] has initial stress like 'brandin'
text = rsub(text, "ng([^aeiouüwhlr])", "n%1") -- [[Bangkok]], [[ángstrom]], [[branding]]
text = rsub(text, "qu([ie])", "k%1")
text = rsub(text, "ü", "u") -- [[Düsseldorf]], [[hübnerita]], obsolete [[freqüentemente]], etc.
text = rsub(text, "q", "k") -- [[quark]], [[Qatar]], [[burqa]], [[Iraq]], etc.
text = rsub(text, "[zç]", distincion and "θ" or "z") -- not the real LatAm sound; "ç" became "z" in 1726
if rfind(text, "[θz]") then
distincion_different = true
end
-- map various consonants to their phoneme equivalent
text = rsub(text, "[cjñrv]", {["c"]="k", ["j"]="x", ["ñ"]="ɲ", ["r"]="ɾ", ["v"]="b" })
-- handle word- and syllable-initial hiV ([[hielo]], [[enhiesto]], [[deshielo]], ...)
local word_initial_hi, syl_initial_hi
text, word_initial_hi = rsubb(text, "#h?i(" .. V .. ")", rioplat and "#j%1" or "#ɟ%1")
text, syl_initial_hi = rsubb(text, "(" .. C .. sylsep_c .. "*)hi(" .. V .. ")", rioplat and "%1j%2" or "%1ɟ%2")
initial_hi = word_initial_hi or syl_initial_hi
-- handle word- and syllable-initial huV ([[huevo]], [[deshuesar]])
text = rsubb(text, "(" .. C_OR_WORDSEP .. sylsep_c .. "*)hu(" .. V .. ")", "%1" .. TEMP_W .. "%2")
-- handle double consonants that have a pronunciation different from their single equivalents
-- double l
lleismo_different = rfind(text, "ll")
need_quito = lleismo_different and rfind(text, "ɟ")
text = rsub(text, "ll", lleismo and "ʎ" or "ɟ")
-- handle intervocalic -y-
need_yucatan = rfind(text, V .. accent_c .. "*" .. sylsep_c .. "*[ʎɟ]" .. V)
if yucatan then
text = rsub_repeatedly(text, "([ei]" .. accent_c .. "*" .. sylsep_c .. "*)ɟ(" .. V .. ")", "%1.%2")
text = rsub_repeatedly(text, "(" .. V .. accent_c .. "*" .. sylsep_c .. "*)ɟ" .. "([ei])", "%1.%2")
text = rsub_repeatedly(text, "(" .. V .. accent_c .."*" .. sylsep_c .. "*)ɟ(" .. V .. ")", "%1i%2")
end
-- trill in #r, lr ([[alrededor]], [[malrotar]]), nr ([[enriquecer]], [[sonrisa]], etc.), sr ([[Israel]],
-- [[desregular]], etc.), zr ([[Azrael]], [[cruzrojista]]), rr
text = rsub(text, "ɾɾ", "r")
text = rsub(text, "([#lnszθ])ɾ", "%1r")
-- double n (e.g. [[[ennoblecer]])
text = rsub(text, "nn", "N")
-- double b (e.g. [[subbase]])
text = rsub(text, "bb", "B")
-- reduce any remaining double consonants ([[Addis Abeba]], [[cappa]], [[descender]] in Latin America ...);
-- do this before handling of -nm- e.g. in [[inmigración]], which generates a double consonant, and do this
-- before voicing stops before obstruents, to avoid problems with [[cappa]] and [[crackear]]
text = rsub(text, "(" .. C .. ")%1", "%1")
-- also reduce sz (Latin American in [[fascinante]], etc.)
text = rsub(text, "sz", "s")
-- restore double n, b
text = rsub(text, "N", "nn")
text = rsub(text, "B", "bb")
-- voiceless stop to voiced before obstruent or nasal; but intercept -ts-, -tz-
local voice_stop = { ["p"] = "b", ["t"] = "d", ["k"] = "g" }
text = rsub(text, "t(" .. separator_c .. "*[szθ])", "!%1") -- temporary symbol
text = rsub(text, "([ptk])(" .. separator_c .. "*" .. T .. ")",
function(stop, after) return voice_stop[stop] .. after end)
text = rsub(text, "!", "t")
text = rsub(text, "n([# .]*[bpm])", "m%1")
-- remove silent h before syllable division
text = rsub(text, "h", "")
-- convert i/u between vowels to glide
local vowel_to_glide = { ["i"] = "j", ["u"] = "w" }
-- i and u between vowels -> consonant-like substitutions: [[paranoia]], [[baiano]], [[abreuense]], [[alauita]],
-- [[Malaui]], etc.; also with h, as in [[marihuana]], [[parihuela]], [[antihielo]], [[pelluhuano]], [[náhuatl]],
-- etc. Add .* at the beginning so we go right-to-left, in the case of [[hawaiiano]] -> ha.wai.iano.
text = rsub_repeatedly(text, "(.*" .. V .. accent_c .. "*h?)([iu])(" .. V .. ")",
function (v1, iu, v2) return v1 .. vowel_to_glide[iu] .. v2 end
)
--syllable division
text = syllabify_from_spelling_or_pronun(text, false)
--diphthongs; do not include TEMP_Y here
text = rsub(text, "i([aeou])", "j%1")
text = rsub(text, "u([aeio])", "w%1")
local accent_to_stress_mark = { [AC] = "ˈ", [GR] = "ˌ", [CFLEX] = "" }
local function accent_word(word, syllables)
-- Now stress the word. If any accent exists in the word (including ^ indicating an unaccented word),
-- put the stress mark(s) at the beginning of the indicated syllable(s). Otherwise, apply the default
-- stress rule.
if rfind(word, accent_c) then
for i = 1, #syllables do
syllables[i] = rsub(syllables[i], "^(.*)(" .. accent_c .. ")(.*)$",
function(pre, accent, post) return accent_to_stress_mark[accent] .. pre .. post end
)
end
else
-- Default stress rule. Words without vowels (e.g. IPA foot boundaries) don't get stress.
if #syllables > 1 and (rfind(word, "[^" .. vowel .. "ns#]#") or rfind(word, C .. "[ns]#")) or #syllables == 1 and rfind(word, V) then
syllables[#syllables] = "ˈ" .. syllables[#syllables]
elseif #syllables > 1 then
syllables[#syllables - 1] = "ˈ" .. syllables[#syllables - 1]
end
end
end
local words = rsplit(text, " ")
for j, word in ipairs(words) do
-- accentuation
local syllables = rsplit(word, "%.")
if rfind(word, "men%.te#") then
local mente_syllables
-- Words ends in -mente (converted above to ménte); add a stress to the preceding portion
-- (e.g. [[agriamente]] -> 'ágriaménte') unless already stressed (e.g. [[rápidamente]]).
-- It will be converted to secondary stress further below. Essentially, we rip the word apart
-- into two words ('mente' and the preceding portion) and stress each one independently.
mente_syllables = {}
mente_syllables[2] = table.remove(syllables)
mente_syllables[1] = table.remove(syllables)
accent_word(table.concat(syllables, "."), syllables)
accent_word(table.concat(mente_syllables, "."), mente_syllables)
table.insert(syllables, mente_syllables[1])
table.insert(syllables, mente_syllables[2])
else
accent_word(word, syllables)
end
-- Vowels are nasalized if followed by nasal in same syllable.
if phonetic then
for i = 1, #syllables do
-- first check for two vowels (veinte)
syllables[i] = rsub(syllables[i], "(" .. V .. ")(" .. V .. ")([mnɲ])",
"%1" .. TILDE .. "%2" .. TILDE .. "%3")
-- then for one vowel
syllables[i] = rsub(syllables[i], "(" .. V .. ")([mnɲ])", "%1" .. TILDE .. "%2")
end
end
-- Reconstruct the word.
words[j] = table.concat(syllables, ".")
end
text = table.concat(words, " ")
text = rsub(text, TEMP_Y, "i") --final -ay/-ey/-oy/-uy
text = rsub(text, "z", "s") --real sound of LatAm Z
-- suppress syllable mark before IPA stress indicator
text = rsub(text, "%.(" .. ipa_stress_c .. ")", "%1")
--make all primary stresses but the last one be secondary
text = rsub_repeatedly(text, "ˈ(.+)ˈ", "ˌ%1ˈ")
if (not initial_hi and rfind(text, "[ʎɟ]")) or (rfind(text, sylsep_c .. "[ʎɟ]")) then
sheismo_different = true
end
if rioplat then
if not initial_hi then
if sheismo then
text = rsub(text, "ɟ", "ʃ")
else
text = rsub(text, "ɟ", "ʒ")
end
else
if sheismo then
text = rsub(text, sylsep_c .. "(ɟ)", "ʃ")
else
text = rsub(text, sylsep_c .. "(ɟ)", "ʒ")
end
end
end
if quito then text = rsub(text, "ʎ", "ʒ") end
--phonetic transcription
if phonetic then
-- θ, s, f before voiced consonants
local voiced = "mnɲbdɟgʎ" .. TEMP_W
local r = "ɾr"
local tovoiced = {
["θ"] = "θ̬",
["s"] = "z",
["f"] = "v",
}
local function voice(sound, following)
return tovoiced[sound] .. following
end
text = rsub(text, "([θs])(" .. separator_c .. "*[" .. voiced .. r .. "])", voice)
text = rsub(text, "(f)(" .. separator_c .. "*[" .. voiced .. "])", voice)
-- fricative vs. stop allophones; first convert stops to fricatives, then back to stops
-- after nasals and sometimes after l
local stop_to_fricative = {["b"] = "β", ["d"] = "ð", ["ɟ"] = "ʝ", ["g"] = "ɣ"}
local fricative_to_stop = {["β"] = "b", ["ð"] = "d", ["ʝ"] = "ɟ", ["ɣ"] = "g"}
text = rsub(text, "[bdɟg]", stop_to_fricative)
text = rsub(text, "([mnɲ]" .. separator_c .. "*)([βɣ])",
function(nasal, fricative) return nasal .. fricative_to_stop[fricative] end
)
text = rsub(text, "([lʎmnɲ]" .. separator_c .. "*)([ðʝ])",
function(nasal_l, fricative) return nasal_l .. fricative_to_stop[fricative] end
)
text = rsub(text, "(##" .. ipa_stress_c .. "*)([βɣðʝ])",
function(stress, fricative) return stress .. fricative_to_stop[fricative] end
)
text = rsub(text, "[td]", {["t"] = "t̪", ["d"] = "d̪"})
-- nasal assimilation before consonants
local labiodental, dentialveolar, dental, alveolopalatal, palatal, velar =
"ɱ", "n̪", "n̟", "nʲ", "ɲ", "ŋ"
local nasal_assimilation = {
["f"] = labiodental,
["t"] = dentialveolar, ["d"] = dentialveolar,
["θ"] = dental,
["ĉ"] = alveolopalatal,
["ʃ"] = alveolopalatal,
["ʒ"] = alveolopalatal,
["ɟ"] = palatal, ["ʎ"] = palatal,
["k"] = velar, ["x"] = velar, ["g"] = velar,
}
text = rsub(text, "n(" .. separator_c .. "*)(.)",
function(stress, following) return (nasal_assimilation[following] or "n") .. stress .. following end
)
-- lateral assimilation before consonants
text = rsub(text, "l(" .. separator_c .. "*)(.)",
function(stress, following)
local l = "l"
if following == "t" or following == "d" then -- dentialveolar
l = "l̪"
elseif following == "θ" then -- dental
l = "l̟"
elseif following == "ĉ" or following == "ʃ" then -- alveolopalatal
l = "lʲ"
end
return l .. stress .. following
end)
--semivowels
text = rsub(text, "([aeouãẽõũ][iĩ])", "%1̯")
text = rsub(text, "([aeioãẽĩõ][uũ])", "%1̯")
-- voiced fricatives are actually approximants
text = rsub(text, "([βðɣ])", "%1̞")
end
-- convert fake symbols to real ones
local final_conversions = {
["ħ"] = "h", -- fake aspirated "h" to real "h"
["ĉ"] = "t͡ʃ", -- fake "ch" to real "ch"
["ɟ"] = phonetic and "ɟ͡ʝ" or "ʝ", -- fake "y" to real "y"
-- do the following at the very end so we can use regular g throughout
["g"] = "ɡ", -- U+0067 LATIN SMALL LETTER G → U+0261 LATIN SMALL LETTER SCRIPT G
[TEMP_W] = "w̝", -- see https://en.wikipedia.org/wiki/Spanish_orthography for this
}
text = rsub(text, "[ħĉɟg" .. TEMP_W .. "]", final_conversions)
-- remove # symbols at word and text boundaries
text = rsub(text, "#", "")
text = unfc(text)
-- The values in `differences` are only accurate when the dialect is 'distincion-lleismo'
-- because we look for sounds like /θ/ and /ʎ/ that are only present in that dialect.
-- The calling code knows to only use this structure in conjunction with this dialect.
-- but to make sure of this we set the structure to nil for other dialects.
local differences = nil
if dialect == "distincion-lleismo" then
differences = {
distincion_different = distincion_different,
lleismo_different = lleismo_different,
need_rioplat = initial_hi or sheismo_different,
sheismo_different = sheismo_different,
need_quito = need_quito,
need_yucatan = need_yucatan,
}
end
local ret = {
text = text,
differences = differences,
}
return ret
end
-- For bot usage; {{#invoke:es-pronunc|IPA_string|SPELLING|style=STYLE|phonetic=PHONETIC}}
-- where
--
-- 1. SPELLING is the word or respelling to generate pronunciation for;
-- 2. required parameter style= indicates the pronunciation style to generate
-- (e.g. "distincion-yeismo" for distinción+yeísmo, as is common in Spain;
-- see the comment above export.IPA() above for the full list);
-- 3. phonetic=1 specifies to generate the phonetic rather than phonemic pronunciation;
function export.IPA_string(frame)
local iparams = {
[1] = {},
["style"] = {required = true},
["phonetic"] = {type = "boolean"},
}
local iargs = require(parameters_module).process(frame.args, iparams)
local retval = export.IPA(iargs[1], iargs.style, iargs.phonetic)
return retval.text
end
-- Generate all relevant dialect pronunciations and group into styles. See the comment above about dialects and styles.
-- A "pronunciation" here could be for example the IPA phonemic/phonetic representation of the term or the IPA form of
-- the rhyme that the term belongs to. If `style_spec` is nil, this generates all styles for all dialects, but
-- `style_spec` can also be a style spec such as "seseo" or "distincion+yeismo" (see comment above) to restrict the
-- output. `dodialect` is a function of two arguments, `ret` and `dialect`, where `ret` is the return-value table (see
-- below), and `dialect` is a string naming a particular dialect, such as "distincion-lleismo" or "rioplatense-sheismo".
-- `dodialect` should side-effect the `ret` table by adding an entry to `ret.pronun` for the dialect in question.
--
-- The return value is a table of the form
--
-- {
-- pronun = {DIALECT = {PRONUN, PRONUN, ...}, DIALECT = {PRONUN, PRONUN, ...}, ...},
-- expressed_styles = {STYLE_GROUP, STYLE_GROUP, ...},
-- }
--
-- where:
-- 1. DIALECT is a string such as "distincion-lleismo" naming a specific dialect.
-- 2. PRONUN is a table describing a particular pronunciation. If the dialect is "distincion-lleismo", there should be
-- a field in this table named `differences`, but where other fields may vary depending on the type of pronunciation
-- (e.g. phonemic/phonetic or rhyme). See below for the form of the PRONUN table for phonemic/phonetic pronunciation
-- vs. rhyme and the form of the `differences` field.
-- 3. STYLE_GROUP is a table of the form {tag = "HIDDEN_TAG", styles = {INNER_STYLE, INNER_STYLE, ...}}. This describes
-- a group of related styles (such as those for Latin America) that by default (the "hidden" form) are displayed as
-- a single line, with an icon on the right to "open" the style group into the "shown" form, with multiple lines
-- for each style in the group. The tag of the style group is the text displayed before the pronunciation in the
-- default "hidden" form, such as "Spain" or "Latin America". It can have the special value of `false` to indicate
-- that no tag text is to be displayed. Note that the pronunciation shown in the default "hidden" form is taken
-- from the first style in the style group.
-- 4. INNER_STYLE is a table of the form {tag = "SHOWN_TAG", pronun = {PRONUN, PRONUN, ...}}. This describes a single
-- style (such as for the Andes Mountains and Paraguay in the case where the seseo+lleismo accent differs from all others), to
-- be shown on a single line. `tag` is the text preceding the displayed pronunciation, or `false` if no tag text
-- is to be displayed. PRONUN is a table as described above and describes a particular pronunciation.
--
-- The PRONUN table has the following form for the full phonemic/phonetic pronunciation:
--
-- {
-- phonemic = "PHONEMIC",
-- phonetic = "PHONETIC",
-- differences = {FLAG = BOOLEAN, FLAG = BOOLEAN, ...},
-- }
--
-- Here, `phonemic` is the phonemic pronunciation (displayed as /.../) and `phonetic` is the phonetic pronunciation
-- (displayed as [...]).
--
-- The PRONUN table has the following form for the rhyme pronunciation:
--
-- {
-- rhyme = "RHYME_PRONUN",
-- num_syl = {NUM, NUM, ...},
-- q = nil or {QUALIFIER, QUALIFIER, ...},
-- differences = {FLAG = BOOLEAN, FLAG = BOOLEAN, ...},
-- }
--
-- Here, `rhyme` is a phonemic pronunciation such as "ado" for [[abogado]] or "iʝa"/"iʎa" for [[tortilla]] (depending
-- on the dialect), and `num_syl` is a list of the possible numbers of syllables for the term(s) that have this rhyme
-- (e.g. {4} for [[abogado]], {3} for [[tortilla]] and {4, 5} for [[biología]], which may be syllabified as
-- bio.lo.gí.a or bi.o.lo.gí.a). `num_syl` is used to generate syllable-count categories such as
-- [[Category:Rhymes:Spanish/ia/4 syllables]] in addition to [[Category:Rhymes:Spanish/ia]]. `num_syl` may be nil to
-- suppress the generation of syllable-count categories; this is typically the case with multiword terms.
-- `q`, if non-nil, comes from the user using the syntax e.g. <rhyme:iʃa<q:Buenos Aires>>.
--
-- The value of the `differences` field in the PRONUN table (which, as noted above, only needs to be present for the
-- "distincion-lleismo" dialect, and otherwise should be nil) is a table containing flags indicating whether and how
-- the per-dialect pronunciations differ. This is an optimization to avoid having to generate all six dialectal
-- pronunciations and compare them. It has the following form:
--
-- {
-- distincion_different = BOOLEAN,
-- lleismo_different = BOOLEAN,
-- need_rioplat = BOOLEAN,
-- sheismo_different = BOOLEAN,
-- need_quito = BOOLEAN,
-- need_yucatan = BOOLEAN,
-- }
--
-- where:
-- 1. `distincion_different` should be `true` if the "distincion" and "seseo" pronunciations differ;
-- 2. `lleismo_different` should be `true` if the "lleismo" and "yeismo" pronunciations differ;
-- 3. `need_rioplat` should be `true` if the Rioplatense pronunciations differ from the seseo+yeismo pronunciation;
-- 4. `sheismo_different` should be `true` if the "sheismo" and "zheismo" pronunciations differ.
-- 5. `need_quito` should be `true` if the "quito" and "zheismo" pronunciations differ.
-- 6. `need_yucatan` should be `true` if the "yucatan" and "yeismo" pronunciations differ;
local function express_all_styles(style_spec, dodialect)
local ret = {
pronun = {},
expressed_styles = {},
}
local need_rioplat
local need_quito
local need_yucatan
-- Add a style object (see INNER_STYLE above) that represents a particular style to `ret.expressed_styles`.
-- `hidden_tag` is the tag text to be used when the style group containing the style is in the default "hidden"
-- state (e.g. "Spain", "Latin America" or false if there is only one style group and no tag text should be
-- shown), while `tag` is the tag text to be used when the individual style is shown (e.g. a description such as
-- "most of Spain and Latin America", "Andes Mountains and Paraguay" or "everywhere but Argentina and Uruguay").
-- `representative_dialect` is one of the dialects that this style represents, and whose pronunciation is stored in
-- the style object. `matching_styles` is a hyphen separated string listing the isoglosses described by this style.
-- For example, if the term has an ''ll'' but no ''c/z'', the `tag` text for the yeismo pronunciation will be
-- "most of Spain and Latin America" and `matching_styles` will be "distincion-seseo-yeismo", indicating that
-- it corresponds to both the "distincion" and "seseo" isoglosses as well as the "yeismo" isogloss. This is used
-- when a particular style spec is given. If `matching_styles` is omitted, it takes its value from
-- `representative_dialect`; this is used when the style contains only a single dialect.
local function express_style(hidden_tag, tag, representative_dialect, matching_styles)
matching_styles = matching_styles or representative_dialect
-- If the Rioplatense pronunciation isn't distinctive, add all Rioplatense isoglosses.
if not need_rioplat then
matching_styles = matching_styles .. "-rioplatense-sheismo-zheismo"
end
-- also Quito
if not need_quito then
matching_styles = matching_styles .. "-quito"
end
-- Yucatan
if not need_yucatan then
matching_styles = matching_styles .. "-yucatan"
end
-- If style specified, make sure it matches the requested style.
local style_matches
if not style_spec then
style_matches = true
else
local style_parts = rsplit(matching_styles, "%-")
local or_styles = rsplit(style_spec, "%s*,%s*")
for _, or_style in ipairs(or_styles) do
local and_styles = rsplit(or_style, "%s*%+%s*")
local and_matches = true
for _, and_style in ipairs(and_styles) do
local negate
if and_style:find("^%-") then
and_style = and_style:gsub("^%-", "")
negate = true
end
local this_style_matches = false
for _, part in ipairs(style_parts) do
if part == and_style then
this_style_matches = true
break
end
end
if negate then
this_style_matches = not this_style_matches
end
if not this_style_matches then
and_matches = false
end
end
if and_matches then
style_matches = true
break
end
end
end
if not style_matches then
return
end
-- Fetch the representative dialect's pronunciation if not already present.
if not ret.pronun[representative_dialect] then
dodialect(ret, representative_dialect)
end
-- Insert the new style into the style group, creating the group if necessary.
local new_style = {
tag = tag,
pronun = ret.pronun[representative_dialect],
}
for _, hidden_tag_style in ipairs(ret.expressed_styles) do
if hidden_tag_style.tag == hidden_tag then
table.insert(hidden_tag_style.styles, new_style)
return
end
end
table.insert(ret.expressed_styles, {
tag = hidden_tag,
styles = {new_style},
})
end
-- For each type of difference, figure out if the difference exists in any of the given respellings. We do this by
-- generating the pronunciation for the dialect "distincion-lleismo", for each respelling. In the process of
-- generating the pronunciation for a given respelling, it computes how the other dialects for that respelling
-- differ. Then we take the union of these differences across the respellings.
dodialect(ret, "distincion-lleismo")
local differences = {}
for _, difftype in ipairs { "distincion_different", "lleismo_different", "need_rioplat", "sheismo_different", "need_quito", "need_yucatan" } do
for _, pronun in ipairs(ret.pronun["distincion-lleismo"]) do
if pronun.differences[difftype] then
differences[difftype] = true
end
end
end
local distincion_different = differences.distincion_different
local lleismo_different = differences.lleismo_different
need_rioplat = differences.need_rioplat
local sheismo_different = differences.sheismo_different
need_quito = differences.need_quito
need_yucatan = differences.need_yucatan
-- Now, based on the observed differences, figure out how to combine the individual dialects into styles and
-- style groups.
if not distincion_different and not lleismo_different then
if not need_rioplat then
if not need_yucatan then
express_style(false, false, "distincion-lleismo", "distincion-seseo-lleismo-yeismo")
else
express_style(false, "kahit saan maliban sa hilagang <<Mehiko>>, <<Yucatan>>, at <<Gitnang Amerika>> (maliban sa <<Panama>>)", "distincion-lleismo", "distincion-seseo-lleismo-yeismo")
end
else
if not need_yucatan then
express_style(false, "kahit saan maliban sa <<{{w|Pampas}}>> at katimugang <<Arhentina>> at <<Uruguay>>", "distincion-lleismo",
"distincion-seseo-lleismo-yeismo")
else
express_style(false, "kahit saan maliban sa <<{{w|Pampas}}>> at katimugang <<Arhentina>>, <<Uruguay>>, hilagang <<Mehiko>>, <<Yucatan>> at <<Gitnang Amerika>> (maliban sa <<Panama>>)", "distincion-lleismo", "distincion-seseo-lleismo-yeismo")
end
end
elseif distincion_different and not lleismo_different then
express_style("<<Ginea Ekwatoryal>>, <<Espanya>>", "<<Ginea Ekwatoryal>>, <<Espanya>>", "distincion-lleismo", "distincion-lleismo-yeismo")
if not need_rioplat and not need_yucatan then
express_style("<<Latin Amerika>>, <<Pilipinas>>", "<<Latin Amerika>>, <<Pilipinas>>", "seseo-lleismo", "seseo-lleismo-yeismo")
else
express_style("<<Latin Amerika>>, <<Pilipinas>>", "karamihan sa <<Latin Amerika>>, <<Pilipinas>>", "seseo-lleismo", "seseo-lleismo-yeismo")
end
elseif not distincion_different and lleismo_different then
express_style(false, "<<Ginea Ekwatoryal>>, karamihan sa <<Latin Amerika>> at <<Espanya>>", "distincion-yeismo", "distincion-seseo-yeismo")
express_style(false, "<<panlalawigan>> <<hilagang Espanya>>, hilaga at katimugang <<Andes>> (maliban sa gitnang <<Ekwador>>), <<Bolibya>>, <<Paraguay>>, hilagang-silangang <<Arhentina>>, <<Pilipinas>>", "distincion-lleismo", "distincion-seseo-lleismo")
else
express_style("<<Ginea Ekwatoryal>>, <<Espanya>>", "<<Ginea Ekwatoryal>>, karamihan sa <<Espanya>>", "distincion-yeismo")
express_style("<<Latin Amerika>>", "karamihan sa <<Latin Amerika>>", "seseo-yeismo")
express_style("<<Ginea Ekwatoryal>>, <<Espanya>>", "<<panlalawigan>> <<hilagang Espanya>>", "distincion-lleismo")
express_style("<<Latin Amerika>>", "hilaga at gitnang <<Andes>> (maliban sa gitnang <<Ekwador>>), <<Bolibya>>, <<Paraguay>>, hilagang-silangang <<Arhentina>>, <<Pilipinas>>", "seseo-lleismo")
end
if need_rioplat then
if lleismo_different then
local hidden_tag = distincion_different and "<<Latin Amerika>>" or false
if sheismo_different then
if not need_quito then
express_style(hidden_tag, "<<Buenos Aires>> at paligid", "rioplatense-sheismo", "seseo-rioplatense-sheismo")
express_style(hidden_tag, "gitnang <<Ekwador>>, <<Santiago del Estero>> at paligid, iba pang bahagi ng <<{{w|Pampas}}>> at katimugang <<Arhentina>>, <<Uruguay>>", "rioplatense-zheismo", "seseo-rioplatense-zheismo-quito")
else
express_style(hidden_tag, "gitnang <<Ekwador>>, <<Santiago del Estero>> at paligid", "quito", "seseo-quito")
express_style(hidden_tag, "<<Buenos Aires>> at paligid", "rioplatense-sheismo", "seseo-rioplatense-sheismo")
express_style(hidden_tag, "iba pang bahagi ng <<{{w|Pampas}}>> at katimugang <<Arhentina>>, <<Uruguay>>", "rioplatense-zheismo", "seseo-rioplatense-zheismo")
end
else
express_style(hidden_tag, "<<{{w|Pampas}}>> at katimugang <<Arhentina>>, <<Uruguay>>", "rioplatense-sheismo", "seseo-rioplatense-sheismo-zheismo")
end
else
local hidden_tag = distincion_different and "<<Latin Amerika>>, <<Pilipinas>>" or false
if sheismo_different then
express_style(hidden_tag, "<<Buenos Aires>> at paligid", "rioplatense-sheismo", "seseo-rioplatense-sheismo")
express_style(hidden_tag, "iba pang bahagi ng <<{{w|Pampas}}>> at katimugang <<Arhentina>>, <<Uruguay>>", "rioplatense-zheismo", "seseo-rioplatense-zheismo")
else
express_style(hidden_tag, "<<{{w|Pampas}}>> at katimugang <<Arhentina>>, <<Uruguay>>", "rioplatense-sheismo", "seseo-rioplatense-sheismo-zheismo")
end
end
end
if need_yucatan then
local hidden_tag = distincion_different and (lleismo_different and "<<Latin Amerika>>" or "<<Latin Amerika>>, <<Pilipinas>>") or false
express_style(hidden_tag, "hilagang <<Mehiko>>, <<Yucatan>>, <<Gitnang Amerika>> (maliban sa <<Panama>>)", "yucatan")
end
-- If only one style group, don't indicate the style.
-- Not clear we want this in reality.
--if #ret.expressed_styles == 1 then
-- ret.expressed_styles[1].tag = false
-- if #ret.expressed_styles[1].styles == 1 then
-- ret.expressed_styles[1].styles[1].tag = false
-- end
--end
return ret
end
local function format_all_styles(expressed_styles, format_style)
for i, style_group in ipairs(expressed_styles) do
if #style_group.styles == 1 then
style_group.formatted, style_group.formatted_len =
format_style(style_group.styles[1].tag, style_group.styles[1], i == 1)
else
style_group.formatted, style_group.formatted_len =
format_style(style_group.tag, style_group.styles[1], i == 1)
for j, style in ipairs(style_group.styles) do
style.formatted, style.formatted_len =
format_style(style.tag, style, i == 1 and j == 1)
end
end
end
local maxlen = 0
for i, style_group in ipairs(expressed_styles) do
local this_len = style_group.formatted_len
if #style_group.styles > 1 then
for _, style in ipairs(style_group.styles) do
this_len = math.max(this_len, style.formatted_len)
end
end
maxlen = math.max(maxlen, this_len)
end
local lines = {}
local need_major_hack = false
for i, style_group in ipairs(expressed_styles) do
if #style_group.styles == 1 then
table.insert(lines, style_group.formatted)
need_major_hack = false
else
local inline = '\n<div class="vsShow" style="display:none">\n' .. style_group.formatted .. "</div>"
local full_prons = {}
for _, style in ipairs(style_group.styles) do
table.insert(full_prons, style.formatted)
end
local full = '\n<div class="vsHide">\n' .. table.concat(full_prons, "\n") .. "</div>"
local em_length = math.floor(maxlen * 0.68) -- from [[Module:grc-pronunciation]]
table.insert(lines, '<div class="vsSwitcher" data-toggle-category="pronunciations" style="width: ' .. em_length .. 'em; max-width:100%;"><span class="vsToggleElement" style="float: right;"> </span>' .. inline .. full .. "</div>")
need_major_hack = true
end
end
-- major hack to get bullets working on the next line after a div box
return table.concat(lines, "\n") .. (need_major_hack and "\n<span></span>" or "")
end
local function dodialect_pronun(args, ret, dialect)
ret.pronun[dialect] = {}
for i, term in ipairs(args.terms) do
local phonemic, phonetic, differences
if term.raw then
phonemic = term.raw_phonemic
phonetic = term.raw_phonetic
differences = construct_default_differences(dialect)
else
phonemic = export.IPA(term.term, dialect, false)
phonetic = export.IPA(term.term, dialect, true)
differences = phonemic.differences
phonemic = phonemic.text
phonetic = phonetic.text
end
ret.pronun[dialect][i] = {
raw = term.raw,
phonemic = phonemic,
phonetic = phonetic,
refs = term.refs,
q = term.q,
qq = term.qq,
a = term.a,
aa = term.aa,
differences = differences,
}
end
end
local function generate_pronun(args)
local function this_dodialect_pronun(ret, dialect)
dodialect_pronun(args, ret, dialect)
end
local ret = express_all_styles(args.style, this_dodialect_pronun)
local function format_style(tag, expressed_style, is_first)
local pronunciations = {}
local formatted_pronuns = {}
local function ins(formatted_part)
table.insert(formatted_pronuns, formatted_part)
end
-- Loop through each pronunciation. For each one, add the phonemic and phonetic versions to `pronunciations`,
-- for formatting by [[Module:IPA]], and also create an approximation of the formatted version so that we can
-- compute the appropriate width of the HTML switcher div box that holds the different per-dialect variants.
-- NOTE: The code below constructs the formatted approximation out-of-order in some cases but that doesn't
-- currently matter because we assume all characters have the same width. If we change the width computation
-- in a way that requires the correct order, we need changes to the code below.
for j, pronun in ipairs(expressed_style.pronun) do
-- Add tag to right accent qualifiers if last one
local aas = pronun.aa
if j == #expressed_style.pronun and tag then
if aas then
aas = m_table.deepCopy(aas)
table.insert(aas, tag)
else
aas = {tag}
end
end
local first_pronun = #pronunciations + 1
if not pronun.phonemic and not pronun.phonetic then
error("Internal error: Saw neither phonemic nor phonetic pronunciation")
end
if pronun.phonemic then -- missing if 'raw:[...]' given
-- don't display syllable division markers in phonemic
local slash_pron = "/" .. pronun.phonemic:gsub("%.", "") .. "/"
table.insert(pronunciations, {
pron = slash_pron,
})
ins(slash_pron)
end
if pronun.phonetic then -- missing if 'raw:/.../' given
local bracket_pron = "[" .. pronun.phonetic .. "]"
table.insert(pronunciations, {
pron = bracket_pron,
})
ins(bracket_pron)
end
local last_pronun = #pronunciations
if pronun.q then
pronunciations[first_pronun].q = pronun.q
end
if pronun.a then
pronunciations[first_pronun].a = pronun.a
end
if j > 1 then
pronunciations[first_pronun].separator = ", "
ins(", ")
end
if pronun.qq then
pronunciations[last_pronun].qq = pronun.qq
end
if aas then
pronunciations[last_pronun].aa = aas
end
if pronun.q or pronun.qq or pronun.a or aas then
-- Note: This inserts the actual formatted decoration text, including HTML and such, but the later call
-- to textual_len() removes all HTML and reduces links.
ins(require(decorations_module).format_decorations {
lang = lang,
text = "",
q = pronun.q,
qq = pronun.qq,
a = pronun.a,
aa = aas,
})
end
if pronun.refs then
pronunciations[last_pronun].refs = pronun.refs
-- Approximate the reference using a footnote notation. This will be slightly inaccurate if there are
-- more than nine references but that is rare.
ins(string.rep("[1]", #pronun.refs))
end
if first_pronun ~= last_pronun then
pronunciations[last_pronun].separator = " "
ins(" ")
end
end
local bullet = string.rep("*", args.bullets) .. " "
-- Here we construct the formatted line in `formatted`, and also try to construct the equivalent without HTML
-- and wiki markup in `formatted_for_len`, so we can compute the approximate textual length for use in sizing
-- the toggle box with the "more" button on the right.
local pre = is_first and args.pre and args.pre .. " " or ""
local post = is_first and args.post and " " .. args.post or ""
local formatted = bullet .. pre ..
m_IPA.format_IPA_full { lang = lang, items = pronunciations, separator = "" } .. post
local formatted_for_len = bullet .. pre .. "IPA(key): " .. table.concat(formatted_pronuns) .. post
return formatted, textual_len(formatted_for_len)
end
ret.text = format_all_styles(ret.expressed_styles, format_style)
return ret
end
local function parse_respelling(respelling, pagename, parse_err)
local raw_respelling = respelling:match("^raw:(.*)$")
if raw_respelling then
local raw_phonemic, raw_phonetic = raw_respelling:match("^/(.*)/ %[(.*)%]$")
if not raw_phonemic then
raw_phonemic = raw_respelling:match("^/(.*)/$")
end
if not raw_phonemic then
raw_phonetic = raw_respelling:match("^%[(.*)%]$")
end
if not raw_phonemic and not raw_phonetic then
parse_err(("Unable to parse raw respelling '%s', should be one of /.../, [...] or /.../ [...]")
:format(raw_respelling))
end
return {
raw = true,
raw_phonemic = raw_phonemic,
raw_phonetic = raw_phonetic,
}
end
if respelling == "+" then
respelling = pagename
end
return {term = respelling}
end
-- External entry point for {{es-IPA}}.
function export.show(frame)
local params = {
[1] = {},
["pre"] = {},
["post"] = {},
["ref"] = {},
["style"] = {},
["bullets"] = {type = "number", default = 1},
}
local parargs = frame:getParent().args
local args = require(parameters_module).process(parargs, params)
local text = args[1] or mw.loadData("Module:headword/data").pagename
args.terms = {{term = text}}
local ret = generate_pronun(args)
return ret.text
end
-- Return the number of syllables of a phonemic representation, which should have syllable dividers in it but no
-- hyphens.
local function get_num_syl_from_phonemic(phonemic)
-- Maybe we should just count vowels instead of the below code.
phonemic = rsub(phonemic, "|", " ") -- remove IPA foot boundaries
local words = rsplit(phonemic, " +")
for i, word in ipairs(words) do
-- IPA stress marks are syllable divisions if between characters; otherwise just remove.
word = rsub(word, "(.)[ˌˈ](.)", "%1.%2")
word = rsub(word, "[ˌˈ]", "")
words[i] = word
end
-- There should be a syllable boundary between words.
phonemic = table.concat(words, ".")
return ulen(rsub(phonemic, "[^.]", "")) + 1
end
-- Get the rhyme by truncating everything up through the last stress mark + any following consonants, and remove
-- syllable boundary markers.
local function convert_phonemic_to_rhyme(phonemic)
-- NOTE: This works because the phonemic vowels are just [aeiou] possibly with diacritics that are separate
-- Unicode chars. If we want to handle things like ɛ or ɔ we need to add them to `vowel`.
return rsub(rsub(phonemic, ".*[ˌˈ]", ""), "^[^" .. vowel .. "]*", ""):gsub("%.", ""):gsub("t͡ʃ", "tʃ")
end
local function split_syllabified_spelling(spelling)
return rsplit(spelling, "%.")
end
-- "Align" syllabification to original spelling by matching character-by-character, allowing for extra syllable and
-- accent markers in the syllabification. If we encounter an extra syllable marker (.), we allow and keep it. If we
-- encounter an extra accent marker in the syllabification, we drop it. In any other case, we return nil indicating
-- the alignment failed.
local function align_syllabification_to_spelling(syllab, spelling)
local result = {}
local syll_chars = rsplit(decompose(syllab), "")
local spelling_chars = rsplit(decompose(spelling), "")
local i = 1
local j = 1
while i <= #syll_chars or j <= #spelling_chars do
local ci = syll_chars[i]
local cj = spelling_chars[j]
if ci == cj then
table.insert(result, ci)
i = i + 1
j = j + 1
elseif ci == "." then
table.insert(result, ci)
i = i + 1
elseif ci == AC or ci == GR or ci == CFLEX then
-- skip character
i = i + 1
else
-- non-matching character
return nil
end
end
if i <= #syll_chars or j <= #spelling_chars then
-- left-over characters on one side or the other
return nil
end
return unfc(table.concat(result))
end
local function generate_hyph_obj(term)
return {syllabification = term, hyph = split_syllabified_spelling(term)}
end
-- Word should already be decomposed.
local function word_has_vowels(word)
return rfind(word, V)
end
local function all_words_have_vowels(term)
local words = rsplit(decompose(term), "[ %-]")
for i, word in ipairs(words) do
-- Allow empty word; this occurs with prefixes and suffixes.
if word ~= "" and not word_has_vowels(word) then
return false
end
end
return true
end
local function should_generate_rhyme_from_respelling(term)
local words = rsplit(decompose(term), " +")
return #words == 1 and -- no if multiple words
not words[1]:find(".%-.") and -- no if word is composed of hyphenated parts (e.g. [[Austria-Hungría]])
not words[1]:find("%-$") and -- no if word is a prefix
not (words[1]:find("^%-") and words[1]:find(CFLEX)) and -- no if word is an unstressed suffix
word_has_vowels(words[1]) -- no if word has no vowels (e.g. a single letter)
end
local function should_generate_rhyme_from_ipa(ipa)
return not ipa:find("%s") and word_has_vowels(decompose(ipa))
end
local function dodialect_specified_rhymes(rhymes, hyphs, parsed_respellings, rhyme_ret, dialect)
rhyme_ret.pronun[dialect] = {}
for _, rhyme in ipairs(rhymes) do
local num_syl = rhyme.num_syl
local no_num_syl = false
-- If user explicitly gave the rhyme but didn't explicitly specify the number of syllables, try to take it from
-- the hyphenation.
if not num_syl then
num_syl = {}
for _, hyph in ipairs(hyphs) do
if should_generate_rhyme_from_respelling(hyph.syllabification) then
local this_num_syl = 1 + ulen(rsub(hyph.syllabification, "[^.]", ""))
m_table.insertIfNot(num_syl, this_num_syl)
else
no_num_syl = true
break
end
end
if no_num_syl or #num_syl == 0 then
num_syl = nil
end
end
-- If that fails and term is single-word, try to take it from the phonemic.
if not no_num_syl and not num_syl then
for _, parsed in ipairs(parsed_respellings) do
for dialect, pronun in pairs(parsed.pronun.pronun[dialect]) do
-- Check that pronun.phonemic exists (it may not if raw phonetic-only pronun is given).
if pronun.phonemic then
if not should_generate_rhyme_from_ipa(pronun.phonemic) then
no_num_syl = true
break
end
-- Count number of syllables by looking at syllable boundaries (including stress marks).
local this_num_syl = get_num_syl_from_phonemic(pronun.phonemic)
m_table.insertIfNot(num_syl, this_num_syl)
end
end
if no_num_syl then
break
end
end
if no_num_syl or #num_syl == 0 then
num_syl = nil
end
end
table.insert(rhyme_ret.pronun[dialect], {
rhyme = rhyme.rhyme,
num_syl = num_syl,
q = rhyme.q,
qq = rhyme.qq,
a = rhyme.a,
aa = rhyme.aa,
differences = construct_default_differences(dialect),
})
end
end
local q_qq_inline_modifier_spec = {
store = "insert-flattened",
type = "qualifier",
}
local a_aa_inline_modifier_spec = {
store = "insert-flattened",
type = "labels",
}
local ref_inline_modifier_spec = {
store = "insert-flattened",
item_dest = "refs",
type = "references",
}
-- Parse a pronunciation modifier in `arg`, the argument portion in an inline modifier (after the prefix), which
-- specifies a pronunciation property such as rhyme, hyphenation/syllabification, homophones or audio. The argument
-- can itself have inline modifiers, e.g. <audio:Foo.ogg<a:Colombia>>. The allowed inline modifiers are specified
-- by `param_mods` (of the format expected by `parse_inline_modifiers()`); in addition to any modifiers specified
-- there, the modifiers <q:...>, <qq:...>, <a:...>, <aa:...> and <ref:...> are always accepted (and can be repeated).
-- `generate_obj` and `parse_err` are like in `parse_inline_modifiers()` and specify respectively a function to
-- generate the object into which modifier properties are stored given the non-modifier part of the argument, and
-- a function to generate an error message (given the message). Normally, a comma-separated list of pronunciation
-- properties is accepted and parsed, where each element in the list can have its own inline modifiers and where
-- no spaces are allowed next to the commas in order for them to be recognized as separators. If `no_split_on_comma`
-- is given, only a single pronunciation property is accepted. In all cases, however, the return value is a list
-- of property objects (when `no_split_on_comma` is given, the return value is a one-element list).
local function parse_pron_modifier(arg, parse_err, generate_obj, param_mods, no_split_on_comma)
if arg:find("<") then
param_mods.q = q_qq_inline_modifier_spec
param_mods.qq = q_qq_inline_modifier_spec
param_mods.a = a_aa_inline_modifier_spec
param_mods.aa = a_aa_inline_modifier_spec
param_mods.ref = ref_inline_modifier_spec
local retval = require(parse_utilities_module).parse_inline_modifiers(arg, {
param_mods = param_mods,
generate_obj = generate_obj,
parse_err = parse_err,
splitchar = not no_split_on_comma and "," or nil,
})
if no_split_on_comma then
retval = {retval}
end
return retval
elseif no_split_on_comma then
return {generate_obj(arg)}
else
local retval = {}
for _, term in ipairs(split_on_comma(arg)) do
table.insert(retval, generate_obj(term))
end
return retval
end
end
local function parse_rhyme(arg, parse_err)
local function generate_obj(term)
return {rhyme = term}
end
local param_mods = {
s = {
item_dest = "num_syl",
type = "number",
sublist = true,
},
}
return parse_pron_modifier(arg, parse_err, generate_obj, param_mods)
end
local function parse_hyph(arg, parse_err)
-- None other than decorations
local param_mods = {}
return parse_pron_modifier(arg, parse_err, generate_hyph_obj, param_mods)
end
local function parse_homophone(arg, parse_err)
local function generate_obj(term)
return {term = term}
end
local param_mods = {
t = {
-- [[Module:links]] expects the gloss in "gloss".
item_dest = "gloss",
},
gloss = {},
-- No tr=, ts=, or sc=; doesn't make sense for Spanish.
pos = {},
alt = {},
lit = {},
id = {},
g = {
-- [[Module:links]] expects the genders in "genders".
item_dest = "genders",
sublist = true,
},
}
return parse_pron_modifier(arg, parse_err, generate_obj, param_mods)
end
local function generate_audio_obj(arg)
local file, caption = arg:match("^(.-)%s*#%s*(.*)$")
file = file or arg
return {file = file, caption = caption}
end
local function parse_audio(arg, parse_err)
local param_mods = {
IPA = {
sublist = true,
},
text = {},
t = {
item_dest = "gloss",
},
-- No tr=, ts=, or sc=; doesn't make sense for Spanish.
gloss = {},
pos = {},
-- No alt=; text= already goes in alt=.
lit = {},
-- No id=; text= already goes in alt= and isn't normally linked.
g = {
item_dest = "genders",
sublist = true,
},
bad = {},
}
-- Don't split on comma because some filenames have embedded commas not followed by a space
-- (typically followed by an underscore).
local retvals = parse_pron_modifier(arg, parse_err, generate_audio_obj, param_mods, "no split on comma")
local retval = retvals[1]
retval.lang = lang
local textobj = require(audio_module).construct_audio_textobj(retval)
retval.text = textobj
retval.gloss = nil
retval.pos = nil
retval.lit = nil
retval.genders = nil
return retval
end
-- External entry point for {{es-pr}}.
function export.show_pr(frame)
local params = {
[1] = {list = true},
["rhyme"] = {convert = parse_rhyme},
["hyph"] = {convert = parse_hyph},
["hmp"] = {convert = parse_homophone},
["audio"] = {list = true},
["pagename"] = {},
}
local parargs = frame:getParent().args
local args = require(parameters_module).process(parargs, params)
local pagename = args.pagename or mw.loadData(headword_data_module).pagename
-- Parse the arguments.
local respellings = #args[1] > 0 and args[1] or {"+"}
local parsed_respellings = {}
local overall_rhyme = args.rhyme
local overall_hyph = args.hyph
local overall_hmp = args.hmp
local overall_audio
if args.audio then
-- We can't specify parse_audio() as a `convert` function because it needs access to `pagename` (i.e. another
-- parameter).
overall_audio = {}
for i, audio in ipairs(args.audio) do
local function parse_err(msg)
error(("%s: parameter audio%s=%s"):format(msg, i == 1 and "" or i, audio))
end
local parsed_audio = parse_audio(audio, parse_err, pagename)
table.insert(overall_audio, parsed_audio)
end
end
for i, respelling in ipairs(respellings) do
if respelling:find("<") then
local param_mods = {
pre = { overall = true },
post = { overall = true },
style = { overall = true },
bullets = {
overall = true,
type = "number",
},
rhyme = {
overall = true,
store = "insert-flattened",
convert = parse_rhyme,
},
hyph = {
overall = true,
store = "insert-flattened",
convert = parse_hyph,
},
hmp = {
overall = true,
store = "insert-flattened",
convert = parse_homophone,
},
audio = {
overall = true,
store = "insert",
convert = function(arg, parse_err)
return parse_audio(arg, parse_err, pagename)
end,
},
ref = ref_inline_modifier_spec,
q = q_qq_inline_modifier_spec,
qq = q_qq_inline_modifier_spec,
a = a_aa_inline_modifier_spec,
aa = a_aa_inline_modifier_spec,
}
local parsed = require(parse_utilities_module).parse_inline_modifiers(respelling, {
paramname = i,
param_mods = param_mods,
generate_obj = function(term, parse_err)
return parse_respelling(term, pagename, parse_err)
end,
splitchar = ",",
outer_container = {
audio = {}, rhyme = {}, hyph = {}, hmp = {}
}
})
if not parsed.bullets then
parsed.bullets = 1
end
table.insert(parsed_respellings, parsed)
else
local termobjs = {}
local function parse_err(msg)
error(msg .. ": " .. i .. "=" .. respelling)
end
for _, term in ipairs(split_on_comma(respelling)) do
table.insert(termobjs, parse_respelling(term, pagename, parse_err))
end
table.insert(parsed_respellings, {
terms = termobjs,
audio = {},
rhyme = {},
hyph = {},
hmp = {},
bullets = 1,
})
end
end
if overall_hyph then
local hyphs = {}
for _, hyph in ipairs(overall_hyph) do
if hyph.syllabification == "+" then
hyph.syllabification = syllabify_from_spelling(pagename)
hyph.hyph = split_syllabified_spelling(hyph.syllabification)
elseif hyph.syllabification == "-" then
overall_hyph = {}
break
end
end
end
-- Loop over individual respellings, processing each.
for _, parsed in ipairs(parsed_respellings) do
parsed.pronun = generate_pronun(parsed)
local no_auto_rhyme = false
for _, term in ipairs(parsed.terms) do
if term.raw then
if not should_generate_rhyme_from_ipa(term.raw_phonemic or term.raw_phonetic) then
no_auto_rhyme = true
break
end
elseif not should_generate_rhyme_from_respelling(term.term) then
no_auto_rhyme = true
break
end
end
if #parsed.hyph == 0 then
if not overall_hyph and all_words_have_vowels(pagename) then
for _, term in ipairs(parsed.terms) do
if not term.raw then
local syllabification = syllabify_from_spelling(term.term)
local aligned_syll = align_syllabification_to_spelling(syllabification, pagename)
if aligned_syll then
m_table.insertIfNot(parsed.hyph, generate_hyph_obj(aligned_syll))
end
end
end
end
else
for _, hyph in ipairs(parsed.hyph) do
if hyph.syllabification == "+" then
hyph.syllabification = syllabify_from_spelling(pagename)
hyph.hyph = split_syllabified_spelling(hyph.syllabification)
elseif hyph.syllabification == "-" then
parsed.hyph = {}
break
end
end
end
-- Generate the rhymes.
local function dodialect_rhymes_from_pronun(rhyme_ret, dialect)
rhyme_ret.pronun[dialect] = {}
-- It's possible the pronunciation for a passed-in dialect was never generated. This happens e.g. with
-- {{es-pr|cebolla<style:seseo>}}. The initial call to generate_pronun() fails to generate a pronunciation
-- for the dialect 'distinction-yeismo' because the pronunciation of 'cebolla' differs between distincion
-- and seseo and so the seseo style restriction rules out generation of pronunciation for distincion
-- dialects (other than 'distincion-lleismo', which always gets generated so as to determine on which axes
-- the dialects differ). However, when generating the rhyme, it is based only on -olla, whose pronunciation
-- does not differ between distincion and seseo, but does differ between lleismo and yeismo, so it needs to
-- generate a yeismo-specific rhyme, and 'distincion-yeismo' is the representative dialect for yeismo in the
-- situation where distincion and seseo do not have distinct results (based on the following line in
-- express_all_styles()):
-- express_style(false, "<<Equatorial Guinea>>, most of <<Latin America>> and <<Spain>>", "distincion-yeismo", "distincion-seseo-yeismo")
-- In this case we need to generate the missing overall pronunciation ourselves since we need it to generate
-- the dialect-specific rhyme pronunciation.
if not parsed.pronun.pronun[dialect] then
dodialect_pronun(parsed, parsed.pronun, dialect)
end
for _, pronun in ipairs(parsed.pronun.pronun[dialect]) do
-- We should have already excluded multiword terms and terms without vowels from rhyme generation (see
-- `no_auto_rhyme` below). But make sure to check that pronun.phonemic exists (it may not if raw
-- phonetic-only pronun is given).
if pronun.phonemic then
-- Count number of syllables by looking at syllable boundaries (including stress marks).
local num_syl = get_num_syl_from_phonemic(pronun.phonemic)
-- Get the rhyme by truncating everything up through the last stress mark + any following
-- consonants, and remove syllable boundary markers.
local rhyme = convert_phonemic_to_rhyme(pronun.phonemic)
local saw_already = false
for _, existing in ipairs(rhyme_ret.pronun[dialect]) do
if existing.rhyme == rhyme then
saw_already = true
-- We already saw this rhyme but possibly with a different number of syllables,
-- e.g. if the user specified two pronunciations 'biología' (4 syllables) and
-- 'bi.ología' (5 syllables), both of which have the same rhyme /ia/.
m_table.insertIfNot(existing.num_syl, num_syl)
break
end
end
if not saw_already then
local rhyme_diffs = nil
if dialect == "distincion-lleismo" then
rhyme_diffs = {}
if rhyme:find("θ") then
rhyme_diffs.distincion_different = true
end
if rhyme:find("ʎ") then
rhyme_diffs.lleismo_different = true
if rhyme:find("ɟ") then
rhyme_diffs.need_quito = true
end
end
if rfind(rhyme, "[ʎɟ]") then
rhyme_diffs.sheismo_different = true
rhyme_diffs.need_rioplat = true
if rfind(rhyme, V .. "[ʎɟ]" .. V) then
rhyme_diffs.need_yucatan = true
end
end
end
table.insert(rhyme_ret.pronun[dialect], {
rhyme = rhyme,
num_syl = {num_syl},
differences = rhyme_diffs,
})
end
end
end
end
if #parsed.rhyme == 0 then
if overall_rhyme or no_auto_rhyme then
parsed.rhyme = nil
else
parsed.rhyme = express_all_styles(parsed.style, dodialect_rhymes_from_pronun)
end
else
local no_rhyme = false
for _, rhyme in ipairs(parsed.rhyme) do
if rhyme.rhyme == "-" then
no_rhyme = true
break
end
end
if no_rhyme then
parsed.rhyme = nil
else
local function this_dodialect(rhyme_ret, dialect)
return dodialect_specified_rhymes(parsed.rhyme, parsed.hyph, {parsed}, rhyme_ret, dialect)
end
parsed.rhyme = express_all_styles(parsed.style, this_dodialect)
end
end
end
if overall_rhyme then
local no_overall_rhyme = false
for _, orhyme in ipairs(overall_rhyme) do
if orhyme.rhyme == "-" then
no_overall_rhyme = true
break
end
end
if no_overall_rhyme then
overall_rhyme = nil
else
local all_hyphs
if overall_hyph then
all_hyphs = overall_hyph
else
all_hyphs = {}
for _, parsed in ipairs(parsed_respellings) do
for _, hyph in ipairs(parsed.hyph) do
m_table.insertIfNot(all_hyphs, hyph)
end
end
end
local function dodialect_overall_rhyme(rhyme_ret, dialect)
return dodialect_specified_rhymes(overall_rhyme, all_hyphs, parsed_respellings, rhyme_ret, dialect)
end
overall_rhyme = express_all_styles(parsed.style, dodialect_overall_rhyme)
end
end
-- If all sets of pronunciations have the same rhymes, display them only once at the bottom.
-- Otherwise, display rhymes beneath each set, indented.
local first_rhyme_ret
local all_rhyme_sets_eq = true
for j, parsed in ipairs(parsed_respellings) do
if j == 1 then
first_rhyme_ret = parsed.rhyme
elseif not m_table.deepEquals(first_rhyme_ret, parsed.rhyme) then
all_rhyme_sets_eq = false
break
end
end
local function format_rhyme(rhyme_ret, num_bullets)
local function format_rhyme_style(tag, expressed_style, is_first)
local pronunciations = {}
local rhymes = {}
for _, pronun in ipairs(expressed_style.pronun) do
table.insert(rhymes, pronun)
end
local data = {
lang = lang,
rhymes = rhymes,
aa = tag and {tag} or nil,
force_cat = force_cat,
}
local bullet = string.rep("*", num_bullets) .. " "
local formatted = bullet .. require(rhymes_module).format_rhymes(data)
local formatted_for_len_parts = {}
table.insert(formatted_for_len_parts, bullet .. "Rhymes: " .. (tag and "(" .. tag .. ") " or ""))
for j, pronun in ipairs(expressed_style.pronun) do
if j > 1 then
table.insert(formatted_for_len_parts, ", ")
end
if pronun.q or pronun.qq or pronun.a or pronun.aa then
-- Note: This inserts the actual formatted decoration text, including HTML and such, but the later call
-- to textual_len() removes all HTML and reduces links.
table.insert(formatted_for_len_parts, require(decorations_module).format_decorations {
lang = lang,
text = "",
q = pronun.q,
qq = pronun.qq,
a = pronun.a,
aa = pronun.aa,
})
end
table.insert(formatted_for_len_parts, "-" .. pronun.rhyme)
end
return formatted, textual_len(table.concat(formatted_for_len_parts))
end
return format_all_styles(rhyme_ret.expressed_styles, format_rhyme_style)
end
-- If all sets of pronunciations have the same hyphenations, display them only once at the bottom.
-- Otherwise, display hyphenations beneath each set, indented.
local first_hyphs
local all_hyph_sets_eq = true
for j, parsed in ipairs(parsed_respellings) do
if j == 1 then
first_hyphs = parsed.hyph
elseif not m_table.deepEquals(first_hyphs, parsed.hyph) then
all_hyph_sets_eq = false
break
end
end
local function format_hyphenations(hyphs, num_bullets)
local hyphtext = require(hyphenation_module).format_hyphenations { lang = lang, hyphs = hyphs, caption = "Pagpapantig" } --TLCHANGE "Syllabification"
return string.rep("*", num_bullets) .. " " .. hyphtext
end
-- If all sets of pronunciations have the same homophones, display them only once at the bottom.
-- Otherwise, display homophones beneath each set, indented.
local first_hmps
local all_hmp_sets_eq = true
for j, parsed in ipairs(parsed_respellings) do
if j == 1 then
first_hmps = parsed.hmp
elseif not m_table.deepEquals(first_hmps, parsed.hmp) then
all_hmp_sets_eq = false
break
end
end
local function format_homophones(hmps, num_bullets)
local hmptext = require(homophones_module).format_homophones { lang = lang, homophones = hmps }
return string.rep("*", num_bullets) .. " " .. hmptext
end
local function format_audio(audios, num_bullets)
local ret = {}
for i, audio in ipairs(audios) do
local text = require(audio_module).format_audio(audio)
table.insert(ret, string.rep("*", num_bullets) .. " " .. text)
end
return table.concat(ret, "\n")
end
local textparts = {}
local min_num_bullets = math.huge
for j, parsed in ipairs(parsed_respellings) do
if parsed.bullets < min_num_bullets then
min_num_bullets = parsed.bullets
end
if j > 1 then
table.insert(textparts, "\n")
end
table.insert(textparts, parsed.pronun.text)
if #parsed.audio > 0 then
table.insert(textparts, "\n")
-- If only one pronunciation set, add the audio with the same number of bullets, otherwise
-- indent audio by one more bullet.
table.insert(textparts, format_audio(parsed.audio,
#parsed_respellings == 1 and parsed.bullets or parsed.bullets + 1))
end
if not all_rhyme_sets_eq and parsed.rhyme then
table.insert(textparts, "\n")
table.insert(textparts, format_rhyme(parsed.rhyme, parsed.bullets + 1))
end
if not all_hyph_sets_eq and #parsed.hyph > 0 then
table.insert(textparts, "\n")
table.insert(textparts, format_hyphenations(parsed.hyph, parsed.bullets + 1))
end
if not all_hmp_sets_eq and #parsed.hmp > 0 then
table.insert(textparts, "\n")
table.insert(textparts, format_homophones(parsed.hmp, parsed.bullets + 1))
end
end
if overall_audio and #overall_audio > 0 then
table.insert(textparts, "\n")
table.insert(textparts, format_audio(overall_audio, min_num_bullets))
end
if all_rhyme_sets_eq and first_rhyme_ret then
table.insert(textparts, "\n")
table.insert(textparts, format_rhyme(first_rhyme_ret, min_num_bullets))
end
if overall_rhyme then
table.insert(textparts, "\n")
table.insert(textparts, format_rhyme(overall_rhyme, min_num_bullets))
end
if all_hyph_sets_eq and #first_hyphs > 0 then
table.insert(textparts, "\n")
table.insert(textparts, format_hyphenations(first_hyphs, min_num_bullets))
end
if overall_hyph and #overall_hyph > 0 then
table.insert(textparts, "\n")
table.insert(textparts, format_hyphenations(overall_hyph, min_num_bullets))
end
if all_hmp_sets_eq and #first_hmps > 0 then
table.insert(textparts, "\n")
table.insert(textparts, format_homophones(first_hmps, min_num_bullets))
end
if overall_hmp and #overall_hmp > 0 then
table.insert(textparts, "\n")
table.insert(textparts, format_homophones(overall_hmp, min_num_bullets))
end
return table.concat(textparts)
end
return export
88ovb6rthl79ya59ax2sgqvrequfeuc
tomo
0
38919
178648
178636
2026-11-12T02:14:42Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178648
wikitext
text/x-wiki
=={{=tl=}}==
===Etimolohiya===
{{ety|tl|:bor|es:tomo|text=+|tree=1}}
===Pagbigkas===
{{tl-pr}}
===Pangngalan===
{{tl-noun|b=+}}
# isang [[aklat]] sa [[serye]] nito
#: {{syn|tl|bolyum}}
# tawag sa malaking aklat na karaniwang naglalaman ng [[kaalaman]] {{q|kumpara sa [[kuwento]]}}
===Magbasa pa===
{{R:Pambansang Diksiyonaryo}}
=={{=es=}}==
===Pagbigkas===
{{es-pr}}
===Etimolohiya 1===
{{ety|es|:lbor|la:tomus|text=+|tree=1}}
====Pangngalan====
{{es-noun|m}}
# [[tomo]], [[bolyum]] {{gl|isang aklat sa serye nito}}
#: {{syn|es|libro}}
# {{lb|es|rare}} [[espasyo]] na [[mag-okupa|inookupa]] ng isang bagay
#: {{syn|es|bulto|cuerpo|espesor|grosor|grueso}}
# {{lb|es|obsolete}} [[kahalagahan]]; [[prestihiyoso]]
=====Hinangong kataga=====
{{col|es|de tomo y lomo}}
=====Kaugnay na kataga=====
{{col|es|anatomía|átomo|epítome}}
===Etimolohiya 2===
====Pandiwa====
{{head|es|verb form}}
# {{es-verb form of|tomar}}
===Magbasa pa===
* {{R:es:DRAE}}
slnsm1r6s1hwm1qn4mwop77y0v7ebsx
178649
178648
2026-11-12T02:15:06Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178649
wikitext
text/x-wiki
=={{=tl=}}==
===Etimolohiya===
{{ety|tl|:bor|es:tomo|text=+|tree=1}}
===Pagbigkas===
{{tl-pr}}
===Pangngalan===
{{tl-noun|b=+}}
# isang [[aklat]] sa [[serye]] nito
#: {{syn|tl|bolyum}}
# tawag sa malaking aklat na karaniwang naglalaman ng [[kaalaman]] {{q|kumpara sa [[kuwento]]}}
===Magbasa pa===
{{R:Pambansang Diksiyonaryo}}
=={{=es=}}==
===Pagbigkas===
{{es-pr}}
===Etimolohiya 1===
{{ety|es|:lbor|la:tomus|text=+|tree=1}}
====Pangngalan====
{{es-noun|m}}
# {{l|tl|tomo}}, [[bolyum]] {{gl|isang aklat sa serye nito}}
#: {{syn|es|libro}}
# {{lb|es|rare}} [[espasyo]] na [[mag-okupa|inookupa]] ng isang bagay
#: {{syn|es|bulto|cuerpo|espesor|grosor|grueso}}
# {{lb|es|obsolete}} [[kahalagahan]]; [[prestihiyoso]]
=====Hinangong kataga=====
{{col|es|de tomo y lomo}}
=====Kaugnay na kataga=====
{{col|es|anatomía|átomo|epítome}}
===Etimolohiya 2===
====Pandiwa====
{{head|es|verb form}}
# {{es-verb form of|tomar}}
===Magbasa pa===
* {{R:es:DRAE}}
k3bytxg9nkz5bcutlpuvukz04qdcxr7
volumen
0
39028
178647
178637
2026-11-12T02:13:44Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178647
wikitext
text/x-wiki
=={{=es=}}==
===Alternatibong pagbaybay===
* {{alt|es|volúmen||obsolete}}
===Etimolohiya===
{{ety|es|:der|la:volūmen|text=+|tree=1}}
===Pagbigkas===
{{es-pr}}
===Pangngalan===
{{es-noun|m}}
# [[bolyum]]
# [[bolyum]], [[tomo]] {{gl|isang aklat sa serye nito}}
#: {{syn|es|tomo}}
====Kaugnay na kataga====
{{col|es|voluminoso}}
===Magbasa pa===
* {{R:es:DRAE}}
1y51bpgrisstzlz3svo6i537o5n1246
libreto
0
39030
178655
2026-11-12T02:54:21Z
GinawaSaHapon
3989
Nilikha ang pahina na may '=={{=tl=}}== ===Etimolohiya=== {{ety|tl|:bor|es:libreto|text=+|tree=1}} ===Pagbigkas=== {{tl-pr|li.breto}} ===Pangngalan=== {{tl-noun|b=+}} # [[iskrip]] ng isang [[drama|dramang]] [[musikal]] kagaya ng [[opera]] #: {{syn|tl|libro<tr:iskrip>}} ====Tingnan din==== {{col3|tl|librito}} =={{=es=}}== ===Etimolohiya=== {{ety|es|:bor|it:libretto|text=+|tree=1}} ===Pagbigkas=== {{es-pr|+<audio:LL-Q1321 (spa)-Rubýñ-libreto.wav<a:Costa Rica>>}} ===Noun=== {{es-no...'
178655
wikitext
text/x-wiki
=={{=tl=}}==
===Etimolohiya===
{{ety|tl|:bor|es:libreto|text=+|tree=1}}
===Pagbigkas===
{{tl-pr|li.breto}}
===Pangngalan===
{{tl-noun|b=+}}
# [[iskrip]] ng isang [[drama|dramang]] [[musikal]] kagaya ng [[opera]]
#: {{syn|tl|libro<tr:iskrip>}}
====Tingnan din====
{{col3|tl|librito}}
=={{=es=}}==
===Etimolohiya===
{{ety|es|:bor|it:libretto|text=+|tree=1}}
===Pagbigkas===
{{es-pr|+<audio:LL-Q1321 (spa)-Rubýñ-libreto.wav<a:Costa Rica>>}}
===Noun===
{{es-noun|m}}
# {{l|tl|libreto}} {{gl|iskrip ng isang dramang musikal}}
# {{lb|es|Mexico|Honduras|El Salvador|Nicaragua|Costa Rica|Panama|Cuba|Puerto Rico|Colombia|Venezuela|Peru|Bolivia|Cono Sur}} [[iskrip]]
#: {{syn|es|escrito}}
# {{lb|es|Ecuador}} [[protokol]]; [[gabay]], [[panuto]]
===Magbasa pa===
* {{R:es:DRAE}}
p0ou0c9ixmexncegu6t972z5blauy8j
178656
178655
2026-11-12T02:56:45Z
GinawaSaHapon
3989
/* Noun */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178656
wikitext
text/x-wiki
=={{=tl=}}==
===Etimolohiya===
{{ety|tl|:bor|es:libreto|text=+|tree=1}}
===Pagbigkas===
{{tl-pr|li.breto}}
===Pangngalan===
{{tl-noun|b=+}}
# [[iskrip]] ng isang [[drama|dramang]] [[musikal]] kagaya ng [[opera]]
#: {{syn|tl|libro<tr:iskrip>}}
====Tingnan din====
{{col3|tl|librito}}
=={{=es=}}==
===Etimolohiya===
{{ety|es|:bor|it:libretto|text=+|tree=1}}
===Pagbigkas===
{{es-pr|+<audio:LL-Q1321 (spa)-Rubýñ-libreto.wav<a:Costa Rica>>}}
===Noun===
{{es-noun|m}}
# {{l|tl|libreto}} {{gl|iskrip ng isang dramang musikal}}
# {{lb|es|Mexico|Karibe|Gitnang Amerika|Timog Amerika}} [[iskrip]] {{gl|nakasulat na dokumento na naglalaman ng dayalogo at kilos}}
#: {{syn|es|escrito}}
# {{lb|es|Ecuador}} [[protokol]]; [[gabay]], [[panuto]]
===Magbasa pa===
* {{R:es:DRAE}}
ajaukfp1fw9ekf1phq1csas1q1tc1m6
178658
178656
2026-11-12T04:47:20Z
GinawaSaHapon
3989
/* Noun */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178658
wikitext
text/x-wiki
=={{=tl=}}==
===Etimolohiya===
{{ety|tl|:bor|es:libreto|text=+|tree=1}}
===Pagbigkas===
{{tl-pr|li.breto}}
===Pangngalan===
{{tl-noun|b=+}}
# [[iskrip]] ng isang [[drama|dramang]] [[musikal]] kagaya ng [[opera]]
#: {{syn|tl|libro<tr:iskrip>}}
====Tingnan din====
{{col3|tl|librito}}
=={{=es=}}==
===Etimolohiya===
{{ety|es|:bor|it:libretto|text=+|tree=1}}
===Pagbigkas===
{{es-pr|+<audio:LL-Q1321 (spa)-Rubýñ-libreto.wav<a:Costa Rica>>}}
===Noun===
{{es-noun|m}}
# {{l|tl|libreto}} {{gl|iskrip ng isang dramang musikal}}
# {{lb|es|Mexico|Karibe|Gitnang Amerika|Timog Amerika}} [[iskrip]] {{gl|nakasulat na dokumento na naglalaman ng dayalogo at kilos}}
#: {{syn|es|escrito}}
# {{lb|es|Ecuador}} [[protokol]]; [[gabay]], [[panuto]]
====Anak na kataga====
{{topN}}
* {{desc|tl|libreto|bor=1}}
{{bottomN}}
===Magbasa pa===
* {{R:es:DRAE}}
qsy28224yukgtfw1i0nr27xanm7oa77
librillo
0
39031
178662
2026-11-12T06:19:39Z
GinawaSaHapon
3989
Nilikha ang pahina na may '=={{=es=}}== ===Etimolohiya=== {{ety|es|:af|libro|-illo|text=+|tree=1}} ===Pagbigkas=== {{es-pr}} ===Pangngalan=== {{es-noun|m}} # {{diminutive of|es|libro}}; [[librito]] {{gl|maliit na aklat}} # {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}} # maliit na [[bisagra]] na ginagamit sa mga maliliit na [[kahon]] ====Hinangong kataga==== {{col|es|cada maestrillo tiene su librillo}} ===Magbasa pa=== * {{R:es:DRAE}}'
178662
wikitext
text/x-wiki
=={{=es=}}==
===Etimolohiya===
{{ety|es|:af|libro|-illo|text=+|tree=1}}
===Pagbigkas===
{{es-pr}}
===Pangngalan===
{{es-noun|m}}
# {{diminutive of|es|libro}}; [[librito]] {{gl|maliit na aklat}}
# {{l|tl|libro|id=anatomiya}} {{gl|ikatlong bahagi ng sikmura ng isang ruminante}}
# maliit na [[bisagra]] na ginagamit sa mga maliliit na [[kahon]]
====Hinangong kataga====
{{col|es|cada maestrillo tiene su librillo}}
===Magbasa pa===
* {{R:es:DRAE}}
nbkf2t1rulynh4znb4m9ah6e7suxcuk