Wiksiyonaryo
tlwiktionary
https://tl.wiktionary.org/wiki/Wiksiyonaryo:Unang_Pahina
MediaWiki 1.48.0-wmf.3
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
libro
0
3002
178601
178591
2026-11-06T03:34:18Z
GinawaSaHapon
3989
178601
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 [[opera]]; {{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:more common>,librettìno|dim_derog=librùccio,librettùccio,libricciòlo|derog=libriciàttolo,libràttolo<q:literary>|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}}
ezb6805246sbt27qi798rt697ian3ru
178603
178601
2026-11-06T03:45:22Z
GinawaSaHapon
3989
/* Pangngalan */ (using [[wikt:en:MediaWiki:Gadget-AjaxEdit.js|AjaxEdit]])
178603
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 [[opera]]; {{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}}
b22qpoblv3avct6qw5s5axb9pl2kze6
Module:headword
828
30140
178602
173645
2026-11-06T03:43:11Z
GinawaSaHapon
3989
178602
Scribunto
text/plain
local export = {}
-- Named constants for all modules used, to make it easier to swap out sandbox versions.
local debug_track_module = "Module:debug/track"
local decorations_module = "Module:decorations"
local en_utilities_module = "Module:en-utilities"
local gender_and_number_module = "Module:gender and number"
local headword_data_module = "Module:headword/data"
local headword_page_module = "Module:headword/page"
local links_module = "Module:links"
local load_module = "Module:load"
local pages_module = "Module:pages"
local palindromes_module = "Module:palindromes"
local scripts_module = "Module:scripts"
local scripts_data_module = "Module:scripts/data"
local script_utilities_module = "Module:script utilities"
local script_utilities_data_module = "Module:script utilities/data"
local string_utilities_module = "Module:string utilities"
local table_module = "Module:table"
local utilities_module = "Module:utilities"
local concat = table.concat
local dump = mw.dumpObject
local insert = table.insert
local ipairs = ipairs
local max = math.max
local new_title = mw.title.new
local pairs = pairs
local require = require
local toNFC = mw.ustring.toNFC
local toNFD = mw.ustring.toNFD
local type = type
local ufind = mw.ustring.find
local ugmatch = mw.ustring.gmatch
local ugsub = mw.ustring.gsub
local umatch = mw.ustring.match
--[==[
Loaders for functions in other modules, which overwrite themselves with the target function when called. This ensures modules are only loaded when needed, retains the speed/convenience of locally-declared pre-loaded functions, and has no overhead after the first call, since the target functions are called directly in any subsequent calls.]==]
local function debug_track(...)
debug_track = require(debug_track_module)
return debug_track(...)
end
local function contains(...)
contains = require(table_module).contains
return contains(...)
end
local function encode_entities(...)
encode_entities = require(string_utilities_module).encode_entities
return encode_entities(...)
end
local function extend(...)
extend = require(table_module).extend
return extend(...)
end
local function find_best_script_without_lang(...)
find_best_script_without_lang = require(scripts_module).findBestScriptWithoutLang
return find_best_script_without_lang(...)
end
local function format_categories(...)
format_categories = require(utilities_module).format_categories
return format_categories(...)
end
local function format_genders(...)
format_genders = require(gender_and_number_module).format_genders
return format_genders(...)
end
local function format_decorations(...)
format_decorations = require(decorations_module).format_decorations
return format_decorations(...)
end
local function full_link(...)
full_link = require(links_module).full_link
return full_link(...)
end
local function get_current_L2(...)
get_current_L2 = require(pages_module).get_current_L2
return get_current_L2(...)
end
local function get_link_page(...)
get_link_page = require(links_module).get_link_page
return get_link_page(...)
end
local function get_script(...)
get_script = require(scripts_module).getByCode
return get_script(...)
end
local function is_palindrome(...)
is_palindrome = require(palindromes_module).is_palindrome
return is_palindrome(...)
end
local function language_link(...)
language_link = require(links_module).language_link
return language_link(...)
end
local function load_data(...)
load_data = require(load_module).load_data
return load_data(...)
end
local function pattern_escape(...)
pattern_escape = require(string_utilities_module).pattern_escape
return pattern_escape(...)
end
local function pluralize(...)
pluralize = require(en_utilities_module).pluralize
return pluralize(...)
end
local function process_page(...)
process_page = require(headword_page_module).process_page
return process_page(...)
end
local function remove_links(...)
remove_links = require(links_module).remove_links
return remove_links(...)
end
local function shallow_copy(...)
shallow_copy = require(table_module).shallowCopy
return shallow_copy(...)
end
local function tag_text(...)
tag_text = require(script_utilities_module).tag_text
return tag_text(...)
end
local function tag_transcription(...)
tag_transcription = require(script_utilities_module).tag_transcription
return tag_transcription(...)
end
local function tag_translit(...)
tag_translit = require(script_utilities_module).tag_translit
return tag_translit(...)
end
local function trim(...)
trim = require(string_utilities_module).trim
return trim(...)
end
local function ulen(...)
ulen = require(string_utilities_module).len
return ulen(...)
end
--[==[
Loaders for objects, which load data (or some other object) into some variable, which can then be accessed as "foo or get_foo()", where the function get_foo sets the object to "foo" and then returns it. This ensures they are only loaded when needed, and avoids the need to check for the existence of the object each time, since once "foo" has been set, "get_foo" will not be called again.]==]
local m_data
local function get_data()
m_data = load_data(headword_data_module)
return m_data
end
local script_data
local function get_script_data()
script_data = load_data(scripts_data_module)
return script_data
end
local script_utilities_data
local function get_script_utilities_data()
script_utilities_data = load_data(script_utilities_data_module)
return script_utilities_data
end
-- If set to true, categories always appear, even in non-mainspace pages
local test_force_categories = false
-- Add a tracking category to track entries with certain (unusually undesirable) properties. `track_id` is an identifier
-- for the particular property being tracked and goes into the tracking page. Specifically, this adds a link in the
-- page text to [[Wiktionary:Tracking/headword/TRACK_ID]], meaning you can find all entries with the `track_id` property
-- by visiting [[Special:WhatLinksHere/Wiktionary:Tracking/headword/TRACK_ID]].
--
-- If `lang` (a language object) is given, an additional tracking page [[Wiktionary:Tracking/headword/TRACK_ID/CODE]] is
-- linked to where CODE is the language code of `lang`, and you can find all entries in the combination of `track_id`
-- and `lang` by visiting [[Special:WhatLinksHere/Wiktionary:Tracking/headword/TRACK_ID/CODE]]. This makes it possible to
-- isolate only the entries with a specific tracking property that are in a given language. Note that if `lang`
-- references at etymology-only language, both that language's code and its full parent's code are tracked.
local function track(track_id, lang)
local tracking_page = "headword/" .. track_id
if lang and lang:hasType("etymology-only") then
debug_track{tracking_page, tracking_page .. "/" .. lang:getCode(),
tracking_page .. "/" .. lang:getFullCode()}
elseif lang then
debug_track{tracking_page, tracking_page .. "/" .. lang:getCode()}
else
debug_track(tracking_page)
end
return true
end
local function text_in_script(text, script_code)
local sc = get_script(script_code)
if not sc then
error("Internal error: Bad script code " .. script_code)
end
local characters = sc.characters
local out
if characters then
text = ugsub(text, "%W", "")
out = ufind(text, "[" .. characters .. "]")
end
if out then
return true
else
return false
end
end
local spacingPunctuation = "[%s%p]+"
--[[ List of punctuation or spacing characters that are found inside of words.
Used to exclude characters from the regex above. ]]
local wordPunc = "-#%%&@־׳״'.·*’་•:᠊"
local notWordPunc = "[^" .. wordPunc .. "]+"
--[=[
Format a term (either a head term or an inflection term) along with any decorations (left or right qualifiers, labels,
references or customized separator). `part` is the object specifying the term (and `lang` the language of the term),
which should optionally contain:
* left qualifiers in `q`, an array of strings;
* right qualifiers in `qq`, an array of strings;
* left labels in `l`, an array of strings;
* right labels in `ll`, an array of strings;
* references in `refs`, an array either of strings (formatted reference text) or objects containing fields `text`
(formatted reference text) and optionally `name` and/or `group`;
* a separator in `separator`, defaulting to " <i>or</i> " if this is not the first term (j > 1), otherwise "".
`formatted` is the formatted version of the term itself, and `j` is the index of the term.
]=]
local function format_term_with_decorations(lang, part, formatted, j)
local function part_non_empty(field)
local list = part[field]
if not list then
return nil
end
if type(list) ~= "table" then
error(("Internal error: Wrong type for `part.%s`=%s, should be \"table\""):format(field, dump(list)))
end
return list[1]
end
if part_non_empty("q") or part_non_empty("qq") or part_non_empty("l") or
part_non_empty("ll") or part_non_empty("refs") then
formatted = format_decorations {
lang = lang,
text = formatted,
q = part.q,
qq = part.qq,
l = part.l,
ll = part.ll,
refs = part.refs,
}
end
local separator = part.separator or j > 1 and " <i>o</i> " -- use "" to request no separator
if separator then
formatted = separator .. formatted
end
return formatted
end
--[==[Return true if the given head is multiword according to the algorithm used in full_headword().]==]
function export.head_is_multiword(head)
for possibleWordBreak in ugmatch(head, spacingPunctuation) do
if umatch(possibleWordBreak, notWordPunc) then
return true
end
end
return false
end
do
local function workaround_to_exclude_chars(s)
return (ugsub(s, notWordPunc, "\2%1\1"))
end
--[==[
Add appropriate links to `head`, correctly handling multiword terms. This is intended for multiword terms but can
be used for any term if you want links added to single-word terms as well. If you want to only add
links to multiword terms, first check that the term is multiword using `head_is_multiword`.
If `default` is specified, this will escape colons so that they don't get interpreted as interwiki links. This
should generally only be used when `head` is an actual pagename or is taken from a {{para|pagename}} parameter, not
when taken from a {{para|head}} parameter.
]==]
function export.add_multiword_links(head, default)
head = "\1" .. ugsub(head, spacingPunctuation, workaround_to_exclude_chars) .. "\2"
if default then
head = head
:gsub("(\1[^\2]*)\\([:#][^\2]*\2)", "%1\\\\%2")
:gsub("(\1[^\2]*)([:#][^\2]*\2)", "%1\\%2")
end
--Escape any remaining square brackets to stop them breaking links (e.g. "[citation needed]").
head = encode_entities(head, "[]", true, true)
--[=[
use this when workaround is no longer needed:
head = "[[" .. ugsub(head, WORDBREAKCHARS, "]]%1[[") .. "]]"
Remove any empty links, which could have been created above
at the beginning or end of the string.
]=]
return (head
:gsub("\1\2", "")
:gsub("[\1\2]", {["\1"] = "[[", ["\2"] = "]]"}))
end
end
local function non_categorizable(full_raw_pagename)
return full_raw_pagename:find("^Appendix:Gestures/") or
-- Unsupported titles with descriptive names.
(full_raw_pagename:find("^Unsupported titles/") and not full_raw_pagename:find("`"))
end
local function tag_text_and_add_decorations(data, head, formatted, j)
-- Add language and script wrapper.
formatted = tag_text(formatted, data.lang, head.sc, "head", nil, j == 1 and data.id or nil)
-- Add decorations (qualifiers, labels, references and separator).
return format_term_with_decorations(data.lang, head, formatted, j)
end
-- Format a headword with transliterations.
local function format_headword(data)
-- Are there non-empty transliterations?
local has_translits = false
local has_manual_translits = false
------ Format the headwords. ------
local head_parts = {}
local unique_head_parts = {}
local has_multiple_heads = not not data.heads[2]
for j, head in ipairs(data.heads) do
if head.tr or head.ts then
has_translits = true
end
if head.tr and head.tr_manual or head.ts then
has_manual_translits = true
end
local formatted
-- Apply processing to the headword, for formatting links and such.
if head.term:find("[[", nil, true) and head.sc:getCode() ~= "Image" then
formatted = language_link{term = head.term, lang = data.lang}
else
formatted = data.lang:makeDisplayText(head.term, head.sc, true)
end
local head_part = tag_text_and_add_decorations(data, head, formatted, j)
insert(head_parts, head_part)
-- If multiple heads, try to determine whether all heads display the same. To do this we need to effectively
-- rerun the text tagging and addition of decorations, using 1 for all indices.
if has_multiple_heads then
local unique_head_part
if j == 1 then
unique_head_part = head_part
else
unique_head_part = tag_text_and_add_decorations(data, head, formatted, 1)
end
unique_head_parts[unique_head_part] = true
end
end
local set_size = 0
if has_multiple_heads then
for _ in pairs(unique_head_parts) do
set_size = set_size + 1
end
end
if set_size == 1 then
head_parts = head_parts[1]
else
head_parts = concat(head_parts)
end
if has_manual_translits then
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/manual-tr]]
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/manual-tr/LANGCODE]]
track("manual-tr", data.lang)
end
------ Format the transliterations and transcriptions. ------
local translits_formatted
if has_translits then
local translit_parts = {}
for _, head in ipairs(data.heads) do
if head.tr or head.ts then
local this_parts = {}
if head.tr then
insert(this_parts, tag_translit(head.tr, data.lang:getCode(), "head", nil, head.tr_manual))
if head.ts then
insert(this_parts, " ")
end
end
if head.ts then
insert(this_parts, "/" .. tag_transcription(head.ts, data.lang:getCode(), "head") .. "/")
end
insert(translit_parts, concat(this_parts))
end
end
translits_formatted = " (" .. concat(translit_parts, " <i>o</i> ") .. ")"
local function format_transliteration_page_link(langname)
local transliteration_pagename = "Transliterasyon sa " .. langname
local transliteration_page = new_title(transliteration_pagename, "Wiksiyonaryo")
if transliteration_page and transliteration_page:getContent() then
return ("[[Wiksiyonaryo:%s|•]]"):format(transliteration_pagename)
end
return nil
end
local translit_page_link = format_transliteration_page_link(data.lang:getCanonicalName())
-- If data.lang is an etymology-only language and we didn't find a translation page for it, fall back to the
-- full parent.
if not translit_page_link and data.lang:hasType("etymology-only") then
translit_page_link = format_transliteration_page_link(data.lang:getFullName())
end
if translit_page_link then
translits_formatted = " " .. translit_page_link .. translits_formatted
end
else
translits_formatted = ""
end
------ Paste heads and transliterations/transcriptions. ------
local lemma_gloss
if data.gloss then
lemma_gloss = ' <span class="ib-content qualifier-content">' .. data.gloss .. '</span>'
else
lemma_gloss = ""
end
return head_parts .. translits_formatted .. lemma_gloss
end
local function format_headword_genders(data, is_varform_only)
local retval = ""
if data.genders and data.genders[1] then
if data.gloss then
retval = ","
end
local pos_for_cat
if not data.nogendercat and not is_varform_only then
local no_gender_cat = (m_data or get_data()).no_gender_cat
if not (no_gender_cat[data.lang:getCode()] or no_gender_cat[data.lang:getFullCode()]) then
pos_for_cat = (m_data or get_data()).pos_for_gender_number_cat[data.pos_category:gsub("^reconstructed ", "")]
end
end
local text, cats = format_genders(data.genders, data.lang, pos_for_cat)
if cats then
extend(data.categories, cats)
end
retval = retval .. " " .. text
end
return retval
end
-- Forward reference
local format_inflections
local function format_inflection_parts(data, parts)
for j, part in ipairs(parts) do
if type(part) ~= "table" then
part = {term = part}
end
local partaccel = part.accel
local face = part.face or "bold"
if face ~= "bold" and face ~= "plain" and face ~= "hypothetical" then
error("The face `" .. face .. "` " .. (
(script_utilities_data or get_script_utilities_data()).faces[face] and
"should not be used for non-headword terms on the headword line." or
"is invalid."
))
end
-- Here the final part 'or data.nolinkinfl' allows to have 'nolinkinfl=true'
-- right into the 'data' table to disable inflection links of the entire headword
-- when inflected forms aren't entry-worthy, e.g.: in Vulgar Latin
local nolinkinfl = part.face == "hypothetical" or (part.nolink and track("nolink") or part.nolinkinfl) or (
data.nolink and track("nolink") or data.nolinkinfl)
local formatted
if part.label then
-- FIXME: There should be a better way of italicizing a label. As is, this isn't customizable.
formatted = "<i>" .. part.label .. "</i>"
else
-- Convert the term into a full link. Don't show a transliteration here unless enable_auto_translit is
-- requested, either at the `parts` level (i.e. per inflection) or at the `data.inflections` level (i.e.
-- specified for all inflections). This is controllable in {{head}} using autotrinfl=1 for all inflections,
-- or fNautotr=1 for an individual inflection (remember that a single inflection may be associated with
-- multiple terms). The reason for doing this is to avoid clutter in headword lines by default in languages
-- where the script is relatively straightforward to read by learners (e.g. Greek, Russian), but allow it
-- to be enabled in languages with more complex scripts (e.g. Arabic).
--
-- FIXME: With nested inflections, should we also respect `enable_auto_translit` at the top level of the
-- nested inflections structure?
local tr = part.tr or not (parts.enable_auto_translit or data.inflections.enable_auto_translit) and "-" or nil
local postprocess_annotations
if part.inflections then
postprocess_annotations = function(infldata)
insert(infldata.annotations, {text = format_inflections(data, part.inflections)})
end
end
formatted = full_link(
{
term = not nolinkinfl and part.term or nil,
alt = part.alt or (nolinkinfl and part.term or nil),
lang = part.lang or data.lang,
sc = part.sc or parts.sc or nil,
gloss = part.gloss,
pos = part.pos,
ng = part.ng,
lit = part.lit,
id = part.id,
genders = part.genders,
tr = tr,
ts = part.ts,
accel = partaccel or parts.accel,
postprocess_annotations = postprocess_annotations,
},
face
)
end
parts[j] = format_term_with_decorations(part.lang or data.lang, part,
formatted, j)
end
local parts_output
if parts[1] then
parts_output = (parts.label and " " or "") .. concat(parts)
elseif parts.request then
parts_output = " <small>[please provide]</small>"
insert(data.categories, "Requests for inflections in " .. data.lang:getFullName() .. " entries")
else
parts_output = ""
end
local parts_label = parts.label and ("<i>" .. parts.label .. "</i>") or ""
return format_term_with_decorations(data.lang, parts, parts_label .. parts_output, 1)
end
-- Format the inflections following the headword or nested after a given inflection. Declared local above.
function format_inflections(data, inflections)
if inflections and inflections[1] then
-- Format each inflection individually.
for key, infl in ipairs(inflections) do
inflections[key] = format_inflection_parts(data, infl)
end
return concat(inflections, ", ")
else
return ""
end
end
-- Format the top-level inflections following the headword. Currently this just adds parens around the
-- formatted comma-separated inflections in `data.inflections`.
local function format_top_level_inflections(data)
local result = format_inflections(data, data.inflections)
if result ~= "" then
return " (" .. result .. ")"
else
return result
end
end
-- Forward reference
local check_red_link_inflections
-- Check a single inflection (which consists of a label and zero or more terms, each possibly with nested inflections)
-- for red links. If so, insert a red-link category based on `plpos` (the plural part of speech to insert in the
-- category), stop further processing, and return true. If no red links found, return false.
local function check_red_link_inflection_parts(data, parts, plpos)
for _, part in ipairs(parts) do
if type(part) ~= "table" then
part = {term = part}
end
local term = part.term
if term and not term:find("%[%[") then
local stripped_physical_term = get_link_page(term, data.lang, part.sc or parts.sc or nil)
if stripped_physical_term then
local title = mw.title.new(stripped_physical_term)
if title and not title:getContent() then
insert(data.categories, data.lang:getFullName() .. " " .. plpos .. " with red links in their headword lines")
return true
end
end
end
if part.inflections then
if check_red_link_inflections(data, part.inflections, plpos) then
return true
end
end
end
return false
end
-- Check a set of inflections (each of which describes a single inflection of the term, such as feminine or plural, and
-- consists of a label and zero or more terms, each possibly with nested inflections) for red links. If so, insert a
-- red-link category based on `plpos` (the plural part of speech to insert in the category), stop further processing,
-- and return true. If no red links found, return false.
function check_red_link_inflections(data, inflections, plpos)
if inflections and inflections[1] then
-- Check each inflection individually.
for key, infl in ipairs(inflections) do
if check_red_link_inflection_parts(data, infl, plpos) then
return true
end
end
end
return false
end
-- Check the top-level inflections in `data.inflections`, along with any nested inflections, for red links. If so,
-- insert a red-link category based on `plpos` (the plural part of speech to insert in the category), stop further
-- processing, and return true. If no red links found, return false.
local function check_red_link_inflections_top_level(data, plpos)
return check_red_link_inflections(data, data.inflections, plpos)
end
--[==[
Returns the plural form of `pos`, a raw part of speech input, which could be singular or
plural. Irregular plural POS are taken into account (e.g. "kanji" pluralizes to
"kanji").
]==]
function export.pluralize_pos(pos)
-- retain sa tagalog pero walang pluralization
return pos
end
--[==[
Return "lemma" if the given POS is a lemma, "non-lemma form" if a non-lemma form, or nil
if unknown. The POS passed in must be in its plural form ("nouns", "prefixes", etc.).
If you have a POS in its singular form, call {export.pluralize_pos()} above to pluralize it
in a smart fashion that knows when to add "-s" and when to add "-es", and also takes
into account any irregular plurals.
If `best_guess` is given and the POS is in neither the lemma nor non-lemma list, guess
based on whether it ends in " forms"; otherwise, return nil.
]==]
function export.pos_lemma_or_nonlemma(plpos, best_guess)
local m_headword_data = m_data or get_data()
local isLemma = m_headword_data.lemmas
-- Is it a lemma category?
if isLemma[plpos] then
return "lema"
end
local plpos_no_recon = plpos:gsub("^reconstructed ", "")
if isLemma[plpos_no_recon] then
return "lema"
end
-- Is it a nonlemma category?
local isNonLemma = m_headword_data.nonlemmas
if isNonLemma[plpos] or isNonLemma[plpos_no_recon] then
return "anyong di-lema"
end
local plpos_no_mut = plpos:gsub("^mutated ", "")
if isLemma[plpos_no_mut] or isNonLemma[plpos_no_mut] then
return "anyong di-lema"
elseif best_guess then
return plpos:find(" forms$") and "anyong di-lema" or "lema"
else
return nil
end
end
--[==[
Canonicalize a part of speech as specified in 2= in {{tl|head}}. This checks for POS aliases and non-lemma form
aliases ending in 'f', and then pluralizes if the POS term does not have an invariable plural.
]==]
function export.canonicalize_pos(pos)
-- FIXME: Temporary code to throw an error for alias 'pre' (= preposition) that will go away.
if pos == "pre" then
-- Don't throw error on 'pref' as it's an alias for "prefix".
error("POS 'pre' for 'preposition' no longer allowed as it's too ambiguous; use 'prep'")
end
-- Likewise for pro = pronoun.
if pos == "pro" or pos == "prof" then
error("POS 'pro' for 'pronoun' no longer allowed as it's too ambiguous; use 'pron'")
end
local m_headword_data = m_data or get_data()
if m_headword_data.pos_aliases[pos] then
pos = m_headword_data.pos_aliases[pos]
elseif pos:sub(-1) == "f" then
pos = pos:sub(1, -2)
pos = (m_headword_data.pos_aliases[pos] or pos) .. " forms"
end
return export.pluralize_pos(pos)
end
-- Find and return the maximum index in the array `data[element]` (which may have gaps in it), and initialize it to a
-- zero-length array if unspecified. Check to make sure all keys are numeric (other than "maxindex", which is set by
-- [[Module:parameters]] for list parameters), all values are strings, and unless `allow_blank_string` is given,
-- no blank (zero-length) strings are present.
local function init_and_find_maximum_index(data, element, allow_blank_string)
local maxind = 0
if not data[element] then
data[element] = {}
end
local typ = type(data[element])
if typ ~= "table" then
error(("Internal error: In full_headword(), `data.%s` must be an array but is a %s"):format(element, typ))
end
for k, v in pairs(data[element]) do
if k ~= "maxindex" then
if type(k) ~= "number" then
error(("Internal error: Unrecognized non-numeric key '%s' in `data.%s`"):format(k, element))
end
if k > maxind then
maxind = k
end
if v then
if type(v) ~= "string" then
error(("Internal error: For key '%s' in `data.%s`, value should be a string but is a %s"):format(k, element, type(v)))
end
if not allow_blank_string and v == "" then
error(("Internal error: For key '%s' in `data.%s`, blank string not allowed; use 'false' for the default"):format(k, element))
end
end
end
end
return maxind
end
--[==[
-- Add the page to various maintenance categories for the language and the
-- whole page. These are placed in the headword somewhat arbitrarily, but
-- mainly because headword templates are mandatory for entries (meaning that
-- in theory it provides full coverage).
--
-- This is provided as an external entry point so that modules which transclude
-- information from other entries (such as {{tl|ja-see}}) can take advantage
-- of this feature as well, because they are used in place of a conventional
-- headword template.]==]
do
-- Handle any manual sortkeys that have been specified in raw categories
-- by tracking if they are the same or different from the automatically-
-- generated sortkey, so that we can track them in maintenance
-- categories.
local function handle_raw_sortkeys(tbl, sortkey, page, lang, lang_cats)
sortkey = sortkey or lang:makeSortKey(page.pagename)
-- If there are raw categories with no sortkey, then they will be
-- sorted based on the default MediaWiki sortkey, so we check against
-- that.
if tbl == true then
if page.raw_defaultsort ~= sortkey then
insert(lang_cats, lang:getFullName() .. " terms with non-redundant non-automated sortkeys")
end
return
end
local redundant, different
for k in pairs(tbl) do
if k == sortkey then
redundant = true
else
different = true
end
end
if redundant then
insert(lang_cats, lang:getFullName() .. " terms with redundant sortkeys")
end
if different then
insert(lang_cats, lang:getFullName() .. " terms with non-redundant non-automated sortkeys")
end
return sortkey
end
function export.maintenance_cats(page, lang, lang_cats, page_cats)
extend(page_cats, page.cats)
lang = lang:getFull() -- since we are just generating categories
local canonical = lang:getCanonicalName()
local tbl = page.wikitext_topic_cat[lang:getCode()]
local sortkey = nil
if tbl then
sortkey = handle_raw_sortkeys(tbl, sortkey, page, lang, lang_cats)
insert(lang_cats, canonical .. " entries with topic categories using raw markup")
end
tbl = page.wikitext_langname_cat[canonical]
if tbl then
handle_raw_sortkeys(tbl, sortkey, page, lang, lang_cats)
insert(lang_cats, canonical .. " entries with language name categories using raw markup")
end
if get_current_L2() ~= canonical then
insert(lang_cats, canonical .. " entries with incorrect language header")
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/incorrect language header]]
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/incorrect language header/LANGCODE]]
track("incorrect language header", lang)
end
end
end
--[==[This is the primary external entry point.
{{lua|full_headword(data)}}
This is used by {{temp|head}} and various language-specific headword templates (e.g. {{temp|ru-adj}} for Russian adjectives, {{temp|de-noun}} for German nouns, etc.) to display an entire headword line.
See [[#Further explanations for full_headword()]]
]==]
function export.full_headword(data)
-- Prevent data from being destructively modified.
data = shallow_copy(data)
------------ 1. Basic checks for old-style (multi-arg) calling convention. ------------
if data.getCanonicalName then
error("Internal error: In full_headword(), the first argument `data` needs to be a Lua object (table) of properties, not a language object")
end
if not data.lang or type(data.lang) ~= "table" or not data.lang.getCode then
error("Internal error: In full_headword(), the first argument `data` needs to be a Lua object (table) and `data.lang` must be a language object")
end
if data.id and type(data.id) ~= "string" then
error("Internal error: The id in the data table should be a string.")
end
------------ 2. Initialize pagename etc. ------------
local langcode = data.lang:getCode()
local full_langcode = data.lang:getFullCode()
local langname = data.lang:getCanonicalName()
local full_langname = data.lang:getFullName()
local raw_pagename = data.pagename
local page
local m_headword_data = m_data or get_data()
if raw_pagename and raw_pagename ~= m_headword_data.pagename then -- for testing, doc pages, etc.
-- data.pagename is often set on documentation and test pages through the pagename= parameter of various
-- templates, to emulate running on that page. Having a large number of such test templates on a single
-- page often leads to timeouts, because we fetch and parse the contents of each page in turn. However,
-- we don't really need to do that and can function fine without fetching and parsing the contents of a
-- given page, so turn off content fetching/parsing (and also setting the DEFAULTSORT key through a parser
-- function, which is *slooooow*) in certain namespaces where test and documentation templates are likely to
-- be found and where actual content does not live (User, Template, Module).
local actual_namespace = m_headword_data.page.namespace
local no_fetch_content = actual_namespace == "User" or actual_namespace == "Template" or
actual_namespace == "Module"
page = process_page(raw_pagename, no_fetch_content)
else
page = m_headword_data.page
end
local namespace = page.namespace
if data.altform then
-- Temporary tracking for use of old altform=
track("altform", data.lang)
end
local noposcat = data.noposcat
local is_varform_only = data.var and data.var ~= "both"
local is_varform_both = data.var == "both"
------------ 3. Initialize `data.heads` table; if old-style, convert to new-style. ------------
if type(data.heads) == "table" and type(data.heads[1]) == "table" then
-- new-style
if data.translits or data.transcriptions then
error("Internal error: In full_headword(), if `data.heads` is new-style (array of head objects), `data.translits` and `data.transcriptions` cannot be given")
end
else
-- convert old-style `heads`, `translits` and `transcriptions` to new-style
local maxind = max(
init_and_find_maximum_index(data, "heads"),
init_and_find_maximum_index(data, "translits", true),
init_and_find_maximum_index(data, "transcriptions", true)
)
for i = 1, maxind do
data.heads[i] = {
term = data.heads[i],
tr = data.translits[i],
ts = data.transcriptions[i],
}
end
end
-- Make sure there's at least one head.
if not data.heads[1] then
data.heads[1] = {}
end
------------ 4. Initialize and validate `data.categories` and `data.whole_page_categories`, and determine `pos_category` if not given, and add basic categories. ------------
init_and_find_maximum_index(data, "categories")
init_and_find_maximum_index(data, "whole_page_categories")
local pos_category_already_present = false
if data.categories[1] then
local escaped_langname = pattern_escape(full_langname)
local matches_lang_pattern = "^" .. escaped_langname .. " "
for _, cat in ipairs(data.categories) do
-- Does the category begin with the language name? If not, tag it with a tracking category.
if not cat:find(matches_lang_pattern) then
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/no lang category]]
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/no lang category/LANGCODE]]
track("no lang category", data.lang)
end
end
-- If `pos_category` not given, try to infer it from the first specified category. If this doesn't work, we
-- throw an error below.
if not data.pos_category and data.categories[1]:find(matches_lang_pattern) then
data.pos_category = data.categories[1]:gsub(matches_lang_pattern, "")
-- Optimization to avoid inserting category already present.
pos_category_already_present = true
end
end
if not data.pos_category then
error("Internal error: `data.pos_category` not specified and could not be inferred from the categories given in "
.. "`data.categories`. Either specify the plural part of speech in `data.pos_category` "
.. "(e.g. \"proper nouns\") or ensure that the first category in `data.categories` is formed from the "
.. "language's canonical name plus the plural part of speech (e.g. \"Norwegian Bokmål proper nouns\")."
)
end
-- Insert a category at the beginning for the part of speech unless it's already present or `data.noposcat` given.
if not (pos_category_already_present or noposcat or is_varform_only) then
local pos_category = full_langname .. " " .. data.pos_category
-- FIXME: [[User:Theknightwho]] Why is this special case here? Please add an explanatory comment.
if pos_category ~= "Translingual Han characters" then
insert(data.categories, 1, pos_category)
end
end
-- Try to determine whether the part of speech refers to a lemma or a non-lemma form; if we can figure this out,
-- add an appropriate category.
local postype = export.pos_lemma_or_nonlemma(data.pos_category)
if not postype then
-- We don't know what this category is, so tag it with a tracking category.
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/unrecognized pos]]
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/unrecognized pos/LANGCODE]]
track("unrecognized pos", data.lang)
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/unrecognized pos/POS]]
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/unrecognized pos/POS/LANGCODE]]
track("unrecognized pos/pos/" .. data.pos_category, data.lang)
elseif not (noposcat or is_varform_only or data.nolemmacat) then
insert(data.categories, 1, full_langname .. " " .. postype .. "s")
end
-- Categorize variant forms into 'variant lemmas' or 'variant non-lemma forms'. Originally proposed in
-- [[Wiktionary:Beer parlour/2024/June#Decluttering the altform mess]] as 'alternative forms'; renamed in
-- [[Wiktionary:Beer parlour/2026/July#Renaming the "alternative forms" categories]].
if (is_varform_only or is_varform_both) and postype then
insert(data.categories, 1, full_langname .. " na barayti ng " .. postype)
end
------------ 5. Create a default headword, and add links to multiword page names. ------------
-- Determine if this is an "anti-asterisk" term, i.e. an attested term in a language that must normally be
-- reconstructed.
local is_anti_asterisk = data.heads[1].term and data.heads[1].term:find("^!!")
local lang_reconstructed = data.lang:hasType("reconstructed")
if is_anti_asterisk then
if not lang_reconstructed then
error("Anti-asterisk feature (head= beginning with !!) can only be used with reconstructed languages")
end
if namespace == "Reconstruction" then
error("Anti-asterisk feature (head= beginning with !!) should be used in mainspace, not in Reconstruction space")
end
lang_reconstructed = false
end
-- Determine if term is reconstructed
local is_reconstructed = namespace == "Reconstruction" or lang_reconstructed
-- Create a default headword based on the pagename, which is determined in
-- advance by the data module so that it only needs to be done once.
local default_head = page.pagename
-- Add links to multi-word page names when appropriate
if not (is_reconstructed or data.nolinkhead) then
local no_links = m_headword_data.no_multiword_links
if not (no_links[langcode] or no_links[full_langcode]) and export.head_is_multiword(default_head) then
default_head = export.add_multiword_links(default_head, true)
end
end
if is_reconstructed then
default_head = "*" .. default_head
end
------------ 6. Check the namespace against the language type. ------------
if namespace == "" then
if lang_reconstructed then
error("Entries in " .. langname .. " must be placed in the Reconstruction: namespace")
elseif data.lang:hasType("appendix-constructed") then
error("Entries in " .. langname .. " must be placed in the Appendix: namespace")
end
elseif namespace == "Citations" or namespace == "Thesaurus" then
error("Headword templates should not be used in the " .. namespace .. ": namespace.")
end
------------ 7. Fill in missing values in `data.heads`. ------------
-- True if any script among the headword scripts has spaces in it.
local any_script_has_spaces = false
-- True if any term has a redundant head= param.
local has_redundant_head_param = false
for _, head in ipairs(data.heads) do
------ 7a. If missing head, replace with default head.
if not head.term then
head.term = default_head
elseif head.term == default_head then
has_redundant_head_param = true
elseif is_anti_asterisk and head.term == "!!" then
-- If explicit head=!! is given, it's an anti-asterisk term and we fill in the default head.
head.term = "!!" .. default_head
elseif head.term:find("^[!?]$") then
-- If explicit head= just consists of ! or ?, add it to the end of the default head.
head.term = default_head .. head.term
end
head.term_no_initial_bang_bang = is_anti_asterisk and head.term:sub(3) or head.term
if is_reconstructed then
local head_term = head.term
if head_term:find("%[%[") then
head_term = remove_links(head_term)
end
if head_term:sub(1, 1) ~= "*" then
error("The headword '" .. head_term .. "' must begin with '*' to indicate that it is reconstructed.")
end
end
------ 7b. Try to detect the script(s) if not provided. If a per-head script is provided, that takes precedence,
------ otherwise fall back to the overall script if given. If neither given, autodetect the script.
local auto_sc = data.lang:findBestScript(head.term)
if (
auto_sc:getCode() == "None" and
find_best_script_without_lang(head.term):getCode() ~= "None"
) then
insert(data.categories, full_langname .. " terms in nonstandard scripts")
end
if not (head.sc or data.sc) then -- No script code given, so use autodetected script.
head.sc = auto_sc
else
if not head.sc then -- Overall script code given.
head.sc = data.sc
end
-- Track uses of sc parameter.
if head.sc:getCode() == auto_sc:getCode() then
track("redundant script code", data.lang)
if not data.no_script_code_cat then
insert(data.categories, full_langname .. " terms with redundant script codes")
end
else
track("non-redundant manual script code", data.lang)
if not data.no_script_code_cat then
insert(data.categories, full_langname .. " terms with non-redundant manual script codes")
end
end
end
-- If using a discouraged character sequence, add to maintenance category.
if head.sc:hasNormalizationFixes() == true then
local composed_head = toNFC(head.term)
if head.sc:fixDiscouragedSequences(composed_head) ~= composed_head then
insert(data.whole_page_categories, "Pages using discouraged character sequences")
end
end
any_script_has_spaces = any_script_has_spaces or head.sc:hasSpaces()
------ 7c. Create automatic transliterations for any non-Latin headwords without manual translit given
------ (provided automatic translit is available, e.g. not in Persian or Hebrew).
-- Make transliterations
head.tr_manual = nil
-- Try to generate a transliteration if necessary
if head.tr == "-" then
head.tr = nil
else
local notranslit = m_headword_data.notranslit
if not (notranslit[langcode] or notranslit[full_langcode]) and head.sc:isTransliterated() then
head.tr_manual = not not head.tr
local text = head.term_no_initial_bang_bang
if not data.lang:link_tr(head.sc) then
text = remove_links(text)
end
local automated_tr = data.lang:transliterate(text, head.sc)
if automated_tr then
local manual_tr = head.tr
if manual_tr then
if remove_links(manual_tr) == remove_links(automated_tr) then
insert(data.categories, full_langname .. " terms with redundant transliterations")
else
insert(data.categories, full_langname .. " terms with non-redundant manual transliterations")
end
end
if not manual_tr then
head.tr = automated_tr
end
end
-- There is still no transliteration?
-- Add the entry to a cleanup category.
if not head.tr then
head.tr = "<small>transliteration needed</small>"
-- FIXME: No current support for 'Request for transliteration of Classical Persian terms' or similar.
-- Consider adding this support in [[Module:category tree/poscatboiler/data/entry maintenance]].
insert(data.categories, "Requests for transliteration of " .. full_langname .. " terms")
else
-- Otherwise, trim it.
head.tr = trim(head.tr)
end
end
end
-- Link to the transliteration entry for languages that require this.
if head.tr and data.lang:link_tr(head.sc) then
head.tr = full_link{
term = head.tr,
lang = data.lang,
sc = get_script("Latn"),
tr = "-"
}
end
end
------------ 8. Maybe tag the title with the appropriate script code, using the `display_title` mechanism. ------------
-- Assumes that the scripts in "toBeTagged" will never occur in the Reconstruction namespace.
-- (FIXME: Don't make assumptions like this, and if you need to do so, throw an error if the assumption is violated.)
-- Avoid tagging ASCII as Hani even when it is tagged as Hani in the headword, as in [[check]]. The check for ASCII
-- might need to be expanded to a check for any Latin characters and whitespace or punctuation.
local display_title
-- Where there are multiple headwords, use the script for the first. This assumes the first headword is similar to
-- the pagename, and that headwords that are in different scripts from the pagename aren't first. This seems to be
-- about the best we can do (alternatively we could potentially do script detection on the pagename).
local dt_script = data.heads[1].sc
local dt_script_code = dt_script:getCode()
local page_non_ascii = namespace == "" and not page.pagename:find("^[%z\1-\127]+$")
local unsupported_pagename, unsupported = page.full_raw_pagename:gsub("^Unsupported titles/", "")
if unsupported == 1 and page.unsupported_titles[unsupported_pagename] then
display_title = 'Unsupported titles/<span class="' .. dt_script_code .. '">' .. page.unsupported_titles[unsupported_pagename] .. '</span>'
elseif page_non_ascii and m_headword_data.toBeTagged[dt_script_code]
or (dt_script_code == "Jpan" and (text_in_script(page.pagename, "Hira") or text_in_script(page.pagename, "Kana")))
or (dt_script_code == "Kore" and text_in_script(page.pagename, "Hang")) then
display_title = '<span class="' .. dt_script_code .. '">' .. page.full_raw_pagename .. '</span>'
-- Keep Han entries region-neutral in the display title.
elseif page_non_ascii and (dt_script_code == "Hant" or dt_script_code == "Hans") then
display_title = '<span class="Hani">' .. page.full_raw_pagename .. '</span>'
elseif namespace == "Reconstruction" then
local matched
display_title, matched = ugsub(
page.full_raw_pagename,
"^(Reconstruction:[^/]+/)(.+)$",
function(before, term)
return before .. tag_text(term, data.lang, dt_script)
end
)
if matched == 0 then
display_title = nil
end
end
-- FIXME: Generalize this.
-- If the current language uses Aran (Nastaliq), e.g. Urdu, and there's more than one language on the page, don't
-- set the display title because we don't want Nastaliq for terms that also exist in other languages that don't
-- display in Nastaliq (e.g. Arabic or Persian). Because the word "Urdu" occurs near the end of the alphabet, Urdu
-- fonts tend to override the fonts of other languages. FIXME: This is checking for more than one language on the
-- page but instead needs to check if there are any languages using scripts other than Aran.
if dt_script_code == "Aran" and page.L2_list.n > 1 then
display_title = nil
end
if display_title then
mw.getCurrentFrame():callParserFunction(
"DISPLAYTITLE",
display_title
)
end
------------ 9. Insert additional categories. ------------
if data.force_cat_output then
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/force cat output]]
track("force cat output")
end
if has_redundant_head_param then
if not data.no_redundant_head_cat then
-- This is not the right way to go about this; too many exceptions and problems due to language-specific headword
-- handling customization. If we want this, it should be opt-in by a given language passing in the default headword.
-- insert(data.categories, full_langname .. " terms with redundant head parameter")
end
end
if namespace == "Reconstruction" and not lang_reconstructed then
insert(data.categories, full_langname .. " reconstructed terms")
end
-- If the first head is multiword (after removing links), maybe insert into "LANG multiword terms".
if not data.nomultiwordcat and not is_varform_only and any_script_has_spaces and postype == "lemma" then
local no_multiword_cat = m_headword_data.no_multiword_cat
if not (no_multiword_cat[langcode] or no_multiword_cat[full_langcode]) then
-- Check for spaces or hyphens, but exclude prefixes and suffixes.
-- Use the pagename, not the head= value, because the latter may have extra
-- junk in it, e.g. superscripted text that throws off the algorithm.
local no_hyphen = m_headword_data.hyphen_not_multiword_sep
-- Exclude hyphens if the data module states that they should for this language.
local checkpattern = (no_hyphen[langcode] or no_hyphen[full_langcode]) and ".[%s፡]." or ".[%s%-፡]."
local is_multiword = umatch(page.pagename, checkpattern)
if is_multiword and not non_categorizable(page.full_raw_pagename) then
insert(data.categories, full_langname .. " multiword terms")
elseif not is_multiword then
local long_word_threshold = m_headword_data.long_word_thresholds[langcode] or
m_headword_data.long_word_thresholds[full_langcode]
if long_word_threshold and ulen(page.pagename) >= long_word_threshold then
insert(data.categories, "Long " .. full_langname .. " words")
end
end
end
end
-- Determine whether to insert a category 'LANGNAME POS in SCRIPT'. If there are multiple heads, we may need to check
-- each head, as the heads may (theoretically) have different scripts.
local default_sccat = m_headword_data.default_sccat
if data.sccat or not is_varform_only and (default_sccat[langcode] or langcode ~= full_langcode and default_sccat[full_langcode]) then
local function needs_sccat(sccat_entry, sc)
if sccat_entry == true or not sccat_entry then
return sccat_entry
end
if type(sccat_entry) == "table" then
local in_list = contains(sccat_entry, sc:getCode())
if sccat_entry[1] == "not" then
in_list = not in_list
end
return in_list
end
return nil
end
for _, head in ipairs(data.heads) do
-- First check the `sccat` specified at the {{head}} level.
local this_needs_sccat = needs_sccat(data.sccat, head.sc)
-- If that wasn't given, check the default sccat at the language level for the lang code.
if this_needs_sccat == nil and not is_varform_only then
this_needs_sccat = needs_sccat(default_sccat[langcode], head.sc)
end
-- If that wasn't found and the lang code is an etym code, check the default sccat at the parent language level.
if this_needs_sccat == nil and not is_varform_only and langcode ~= full_langcode then
this_needs_sccat = needs_sccat(default_sccat[full_langcode], head.sc)
end
if this_needs_sccat then
insert(data.categories, full_langname .. " " .. data.pos_category .. " in " ..
head.sc:getDisplayForm(data.lang))
end
end
end
-- Reconstructed terms often use weird combinations of scripts and realistically aren't spelled so much as notated.
if namespace ~= "Reconstruction" and not is_varform_only then
-- Map from languages to a string containing the characters to ignore when considering whether a term has
-- multiple written scripts in it. Typically these are Greek or Cyrillic letters used for their phonetic
-- values.
local characters_to_ignore = {
["aaq"] = "αάὰ", -- Penobscot (Algonquian)
["acy"] = "δθ", -- Cypriot Arabic
["aez"] = "β", -- Aeka (Trans-New Guinea)
["anc"] = "γ", -- Ngas (Chadic/Afroasiatic)
["aou"] = "χ", -- A'ou (Kra-Dai)
["art-blk"] = "ч", -- Bolak (conlang)
["awg"] = "β", -- Anguthimri (Pama-Nyungan)
["az"] = "ь", -- Azerbaijani (Turkic; Yañalif Latin spelling, c. 1928 - 1938)
["ba"] = "ь", -- Bashkir (Turkic; Yañalif Latin spelling, c. 1928 - 1938)
["bhp"] = "β", -- Bima (Austronesian)
["bjz"] = "β", -- Baruga (Trans-New Guinea)
["byk"] = "θ", -- Biao (Kra-Dai)
["cdy"] = "θ", -- Chadong (Kra-Dai)
["chp"] = "θ", -- Chipewyan (Athabaskan)
["cjh"] = "χ", -- Upper Chehalis (Salishan)
["clm"] = "χ", -- Klallam (Salishan)
["col"] = "χ", -- Colombia-Wenatchi (Salishan)
["coo"] = "χθ", -- Comox (Salishan)
["crx"] = "θ", -- Carrier (Athabaskan)
["ets"] = "θ", -- Yekhee (Edoid/Niger-Congo)
["ett"] = "χ", -- Etruscan (isolate; in romanizations)
["fla"] = "χ", -- Montana Salish (Salishan)
["grt"] = "་", -- Garo (South Asian Sino-Tibetan)
["gmw-gts"] = "χ", -- Gottscheerish (Bavarian variant spoken in Slovenia)
["hur"] = "χθ", -- Halkomelem (Salishan)
["itc-psa"] = "f", -- Pre-Samnite (Italic; normally written in Greek)
["izh"] = "ь", -- Ingrian (Finnic)
["kic"] = "θ", -- Kickapoo (Algonquian)
["kk"] = "ь", -- Kazakh (Turkic; Yañalif Latin spelling, c. 1928 - 1938)
["ky"] = "ь", -- Kyrgyz (Turkic; Yañalif Latin spelling, c. 1928 - 1938)
["lil"] = "χ", -- Lillooet (Salishan)
["lsi"] = "ꓹ", -- Lashi (Lolo-Burmese/Sino-Tibetan; represents a glottal stop)
["mhz"] = "β", -- Mor (Austronesian)
["mqn"] = "β", -- Moronene (Austronesian)
["neg"]= "ӡā", -- Negidal (Tungusic; normally in Cyrillic)
["oka"] = "χ", -- Okanagan (Salishan)
["ole"] = "θ", -- Olekha (Sino-Tibetan)
["oui"] = "γβ", -- Old Uyghur (Turkic; FIXME: others? E.g. Greek delta (δ)?)
["pox"] = "χ", -- Polabian (West Slavic)
["rif"] = "ε", -- Tarifit (Berber)
["rom"] = "Θθ", -- Romani (Indic: International Standard; two different thetas???)
["rpn"] = "β", -- Repanbitip (Austronesian)
["sah"] = "ь", -- Yakut (Turkic; 1929 - 1939 Latin spelling)
["sit-jap"] = "χ", -- Japhug (Sino-Tibetan)
["sjw"] = "θ", -- Shawnee (Algonquian)
["squ"] = "χ", -- Squamish (Salishan)
["str"] = "χθ", -- Saanich (Salishan)
["teh"] = "χ", -- Tehuelche (Chonan; spoken in Argentina)
["tep"] = "η", -- Tepecano (Uto-Aztecan)
["thp"] = "χ", -- Thompson (Salishan)
["tk"] = "ь", -- Turkmen (Turkic; Yañalif Latin spelling, c. 1928 - 1938)
["tt"] = "ь", -- Kazakh (Turkic; Yañalif Latin spelling, c. 1928 - 1938)
["twa"] = "χ", -- Twana (Salishan)
["wbl"] = "ы", -- Wakhi (Iranian)
["xbc"] = "ϸ", -- Bactrian (Iranian; represents š; normally written in Greek)
["yha"] = "θ", -- Baha (Kra-Dai)
["za"] = "зч", -- Zhuang (Tai/Kra-Dai); 1957-1982 alphabet used two Cyrillic letters (as well as some others like
-- ƃ, ƅ, ƨ, ɯ and ɵ that look like Cyrillic or Greek but are actually Latin)
["zlw-slv"] = "χђћ", -- Slovincian (West Slavic; FIXME: χ is Greek, the other two are Cyrillic, but I'm not sure
-- the currect characters are being chosen in the entry names)
["zng"] = "θ", -- Mang (Mon-Khmer)
["ztp"] = "θ", -- Loxicha Zapotec (Zapotecan)
}
-- Determine how many real scripts are found in the pagename, where we exclude symbols and such. We exclude
-- scripts whose `character_category` is false as well as Zmth (mathematical notation symbols), which has a
-- category of "Mathematical notation symbols". When counting scripts, we need to elide language-specific
-- variants because e.g. Beng and as-Beng have slightly different characters but we don't want to consider them
-- two different scripts (e.g. [[এৰ]] has two characters which are detected respectively as Beng and as-Beng).
local seen_scripts = {}
local num_seen_scripts = 0
local num_loops = 0
local canon_pagename = page.pagename
local ch_to_ignore = characters_to_ignore[full_langcode]
if ch_to_ignore then
canon_pagename = ugsub(canon_pagename, "[" .. ch_to_ignore .. "]", "")
end
while true do
if canon_pagename == "" or num_seen_scripts >= 2 or num_loops >= 10 then
break
end
-- Make sure we don't get into a loop checking the same script over and over again; happens with e.g. [[ᠪᡳ]]
num_loops = num_loops + 1
local pagename_script = find_best_script_without_lang(canon_pagename, "None only as last resort")
local script_chars = pagename_script.characters
if not script_chars then
-- we are stuck; this happens with None
break
end
local script_code = pagename_script:getCode()
local replaced
canon_pagename, replaced = ugsub(canon_pagename, "[" .. script_chars .. "]", "")
if (
replaced and
script_code ~= "Zmth" and
(script_data or get_script_data())[script_code] and
script_data[script_code].character_category ~= false
) then
script_code = script_code:gsub("^.-%-", "")
if not seen_scripts[script_code] then
seen_scripts[script_code] = true
num_seen_scripts = num_seen_scripts + 1
end
end
end
if num_seen_scripts > 1 then
insert(data.categories, full_langname .. " terms written in multiple scripts")
end
end
-- Categorise for unusual characters. Takes into account combining characters, so that we can categorise for characters with diacritics that aren't encoded as atomic characters (e.g. U̠). These can be in two formats: single combining characters (i.e. character + diacritic(s)) or double combining characters (i.e. character + diacritic(s) + character). Each can have any number of diacritics.
local standard = data.lang:getStandardCharacters()
if not is_varform_only and standard and not non_categorizable(page.full_raw_pagename) then
local function char_category(char)
local specials = {
["#"] = "number sign",
["("] = "parentheses",
[")"] = "parentheses",
["<"] = "angle brackets",
[">"] = "angle brackets",
["["] = "square brackets",
["]"] = "square brackets",
["_"] = "underscore",
["{"] = "braces",
["|"] = "vertical line",
["}"] = "braces",
["ß"] = "ẞ",
["\205\133"] = "", -- this is UTF-8 for U+0345 ( ͅ)
["\239\191\189"] = "replacement character",
}
char = toNFD(char)
:gsub(".[\128-\191]*", function(m)
local new_m = specials[m]
new_m = new_m or m:uupper()
return new_m
end)
return toNFC(char)
end
if full_langcode ~= "hi" and full_langcode ~= "lo" then
local standard_chars_scripts = {}
for _, head in ipairs(data.heads) do
standard_chars_scripts[head.sc:getCode()] = true
end
-- Iterate over the scripts, in case there is more than one (as they can have different sets of standard characters).
for code in pairs(standard_chars_scripts) do
local sc_standard = data.lang:getStandardCharacters(code)
if sc_standard then
if page.pagename_len > 1 then
local explode_standard = {}
local function explode(char)
explode_standard[char] = true
return ""
end
local sc_standard_exploded = ugsub(sc_standard, page.comb_chars.combined_double, explode)
-- The following is correct; it relies on side-effecing the explode_standard[] table.
ugsub(sc_standard_exploded, page.comb_chars.combined_single, explode):gsub(".[\128-\191]*", explode)
local num_cat_inserted
for char in pairs(page.explode_pagename) do
if not explode_standard[char] then
if char:find("[0-9]") then
if not num_cat_inserted then
insert(data.categories, full_langname .. " terms spelled with numbers")
num_cat_inserted = true
end
elseif ufind(char, page.emoji_pattern) then
insert(data.categories, full_langname .. " terms spelled with emoji")
else
local upper = char_category(char)
if not explode_standard[upper] then
char = upper
end
insert(data.categories, full_langname .. " terms spelled with " .. char)
end
end
end
end
-- If a diacritic doesn't appear in any of the standard characters, also categorise for it generally.
sc_standard = toNFD(sc_standard)
for diacritic in ugmatch(page.decompose_pagename, page.comb_chars.diacritics_single) do
if not umatch(sc_standard, diacritic) then
insert(data.categories, full_langname .. " terms spelled with ◌" .. diacritic)
end
end
for diacritic in ugmatch(page.decompose_pagename, page.comb_chars.diacritics_double) do
if not umatch(sc_standard, diacritic) then
insert(data.categories, full_langname .. " terms spelled with ◌" .. diacritic .. "◌")
end
end
end
end
-- Ancient Greek, Hindi and Lao handled the old way for now, as their standard chars still need to be converted to the new format (because there are a lot of them).
elseif ulen(page.pagename) ~= 1 then
for character in ugmatch(page.pagename, "([^" .. standard .. "])") do
local upper = char_category(character)
if not umatch(upper, "[" .. standard .. "]") then
character = upper
end
insert(data.categories, full_langname .. " terms spelled with " .. character)
end
end
end
if not is_varform_only and data.heads[1].sc:isSystem("alphabet") then
local pagename, i = page.pagename:ulower(), 2
while umatch(pagename, "(%a)" .. ("%1"):rep(i)) do
i = i + 1
insert(data.categories, full_langname .. " terms with " .. i .. " consecutive instances of the same letter")
end
end
-- Categorise for palindromes
if not is_varform_only and not data.nopalindromecat and namespace ~= "Reconstruction" and ulen(page.pagename) > 2
-- FIXME: Use of first script here seems hacky. What is the clean way of doing this in the presence of
-- multiple scripts?
and is_palindrome(page.pagename, data.lang, data.heads[1].sc) then
insert(data.categories, full_langname .. " palindromes")
end
if namespace == "" and not lang_reconstructed then
for _, head in ipairs(data.heads) do
if page.full_raw_pagename ~= get_link_page(remove_links(head.term), data.lang, head.sc) then
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/pagename spelling mismatch]]
-- [[Special:WhatLinksHere/Wiktionary:Tracking/headword/pagename spelling mismatch/LANGCODE]]
track("pagename spelling mismatch", data.lang)
break
end
end
end
-- Add red link category if called for and we're not a "large" page, where such checks are disabled.
if data.checkredlinks and not m_headword_data.large_pages[m_headword_data.pagename] then
local plposcat = type(data.checkredlinks) == "string" and data.checkredlinks or data.pos_category
check_red_link_inflections_top_level(data, plposcat)
end
-- Add to various maintenance categories.
export.maintenance_cats(page, data.lang, data.categories, data.whole_page_categories)
------------ 10. Format and return headwords, genders, inflections and categories. ------------
-- Format and return all the gathered information. This may add more categories (e.g. gender/number categories),
-- so make sure we do it before evaluating `data.categories`.
local text = '<span class="headword-line">' ..
format_headword(data) ..
format_headword_genders(data, is_varform_only) ..
format_top_level_inflections(data) .. '</span>'
-- Language-specific categories.
local cats = format_categories(
data.categories, data.lang, data.sort_key, page.encoded_pagename,
data.force_cat_output or test_force_categories, data.heads[1].sc
)
-- Language-agnostic categories.
local whole_page_cats = format_categories(
data.whole_page_categories, nil, "-"
)
return text .. cats .. whole_page_cats
end
return export
e9iyq93kdjhjgcd8foz1xexxcfminpp
Module:labels/data/topical
828
31282
178604
178346
2026-11-06T03:47:04Z
GinawaSaHapon
3989
178604
Scribunto
text/plain
local labels = {}
-- To sort these, you first have to convert each label section into a single line, and then sort the lines, and undo
-- the single-line conversion. This can be done using Vim commands, something like this:
-- 1. Mark the first line to be changed using `ma`.
-- 2. Go to the last line and use `'a,.s/\n/\\n/g` to convert newlines to \n sequences.
-- 3. Use `'a,.s/\\n\\n/\r/g` to convert sequences of two \n's (marking section divisions) back to newlines.
-- 4. Go to the last line again and use `'a,.!sort -f -d` to sort. The `-f` makes it case-insensitive and the `-d`
-- selects "dictionary order", which is needed to get 'yoga' to sort before 'yoga pose' instead of the other way
-- around.
-- 5. Go to the last line again and use `'a,.s/\\n/\r/g` to convert \n sequences back to newlines.
-- 6. Go to the last line again and use `'a,.s/^labels/\rlabels/` to put an extra newline before each section.
labels["3D printing"] = {
aliases = {"3D printer", "3D printers"},
Wiktionary = "3D printing#Noun",
Wikipedia = true,
Wikidata = "Q229367",
topical_categories = true,
}
labels["ABDL"] = {
aliases = {"AB/DL"},
Wiktionary = true,
Wikipedia = true,
topical_categories = true,
}
labels["Abrahamism"] = {
Wiktionary = "Abrahamism#Noun",
topical_categories = true,
}
labels["accounting"] = {
display = "[[pagtutuos]]",
topical_categories = true,
}
labels["acoustics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["acting"] = {
Wiktionary = "acting#Noun",
topical_categories = true,
}
labels["advertising"] = {
Wiktionary = "advertising#Noun",
topical_categories = true,
}
labels["aeronautics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["aesthetic"] = {
aliases = {"aesthetics"},
Wiktionary = true,
topical_categories = "Aesthetics",
}
labels["age regression"] = {
aliases = {"agere", "agereg"},
Wiktionary = true,
topical_categories = "Age regression"
}
labels["ageplay"] = {
aliases = {"age play"},
Wiktionary = true,
topical_categories = true,
}
labels["agriculture"] = {
aliases = {"farming"},
Wiktionary = true,
topical_categories = true,
}
labels["Ahmadiyya"] = {
aliases = {"Ahmadiyyat", "Ahmadi"},
Wiktionary = true,
topical_categories = true,
}
labels["aircraft"] = {
Wiktionary = true,
topical_categories = true,
}
labels["aircraft components"] = {
aliases = {"aircraft component"},
display = "[[aircraft]]",
topical_categories = true,
}
labels["alchemy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["alcoholic beverages"] = {
aliases = {"alcohol"},
display = "[[alcoholic#Adjective|alcoholic]] [[beverage]]s",
topical_categories = true,
}
labels["alcoholism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["algebra"] = {
Wiktionary = true,
topical_categories = true,
}
labels["algebraic geometry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["algebraic topology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["algorithms"] = {
aliases = {"algorithm"},
display = "[[computer science]]",
topical_categories = true,
}
labels["alternative history"] = {
aliases = {"alt hist", "alternate history"},
Wikidata = "Q224989",
topical_categories = true,
}
labels["alternative medicine"] = {
Wiktionary = true,
topical_categories = true,
}
labels["alt-right"] = {
aliases = {"altright", "Alt-right", "Altright"},
Wiktionary = true,
topical_categories = true,
}
labels["amateur radio"] = {
aliases = {"ham radio"},
Wiktionary = true,
topical_categories = true,
}
labels["American football"] = {
Wiktionary = true,
topical_categories = "Football (American)",
}
labels["amino acid"] = {
display = "[[biochemistry]]",
topical_categories = "Amino acids",
}
labels["analytic geometry"] = {
Wiktionary = true,
topical_categories = "Geometry",
}
labels["analytical chemistry"] = {
display = "[[analytical]] [[chemistry]]",
topical_categories = true,
}
labels["anarchism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["anatomy"] = {
display = "[[anatomiya]]",
Wiktionary = true,
topical_categories = true,
}
labels["Ancient Greece"] = {
aliases = {"ancient Greece"},
Wiktionary = true,
topical_categories = true,
}
labels["Ancient Rome"] = {
aliases = {"ancient Rome"},
Wiktionary = true,
topical_categories = true,
}
labels["Anglicanism"] = {
aliases = {"Anglican", "Anglicanist", "Anglican Church"},
Wiktionary = true,
topical_categories = true,
}
labels["animation"] = {
Wiktionary = true,
topical_categories = true,
}
labels["anime"] = {
Wiktionary = true,
topical_categories = "Japanese fiction",
}
labels["anthropology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Arabian god"] = {
display = "[[Arabian]] [[mythology]]",
topical_categories = "Arabian deities",
}
labels["arachnology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["archaeological culture"] = {
aliases = {"archeological culture", "archaeological cultures", "archeological cultures"},
display = "[[archaeology]]",
topical_categories = "Archaeological cultures",
}
labels["archaeology"] = {
aliases = {"archeology"},
Wiktionary = true,
topical_categories = true,
}
labels["archery"] = {
Wiktionary = true,
topical_categories = true,
}
labels["architectural element"] = {
aliases = {"architectural elements"},
display = "[[architecture]]",
topical_categories = "Architectural elements",
}
labels["architecture"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Argentine politics"] = {
aliases = {"Argentina politics", "Argentinian politics"},
Wikipedia = "Politics of Argentina",
topical_categories = true,
}
labels["arithmetic"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Armenian mythology"] = {
display = "[[Armenian]] [[mythology]]",
topical_categories = true,
}
labels["art"] = {
aliases = {"arts"},
Wiktionary = "art#Noun",
topical_categories = true,
}
labels["Arthurian legend"] = {
aliases = {"Arthurian mythology"},
Wikipedia = "Matter_of_Britain#Arthurian_legend",
topical_categories = "Arthurian mythology",
}
labels["artificial intelligence"] = {
aliases = {"AI"},
Wiktionary = true,
topical_categories = true,
}
labels["artillery"] = {
display = "[[weaponry]]",
topical_categories = true,
}
labels["artistic work"] = {
display = "[[art#Noun|art]]",
topical_categories = "Artistic works",
}
labels["asterism"] = {
display = "[[uranography]]",
topical_categories = "Asterisms",
}
labels["asteroid"] = {
display = "[[astronomy]]",
topical_categories = {"Asteroids", "Astronomy"}
}
labels["astrology"] = {
aliases = {"horoscope", "zodiac"},
Wiktionary = true,
topical_categories = true,
}
labels["astronomy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["astrophysics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Asturian mythology"] = {
display = "[[Asturian]] [[mythology]]",
topical_categories = true,
}
labels["athletics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Australian Aboriginal mythology"] = {
Wikipedia = true,
topical_categories = true,
}
labels["Australian politics"] = {
Wikipedia = "Politics of Australia",
topical_categories = true,
}
labels["Australian rules football"] = {
aliases = {"Australian Rules football"},
Wiktionary = true,
topical_categories = true,
}
labels["autism"] = {
Wiktionary = true,
Wikipedia = true,
topical_categories = true,
}
labels["automotive"] = {
aliases = {"automotives"},
Wiktionary = true,
topical_categories = true,
}
labels["automotive parts"] = {
aliases = {"automotive part", "auto part", "auto parts"},
display = "[[automotive]]",
topical_categories = true,
}
labels["aviation"] = {
aliases = {"air transport"},
Wiktionary = true,
topical_categories = true,
}
labels["backgammon"] = {
Wiktionary = true,
topical_categories = true,
}
labels["bacteria"] = {
display = "[[bacteriology]]",
topical_categories = true,
}
labels["bacteriology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["badminton"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Baháʼí Faith"] = {
aliases = {"Baháʼí", "Bahaʼi", "Bahá'í", "Baha'i", "Bahai", "Bahaʼi Faith", "Bahá'í Faith", "Baha'i Faith", "Bahai Faith"},
Wiktionary = true,
topical_categories = true,
}
labels["baking"] = {
Wiktionary = "baking#Noun",
topical_categories = true,
}
labels["ball games"] = {
aliases = {"ball sports"},
display = "[[ball game]]s",
topical_categories = true,
}
labels["ballet"] = {
Wiktionary = true,
topical_categories = true,
}
labels["ballistics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Bangladeshi politics"] = {
Wikipedia = "Politics of Bangladesh",
topical_categories = true,
}
labels["banking"] = {
Wiktionary = "banking#Noun",
topical_categories = true,
}
labels["baseball"] = {
Wiktionary = true,
topical_categories = true,
}
labels["basketball"] = {
Wiktionary = true,
topical_categories = true,
}
labels["BDSM"] = {
Wiktionary = true,
topical_categories = true,
}
labels["beekeeping"] = {
aliases = {"melittology", "apiology", "apidology"}, -- could potentially be split out
Wiktionary = true,
topical_categories = true,
}
labels["beer"] = {
Wiktionary = true,
topical_categories = true,
}
labels["betting"] = {
aliases = {"bet", "bets"},
display = "[[gambling#Noun|gambling]]",
topical_categories = true,
}
labels["biblical"] = {
aliases = {"Bible", "bible", "Biblical"},
Wiktionary = "Bible",
topical_categories = "Bible",
}
labels["biblical character"] = {
aliases = {"Biblical character", "biblical figure", "Biblical figure"},
display = "[[Bible|biblical]]",
topical_categories = "Biblical characters",
}
labels["bibliography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["bicycle parts"] = {
aliases = {"bicycle part"},
display = "[[w:List of bicycle parts|cycling]]",
topical_categories = true,
}
labels["billiards"] = {
aliases = {"cue sports"},
Wiktionary = true,
topical_categories = true,
}
labels["bingo"] = {
Wiktionary = true,
topical_categories = true,
}
labels["biochemistry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["biology"] = {
aliases = {"biological"},
Wiktionary = true,
topical_categories = true,
}
labels["biotechnology"] = {
aliases = {"biotechnological"},
Wiktionary = true,
topical_categories = true,
}
labels["birdwatching"] = {
aliases = {"birding"},
Wiktionary = "birdwatching#Noun",
topical_categories = true,
}
labels["blacksmithing"] = {
aliases = {"blacksmith"},
Wiktionary = true,
topical_categories = true,
}
labels["blogging"] = {
aliases = {"blog"},
Wiktionary = "blogging#Noun",
topical_categories = "Internet",
}
labels["board games"] = {
aliases = {"board game"},
display = "[[board game]]s",
topical_categories = true,
}
labels["board sports"] = {
Wiktionary = "boardsport",
topical_categories = true,
}
labels["bodybuilding"] = {
Wiktionary = "bodybuilding#Noun",
topical_categories = true,
}
labels["book of the Bible"] = {
aliases = {"book of the bible", "books of the Bible", "books of the bible", "Biblical book", "biblical book"},
display = "[[Bible|biblical]]",
topical_categories = "Books of the Bible",
}
labels["bookbinding"] = {
Wiktionary = true,
topical_categories = true,
}
labels["botanika"] = {
aliases = { "botany"},
Wiktionary = true,
topical_categories = true,
}
labels["bowling"] = {
Wiktionary = "bowling#Noun",
topical_categories = true,
}
labels["bowls"] = {
aliases = {"lawn bowls", "crown green bowls"},
Wiktionary = true,
topical_categories = "Bowls (game)",
}
labels["boxing"] = {
Wiktionary = "boxing#Noun",
topical_categories = true,
}
labels["brass instruments"] = {
aliases = {"brass instrument"},
display = "[[music]]",
topical_categories = true,
}
labels["Brazilian politics"] = {
Wikipedia = "Politics of Brazil",
topical_categories = true,
}
labels["brewing"] = {
Wiktionary = "brewing#Noun",
topical_categories = true,
}
labels["bridge"] = {
Wiktionary = "bridge#English:_game",
topical_categories = true,
}
labels["broadcasting"] = {
Wiktionary = "broadcasting#Noun",
topical_categories = true,
}
labels["bryology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Buddhism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Buddhist deity"] = {
aliases = {"Buddhist god", "Buddhist goddess"},
display = "[[Buddhism]]",
topical_categories = "Buddhist deities",
}
labels["Bulgarian politics"] = {
Wikipedia = "Politics of Bulgaria",
topical_categories = true,
}
labels["bullfighting"] = {
aliases = {"bullfight"},
Wiktionary = true,
topical_categories = true,
}
labels["business"] = {
aliases = {"professional"},
display = "[[negosyo]]",
Wiktionary = true,
topical_categories = true,
}
labels["Byzantine Empire"] = {
aliases = {"Byzantine"},
Wiktionary = true,
topical_categories = true,
}
labels["calculus"] = {
Wiktionary = true,
topical_categories = true,
}
labels["calligraphy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Calvinism"] = {
aliases = {"Calvinist", "Reformed Christianity", "Calvinist Church", "Reformed Church"},
Wikipedia = true,
topical_categories = true,
}
labels["Canadian football"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Canadian politics"] = {
Wikipedia = "Politics of Canada",
topical_categories = true,
}
labels["Candomblé"] = {
aliases = {"candomblé"},
Wiktionary = true,
topical_categories = true,
}
labels["canid"] = {
display = "[[zoology]]",
topical_categories = "Canids",
}
labels["canoeing"] = {
aliases = {"canoe"},
Wiktionary = "canoeing#Noun",
topical_categories = "Water sports",
}
labels["capitalism"] = {
aliases = {"capitalist"},
Wiktionary = true,
topical_categories = true,
}
labels["carbohydrate"] = {
aliases = {"carbohydrates"},
display = "[[biochemistry]]",
topical_categories = "Carbohydrates",
}
labels["carboxylic acid"] = {
aliases = {"carboxylic acids"},
display = "[[organic chemistry]]",
topical_categories = "Carboxylic acids",
}
labels["card games"] = {
aliases = {"cards", "card game", "playing card"},
display = "[[card game]]s",
topical_categories = true,
}
labels["cardiology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["carpentry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["cartography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["cartomancy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["castells"] = {
Wiktionary = true,
topical_categories = true,
}
labels["category theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Catholicism"] = {
aliases = {"catholicism", "Catholic", "catholic"},
display = "[[Katolisismo]]",
Wiktionary = true,
topical_categories = true,
}
labels["caving"] = {
Wiktionary = "caving#Noun",
topical_categories = true,
}
labels["cellular automata"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Celtic mythology"] = {
display = "[[Celtic]] [[mythology]]",
topical_categories = true,
}
labels["ceramics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["cheerleading"] = {
Wiktionary = "cheerleading#Noun",
topical_categories = true,
}
labels["chemical element"] = {
display = "[[chemistry]]",
topical_categories = "Chemical elements",
}
labels["chemical element symbol"] = {
-- Compare "systematic chemical element symbol" and "obsolete chemical element symbol".
display = "[[chemistry]]",
plain_categories = "Chemical element symbols",
}
labels["chemical engineering"] = {
Wiktionary = true,
topical_categories = true,
}
labels["chemistry"] = {
aliases = {"chemical"},
Wiktionary = true,
topical_categories = true,
}
labels["chess"] = {
Wiktionary = true,
topical_categories = true,
}
labels["children's games"] = {
aliases = {"children's game"},
display = "[[children|children's]] [[game]]s",
topical_categories = true,
}
labels["Chilean politics"] = {
Wikipedia = "Politics of Chile",
topical_categories = true,
}
labels["Chinese astronomy"] = {
display = "[[Chinese]] [[astronomy]]",
topical_categories = true,
}
labels["Chinese calligraphy"] = {
display = "[[Chinese]] [[calligraphy]]",
topical_categories = "Calligraphy",
}
labels["Chinese constellation"] = {
display = "[[Chinese]] [[astronomy]]",
topical_categories = "Constellations",
}
labels["Chinese folk religion"] = {
display = "[[Chinese]] [[folk religion]]",
topical_categories = "Religion",
}
labels["Chinese linguistics"] = {
display = "[[Chinese]] [[linguistics]]",
topical_categories = "Linguistics",
}
labels["Chinese mythology"] = {
display = "[[Chinese]] [[mythology]]",
topical_categories = true,
}
labels["Chinese philosophy"] = {
display = "[[Chinese]] [[philosophy]]",
topical_categories = true,
}
labels["Chinese phonetics"] = {
display = "[[Chinese]] [[phonetics]]",
topical_categories = true,
}
labels["Chinese religion"] = {
display = "[[Chinese]] [[religion]]",
topical_categories = "Religion",
}
labels["Chinese star"] = {
display = "[[Chinese]] [[astronomy]]",
topical_categories = "Stars",
}
labels["Christianity"] = {
aliases = {"christianity", "Christian", "christian", "Kristiyanismo"},
display = "[[Kristiyanismo]]",
Wiktionary = true,
topical_categories = true,
}
labels["Church of England"] = {
aliases = {"C of E", "CofE"},
Wikipedia = true,
topical_categories = true,
}
labels["Church of the East"] = {
Wiktionary = true,
topical_categories = true,
}
labels["cinematography"] = {
aliases = {"filmology"},
Wiktionary = true,
topical_categories = true,
}
labels["cladistics"] = {
Wiktionary = true,
topical_categories = "Taxonomy",
}
labels["classical mechanics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["classical studies"] = {
Wiktionary = true,
topical_categories = true,
}
labels["climate change"] = {
Wiktionary = true,
topical_categories = true,
}
labels["climatology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["climbing"] = {
aliases = {"rock climbing"},
Wiktionary = "climbing#Noun",
topical_categories = true,
}
labels["clinical psychology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["clothing"] = {
Wiktionary = "clothing#Noun",
topical_categories = true,
}
labels["cloud computing"] = {
Wiktionary = true,
topical_categories = "Computing",
}
labels["cockfighting"] = {
aliases = {"cockfight"},
Wiktionary = true,
topical_categories = true,
}
labels["codicology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["coenzyme"] = {
aliases = {"coenzymes"},
display = "[[biochemistry]]",
topical_categories = "Coenzymes",
}
labels["coins"] = { -- Do not merge with "numismatics", as the category is different.
aliases = {"coin"},
display = "[[numismatics]]",
topical_categories = true,
}
labels["collectible card games"] = {
aliases = {"trading card games", "collectible cards", "trading cards"},
Wikipedia = true,
topical_categories = true,
}
labels["combinatorics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["comedy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["comics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["commerce"] = {
Wiktionary = true,
topical_categories = true,
}
labels["commercial law"] = {
display = "[[commercial#Adjective|commercial]] [[law]]",
topical_categories = true,
}
labels["communication"] = {
aliases = {"communications"},
Wiktionary = true,
topical_categories = true,
}
labels["communism"] = {
aliases = {"Communism", "communist"},
Wiktionary = true,
topical_categories = true,
}
labels["compilation"] = {
aliases = {"compiler"},
display = "[[software]] [[compilation]]",
topical_categories = true,
}
labels["complex analysis"] = {
Wiktionary = true,
topical_categories = true,
}
labels["computational linguistics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["computer chess"] = {
Wiktionary = true,
topical_categories = true,
}
labels["computer games"] = {
aliases = {"computer game", "computer gaming"},
display = "[[computer game]]s",
topical_categories = "Video games",
}
labels["computer graphics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["computer hardware"] = {
display = "[[computer]] [[hardware]]",
topical_categories = true,
}
labels["computer languages"] = {
aliases = {"computer language", "programming language", "programming languages"},
display = "[[computer language]]s",
topical_categories = true,
}
labels["computer science"] = {
aliases = {"comp sci", "CompSci", "compsci"},
Wiktionary = true,
topical_categories = true,
}
labels["computer security"] = {
Wiktionary = true,
topical_categories = true,
}
labels["computing"] = {
aliases = {"computer", "computers", "kompyuting"},
display = "[[kompyuting]]",
topical_categories = true,
}
labels["computing theory"] = {
aliases = {"comptheory", "computability theory"},
display = "[[computing#Noun|computing]] [[theory]]",
topical_categories = "Theory of computing",
}
labels["conchology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Confucianism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["conlanging"] = {
aliases = {"conlang", "conlanger", "constructed languages", "constructed language"},
Wiktionary = true,
topical_categories = true,
}
labels["conservatism"] = {
aliases = {"conservative"},
Wiktionary = true,
topical_categories = true,
}
labels["conspiracy theories"] = {
aliases = {"conspiracy theory", "conspiracy"},
Wiktionary = "conspiracy theory#Noun",
topical_categories = true,
}
labels["constellation"] = {
display = "[[astronomy]]",
topical_categories = "Constellations",
}
labels["construction"] = {
Wiktionary = true,
topical_categories = true,
}
labels["control theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["cooking"] = {
aliases = {"culinary", "cuisine", "cookery", "gastronomy"},
Wiktionary = "cooking#Noun",
topical_categories = true,
}
labels["cookware"] = {
aliases = {"bakeware"},
display = "[[cooking#Noun|cooking]]",
topical_categories = "Cookware and bakeware",
}
labels["Coptic Orthodoxy"] = {
aliases = {"Coptic Orthodox", "Coptic Orthodox Church"},
Wikipedia = true,
topical_categories = true,
}
labels["copyright"] = {
aliases = {"copyright law", "intellectual property", "intellectual property law", "IP law"},
display = "[[copyright]] [[law]]",
topical_categories = true,
}
labels["copyright license"] = {
aliases = {"copyright licenses", "license", "copyright licence", "copyright licences", "licence"},
display = "[[w:Copyright license|copyright law]]",
Wikipedia = true,
topical_categories = "Copyright licenses",
}
labels["cosmetics"] = {
aliases = {"cosmetology"},
Wiktionary = true,
topical_categories = true,
}
labels["cosmology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["creationism"] = {
aliases = {"baraminology"},
Wiktionary = "creationism#English",
topical_categories = true,
}
labels["cribbage"] = {
Wiktionary = true,
topical_categories = true,
}
labels["cricket"] = {
Wiktionary = true,
topical_categories = true,
}
labels["crime"] = {
aliases = {"criminal"},
Wiktionary = true,
topical_categories = true,
}
labels["criminal law"] = {
Wiktionary = true,
topical_categories = true,
}
labels["criminology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["crochet"] = {
aliases = {"crocheting"},
Wiktionary = true,
topical_categories = true,
}
labels["croquet"] = {
Wiktionary = true,
topical_categories = true,
}
labels["crosswording"] = {
aliases = {"crosswords", "cruciverbalism", "cryptic crosswords", "crossword puzzles"},
Wiktionary = true,
topical_categories = true,
}
labels["cryptocurrencies"] = {
aliases = {"cryptocurrency", "crypto"},
Wiktionary = "cryptocurrency",
topical_categories = "Cryptocurrency",
}
labels["cryptography"] = {
aliases = {"cryptographic"},
Wiktionary = true,
topical_categories = true,
}
labels["cryptozoology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["crystallography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["cultural anthropology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["curling"] = {
Wiktionary = true,
topical_categories = true,
}
labels["currencies"] = { -- Do not merge with "numismatics", as the category is different.
aliases = {"currency"},
display = "[[numismatics]]",
topical_categories = true,
}
labels["cybernetics"] = {
aliases = {"cybernetic"},
Wiktionary = true,
topical_categories = true,
}
labels["cybersecurity"] = {
Wiktionary = true,
topical_categories = "Networking",
}
labels["cycle racing"] = {
aliases = {"cycle sport"},
Wikipedia = "cycle sport",
topical_categories = true,
}
labels["cycling"] = {
aliases = {"bicycling", "bicycle", "bike"},
Wiktionary = "cycling#Noun",
topical_categories = true,
}
labels["cytology"] = {
aliases = {"cell biology", "cellular biology"},
Wiktionary = true,
topical_categories = true,
}
labels["dance"] = {
aliases = {"dancing"},
Wiktionary = "dance#Noun",
topical_categories = true,
}
labels["dances"] = {
display = "[[dance#Noun|dance]]",
topical_categories = true,
}
labels["darts"] = {
Wiktionary = true,
topical_categories = true,
}
labels["data management"] = {
Wiktionary = true,
topical_categories = true,
}
labels["data modeling"] = {
Wiktionary = true,
topical_categories = true,
}
labels["data structures"] = {
aliases = {"data structure"},
display = "[[computer science]]",
topical_categories = true,
}
labels["databases"] = {
aliases = {"database"},
display = "[[database]]s",
topical_categories = true,
}
labels["decision theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["deltiology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["demography"] = {
aliases = {"demographics"},
Wiktionary = true,
topical_categories = true,
}
labels["demonym"] = {
aliases = {"demonyms"},
Wiktionary = true,
topical_categories = "Demonyms",
}
labels["demoscene"] = {
topical_categories = true,
}
labels["dentistry"] = {
aliases = {"dentist"},
Wiktionary = true,
topical_categories = true,
}
labels["dermatology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["design"] = {
Wiktionary = "design#Noun",
topical_categories = true,
}
labels["developmental psychology"] = {
Wiktionary = true,
topical_categories = "Psychology",
}
labels["dice games"] = {
aliases = {"dice"},
display = "[[dice game]]s",
topical_categories = true,
}
labels["dictation"] = {
Wiktionary = true,
topical_categories = true,
}
labels["differential geometry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["diplomacy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["disc golf"] = {
Wiktionary = true,
topical_categories = true,
}
labels["disease"] = {
aliases = {"diseases"},
display = "[[pathology]]",
topical_categories = "Diseases",
}
labels["divination"] = {
Wiktionary = true,
topical_categories = true,
}
labels["diving"] = {
Wiktionary = "diving#Noun",
topical_categories = true,
}
labels["dominoes"] = {
Wiktionary = true,
topical_categories = true,
}
labels["dou dizhu"] = {
Wikipedia = true,
topical_categories = true,
}
labels["drama"] = {
Wiktionary = true,
topical_categories = true,
}
labels["dressage"] = {
Wiktionary = true,
topical_categories = true,
}
labels["E number"] = {
display = "[[food]] [[manufacture]]",
plain_categories = "European food additive numbers",
}
labels["early Christianity"] = {
aliases = {"early christianity", "Early Christianity", "early Church", "early church", "Early Church", "the early Church", "the early church", "the Early Church"},
Wikipedia = true,
topical_categories = true,
}
labels["earth science"] = {
Wiktionary = true,
topical_categories = "Earth sciences",
}
labels["Eastern Catholicism"] = {
aliases = {"Eastern Catholic"},
Wikipedia = true,
topical_categories = true,
}
labels["Eastern Christianity"] = {
aliases = {"Eastern christianity", "Eastern Christian", "Eastern christian", "Eastern Church", "Eastern church"},
Wikipedia = true,
topical_categories = true,
}
labels["Eastern Orthodoxy"] = {
aliases = {"Eastern Orthodox", "Eastern Orthodox Church"},
Wikipedia = true,
topical_categories = true,
}
labels["eating disorders"] = {
aliases = {"eating disorder"},
display = "[[eating disorder]]s",
topical_categories = true,
}
labels["ecology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["economics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["education"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Egyptian god"] = {
aliases = {"Egyptian goddess", "Egyptian deity"},
display = "[[Egyptian]] [[mythology]]",
topical_categories = "Egyptian deities",
}
labels["Egyptian mythology"] = {
display = "[[Egyptian]] [[mythology]]",
topical_categories = true,
}
labels["Egyptology"] = {
Wiktionary = true,
aliases = {"Ancient Egypt"},
topical_categories = "Ancient Egypt",
}
labels["electrencephalography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["electrical engineering"] = {
Wiktionary = true,
topical_categories = true,
}
labels["electricity"] = {
aliases = {"electrical"},
Wiktionary = true,
topical_categories = true,
}
labels["electrochemistry"] = {
aliases = {"electrochemical"},
Wiktionary = true,
topical_categories = true,
}
labels["electrodynamics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["electromagnetism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["electronics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["embryology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["emergency medicine"] = {
Wiktionary = true,
topical_categories = true,
}
labels["emergency services"] = {
Wiktionary = true,
topical_categories = true,
}
labels["endocrinology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["engineering"] = {
Wiktionary = "engineering#Noun",
topical_categories = true,
}
labels["enterprise engineering"] = {
Wiktionary = true,
topical_categories = true,
}
labels["entomology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["enzyme"] = {
aliases = {"enzymes"},
display = "[[biochemistry]]",
topical_categories = "Enzymes",
}
labels["epidemiology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["epigraphy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["epistemology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["equestrianism"] = {
aliases = {"equestrian", "horses", "horsemanship"},
Wiktionary = true,
topical_categories = true,
}
labels["espionage"] = {
Wiktionary = true,
topical_categories = true,
}
labels["ethics"] = {
aliases = {"ethical"},
Wiktionary = true,
topical_categories = true,
}
labels["ethnography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["ethology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["EU politics"] = {
aliases = {"European Union politics"},
Wikipedia = "Politics of the European Union",
topical_categories = true,
}
labels["European folklore"] = {
display = "[[European]] [[folklore]]",
topical_categories = true,
}
labels["European politics"] = {
Wikipedia = "Politics of Europe",
topical_categories = true,
}
labels["European Union"] = {
aliases = {"EU"},
Wiktionary = true,
topical_categories = true,
}
labels["Evangelicalism"] = {
aliases = {"Evangelical", "evangelical", "Evangelical Christianity", "Evangelical Christian", "Evangelical Protestantism", "Evangelical Protestant"},
Wikipedia = true,
topical_categories = true,
}
labels["evolutionary theory"] = {
aliases = {"evolutionary biology"},
Wiktionary = true,
topical_categories = true,
}
labels["exercise"] = {
Wiktionary = true,
topical_categories = true,
}
labels["eye color"] = {
aliases = {"eye colour"},
display = "[[eye]] [[color]]",
topical_categories = "Eye colors",
}
labels["eyewear"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fairy tale"] = { -- names of fairy tales
aliases = {"fairytale", "fairy-tale"},
Wiktionary = true,
topical_categories = true,
}
labels["fairy tales"] = { -- relating to fairy tales
aliases = {"fairytales", "fairy-tales"},
Wiktionary = true,
topical_categories = true,
}
labels["falconry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fantasy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["farriery"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fascism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fashion"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fatty acid"] = {
display = "[[organic chemistry]]",
topical_categories = "Fatty acids",
}
labels["felid"] = {
aliases = {"cat"},
display = "[[zoology]]",
topical_categories = "Felids",
}
labels["feminism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fencing"] = {
Wiktionary = "fencing#Noun",
topical_categories = true,
}
labels["feudalism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fiction"] = {
aliases = {"fictional"},
Wiktionary = true,
topical_categories = true,
}
labels["fictional character"] = {
display = "[[fiction]]",
topical_categories = "Fictional characters",
}
labels["field hockey"] = {
Wiktionary = true,
topical_categories = true,
}
labels["figure of speech"] = {
display = "[[rhetoric]]",
topical_categories = "Figures of speech",
}
labels["figure skating"] = {
Wiktionary = true,
topical_categories = true,
}
labels["file format"] = {
Wiktionary = true,
topical_categories = "File formats",
}
labels["film"] = {
Wiktionary = "film#Noun",
topical_categories = true,
}
labels["film genre"] = {
aliases = {"cinema"},
display = "[[film#Noun|film]]",
topical_categories = "Film genres",
}
labels["finance"] = {
Wiktionary = "finance#Noun",
topical_categories = true,
}
labels["Finnic mythology"] = {
aliases = {"Finnish mythology"},
display = "[[Finnic]] [[mythology]]",
topical_categories = true,
}
labels["firearms"] = {
aliases = {"firearm"},
display = "[[firearm]]s",
topical_categories = true,
}
labels["firefighting"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fish"] = {
display = "[[zoology]]",
topical_categories = true,
}
labels["fishing"] = {
aliases = {"angling"},
Wiktionary = "fishing#Noun",
topical_categories = true,
}
labels["flamenco"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fluid dynamics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["fluid mechanics"] = {
Wiktionary = true,
topical_categories = "Mechanics",
}
labels["folklore"] = {
Wiktionary = true,
topical_categories = true,
}
labels["footwear"] = {
Wiktionary = true,
topical_categories = true,
}
labels["forestry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Forteana"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Freemasonry"] = {
aliases = {"freemasonry"},
Wiktionary = true,
topical_categories = true,
}
labels["French politics"] = {
Wikipedia = "Politics of France",
topical_categories = true,
}
labels["functional analysis"] = {
Wiktionary = true,
topical_categories = true,
}
labels["functional group prefix"] = {
display = "[[organic chemistry]]",
topical_categories = "Functional group prefixes",
}
labels["functional group suffix"] = {
display = "[[organic chemistry]]",
topical_categories = "Functional group suffixes",
}
labels["functional programming"] = {
Wiktionary = true,
topical_categories = "Programming",
}
labels["furniture"] = {
Wiktionary = true,
topical_categories = true,
}
labels["furry fandom"] = {
aliases = {"furry", "furry community", "fursuit", "kemonā", "kemona", "kemono", "kemonomimi"},
display = "[[furry#Noun|furry]] [[fandom]]",
topical_categories = true,
}
labels["fuzzy logic"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Gaelic football"] = {
Wiktionary = true,
topical_categories = true,
}
labels["galaxy"] = {
display = "[[astronomy]]",
topical_categories = "Galaxies",
}
labels["gambling"] = {
Wiktionary = "gambling#Noun",
topical_categories = true,
}
labels["game theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["games"] = {
aliases = {"game"},
Wiktionary = "game#Noun",
topical_categories = true,
}
labels["gaming"] = {
Wiktionary = "gaming#Noun",
topical_categories = true,
}
labels["gender critical"] = {
aliases = {"gender-critical", "gender critical feminism", "gender-critical feminism", "GC", "GCF", "trans-exclusionary radical feminism", "TERF", "TERFism"},
Wiktionary = "gender-critical#Adjective",
Wikipedia = "Gender-critical feminism",
topical_categories = "Gender-critical feminism",
}
labels["genealogy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["general semantics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["genetic disorder"] = {
display = "[[medical]] [[genetics]]",
topical_categories = "Genetic disorders",
}
labels["genetics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["geography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["geological period"] = {
Wikipedia = true,
display ="[[geology]]",
topical_categories = "Geological periods",
}
labels["geology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["geometry"] = {
aliases = {"geometric", "geometrical"},
Wiktionary = true,
topical_categories = true,
}
labels["geomorphology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["geopolitics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["German politics"] = {
Wikipedia = "Politics of Germany",
topical_categories = true,
}
labels["Germanic god"] = {
aliases = {"Germanic goddess", "Germanic deity"},
display = "[[Germanic]] [[mythology]]",
topical_categories = "Germanic deities",
}
labels["Germanic paganism"] = {
aliases = {"Asatru", "Ásatrú", "Germanic neopaganism", "Germanic Paganism", "Heathenry", "heathenry", "Norse neopaganism", "Norse paganism"},
display = "[[Germanic#Adjective|Germanic]] [[paganism]]",
topical_categories = true,
}
labels["gerontology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["gladiatorial combat"] = {
Wikipedia = true,
topical_categories = true,
}
labels["glassblowing"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Gnosticism"] = {
aliases = {"gnosticism"},
Wiktionary = true,
topical_categories = true,
}
labels["go"] = {
aliases = {"Go", "game of go", "game of Go"},
display = "{{l|en|go|id=game}}",
topical_categories = true,
}
labels["golf"] = {
aliases = {"golfing"},
Wiktionary = true,
topical_categories = true,
}
labels["government"] = {
Wiktionary = true,
topical_categories = true,
}
labels["grammar"] = {
aliases = {"grammatical"},
Wiktionary = true,
topical_categories = true,
}
labels["grammatical case"] = {
display = "[[grammar]]",
topical_categories = "Grammatical cases",
}
labels["grammatical mood"] = {
display = "[[grammar]]",
topical_categories = "Grammatical moods",
}
labels["graph theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["graphic design"] = {
Wiktionary = true,
topical_categories = true,
}
labels["graphical user interface"] = {
aliases = {"GUI"},
Wiktionary = true,
topical_categories = true,
}
labels["Greek god"] = {
aliases = {"Greek goddess", "Greek deity"},
display = "[[Greek]] [[mythology]]",
topical_categories = "Greek deities",
}
labels["Greek mythology"] = {
display = "[[Greek]] [[mythology]]",
topical_categories = true,
}
labels["Greek Orthodoxy"] = {
aliases = {"Greek Orthodox", "Greek Orthodox Church"},
Wikipedia = true,
topical_categories = true,
}
labels["group theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["gun mechanisms"] = {
aliases = {"firearm mechanism", "firearm mechanisms", "gun mechanism"},
display = "[[firearm]]s",
topical_categories = true,
}
labels["gun sports"] = {
aliases = {"shooting sports"},
display = "[[gun]] [[sport]]s",
topical_categories = true,
}
labels["gymnastics"] = {
Wiktionary = true,
Wikipedia = true,
topical_categories = true,
}
labels["gynaecology"] = {
aliases = {"gynecology"},
Wiktionary = "gynecology",
topical_categories = true,
}
labels["hair color"] = {
aliases = {"hair colour"},
display = "[[hair]] [[color]]",
topical_categories = "Hair colors",
}
labels["hairdressing"] = {
Wiktionary = true,
topical_categories = true,
}
labels["hanafuda"] = {
Wikipedia = true,
topical_categories = true,
}
labels["hand games"] = {
aliases = {"hand game"},
display = "[[hand]] [[game]]s",
topical_categories = true,
}
labels["handball"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Hawaiian mythology"] = {
display = "[[Hawaiian]] [[mythology]]",
topical_categories = true,
}
labels["headwear"] = {
display = "[[clothing#Noun|clothing]]",
topical_categories = true,
}
labels["healthcare"] = {
Wiktionary = true,
topical_categories = true,
}
labels["helminthology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["hematology"] = {
aliases = {"haematology"},
Wiktionary = true,
topical_categories = true,
}
labels["heraldic charge"] = {
aliases = {"heraldiccharge"},
display = "[[heraldry]]",
topical_categories = "Heraldic charges",
}
labels["heraldry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["herbalism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["herpetology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Hindu god"] = {
display = "[[Hinduism]]",
topical_categories = "Hindu deities",
}
labels["Hinduism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Hindutva"] = {
Wiktionary = true,
topical_categories = true,
}
labels["historical currencies"] = {
aliases = {"historical currency"},
display = "[[numismatics]]",
sense_categories = "historical",
topical_categories = "Historical currencies",
}
labels["historical linguistics"] = {
Wiktionary = true,
topical_categories = "Linguistics",
}
labels["historical period"] = {
aliases = {"historical periods"},
display = "[[history]]",
topical_categories = "Historical periods",
}
labels["historiography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["history"] = {
Wiktionary = true,
topical_categories = true,
}
labels["hockey"] = {
display = "[[field hockey]] or [[ice hockey]]",
topical_categories = {"Field hockey", "Ice hockey"},
}
labels["homeopathy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Homestuck"] = {
display = "''[[Homestuck]]''",
Wiktionary = true,
topical_categories = true,
}
labels["Hong Kong politics"] = {
aliases = {"HK politics"},
Wikipedia = "Politics of Hong Kong",
topical_categories = true,
}
labels["hormone"] = {
display = "[[biochemistry]]",
topical_categories = "Hormones",
}
labels["horse color"] = {
aliases = {"horse colour"},
display = "[[horse]] [[color]]",
topical_categories = "Horse colors",
}
labels["horse racing"] = {
Wiktionary = true,
topical_categories = true,
}
labels["horticulture"] = {
aliases = {"gardening"},
Wiktionary = true,
topical_categories = true,
}
labels["HTML"] = {
Wiktionary = "Hypertext Markup Language",
topical_categories = true,
}
labels["human resources"] = {
aliases = {"HR"},
Wiktionary = true,
topical_categories = true,
}
labels["humanities"] = {
Wiktionary = true,
topical_categories = true,
}
labels["hunting"] = {
Wiktionary = "hunting#Noun",
topical_categories = true,
}
labels["hurling"] = {
Wiktionary = "hurling#Noun",
topical_categories = true,
}
labels["hydroacoustics"] = {
Wikipedia = true,
topical_categories = true,
}
labels["hydrocarbon chain prefix"] = {
display = "[[organic chemistry]]",
topical_categories = "Hydrocarbon chain prefixes",
}
labels["hydrocarbon chain suffix"] = {
display = "[[organic chemistry]]",
topical_categories = "Hydrocarbon chain suffixes",
}
labels["hydrology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["ice hockey"] = {
Wiktionary = true,
topical_categories = true,
}
labels["ichthyology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["idol fandom"] = {
aliases = {"idol"},
display = "[[idol]] [[fandom]]",
topical_categories = true,
}
labels["immunochemistry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["immunology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["import/export"] = {
aliases = {"import", "export"},
display = "[[import#Noun|import]]/[[export#Noun|export]]",
topical_categories = true,
}
labels["incoterm"] = {
display = "[[Incoterm]]",
topical_categories = "Incoterms",
}
labels["Indian politics"] = {
Wikipedia = "Politics of India",
topical_categories = true,
}
labels["Indo-European studies"] = {
aliases = {"indo-european studies"},
Wiktionary = true,
topical_categories = true,
}
labels["Indonesian politics"] = {
aliases = {"Indonesia politics"},
Wikipedia = "Politics of Indonesia",
topical_categories = true,
}
labels["information science"] = {
Wiktionary = true,
topical_categories = true,
}
labels["information technology"] = {
aliases = {"IT"},
Wiktionary = true,
topical_categories = "Computing",
}
labels["information theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["inheritance law"] = {
Wiktionary = true,
topical_categories = true,
}
labels["inorganic chemistry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["inorganic compound"] = {
display = "[[inorganic chemistry]]",
topical_categories = "Inorganic compounds",
}
labels["insurance"] = {
Wiktionary = true,
topical_categories = true,
}
labels["international law"] = {
Wiktionary = true,
topical_categories = true,
}
labels["international relations"] = {
Wiktionary = true,
topical_categories = true,
}
labels["international standards"] = {
aliases = {"international standard", "ISO", "International Organization for Standardization", "International Organisation for Standardisation"},
Wikipedia = "International standard",
}
labels["Internet"] = {
aliases = {"internet", "online"},
Wiktionary = true,
topical_categories = true,
}
labels["Iranian mythology"] = {
display = "[[Iranian]] [[mythology]]",
topical_categories = true,
}
labels["Irish mythology"] = {
display = "[[Irish]] [[mythology]]",
topical_categories = true,
}
labels["Irish politics"] = {
Wikipedia = "Politics of the Republic of Ireland",
topical_categories = true,
}
labels["Islam"] = {
aliases = {"islam", "Islamic", "Muslim"},
Wikipedia = true,
topical_categories = true,
}
labels["Islamic finance"] = {
aliases = {"Islamic banking", "Muslim finance", "Muslim banking", "Sharia-compliant finance"},
Wikipedia = true,
topical_categories = true,
}
labels["Islamic law"] = {
aliases = {"Islamic legal", "Sharia"},
Wikipedia = true,
topical_categories = true,
}
labels["isotope"] = {
display = "[[physics]]",
topical_categories = "Isotopes",
}
labels["Jainism"] = {
Wiktionary = true,
Wikipedia = true,
topical_categories = true,
}
labels["Japanese fiction"] = {
-- aliases = {"anime", "manga", "anime and manga", "manga and anime"},
display = "[[Japanese#Adjective|Japanese]] [[fiction]]",
Wikipedia = true,
topical_categories = true,
}
labels["Japanese god"] = {
display = "[[Japanese#Adjective|Japanese]] [[mythology]]",
topical_categories = "Japanese deities",
}
labels["Japanese mythology"] = {
display = "[[Japanese#Adjective|Japanese]] [[mythology]]",
topical_categories = true,
}
labels["Japanese politics"] = {
Wikipedia = "Politics of Japan",
topical_categories = true,
}
labels["Japanese pornography"] = {
aliases = {"Japanese porn", "hentai", "adult anime", "erotic anime", "ero anime"},
display = "[[Japanese#Adjective|Japanese]] [[pornography]]",
Wikipedia = true,
topical_categories = true,
}
labels["Java programming language"] = {
aliases = {"JavaPL", "Java PL"},
Wikipedia = "Java (programming language)",
topical_categories = true,
}
labels["jazz"] = {
Wiktionary = "jazz#Noun",
topical_categories = true,
}
labels["jewelry"] = {
aliases = {"jewellery"},
Wiktionary = true,
topical_categories = true,
}
labels["Jewish law"] = {
aliases = {"Halacha", "Halachah", "Halakha", "Halakhah", "halacha", "halachah", "halakha", "halakhah", "Jewish Law", "jewish law"},
display = "[[Jewish]] [[law]]",
topical_categories = true,
}
labels["journalism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["journalism types"] = {
aliases = {"journalism type"},
display = "[[journalism]]",
topical_categories = true,
}
labels["Judaism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["judo"] = {
Wiktionary = true,
topical_categories = true,
}
labels["juggling"] = {
Wiktionary = "juggling#Noun",
topical_categories = true,
}
labels["karuta"] = {
Wiktionary = true,
topical_categories = true,
}
labels["kendo"] = {
Wiktionary = true,
topical_categories = true,
}
labels["knitting"] = {
Wiktionary = "knitting#Noun",
topical_categories = true,
}
labels["Korean mythology"] = {
display = "[[Korean#Adjective|Korean]] [[mythology]]",
topical_categories = true,
}
labels["labour"] = {
aliases = {"labor", "labour movement", "labor movement"},
Wiktionary = true,
topical_categories = true,
}
labels["labour law"] = {
aliases = {"labor law"},
Wiktionary = true,
topical_categories = "Law",
}
labels["lacrosse"] = {
Wiktionary = true,
topical_categories = true,
}
labels["landforms"] = {
display = "[[geography]]",
topical_categories = true,
}
labels["law"] = {
aliases = {"legal"},
Wiktionary = "law#English",
topical_categories = true,
}
labels["law enforcement"] = {
aliases = {"police", "policing"},
Wiktionary = true,
topical_categories = true,
}
labels["leatherworking"] = {
Wiktionary = true,
topical_categories = true,
}
labels["leftism"] = {
aliases = {"leftist"},
Wiktionary = true,
topical_categories = true,
}
labels["letterpress"] = {
aliases = {"metal type", "metal typesetting"},
display = "[[letterpress]] [[typography]]",
topical_categories = "Typography",
}
labels["lexicography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["LGBTQ"] = {
aliases = {"LGBT", "LGBT+", "LGBT*", "LGBTQ+", "LGBTQ*", "LGBTQIA", "LGBTQIA+", "LGBTQIA*", "queer"},
Wiktionary = true,
topical_categories = true,
}
labels["liberalism"] = {
aliases = {"liberal"},
Wiktionary = true,
topical_categories = true,
}
labels["library science"] = {
Wiktionary = true,
topical_categories = true,
}
labels["lichenology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["limnology"] = {
Wiktionary = true,
topical_categories = "Ecology",
}
labels["linear algebra"] = {
aliases = {"vector algebra"},
Wiktionary = true,
topical_categories = true,
}
labels["linguistic morphology"] = {
display = "[[linguistic]] [[morphology]]",
topical_categories = true,
}
labels["linguistics"] = {
aliases = {"linguistic", "philology"},
Wiktionary = true,
topical_categories = true,
}
labels["lipid"] = {
aliases = {"lipids"},
display = "[[biochemistry]]",
topical_categories = "Lipids",
}
labels["literature"] = {
Wiktionary = true,
topical_categories = true,
}
labels["locksmithing"] = {
Wiktionary = true,
display = "[[locksmithing]]",
topical_categories = true,
}
labels["logic"] = {
Wiktionary = true,
topical_categories = true,
}
labels["logical fallacy"] = {
aliases = {"fallacies"},
display = "[[rhetoric]]",
topical_categories = "Logical fallacies",
}
labels["logistics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["looksmaxxing"] = {
Wiktionary = "looksmaxxing#English: enhancement",
topical_categories = true,
}
labels["luge"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Lutheranism"] = {
aliases = {"Lutheran", "Lutheranist", "Lutheran Church"},
Wikipedia = true,
topical_categories = true,
}
labels["lutherie"] = {
Wiktionary = true,
topical_categories = true,
}
labels["machine learning"] = {
aliases = {"ML"},
Wiktionary = true,
topical_categories = true,
}
labels["machining"] = {
Wiktionary = "machining#Noun",
topical_categories = true,
}
labels["macroeconomics"] = {
Wiktionary = true,
topical_categories = "Economics",
}
labels["mahjong"] = {
Wiktionary = true,
topical_categories = true,
}
labels["malacology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Malaysian politics"] = {
aliases = {"Malaysia politics"},
Wikipedia = "Politics of Malaysia",
topical_categories = true,
}
labels["mammalogy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["management"] = {
Wiktionary = true,
topical_categories = true,
}
labels["manga"] = {
aliases = {"Japanese comics"},
Wiktionary = true,
topical_categories = "Japanese fiction",
}
labels["manhua"] = {
aliases = {"Chinese comics"},
Wiktionary = true,
topical_categories = "Chinese fiction",
}
labels["manhwa"] = {
aliases = {"Korean comics"},
Wiktionary = true,
topical_categories = "Korean fiction",
}
labels["Manichaeism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["manufacturing"] = {
Wiktionary = "manufacturing#Noun",
topical_categories = true,
}
labels["Maoism"] = {
aliases = {"Maoist"},
Wiktionary = true,
topical_categories = true,
}
labels["marching"] = {
Wiktionary = "marching#Noun",
topical_categories = true,
}
labels["marine biology"] = {
aliases = {"coral science"},
Wiktionary = true,
topical_categories = true,
}
labels["marketing"] = {
Wiktionary = "marketing#Noun",
topical_categories = true,
}
labels["martial arts"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Marxism"] = {
aliases = {"Marxist"},
Wiktionary = true,
topical_categories = true,
}
labels["masonry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["massage"] = {
Wiktionary = true,
topical_categories = true,
}
labels["materials science"] = {
Wiktionary = true,
topical_categories = true,
}
labels["mathematical analysis"] = {
aliases = {"analysis"},
Wiktionary = true,
topical_categories = true,
}
labels["mathematics"] = {
aliases = {"math", "maths"},
Wiktionary = true,
topical_categories = true,
}
labels["measure theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["mechanical engineering"] = {
Wiktionary = true,
topical_categories = true,
}
labels["mechanics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["media"] = {
Wiktionary = true,
topical_categories = true,
}
labels["mediaeval folklore"] = {
aliases = {"medieval folklore"},
display = "[[mediaeval]] [[folklore]]",
topical_categories = "European folklore",
}
labels["medical genetics"] = {
display = "[[medical]] [[genetics]]",
topical_categories = true,
}
labels["medical sign"] = {
aliases = {"medical symptoms", "symptom", "symptoms"},
display = "[[medicine]]",
topical_categories = "Medical signs and symptoms",
}
labels["medicine"] = {
aliases = {"medical"},
Wiktionary = true,
topical_categories = true,
}
labels["Meitei god"] = {
aliases = {"Meitei goddess", "Meitei deity"},
display = "[[Meitei]] [[mythology]]",
topical_categories = "Meitei deities",
}
labels["mental health"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Mesopotamian god"] = {
aliases = {"Mesopotamian goddess", "Mesopotamian deity",
"Mesopotamian diety" -- FIXME: existing typo
},
display = "[[Mesopotamian]] [[mythology]]",
topical_categories = "Mesopotamian deities",
}
labels["Mesopotamian mythology"] = {
display = "[[Mesopotamian]] [[mythology]]",
topical_categories = true,
}
labels["metadata"] = {
Wiktionary = true,
topical_categories = "Data management",
}
labels["metallurgy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["metalworking"] = {
Wiktionary = true,
topical_categories = true,
}
labels["metamaterial"] = {
display = "[[physics]]",
topical_categories = "Metamaterials",
}
labels["metaphysics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["meteorology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Methodism"] = {
aliases = {"Methodist", "methodism", "methodist"},
Wiktionary = true,
topical_categories = true,
}
labels["metrology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Mexican politics"] = {
aliases = {"Mexico politics"},
Wikipedia = "Politics of Mexico",
topical_categories = true,
}
labels["microbiology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["microelectronics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["micronationalism"] = {
aliases = {"micronation", "micronations"},
Wiktionary = true,
topical_categories = true,
}
labels["microscopy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["military"] = {
aliases = {"army"},
Wiktionary = true,
topical_categories = true,
}
labels["military ranks"] = {
aliases = {"military rank"},
display = "[[military]]",
topical_categories = true,
}
labels["military unit"] = {
display = "[[military]]",
topical_categories = "Military units",
}
labels["milling"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Minecraft"] = {
display = "''[[Minecraft]]''",
topical_categories = true,
}
labels["mineral"] = {
display = "[[mineralogy]]",
topical_categories = "Minerals",
}
labels["mineralogy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["mining"] = {
Wiktionary = "mining#Noun",
topical_categories = true,
}
labels["mobile phones"] = {
aliases = {"cell phone", "cell phones", "mobile phone", "mobile telephony", "smartphone", "smartphones", "mobile"},
display = "[[mobile telephone|mobile telephony]]",
topical_categories = true,
}
labels["molecular biology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["monarchy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["money"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Mormonism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["motor racing"] = {
-- There are other types of racing, but 99% of the time "racing" on its own refers to motorsports.
aliases = {"motor sport", "motorsport", "motorsports", "racing"},
Wiktionary = true,
topical_categories = true,
}
labels["motorcycling"] = {
aliases = {"motorcycle", "motorcycles", "motorbike"},
Wiktionary = "motorcycling#Noun",
topical_categories = "Motorcycles",
}
labels["multiplicity"] = {
aliases = {"plurality", "polypsychism", "dissociative identity disorder", "DID"},
display = "{{l|en|multiplicity|id=multiple personalities}}",
topical_categories = "Multiplicity (psychology)",
}
labels["muscle"] = {
aliases = {"muscles"},
display = "[[anatomiya]]",
topical_categories = "Muscles",
}
labels["mushroom"] = {
aliases = {"mushrooms"},
display = "[[mycology]]",
topical_categories = "Mushrooms",
}
labels["music"] = {
aliases = {"musical"},
Wiktionary = true,
topical_categories = true,
}
labels["music genre"] = {
display = "[[music]]",
topical_categories = "Musical genres",
}
labels["music industry"] = {
Wikipedia = true,
topical_categories = true,
}
labels["musical instruments"] = {
aliases = {"musical instrument"},
display = "[[music]]",
topical_categories = true,
}
labels["musician"] = {
display = "[[music]]",
topical_categories = "Musicians",
}
labels["musicology"] = {
Wiktionary = true,
topical_categories = "Music",
}
labels["mycology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["mysticism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["mythological creature"] = {
aliases = {"mythological creatures"},
display = "[[mythology]]",
topical_categories = "Mythological creatures",
}
labels["mythology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["nanotechnology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["narratology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["nautical"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Navajo mythology"] = {
display = "[[Navajo]] [[mythology]]",
topical_categories = true,
}
labels["navigation"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Nazism"] = { -- see also Neo-Nazism
aliases = {"nazism", "Nazi", "nazi", "Nazis", "nazis"},
Wikipedia = true,
topical_categories = true,
}
labels["nematology"] = {
Wiktionary = true,
topical_categories = "Zoology",
}
labels["neo-Nazism"] = { -- Often used to indicate Nazi-used jargon; compare "white supremacist ideology"
aliases = {"Neo-Nazism", "Neo-nazism", "neo-nazism", "Neo-Nazi", "Neo-nazi", "neo-Nazi", "neo-nazi", "Neo-Nazis", "Neo-nazis", "neo-Nazis", "neo-nazis", "NeoNazism", "Neonazism", "neoNazism", "neonazism", "NeoNazi", "Neonazi", "neoNazi", "neonazi", "NeoNazis", "Neonazis", "neoNazis", "neonazis"},
Wikipedia = true,
topical_categories = true,
}
labels["netball"] = {
Wiktionary = true,
topical_categories = true,
}
labels["networking"] = {
Wiktionary = "networking#Noun",
topical_categories = true,
}
labels["neuroanatomy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["neurology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["neuroscience"] = {
Wiktionary = true,
topical_categories = true,
}
labels["neurosurgery"] = {
Wiktionary = true,
topical_categories = true,
}
labels["neurotoxin"] = {
display = "[[neurotoxicology]]",
topical_categories = "Neurotoxins",
}
labels["neurotransmitter"] = {
display = "[[biochemistry]]",
topical_categories = "Neurotransmitters",
}
labels["New Zealand politics"] = {
Wikipedia = "Politics of New Zealand",
topical_categories = true,
}
labels["newspapers"] = {
display = "[[newspaper]]s",
topical_categories = true,
}
labels["Norse god"] = {
aliases = {"Norse goddess", "Norse deity"},
display = "[[Norse]] [[mythology]]",
topical_categories = "Norse deities",
}
labels["Norse mythology"] = {
display = "[[Norse]] [[mythology]]",
topical_categories = true,
}
labels["nuclear energy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["nuclear physics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["number theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["numismatics"] = {
Wiktionary = true,
topical_categories = "Currency",
}
labels["nutrition"] = {
Wiktionary = true,
topical_categories = true,
}
labels["object-oriented programming"] = {
aliases = {"object-oriented", "OOP"},
Wiktionary = true,
topical_categories = true,
}
labels["obsolete chemical element symbol"] = {
display = "[[chemistry]], [[obsolete]]",
plain_categories = "Obsolete chemical element symbols",
}
labels["obstetrics"] = {
aliases = {"obstetric"},
Wiktionary = true,
topical_categories = true,
}
labels["occult"] = {
Wiktionary = true,
topical_categories = true,
}
labels["oceanography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Odinani"] = {
aliases = {"Odinala", "Omenala", "Odinana", "Omenana", "Igbo religion"},
Wikipedia = true,
topical_categories = true,
}
labels["oil industry"] = {
aliases = {"oil", "oil drilling", "petroleum industry", "petroleum"},
Wikipedia = true,
topical_categories = true,
}
labels["oncology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["online gaming"] = {
aliases = {"online games", "MMO", "MMORPG"},
display = "[[online]] [[gaming#Noun|gaming]]",
topical_categories = "Video games",
}
labels["onomastics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["opera"] = {
Wiktionary = true,
topical_categories = true,
}
labels["operating systems"] = {
display = "[[operating system]]s",
topical_categories = "Software",
}
labels["ophthalmology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["optics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["organic chemistry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["organic compound"] = {
display = "[[organic chemistry]]",
topical_categories = "Organic compounds",
}
labels["Oriental Orthodoxy"] = {
aliases = {"Oriental Orthodox", "Oriental Orthodox Church"},
Wikipedia = true,
topical_categories = true,
}
labels["ornithology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["orthodontics"] = {
Wiktionary = true,
topical_categories = "Dentistry",
}
labels["orthography"] = {
Wiktionary = true,
topical_categories = true,
}
labels["paganism"] = {
aliases = {"pagan", "neopagan", "neopaganism", "neo-pagan", "neo-paganism"},
Wiktionary = true,
topical_categories = true,
}
labels["pain"] = {
display = "[[medicine]]",
topical_categories = true,
}
labels["paintball"] = {
Wiktionary = true,
topical_categories = true,
}
labels["painting"] = {
Wiktionary = "painting#Noun",
topical_categories = true,
}
labels["Pakistani politics"] = {
Wikipedia = "Politics of Pakistan",
topical_categories = true,
}
labels["palaeography"] = {
aliases = {"paleography"},
Wiktionary = true,
topical_categories = true,
}
labels["paleontology"] = {
aliases = {"palaeontology"},
Wiktionary = true,
topical_categories = true,
}
labels["Palestinian politics"] = {
aliases = {"Palestine politics"},
Wikipedia = "Politics of the Palestinian National Authority",
topical_categories = true,
}
labels["palmistry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["palynology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["papermaking"] = {
Wiktionary = true,
topical_categories = true,
}
labels["paraphilia"] = {
aliases = {"paraphilias", "paraphilic", "fetish", "fetishes", "fetishism", "fetishistic", "fetishization", "fetishisation"},
Wiktionary = "paraphilia#Noun",
topical_categories = "Paraphilias",
}
labels["parapsychology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["parasitology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["part of speech"] = {
aliases = {"PoS"},
display = "[[grammar]]",
topical_categories = "Parts of speech",
}
labels["particle"] = {
aliases = {"subatomic particle", "subatomic particles"},
display = "[[particle physics]]",
topical_categories = "Subatomic particles",
}
labels["particle physics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["pasteurization"] = {
aliases = {"pasteurisation"},
Wiktionary = true,
topical_categories = true,
}
labels["patent law"] = {
aliases = {"patents"},
display = "[[patent#Noun|patent]] [[law]]",
topical_categories = true,
}
labels["pathology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["pensions"] = {
aliases = {"pension"},
display = "[[pension]]s",
topical_categories = true,
}
labels["percussion instruments"] = {
aliases = {"percussion instrument"},
display = "[[music]]",
topical_categories = true,
}
labels["perfumery"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Peruvian politics"] = {
Wikipedia = "Politics of Peru",
topical_categories = true,
}
labels["pesäpallo"] = {
aliases = {"pesapallo"},
Wiktionary = true,
topical_categories = true,
}
labels["petrochemistry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["petrology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["pharmaceutical drug"] = {
display = "[[pharmacology]]",
topical_categories = "Pharmaceutical drugs",
}
labels["pharmaceutical effect"] = {
display = "[[pharmacology]]",
topical_categories = "Pharmaceutical effects",
}
labels["pharmacology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["pharmacy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["pharyngology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["philately"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Philippine politics"] = {
aliases = {"Filipino politics"},
Wikipedia = "Politics of the Philippines",
topical_categories = true,
}
labels["Philmont Scout Ranch"] = {
aliases = {"Philmont"},
Wikipedia = true,
topical_categories = true,
}
labels["philosophy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["phonetics"] = {
aliases = {"phonetic"},
Wiktionary = true,
topical_categories = true,
}
labels["phonology"] = {
aliases = {"phonological"},
Wiktionary = true,
topical_categories = true,
}
labels["photography"] = {
aliases = {"photograph"},
Wiktionary = true,
topical_categories = true,
}
labels["phrenology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["phycology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["physical chemistry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["physical quantity"] = {
display = "[[physics]]",
topical_categories = "Physical quantities",
}
labels["physics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["physiology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["phytopathology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["pinball"] = {
Wiktionary = true,
topical_categories = true,
}
labels["planetology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["plant"] = {
aliases = {"plants"},
display = "[[botany]]",
topical_categories = "Plants",
}
labels["plant disease"] = {
aliases = {"plant diseases"},
display = "[[phytopathology]]",
topical_categories = "Plant diseases",
}
labels["plastic surgery"] = {
Wiktionary = true,
topical_categories = true,
}
labels["playground games"] = {
aliases = {"playground game"},
display = "[[playground]] [[game]]s",
topical_categories = true,
}
labels["poetry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["poison"] = {
display = "[[toxicology]]",
topical_categories = "Poisons",
}
labels["Pokémon"] = {
aliases = {"Pokemon"},
display = "''[[w:Pokémon|Pokémon]]''",
Wikipedia = true,
topical_categories = true,
}
labels["poker"] = {
Wiktionary = true,
topical_categories = true,
}
labels["poker slang"] = {
display = "[[poker]] [[slang]]",
topical_categories = "Poker",
}
labels["political science"] = {
Wiktionary = true,
topical_categories = true,
}
labels["political subdivision"] = {
display = "[[government]]",
topical_categories = "Political subdivisions",
}
labels["politics"] = {
aliases = {"political"},
Wiktionary = true,
topical_categories = true,
}
labels["pornography"] = {
aliases = {"porn", "porno", "adult video", "adult videos"},
Wiktionary = true,
topical_categories = true,
}
labels["Portuguese folklore"] = {
display = "[[Portuguese#Adjective|Portuguese]] [[folklore]]",
topical_categories = "European folklore",
}
labels["Portuguese politics"] = {
Wikipedia = "Politics of Portugal",
topical_categories = true,
}
labels["post"] = {
aliases = {"mail", "postal"},
display = "[[postal]]",
topical_categories = true,
}
labels["postal abbreviation"] = {
aliases = {"postal abbr", "postal abbrev"},
display = "[[postal]]",
topical_categories = "Postal abbreviations",
}
labels["potential theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["pottery"] = {
Wiktionary = true,
topical_categories = "Ceramics",
}
labels["pragmatics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["printing"] = {
Wiktionary = "printing#Noun",
topical_categories = true,
}
labels["probability theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["professional wrestling"] = {
aliases = {"pro wrestling"},
Wiktionary = true,
topical_categories = true,
}
labels["programming"] = {
aliases = {"computer programming"},
Wiktionary = "programming#Noun",
topical_categories = true,
}
labels["property law"] = {
aliases = {"land law", "real estate law"},
Wiktionary = true,
topical_categories = true,
}
labels["prosody"] = {
Wiktionary = true,
topical_categories = true,
}
labels["protein"] = {
aliases = {"proteins"},
display = "[[biochemistry]]",
topical_categories = "Proteins",
}
labels["Protestantism"] = {
aliases = {"protestantism", "Protestant", "protestant"},
Wiktionary = true,
topical_categories = true,
}
labels["pseudoscience"] = {
Wiktionary = true,
topical_categories = true,
}
labels["psychiatry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["psychoanalysis"] = {
Wiktionary = true,
topical_categories = true,
}
labels["psychology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["psychotherapy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["publishing"] = {
Wiktionary = "publishing#Noun",
topical_categories = true,
}
labels["pulmonology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["pyrotechnics"] = {
Wiktionary = true,
aliases = { "firework", "fireworks" },
topical_categories = true,
}
labels["QAnon"] = {
aliases = {"Qanon"},
Wikipedia = true,
topical_categories = true,
}
labels["Quakerism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["quantum computing"] = {
Wiktionary = true,
topical_categories = true,
}
labels["quantum mechanics"] = {
aliases = {"quantum physics"},
Wiktionary = true,
topical_categories = true,
}
labels["Quimbanda"] = {
Wiktionary = true,
topical_categories = true,
}
labels["radiation"] = {
-- TODO: What kind of topic is "radiation"? Is it specific kinds of radiation? That would be a set-type category.
display = "[[physics]]",
topical_categories = true,
}
labels["radio"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Raëlism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["rail transport"] = {
aliases = {"rail", "railroading", "railroads"},
Wiktionary = true,
topical_categories = "Rail transportation",
}
labels["Rastafari"] = {
aliases = {"Rasta", "rasta", "Rastafarian", "rastafarian", "Rastafarianism"},
Wiktionary = true,
topical_categories = true,
}
labels["real estate"] = {
Wiktionary = true,
topical_categories = true,
}
labels["real tennis"] = {
Wiktionary = true,
topical_categories = "Tennis",
}
labels["recreational mathematics"] = {
Wiktionary = true,
topical_categories = "Mathematics",
}
labels["Reddit"] = {
Wiktionary = true,
topical_categories = true,
}
labels["regular expressions"] = {
aliases = {"regex"},
display = "[[regular expression]]s",
topical_categories = true,
}
labels["relativity"] = {
Wiktionary = true,
topical_categories = true,
}
labels["religion"] = {
Wiktionary = true,
topical_categories = true,
}
labels["rhetoric"] = {
Wiktionary = true,
topical_categories = true,
}
labels["rhythmic gymnastics"] = {
Wiktionary = true,
Wikipedia = true,
topical_categories = true,
}
labels["road transport"] = {
aliases = {"roads"},
Wikipedia = true,
topical_categories = true,
}
labels["robotics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["rock"] = {
aliases = {"rocks"},
display = "[[geology]]",
topical_categories = "Rocks",
}
labels["rock paper scissors"] = {
aliases = {"jak en poy", "dyak en poy"},
display = "[[dyak en poy]]",
topical_categories = true,
}
labels["rocketry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["roleplaying games"] = {
aliases = {"role playing games", "role-playing games", "RPG", "RPGs"},
display = "[[roleplaying game]]s",
topical_categories = "Role-playing games",
}
labels["roller derby"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Roman Catholicism"] = {
aliases = {"Roman Catholic", "Roman Catholic Church"},
Wiktionary = true,
topical_categories = true,
}
labels["Roman Empire"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Roman god"] = {
aliases = {"Roman goddess", "Roman deity"},
display = "[[Roman]] [[mythology]]",
topical_categories = "Roman deities",
}
labels["Roman mythology"] = {
display = "[[Roman]] [[mythology]]",
topical_categories = true,
}
labels["Roman numerals"] = {
display = "[[Roman numeral]]s",
topical_categories = true,
}
labels["roofing"] = {
Wiktionary = "roofing#Noun",
topical_categories = true,
}
labels["rosiculture"] = {
Wiktionary = true,
topical_categories = true,
}
labels["rowing"] = {
Wiktionary = "rowing#Noun",
topical_categories = true,
}
labels["Rubik's Cube"] = {
aliases = {"Rubik's cube", "Rubik's cubes", "Magic Cube", "magic cube"},
Wiktionary = "Rubik's cube",
topical_categories = true,
}
labels["rugby"] = {
Wiktionary = true,
topical_categories = true,
}
labels["rugby league"] = {
Wiktionary = true,
topical_categories = true,
}
labels["rugby union"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Russian Orthodoxy"] = {
aliases = {"Russian Orthodox", "Russian Orthodox Church"},
Wikipedia = true,
topical_categories = true,
}
labels["Russian space program"] = {
aliases = {"Soviet space program", "Roscosmos"},
Wikipedia = true,
topical_categories = true,
}
labels["sailing"] = {
Wiktionary = "sailing#Noun",
topical_categories = true,
}
labels["schools"] = {
display = "[[education]]",
topical_categories = true,
}
labels["science fiction"] = {
aliases = {"scifi", "sci fi", "sci-fi"},
Wiktionary = true,
topical_categories = true,
}
labels["sciences"] = {
display = "[[sciences#English: all fields|sciences]]",
aliases = {"science", "scientific"},
Wiktionary = true,
topical_categories = true,
}
labels["Scientology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Scots law"] = {
-- Note: this is the usual term, not "Scottish law".
aliases = {"Scottish law", "Scotland law", "Scots Law", "Scottish Law", "Scotland Law"},
Wikipedia = true,
topical_categories = true,
}
labels["Scouting"] = {
aliases = {"scouting"},
display = "[[scouting]]",
topical_categories = true,
}
labels["Scrabble"] = {
display = "''[[Scrabble]]''",
Wikipedia = true,
topical_categories = true,
}
labels["scrapbooks"] = {
display = "[[scrapbook]]s",
topical_categories = true,
}
labels["sculpture"] = {
Wiktionary = true,
topical_categories = true,
}
labels["seduction community"] = {
aliases = {"pickup artist", "pickup artists", "pickup artistry", "pickup community"},
Wikipedia = true,
topical_categories = true,
}
labels["seismology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["self-harm"] = {
aliases = {"selfharm", "self harm", "self-harm community"},
Wiktionary = true,
topical_categories = true,
}
labels["semantics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["semiconductors"] = {
display = "[[semiconductor]]s",
topical_categories = true,
}
labels["semiotics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["SEO"] = {
Wiktionary = "search engine optimization",
topical_categories = {"Internet", "Marketing"},
}
labels["set theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["sewing"] = {
Wiktionary = "sewing#Noun",
topical_categories = true,
}
labels["sex"] = {
Wiktionary = true,
topical_categories = true,
}
labels["sex position"] = {
display = "[[sex]]",
topical_categories = "Sex positions",
}
labels["sexology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["sexuality"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Shaivism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["shamanism"] = {
aliases = {"Shamanism"},
Wiktionary = true,
topical_categories = true,
}
labels["Shi'ism"] = {
aliases = {"Shia", "Shi'ite", "Shi'i"},
display = "[[Shia Islam]]",
topical_categories = true,
}
labels["Shinto"] = {
Wiktionary = true,
topical_categories = true,
}
labels["ship parts"] = {
display = "[[nautical]]",
topical_categories = "Ship parts",
}
labels["shipping"] = {
Wiktionary = "shipping#Noun",
topical_categories = true,
}
labels["shoemaking"] = {
Wiktionary = true,
topical_categories = true,
}
labels["shogi"] = {
Wiktionary = true,
topical_categories = true,
}
labels["signal processing"] = {
Wikipedia = true,
topical_categories = true,
}
labels["Sikhism"] = {
aliases = {"Sikh"},
Wiktionary = true,
topical_categories = true,
}
labels["Singaporean politics"] = {
Wikipedia = "Politics of Singapore",
topical_categories = true,
}
labels["singing"] = {
Wiktionary = "singing#Noun",
topical_categories = true,
}
labels["skateboarding"] = {
Wiktionary = "skateboarding#Noun",
topical_categories = true,
}
labels["skating"] = {
Wiktionary = "skating#Noun",
topical_categories = true,
}
labels["skeleton"] = {
display = "[[anatomy]]",
topical_categories = true,
}
labels["skiing"] = {
Wiktionary = "skiing#Noun",
topical_categories = true,
}
labels["skydiving"] = {
Wiktionary = "skydiving#Noun",
topical_categories = true,
}
labels["Slavic god"] = {
display = "[[Slavic]] [[mythology]]",
topical_categories = "Slavic deities",
}
labels["Slavic mythology"] = {
display = "[[Slavic]] [[mythology]]",
topical_categories = true,
}
labels["smoking"] = {
Wiktionary = "smoking#Noun",
topical_categories = true,
}
labels["snooker"] = {
Wiktionary = "snooker#Noun",
topical_categories = true,
}
labels["snowboarding"] = {
Wiktionary = "snowboarding#Noun",
topical_categories = true,
}
labels["soccer"] = {
aliases = {"football", "association football"},
Wiktionary = true,
topical_categories = "Football (soccer)",
}
labels["social media"] = {
Wiktionary = true,
topical_categories = true,
}
labels["social sciences"] = {
aliases = {"social science"},
display = "[[social science]]s",
topical_categories = true,
}
labels["socialism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["sociolinguistics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["sociology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["softball"] = {
Wiktionary = true,
topical_categories = true,
}
labels["software"] = {
Wiktionary = true,
topical_categories = true,
}
labels["software architecture"] = {
Wiktionary = true,
topical_categories = {"Software engineering", "Programming"},
}
labels["software engineering"] = {
aliases = {"software development"},
Wiktionary = true,
topical_categories = true,
}
labels["soil science"] = {
Wiktionary = true,
topical_categories = true,
}
labels["sorting algorithms"] = {
aliases = {"sorting algorithm"},
display = "[[computer science]]",
topical_categories = true,
}
labels["sound"] = {
Wiktionary = "sound#Noun",
topical_categories = true,
}
labels["sound engineering"] = {
Wiktionary = true,
topical_categories = true,
}
labels["South Korean idol fandom"] = {
aliases = {"Korean idol fandom", "Korean idol"},
display = "[[South Korean]] [[idol]] [[fandom]]",
topical_categories = true,
}
labels["South Park"] = {
display = "''[[w:South Park|South Park]]''",
Wikipedia = true,
topical_categories = true,
}
labels["Soviet Union"] = {
aliases = {"USSR", "Soviet"},
Wiktionary = true,
topical_categories = true,
}
labels["space"] = {
Wiktionary = true,
topical_categories = true,
}
labels["space flight"] = {
aliases = {"astronautics", "spaceflight", "space travel"},
Wiktionary = true,
topical_categories = "Space flight",
}
labels["space industry"] = {
Wikipedia = true,
topical_categories = true,
}
labels["space science"] = {
Wiktionary = true,
topical_categories = true,
}
labels["spacecraft"] = {
aliases = {"space craft"},
display = "[[space flight]]",
Wiktionary = true,
topical_categories = true,
}
labels["spacecraft components"] = {
aliases = {"spacecraft component"},
display = "[[spacecraft]]",
topical_categories = true,
}
labels["Spanish politics"] = {
Wikipedia = "Politics of Spain",
topical_categories = true,
}
labels["spectroscopy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["speedrunning"] = {
aliases = {"speedrun", "speedruns"},
Wiktionary = true,
topical_categories = true,
}
labels["spinning"] = {
Wiktionary = true,
topical_categories = true,
}
labels["spiritualism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["sports"] = {
aliases = {"sport"},
Wiktionary = true,
topical_categories = true,
}
labels["square dancing"] = {
aliases = {"square dance"},
Wiktionary = true,
topical_categories = true,
}
labels["squash"] = {
Wikipedia = "Squash (sport)",
topical_categories = true,
}
labels["standard of identity"] = {
display = "[[standard of identity|standards of identity]]",
topical_categories = "Standards of identity",
}
labels["star"] = {
display = "[[astronomy]]",
topical_categories = "Stars",
}
labels["Star Wars"] = {
display = "''[[Star Wars]]''",
topical_categories = true,
}
labels["statistical mechanics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["statistics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["steroid"] = {
display = "[[biochemistry]]",
topical_categories = "Steroids",
}
labels["steroid hormone"] = {
aliases = {"steroid drug"},
display = "[[biochemistry]], [[steroids]]",
topical_categories = "Hormones",
}
labels["stock market"] = {
Wiktionary = true,
topical_categories = true,
}
labels["stock ticker symbol"] = {
aliases = {"stock symbol"},
Wiktionary = true,
topical_categories = "Stock symbols for companies",
}
labels["string instruments"] = {
aliases = {"string instrument"},
display = "[[music]]",
topical_categories = true,
}
labels["subculture"] = {
Wiktionary = true,
topical_categories = "Culture",
}
labels["Sufism"] = {
aliases = {"Sufi Islam"},
Wikipedia = true,
topical_categories = true,
}
labels["sugar acid"] = {
display = "[[organic chemistry]]",
topical_categories = "Sugar acids",
}
labels["sumo"] = {
Wiktionary = true,
topical_categories = true,
}
labels["supply chain"] = {
Wiktionary = true,
topical_categories = true,
}
labels["surface feature"] = {
display = "[[planetology]]",
topical_categories = "Planetary nomenclature",
}
labels["surfing"] = {
aliases = {"surf"},
Wiktionary = "surfing#Noun",
topical_categories = true,
}
labels["surgery"] = {
Wiktionary = true,
topical_categories = true,
}
labels["surveying"] = {
Wiktionary = "surveying#Noun",
topical_categories = true,
}
labels["sushi"] = {
Wiktionary = true,
topical_categories = true,
}
labels["swimming"] = {
Wiktionary = "swimming#Noun",
topical_categories = true,
}
labels["Swiss politics"] = {
Wikipedia = "Politics of Switzerland",
topical_categories = true,
}
labels["swords"] = {
display = "[[sword]]s",
topical_categories = true,
}
labels["syntax"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Syriac Orthodoxy"] = {
aliases = {"Syriac Orthodox", "Syriac Orthodox Church"},
Wikipedia = true,
topical_categories = true,
}
labels["systematic chemical element symbol"] = {
display = "[[chemistry]]",
plain_categories = "Systematic chemical element symbols",
}
labels["systematics"] = {
Wiktionary = true,
topical_categories = "Taxonomy",
}
labels["systems engineering"] = {
Wiktionary = true,
topical_categories = true,
}
labels["systems theory"] = {
Wiktionary = true,
topical_categories = true,
}
labels["table tennis"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Taoism"] = {
aliases = {"Daoism"},
Wiktionary = true,
topical_categories = true,
}
labels["tarot"] = {
Wiktionary = true,
topical_categories = "Cartomancy",
}
labels["taxation"] = {
aliases = {"tax", "taxes"},
Wiktionary = true,
topical_categories = true,
}
labels["taxonomic name"] = {
display = "[[taxonomy]]",
topical_categories = "Taxonomic names",
}
labels["taxonomy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["technology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["telecommunications"] = {
aliases = {"telecommunication", "telecom"},
Wiktionary = true,
topical_categories = true,
}
labels["telegraphy"] = {
Wiktionary = true,
topical_categories = true,
}
labels["telephony"] = {
aliases = {"telephone", "telephones"},
Wiktionary = true,
topical_categories = true,
}
labels["television"] = {
aliases = {"TV"},
Wiktionary = true,
topical_categories = true,
}
labels["tennis"] = {
Wiktionary = true,
topical_categories = true,
}
labels["teratology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Tetris"] = {
Wiktionary = true,
topical_categories = true,
}
labels["textiles"] = {
Wiktionary = true,
topical_categories = true,
}
labels["textual criticism"] = {
Wiktionary = true,
topical_categories = true,
}
labels["theater"] = {
aliases = {"theatre"},
display = "[[teatro]]",
Wiktionary = true,
topical_categories = true,
}
labels["theology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["thermodynamics"] = {
Wiktionary = true,
topical_categories = true,
}
labels["Thracian god"] = {
aliases = {"Thracian goddess", "Thracian deity"},
display = "[[w:Thracian religion|Thracian religion]]",
Wikipedia = "Thracian religion",
topical_categories = "Thracian deities",
}
labels["Tibetan Buddhism"] = {
Wiktionary = true,
topical_categories = "Buddhism",
}
labels["tiddlywinks"] = {
Wiktionary = true,
topical_categories = true,
}
labels["TikTok aesthetic"] = {
display = "[[TikTok]] aesthetic",
topical_categories = "Aesthetics",
}
labels["timber industry"] = {
aliases = {"timber", "wood industry", "lumber industry", "lumber", "logging"},
Wikipedia = true,
topical_categories = true,
}
labels["time"] = {
Wiktionary = true,
topical_categories = true,
}
labels["tincture"] = {
display = "[[heraldry]]",
topical_categories = "Heraldic tinctures",
}
labels["topology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["tort law"] = {
Wiktionary = true,
topical_categories = "Law",
}
labels["tourism"] = {
aliases = {"tourist"},
Wiktionary = true,
topical_categories = true,
}
labels["toxicology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["trading"] = {
aliases = {"trade"},
Wiktionary = "trading#Noun",
topical_categories = true,
}
labels["trading cards"] = {
display = "[[trading card]]s",
topical_categories = true,
}
labels["traditional Chinese medicine"] = {
aliases = {"TCM", "Chinese medicine"},
Wiktionary = true,
topical_categories = true,
}
labels["traditional Korean medicine"] = {
aliases = {"Korean medicine"},
topical_categories = true,
}
labels["transgender"] = {
aliases = {"trans"},
Wiktionary = true,
topical_categories = true,
}
labels["translation studies"] = {
Wiktionary = true,
topical_categories = true,
}
labels["transport"] = {
aliases = {"transportation"},
Wiktionary = true,
topical_categories = true,
}
labels["traumatology"] = {
Wiktionary = true,
topical_categories = "Emergency medicine",
}
labels["travel"] = {
aliases = {"travelling"},
Wiktionary = true,
topical_categories = true,
}
labels["trigonometric function"] = {
display = "[[trigonometry]]",
topical_categories = "Trigonometric functions",
}
labels["trigonometry"] = {
Wiktionary = true,
topical_categories = true,
}
labels["trust law"] = {
Wiktionary = true,
topical_categories = "Law",
}
labels["Tumblr aesthetic"] = {
display = "[[Tumblr]] [[aesthetic]]",
topical_categories = "Aesthetics",
}
labels["Twitter"] = {
aliases = {"twitter", "X"},
Wiktionary = "Twitter#Proper noun",
topical_categories = true,
}
labels["two-up"] = {
Wiktionary = true,
topical_categories = true,
}
labels["typography"] = {
aliases = {"typesetting"},
Wiktionary = true,
topical_categories = true,
}
labels["ufology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["UK politics"] = {
Wikipedia = "Politics of the United Kingdom",
topical_categories = true,
}
labels["Umbanda"] = {
Wiktionary = true,
topical_categories = true,
}
labels["underwater diving"] = {
aliases = {"scuba", "scuba diving"},
display = "[[underwater]] [[diving#Noun|diving]]",
topical_categories = true,
}
labels["Unicode"] = {
aliases = {"Unicode standard"},
Wikipedia = true,
topical_categories = true,
}
labels["United Nations"] = {
aliases = {"UN"},
display = "[[United Nations|UN]]",
Wikipedia = true,
topical_categories = true,
}
labels["Unix"] = {
Wiktionary = true,
topical_categories = true,
}
labels["urban studies"] = {
aliases = {"urbanism", "urban planning"},
Wiktionary = true,
topical_categories = true,
}
labels["urology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["US politics"] = {
Wikipedia = "Politics of the United States",
topical_categories = true,
}
labels["US space program"] = {
aliases = {"NASA"},
Wikipedia = true,
topical_categories = true,
}
labels["Usenet"] = {
aliases = {"newsgroup"},
Wiktionary = true,
topical_categories = true,
}
labels["Vaishnavism"] = {
aliases = {"Vaishnavist"},
Wiktionary = true,
topical_categories = true,
}
labels["Valentinianism"] = {
aliases = {"valentinianism", "Valentinianist", "valentinianist"},
Wikipedia = true,
topical_categories = true,
}
labels["Vedic religion"] = {
aliases = {"Vedic Hinduism", "Vedism", "Vedicism", "Ancient Hinduism", "ancient Hinduism"},
Wikipedia = "Historical Vedic religion",
topical_categories = true,
}
labels["vegetable"] = {
aliases = {"vegetables"},
Wiktionary = true,
topical_categories = "Vegetables",
}
labels["vehicles"] = {
aliases = {"vehicle"},
display = "[[vehicle]]s",
topical_categories = true,
}
labels["Venezuelan politics"] = {
aliases = {"Venezuela politics"},
Wikipedia = "Politics of Venezuela",
topical_categories = true,
}
labels["veterinary disease"] = {
display = "[[veterinary medicine]]",
topical_categories = "Veterinary diseases",
}
labels["veterinary medicine"] = {
aliases = {"veterinary", "vet"},
Wiktionary = true,
topical_categories = true,
}
labels["video compression"] = {
Wikipedia = true,
topical_categories = true,
}
labels["video game genre"] = {
display = "[[video game]]s",
topical_categories = "Video game genres",
}
labels["video games"] = {
aliases = {"video game", "video gaming"},
display = "[[video game]]s",
topical_categories = true,
}
labels["virology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["virus"] = {
display = "[[virology]]",
topical_categories = "Viruses",
}
labels["vitamin"] = {
display = "[[biochemistry]]",
topical_categories = "Vitamins",
}
labels["viticulture"] = {
Wiktionary = true,
topical_categories = {"Horticulture", "Wine"},
}
labels["volcanology"] = {
aliases = {"vulcanology"},
Wiktionary = true,
topical_categories = true,
}
labels["volleyball"] = {
Wiktionary = true,
topical_categories = true,
}
labels["voodoo"] = {
Wiktionary = true,
topical_categories = true,
}
labels["VTuber"] = {
aliases = {"Virtual YouTuber"},
Wiktionary = true,
topical_categories = "Virtual YouTuber",
}
labels["war"] = {
aliases = {"warfare"},
Wiktionary = true,
topical_categories = true,
}
labels["water sports"] = {
aliases = {"watersport", "watersports", "water sport"},
Wiktionary = "watersport",
topical_categories = true,
}
labels["watercraft"] = {
display = "[[nautical]]",
topical_categories = true,
}
labels["weaponry"] = {
aliases = {"weapon", "weapons"},
Wiktionary = true,
topical_categories = "Weapons",
}
labels["weather"] = {
topical_categories = true,
}
labels["weaving"] = {
Wiktionary = "weaving#Noun",
topical_categories = true,
}
labels["web design"] = {
Wiktionary = true,
topical_categories = true,
aliases = {"Web design"}
}
labels["web development"] = {
Wiktionary = true,
topical_categories = {"Programming", "Web design"},
}
labels["weightlifting"] = {
Wiktionary = true,
topical_categories = true,
}
labels["white supremacy"] = { -- Often used to indicate Nazi-used jargon; compare "neo-Nazism"
aliases = {"white nationalism", "white nationalist", "white power", "white racism", "white supremacist ideology", "white supremacism", "white supremacist"},
Wikipedia = true,
topical_categories = "White supremacist ideology",
}
labels["Wicca"] = {
Wiktionary = true,
topical_categories = true,
}
labels["wiki jargon"] = {
aliases = {"wiki", "wikis"},
display = "[[wiki]] [[jargon]]",
topical_categories = "Wiki",
}
labels["Wikimedia jargon"] = {
aliases = {
"Wikimedia", "Wiktionary", "Wiktionary jargon", "Wikipedia", "Wikipedia jargon",
"WMF", "WMF jargon" -- technically not correct
},
display = "[[w:Wikimedia movement|Wikimedia]] [[jargon]]",
topical_categories = "Wikimedia",
}
labels["wind instruments"] = {
aliases = {"wind instrument"},
display = "[[music]]",
topical_categories = true,
}
labels["wine"] = {
aliases = {"oenology", "winemaking"},
Wiktionary = true,
topical_categories = true,
}
labels["winter sports"] = {
display = "[[winter sport]]s",
topical_categories = true,
}
labels["woodwind instruments"] = {
aliases = {"woodwind instrument"},
display = "[[music]]",
topical_categories = true,
}
labels["woodworking"] = {
Wiktionary = true,
topical_categories = true,
}
labels["World War I"] = {
aliases = {"World War 1", "WWI", "WW I", "WW1", "WW 1"},
Wikipedia = true,
topical_categories = true,
}
labels["World War II"] = {
aliases = {"World War 2", "WWII", "WW II", "WW2", "WW 2"},
Wikipedia = true,
topical_categories = true,
}
labels["wrestling"] = {
Wiktionary = "wrestling#Noun",
topical_categories = true,
}
labels["writing"] = {
Wiktionary = "writing#Noun",
topical_categories = true,
}
labels["xiangqi"] = {
aliases = {"Chinese chess"},
Wiktionary = true,
topical_categories = true,
}
labels["Yazidism"] = {
aliases = {"Yezidism"},
Wiktionary = true,
topical_categories = true,
}
labels["yoga"] = {
Wiktionary = true,
topical_categories = true,
}
labels["yoga pose"] = {
aliases = {"asana"},
display = "[[yoga]]",
topical_categories = "Yoga poses",
}
labels["zodiac constellations"] = {
display = "[[astronomy]]",
topical_categories = "Constellations in the zodiac",
}
labels["zoology"] = {
Wiktionary = true,
topical_categories = true,
}
labels["zootomy"] = {
Wiktionary = true,
topical_categories = "Animal body parts",
}
labels["Zoroastrianism"] = {
Wiktionary = true,
topical_categories = true,
}
-- Deprecated/do not use warning (ambiguous, unsuitable etc)
labels["deprecated label"] = {
aliases = {"emergency", "greekmyth", "industry", "morphology", "musici", "quantum", "vector"},
display = "<span style=\"color:var(--wikt-palette-red,red);\"><b>deprecated label</b></span>",
deprecated = true,
}
return require("Module:labels").finalize_data(labels)
9ye99azevcfgbfctaaht6zu2umj8tdi
Module:la-headword
828
33168
178599
178469
2026-11-06T01:07:03Z
GinawaSaHapon
3989
178599
Scribunto
text/plain
-- TODO: handle "-old" subtypes generally, appending "in Old Latin", where terms have additional OL inflections.
local export = {}
local pos_functions = {}
local string_utilities = "Module:string utilities"
local table_module = "Module:table"
local utilities_module = "Module:utilities"
local concat = table.concat
local form_is_empty = require("Module:la-utilities").form_is_empty
local insert = table.insert
local remove = table.remove
local umatch = mw.ustring.match
local lang = require("Module:languages").getByCode("la")
local NAMESPACE = mw.title.getCurrentTitle().nsText
local PAGENAME = mw.loadData("Module:headword/data").pagename
local legal_gender = {
["m"] = true,
["f"] = true,
["n"] = true,
["?"] = true,
["?!"] = true,
}
local declension_to_english = {
["1"] = "unang",
["2"] = "ikalawang",
["3"] = "ikatlong",
["4"] = "ikaapat na",
["5"] = "ikalimang",
}
local gender_names = {
["m"] = "panlalaki",
["f"] = "pambabae",
["n"] = "di-tiyak",
["?"] = "di-alam na kasarian",
["?!"] = "di-kumpirmadong kasarian",
}
local function deep_equals(...)
deep_equals = require(table_module).deepEquals
return deep_equals(...)
end
local function get_plaintext(...)
get_plaintext = require(utilities_module).get_plaintext
return get_plaintext(...)
end
local function insert_if_not(...)
insert_if_not = require(table_module).insertIfNot
return insert_if_not(...)
end
local function invert(...)
invert = require(table_module).invert
return invert(...)
end
local function keys_to_list(...)
keys_to_list = require(table_module).keysToList
return keys_to_list(...)
end
local function pattern_escape(...)
pattern_escape = require(string_utilities).pattern_escape
return pattern_escape(...)
end
local function serial_comma_join(...)
serial_comma_join = require(table_module).serialCommaJoin
return serial_comma_join(...)
end
local function split(...)
split = require(string_utilities).split
return split(...)
end
local function ulower(...)
ulower = require(string_utilities).lower
return ulower(...)
end
local function format(array, concatenater)
if #array == 0 then
return ""
end
local concatenated = concat(array, concatenater)
if concatenated == "" then
return ""
elseif concatenated:sub(-1) == "'" then
concatenated = concatenated .. " "
end
return "; ''" .. concatenated .. "''"
end
local function glossary_link(anchor, text)
text = text or anchor
return "[[Apendise:Glosaryo#" .. anchor .. "|" .. text .. "]]"
end
local function make_link(page, display, face, accel)
return require("Module:links").full_link({term = page, alt = display, lang = lang, accel = accel}, face)
end
-- The main entry point.
-- This is the only function that can be invoked from a template.
function export.show(frame)
local iargs = require("Module:parameters").process(frame.args, {
[1] = {required = true},
["def"] = true,
["suff_type"] = true,
})
local args = frame:getParent().args
local poscat = iargs[1]
local def = iargs.def
local suff_type = iargs.suff_type
local postype = nil
if suff_type then
postype = poscat .. '-' .. suff_type
else
postype = poscat
end
local data = {lang = lang, categories = {}, heads = {}, genders = {}, inflections = {}}
local infl_classes = {}
local title = {}
local postscript = {}
if poscat == "suffixes" then
insert_if_not(data.categories, "Latin na hulaping gumagawa ng " .. suff_type)
end
if pos_functions[postype] then
local new_poscat = pos_functions[postype](def, args, data, infl_classes, title, postscript)
if new_poscat then
poscat = new_poscat
end
end
data.pos_category = poscat
postscript = concat(postscript, ", ")
return
require("Module:headword").full_headword(data)
.. format(infl_classes, "/")
.. format(title, ", ")
.. (postscript ~= "" and " (" .. postscript .. ")" or "")
end
local function process_num_type(numtype, categories)
if numtype == "card" then
insert_if_not(categories, "Latin na paulat na pambilang")
elseif numtype == "ord" then
insert_if_not(categories, "Latin na panunuran na pambilang")
elseif numtype == "frac" then
insert_if_not(categories, "Latin na bahaging pambilang")
elseif numtype == "dist" then
insert_if_not(categories, "Latin na pamahaging pambilang")
elseif numtype == "mul" then
insert_if_not(categories, "Latin na pamparaming pambilang")
elseif numtype == "coll" then
insert_if_not(categories, "Latin na kolektibong pambilang")
elseif numtype then
error("Unrecognized numeral type '" .. numtype .. "'")
end
end
local function normalize_derivation(deriv, anchor, text)
if not deriv then
return nil
end
local deriv1 = deriv[1]
if not deriv1 or deriv1 == "-" then
return deriv1
end
deriv.label = glossary_link(anchor, text)
return deriv
end
local function derivation(data, decldata, arg, anchor, text)
local der = normalize_derivation(decldata[arg], anchor, text)
if der and der ~= "-" then
insert(data.inflections, der)
end
end
local function nouns(pos, def, args, data, infl_classes, title)
local is_num = pos == "numerals"
local is_pn = false
if pos == "pantangi" then
is_pn = true
pos = "pangngalan"
end
local decldata = require("Module:la-nominal").do_generate_noun_forms(args, pos, "headword", def, is_num)
local lemma = decldata.overriding_lemma
-- TODO: modify the headword line if the slot isn't the expected one.
if #lemma == 0 then
for slot in require("Module:la-nominal").iter_potential_noun_lemma_slots() do
local potential_lemma = decldata.forms["linked_" .. slot]
if not form_is_empty(potential_lemma) then
if decldata.unattested[slot] then
potential_lemma = "*" .. potential_lemma
end
lemma = potential_lemma
break
end
end
end
data.heads = lemma
-- Since we always set data.heads to the lemma and specification of the lemma is mandatory in {{la-noun}}, there aren't
-- really any redundant heads.
data.no_redundant_head_cat = true
data.id = decldata.id
local genders = decldata.overriding_genders
if #genders == 0 then
if decldata.gender then
genders = {ulower(decldata.gender)}
elseif not is_num then
error("No gender explicitly specified in headword template using g=, and can't infer gender from lemma spec")
end
end
local categories = data.categories
if is_num then
process_num_type(decldata.num_type, categories)
end
if decldata.indecl then
insert(data.inflections, {label = glossary_link("di-nababago")})
insert_if_not(categories, "Latin na di-nababagong " .. decldata.pos)
for _, g in ipairs(genders) do
local gender = g:match("^(.[\128-\191]*)%-[sp]$")
if not gender then
gender = g
end
if not legal_gender[gender] then
error("Gender “" .. gender .. "” is not a valid Latin gender.")
end
insert(data.genders, g)
insert_if_not(categories, "Latin na " .. gender_names[gender] .. " na di-nababagong " .. decldata.pos)
end
else
local is_irreg = false
local is_indecl = false
local is_decl = false
local has_multiple_decls = false
local has_multiple_variants = false
-- flatten declension specs
local decls = {}
for _, g in ipairs(genders) do
if not legal_gender[g] then
error("Gender “" .. g .. "” is not a valid Latin gender.")
elseif decldata.num == "pl" then
g = g .. "-p"
elseif decldata.num == "sg" then
g = g .. "-s"
end
insert(data.genders, g)
end
local function process_decl(decl_list, props)
local headword_decl = props.headword_decl
-- skip adjectival declensions
if headword_decl:match("+$") then
return
elseif props.decl == "irreg" then
is_irreg = true
headword_decl = headword_decl:match("^irreg/(.*)$") or headword_decl
local irreg_decls = split(headword_decl, ",")
if #irreg_decls > 1 then
has_multiple_decls = true
end
for _, d in ipairs(irreg_decls) do
if d == "indecl" or d == "0" then
is_indecl = true
else
is_decl = true
end
insert_if_not(decl_list, d)
end
else
if headword_decl == "indecl" or headword_decl == "0" then
is_indecl = true
else
is_decl = true
end
insert_if_not(decl_list, headword_decl)
end
end
for _, props in ipairs(decldata.propses) do
if props.headword_decl then
process_decl(decls, props)
else
local alternant_decls = {}
for _, alternant in ipairs(props) do
for _, single_props in ipairs(alternant) do
process_decl(alternant_decls, single_props)
end
end
if #alternant_decls > 1 then
has_multiple_decls = true
elseif #decls > 1 then
has_multiple_variants = true
end
for _, d in ipairs(alternant_decls) do
insert_if_not(decls, d)
end
end
end
if is_indecl and is_decl then
has_multiple_decls = true
end
if has_multiple_decls then
insert_if_not(categories, "Latin na " .. decldata.pos .. " na may maraming kaukulan")
end
if has_multiple_variants then
insert_if_not(categories, "Latin na " .. decldata.pos .. " na may maraming baryant ng isang kaukulan")
end
if is_irreg then
insert(title, glossary_link("di-regular"))
insert_if_not(categories, "Latin na di-regular na " .. decldata.pos)
for _, g in ipairs(genders) do
insert_if_not(categories, "Latin na " .. gender_names[g] .. " na di-regular na " .. decldata.pos)
end
end
if is_indecl then
if is_decl then
insert(title, glossary_link("di-mauukol"))
else
insert(data.inflections, {label = glossary_link("di-mauukol")})
end
insert_if_not(categories, "Latin na di-mauukol na " .. decldata.pos)
for _, g in ipairs(genders) do
insert_if_not(categories, "Latin na " .. gender_names[g] .. " na di-mauukol na " .. decldata.pos)
end
end
if #decls > 1 then
insert(title, "iba-iba ang kaukulan")
end
for _, decl in ipairs(decls) do
if not (decl == "0" or decl == "indecl" or decl == "sgpl" or decl == "irreg") then
local decl_class = declension_to_english[decl]
if not decl_class then
error("Internal error: declension '" .. decl .. "' not recognized")
end
insert(title, "[[Apendise:" .. decl_class .. " kaukulan sa Latin|" .. decl_class .. " kaukulan]]")
insert_if_not(categories, "Latin na " .. decl_class .. " kaukulan na " .. decldata.pos)
for _, g in ipairs(genders) do
insert_if_not(categories, "Latin na " .. gender_names[g] .. " na " .. decldata.pos .. " sa " .. decl_class .. " kaukulan")
end
end
end
local lemma_num = decldata.num == "pl" and "pl" or "sg"
if NAMESPACE == "Reconstruction" then
-- For reconstructed nouns:
if data.genders[1] == 'n' and lemma_num == 'sg' then
-- singular neuter nouns give a plural
local pl = decldata.forms["nom_pl"]
if pl and pl ~= "" and #pl > 0 then
pl.label = "plural"
insert(data.inflections, pl)
end
else
-- all others give an oblique
local obl = decldata.forms["acc_" .. lemma_num]
if obl and obl ~= "" and #obl > 0 then
obl.label = "oblique"
insert(data.inflections, obl)
end
end
else
local gen = decldata.forms["gen_" .. lemma_num]
if (decldata.unattested["gen_" .. lemma_num]) then
gen[1] = '*' .. gen[1]
data.nolink = true
end
if gen and gen ~= "" and gen ~= "—" and #gen > 0 then
if is_decl then
-- Skip displaying the genitive for nouns that are only
-- indeclinable. But we do display it for nouns like Abrahām
-- and Ādām that can be either indeclinable or declined.
gen.label = "paari"
insert(data.inflections, gen)
end
else
insert(data.inflections, {label = "walang paari"})
insert_if_not(categories, "Latin na " .. decldata.pos .. " na walang paaring pang-isahan")
end
end
end
derivation(data, decldata, "m", "panlalaki")
derivation(data, decldata, "f", "pambabae")
derivation(data, decldata, "n", "di-tiyak")
derivation(data, decldata, "adj", "kaugnayan", "pangkaugnayan na pang-uri")
derivation(data, decldata, "dim", "pampaliit")
derivation(data, decldata, "aug", "pampalaki")
for _, cat in ipairs(decldata.categories) do
insert_if_not(categories, cat)
end
for _, cat in ipairs(decldata.cat) do
insert_if_not(categories, "Latin na " .. cat)
end
return is_pn and decldata.pos == "nouns" and "proper nouns" or decldata.pos
end
pos_functions["nouns"] = function(def, args, data, infl_classes, title)
return nouns("pangngalan", def, args, data, infl_classes, title)
end
pos_functions["proper nouns"] = function(def, args, data, infl_classes, title)
return nouns("pantangi", def, args, data, infl_classes, title)
end
pos_functions["suffixes-noun"] = function(def, args, data, infl_classes, title)
return nouns("hulapi", def, args, data, infl_classes, title)
end
pos_functions["numerals-noun"] = function(def, args, data, infl_classes, title)
return nouns("pambilang", def, args, data, infl_classes, title)
end
function export.verb_title(title, typeinfo, lemma_forms)
local conj = typeinfo.conj
local irreg_processing = typeinfo.irreg
local subtypes = typeinfo.subtypes
local first_lemma = ""
if #lemma_forms > 0 then
first_lemma = require("Module:links").remove_links(lemma_forms[1])
end
if conj == "1st" then
insert(title, "[[Apendise:Unang pagbabanghay sa Latin|unang pagbabanghay]]")
elseif conj == "2nd" then
insert(title, "[[Apendise:Ikalawang pagbabanghay sa Latin|ikalawang pagbabanghay]]")
elseif conj == "3rd" then
insert(title, "[[Apendise:Ikatlong pagbabanghay sa Latin|ikatlong pagbabanghay]]")
elseif conj == "3rd-io" then
insert(title, ("[[Apendise:Ikatlong pagbabanghay sa Latin|ikatlong pagbabanghay (barayti %s)]]"):format(make_link(nil, "-iō", "term")))
elseif conj == "3rd/4th" then
insert(title, ("[[Apendise:Ikatlong pagbabanghay sa Latin|ikatlo (%s variant)]] / [[Apendise:Ikaapat na pagbabanghay sa Latin|ikaapat na pagbabanghay]]"):format(make_link(nil, "-iō", "term")))
elseif conj == "4th" then
insert(title, "[[Apendise:Ikaapat na pagbabanghay sa Latin|ikaapat na pagbabanghay]]")
elseif conj == "irreg" then -- sum
insert(title, "[[Apendise:Di-regular na pandiwa sa Latin|di-regular na pagbabanghay]]")
end
if subtypes.highlydef then -- āiō, inquam
insert(title, "[[Apendise:Glosaryo#depektibong pandiwa|napakadepektibong]] pandiwa")
end
if subtypes.suppl then -- sum, volō
insert(title, "[[Apendise:Glosaryo#supletibo]]")
end
if subtypes["3only"] then -- decet
insert(title, "[[Apendise:Glosaryo#ikatlong_panauhan|ikatlong panauhan]] lamang")
elseif subtypes.impers then -- decet, advesperāscit (also nopass)
insert(title, "[[Apendise:Glosaryo#di-personal_na_pandiwa|di-personal]]")
end
if subtypes.depon then -- dēmōlior, calvor (also noperf)
insert(title, "[[Apendise:Glosaryo#deponente|deponente]]")
end
if subtypes.perfaspres then -- meminī, ōdī
insert(title, "walang tangkay na [[Apendise:Glosaryo#pangkasalukuyan|pangkasalukuyan]]")
-- If semidepon is set, only the active forms are affected.
local voice = subtypes.semidepon and "[[Apendise:Glosaryo#aktibong_tinig|aktibong tinig]] " or ""
insert(title, ("May [[Apendise:Glosaryo#pangkasalukuyan|pangkasalukuyang]] %s na kahulugan ang mga anyong [[Apendise:Glosaryo#perpekto|perpektong]] %s na anyo"):format(voice, voice))
-- Clarify that deponency can only apply to the perfect.
if subtypes.semidepon then -- ōdī
insert(title, "[[Apendise:Glosaryo#deponente|deponente]] sa [[Apendise:Glosaryo#perpekto|perpekto]]")
end
if subtypes.optsemidepon then
insert(title, "puwedeng [[Apendise:Glosaryo#deponente|deponente]] sa [[Apendise:Glosaryo#perpekto|perpekto]]")
end
else
if subtypes.semidepon then -- fīdō, gaudeō
insert(title, "[[Apendise:Glosaryo#bahagyang_deponente|bahagyang deponente]]")
end
if subtypes.optsemidepon then -- audeō, placeō, soleō, pudeō
insert(title, "puwedeng [[Apendise:Glosaryo#bahagyang_deponente|bahagyang deponente]]")
end
end
if subtypes.imponly then -- cedo, apage
insert(title, "[[Apendise:Glosaryo#pautos|pautos]] lamang")
end
if subtypes.nopass then -- coacēscō
insert(title, "walang [Apendise:Glosaryo#pasibong_tinig|pasibo]]")
end
local stems = {}
if subtypes.nopres then -- coepī; perfaspres already handles this above
insert(stems, "[[Apendise:Glosaryo#pangkasalukuyan|pangkasalukuyan]]")
end
if subtypes.noperf then
insert(stems, "[[Apendise:Glosaryo#perpekto|perpekto]]")
end
if subtypes.nosup or subtypes.supfutractvonly then
insert(stems, "[[Apendise:Glosaryo#supino|supino]]")
end
if #stems > 0 then
local extra = subtypes.supfutractvonly and " maliban sa [[Apendise:Glosaryo#panghinaharap|panghinaharap]] na [[Apendise:Glosaryo#aktibong_tinig|aktibong]] [[Apendise:Glosaryo#pandiwari|pandiwari]]"
insert(title, ("walang %s na tangkay%s"):format(serial_comma_join(stems, {conj = "o"}), extra or ""))
end
if subtypes.nofutr then -- soleō
insert(title, "walang [[Apendise:Glosaryo#panghinaharap|panghinaharap]]")
end
if subtypes.pass3only then -- praefundō
insert(title, "[[Apendise:Glosaryo#ikatlong_panauhan|ikatlong panauhan]] lamang sa [[Apendise:Glosaryo#pasibong_tinig|pasibong tinig]]")
elseif subtypes.passimpers then -- abambulō
local msg = "[[Apendise:Glosaryo#di-personal_na_pandiwa|di-personal]] sa [[Apendise:Glosaryo#pasibong_tinig|pasibong tinig]]"
if subtypes.passimpersold then -- possum
msg = msg .. " sa Lumang Latin"
end
insert(title, msg)
end
if subtypes.noimp then -- volō
insert(title, "walang [[Apendise:Glosaryo#pautos|pautos]]")
end
if irreg_processing and umatch(first_lemma, "d[īū]cō$") then -- dīcō
insert(title, "[[Apendise:Di-regular na pandiwa sa Latin|di-regular]] na pinaikling [[Apendise:Glosaryo#pautos|pautos]]")
end
if subtypes.nofutractvptc and not subtypes.nosup then -- fīō
insert(title, "walang [[Apendise:Glosaryo#panghinaharap|panghinaharap]] na [[Apendise:Glosaryo#aktibong_tinig|aktibong]] [[Apendise:Glosaryo#pandiwari|pandiwari]]")
end
if not (subtypes.nopres or subtypes.perfaspres or subtypes.imponly) then
if subtypes.noinf then -- inquam
insert(title, "walang [[Apendise:Glosaryo#pawatas|pawatas]]")
end
if subtypes.noger then -- libet
insert(title, "walang [[Apendise:Glosaryo#herundiyo|herundiyo]]")
end
end
if subtypes.shorta then -- dō
insert(title, ("[[Apendise:Di-regular na pandiwa sa Latin|di-regular]] na pinaikling %s sa karamihan sa mga anyo"):format(make_link(nil, "ă", "kataga")))
end
if irreg_processing then
if first_lemma:match("edō$") then -- edō
insert(title, "[[Apendise:Di-regular na pandiwa sa Latin|di-regular]] na alternatibong pagbaybay")
elseif first_lemma:match("fīō$") then -- fīō
insert(title, "[[Apendise:Di-regular na pandiwa sa Latin|di-regular]] na pinahabang " .. make_link(nil, "ī", "kataga"))
end
end
end
pos_functions["verbs"] = function(def, args, data, infl_classes, title)
local m_la_verb = require("Module:la-verb")
local def1, def2
if def then
def1, def2 = def:match("^(.-):(.*)$")
end
local conjdata, typeinfo = m_la_verb.make_data(args, true, def1, def2)
local lemma_forms = conjdata.overriding_lemma
if not lemma_forms or #lemma_forms == 0 then
lemma_forms = m_la_verb.get_lemma_forms(conjdata, true)
end
data.heads = lemma_forms
-- Since we always set data.heads to the lemma and specification of the lemma is mandatory in {{la-verb}}, there aren't
-- really any redundant heads.
data.no_redundant_head_cat = true
data.id = conjdata.id
local perf_only = false
local function insert_inflection(infl, label)
infl.label = label
insert(data.inflections, infl)
end
local inf = m_la_verb.get_valid_forms(conjdata.forms["pres_actv_inf"])
if #inf > 0 then
insert_inflection(inf, "pangkasalukuyang pawatas")
else
inf = m_la_verb.get_valid_forms(conjdata.forms["perf_actv_inf"])
if #inf > 0 then
perf_only = true
insert_inflection(inf, "perpektong pawatas")
end
end
if not perf_only then
local perf = m_la_verb.get_valid_forms(conjdata.forms["1s_perf_actv_indc"])
if #perf == 0 then
perf = m_la_verb.get_valid_forms(conjdata.forms["3s_perf_actv_indc"])
end
if #perf > 0 then
insert_inflection(perf, "perpektong aktibo")
end
end
local subtypes = typeinfo.subtypes
if not (subtypes.depon or subtypes.semidepon) then
local sup = m_la_verb.get_valid_forms(conjdata.forms["acc_sup"])
if #sup > 0 then
insert_inflection(sup, "supino")
else
local fap = m_la_verb.get_valid_forms(conjdata.forms["futr_actv_ptc"])
if #fap > 0 then
insert_inflection(fap, "panghinaharap na aktibong pandiwari")
end
end
end
export.verb_title(title, typeinfo, lemma_forms)
end
pos_functions["suffixes-verb"] = pos_functions["verbs"]
local function attested_form(decldata, index)
local form
if (decldata.unattested[index]) then
form = { { term = '*' .. decldata.forms[index][1], nolink = true } }
else
form = decldata.forms[index]
end
return form
end
local function degree_derivations(comp, sup, data)
local inflections = data.inflections
if not (comp or sup) then
return
elseif (not comp or comp == "-") and (not sup or sup == "-") then
insert(inflections, {label = "hindi [[Apendise:Glosaryo#pahambing|pahambing]]"})
insert_if_not(data.categories, "Latin na pang-abay na di-mahahambing")
return
elseif comp == "-" then
insert(inflections, {label = "walang [[Apendise:Glosaryo#pahambing|pahambing]]"})
elseif comp then
insert(inflections, comp)
end
if sup == "-" then
insert(inflections, {label = "walang [[Apendise:Glosaryo#pasukdol|pasukdol]]"})
elseif sup then
insert(inflections, sup)
end
end
local function adjectives(pos, def, args, data, infl_classes)
local is_num = pos == "numerals"
local decldata = require("Module:la-nominal").do_generate_adj_forms(args, pos, "headword", nil, def)
local lemma = decldata.overriding_lemma
-- TODO: modify the headword line if the slot isn't the expected one.
if #lemma == 0 then
for slot in require("Module:la-nominal").iter_potential_adj_lemma_slots() do
local potential_lemma = decldata.forms["linked_" .. slot]
if not form_is_empty(potential_lemma) then
if decldata.unattested[slot] then
potential_lemma = "*" .. potential_lemma
end
lemma = potential_lemma
break
end
end
end
data.heads = lemma
-- Since we always set data.heads to the lemma and specification of the lemma is mandatory in {{la-noun}}, there aren't
-- really any redundant heads.
data.no_redundant_head_cat = true
data.id = decldata.id
local categories = data.categories
if is_num then
process_num_type(decldata.num_type, categories)
end
if decldata.num == "pl" then
insert_if_not(categories, "Latin na pangmaramihan lamang na " .. decldata.pos)
end
if decldata.indecl then
insert(data.inflections, {label = glossary_link("di-nababago")})
if decldata.pos == "pandiwari" then
local lemma1 = lemma[1]
if lemma1:sub(-4) == "ndum" then
insert_if_not(categories, "Latin na panghinaharap na pasibong pandiwari")
elseif lemma1:match("um$") then
insert_if_not(categories, "Latin perpektong pandiwari")
end
end
else
local lemma_num = decldata.num == "pl" and "pl" or "sg"
local masc = decldata.forms["nom_" .. lemma_num .. "_m"]
local fem = attested_form(decldata, "nom_" .. lemma_num .. "_f")
local neut = attested_form(decldata, "nom_" .. lemma_num .. "_n")
local gen = attested_form(decldata, "gen_" .. lemma_num .. "_m")
local acc = attested_form(decldata, "acc_" .. lemma_num .. "_m")
if decldata.pos == "pandiwari" then
local masc1 = masc[1]
if masc1:sub(-5) == "ūrus" then
insert_if_not(categories, "Latin na panghinaharap na aktibong pandiwari")
elseif masc1:sub(-4) == "ndus" then
-- FIXME, should rename to "Latin gerundives")
insert_if_not(categories, "Latin na panghinaharap na pasibong pandiwari")
else
local masc1_final2 = masc1:sub(-2)
if masc1_final2 == "us" then
insert_if_not(categories, "Latin na perpektong pandiwari")
elseif masc1_final2 == "ns" then
insert_if_not(categories, "Latin na pangkasalukuyang pandiwari")
else
error("Unrecognized participle ending: " .. masc1)
end
end
end
-- We display the inflections in three different ways to mimic the
-- old way of doing things:
--
-- 1. If masc and fem are different, show masc, fem and neut.
-- 2. Otherwise, if masc and neut are different, show masc and neut.
-- 3. Otherwise, show masc nominative and masc genitive.
if not form_is_empty(fem) and not deep_equals(masc, fem) then
fem.label = "pambabae"
insert(data.inflections, fem)
if not form_is_empty(neut) then
neut.label = "di-tiyak"
insert(data.inflections, neut)
end
elseif not form_is_empty(neut) and not deep_equals(masc, neut) then
neut.label = "di-tiyak"
insert(data.inflections, neut)
elseif not form_is_empty(gen) then
gen.label = "paari"
insert(data.inflections, gen)
elseif not form_is_empty(acc) then
acc.label = "palayon"
insert(data.inflections, acc)
end
insert(infl_classes, decldata.title)
end
local comp = normalize_derivation(decldata.comp, "pahambing")
local sup = normalize_derivation(decldata.sup, "pasukdol")
degree_derivations(comp, sup, data)
derivation(data, decldata, "adv", "pang-abay")
for _, cat in ipairs(decldata.categories) do
insert_if_not(categories, cat)
end
for _, cat in ipairs(decldata.cat) do
insert_if_not(categories, "Latin na " .. cat)
end
return decldata.pos
end
pos_functions["adjectives"] = function(def, args, data, infl_classes, title)
return adjectives("pang-uri", def, args, data, infl_classes, title)
end
pos_functions["participles"] = function(def, args, data, infl_classes, title)
return adjectives("pandiwari", def, args, data, infl_classes, title)
end
pos_functions["determiners"] = function(def, args, data, infl_classes, title)
return adjectives("pantukoy", def, args, data, infl_classes, title)
end
pos_functions["pronouns"] = function(def, args, data, infl_classes, title)
return adjectives("panghalip", def, args, data, infl_classes, title)
end
pos_functions["suffixes-adjective"] = function(def, args, data, infl_classes, title)
return adjectives("hulapi", def, args, data, infl_classes, title)
end
pos_functions["numerals-adjective"] = function(def, args, data, infl_classes, title)
return adjectives("pambilang", def, args, data, infl_classes, title)
end
pos_functions["adverbs"] = function(def, args, data)
local sublist = {sublist = "/"}
args = require("Module:parameters").process(args, {
[1] = {alias_of = "head", list = false},
[2] = {alias_of = "comp"},
[3] = {alias_of = "sup"},
["head"] = {list = true, required = true},
["comp"] = sublist,
["sup"] = sublist,
["adj"] = sublist,
["id"] = true,
})
data.heads = args.head
data.no_redundant_head_cat = true -- since head= is required
data.id = args.id
local comp, sup = args.comp, args.sup
local irreg = false
if comp then
if comp[1] == "-" then
comp = "-"
elseif comp[1] == nil then
comp = nil
else
comp.label = glossary_link("pahambing")
comp = args.comp
irreg = true
end
end
if sup then
if sup[1] == "-" then
sup = "-"
elseif sup[1] == nil then
sup = nil
else
sup.label = glossary_link("pasukdol")
sup = args.sup
irreg = true
end
end
local categories = data.categories
if irreg then
insert_if_not(categories, "Latin na di-regular na pang-abay")
end
if not (comp or sup) then
local default_comp = {label = glossary_link("pahambing")}
local default_sup = {label = glossary_link("pasukdol")}
for _, head in ipairs(args.head) do
local stem = nil
for _, suff in ipairs{"iter", "nter", "ter", "er", "iē", "ē", "rā", "im", "ō"} do
stem = head:match("(.*)" .. pattern_escape(suff) .. "$")
comp_suff, sup_suff = "ius", "issimē"
if stem ~= nil then
if suff == "nter" then
stem = stem .. "nt"
elseif suff == "rā" then
comp_suff = "er" .. comp_suff
sup_suff = "imē"
end
insert(default_comp, stem .. comp_suff)
insert(default_sup, stem .. sup_suff)
break
end
end
if not stem then
error("Unrecognized adverb type, recognized types are “-ē”, “-er”, “-ter”, “-iter”, “-im”, or “-ō”, “-ra” or specify irregular forms or “-” if incomparable.")
end
end
comp = comp or default_comp
sup = sup or default_sup
end
degree_derivations(comp, sup, data)
derivation(data, args, "adj", "adjective")
end
pos_functions["suffixes-adverb"] = pos_functions["adverbs"]
local function get_forms(forms)
if #forms == 0 then
return nil
end
local i, attested = 1, false
while true do
local form = forms[i]
if form == nil then
return forms, attested
elseif form == "-" then
remove(forms, i)
else
if not (attested or get_plaintext(form):sub(1, 1) == "*") then
attested = true
end
i = i + 1
end
end
end
local function degree(pos, deg, pos_func, other_pos, other_pos_label, other_deg, other_deg_label, args, data, infl_classes)
local list = {list = true}
args = require("Module:parameters").process(args, {
[1] = {alias_of = "head", list = false},
["head"] = list,
["positive"] = list,
[other_pos] = {sublist = "/"},
[other_deg] = list,
["id"] = true,
})
data.no_redundant_head_cat = #args.head == 0
-- Set default manually so we can tell whether the user specified head=.
if #args.head == 0 then
args.head = {PAGENAME}
end
data.heads = args.head
data.id = args.id
insert(data.inflections, {label = deg})
if pos_func then
pos_func(args, data, infl_classes)
end
local positive, positive_attested = get_forms(args.positive)
if positive then
if not positive_attested then
insert(data.categories, "Latin na " .. deg .. " lamang na " .. pos)
end
if #positive > 0 then
args.positive.label = "positive"
insert(data.inflections, args.positive)
else
insert(data.inflections, {label = "walang anyong lantay"})
end
end
local other = get_forms(args[other_deg])
if other then
if #other > 0 then
args[other_deg].label = other_deg_label
insert(data.inflections, args[other_deg])
else
insert(data.inflections, {label = "walang anyong " .. other_deg_label})
end
end
derivation(data, args, other_pos, other_pos_label)
-- If a lemma, return the primary part of speech ("adjectives" or
-- "adverbs"), so that the term is categorized in "Latin adjectives" or
-- "Latin adverbs". Otherwise, return nothing, so that the term goes in the
-- relevant non-lemma category (e.g. "Latin comparative adjectives"), and
-- into "Latin non-lemma forms".
if positive and not positive_attested then
return pos
end
end
local function comp_adj(args, data, infl_classes)
insert(infl_classes, "[[Apendise:Ikatlong kaukulan sa Latin|ikatlong kaukulan]]")
local n = {label = "neuter"}
for _, head in ipairs(args.head) do
local neuter = head:gsub("or$", "us")
insert(n, neuter)
end
insert(data.inflections, n)
end
pos_functions["comparative adjectives"] = function(def, args, data, infl_classes, title)
return degree("adjectives", "comparative", comp_adj, "adv", "adverb", "sup", "superlative", args, data, infl_classes)
end
pos_functions["comparative adverbs"] = function(def, args, data, infl_classes, title)
return degree("adverbs", "comparative", nil, "adj", "adjective", "sup", "superlative", args, data, infl_classes)
end
local function sup_adj(args, data, infl_classes)
insert(infl_classes, "[[Apendise:Unang kaukulan sa Latin|una]]")
insert(infl_classes, "[[Apendise:Ikalawang kaukulan sa Latin|ikalawang kaukulan]]")
local f, n = {label = "pambabae"}, {label = "di-tiyak"}
for _, head in ipairs(args.head) do
local stem = head:gsub("us$", "")
insert(f, stem .. "a")
insert(n, stem .. "um")
end
insert(data.inflections, f)
insert(data.inflections, n)
end
pos_functions["superlative adjectives"] = function(def, args, data, infl_classes, title)
return degree("adjectives", "superlative", sup_adj, "adv", "adverb", "comp", "comparative", args, data, infl_classes)
end
pos_functions["superlative adverbs"] = function(def, args, data, infl_classes, title)
return degree("adverbs", "superlative", nil, "adj", "adjective", "comp", "comparative", args, data, infl_classes)
end
local function adpositions(pos, def, args, data, infl_classes, title, postscript)
local cases = invert(require("Module:la-utilities").cases)
args = require("Module:parameters").process(args, {
[1] = {alias_of = "head", list = false},
[2] = {list = true, set = keys_to_list(cases)},
["head"] = {list = true, required = true},
["id"] = true,
})
-- Case names are supplied in numbered arguments, optionally preceded by
-- headwords.
cases = args[2]
for i = 1, #cases do
for j = i + 1, #cases do
if cases[i] == cases[j] then
error("Duplicate case")
end
end
local case = cases[i]
local Apendise_link = glossary_link(case)
if i == 1 then
Apendise_link = "+ " .. Apendise_link
end
insert(postscript, Apendise_link)
insert_if_not(data.categories, "Latin na " .. case .. " na " .. pos)
end
data.heads = args.head
data.no_redundant_head_cat = true -- since head= is required
data.id = args.id
end
pos_functions["prepositions"] = function(...)
return adpositions("prepositions", ...)
end
pos_functions["postpositions"] = function(...)
return adpositions("postpositions", ...)
end
pos_functions["gerunds"] = function(def, args, data)
args = require("Module:parameters").process(args, {
[1] = {required = true, default = "labōrandum"}, -- headword
[2] = true, -- gerundive
})
data.heads = {args[1]}
data.no_redundant_head_cat = true -- since 1= is required and goes into data.heads
insert(data.inflections, {label = "[[Apendise:Glosaryo#palayon|palayon]]"})
local stem = args[1]:match("^(.*)um$")
if not stem then
error("Unrecognized gerund ending: " .. stem)
end
if args[2] == "-" then
insert(data.inflections, {label = "no [[Apendise:Glosaryo#herundiyo|herundiyo]]"})
else
insert(data.inflections, {[1] = args[2] or stem .. "us", label = "[[Apendise:Glosaryo#herundiyo|herundiyo]]"})
end
end
local function non_lemma_forms(def, args, data)
args = require("Module:parameters").process(args, {
[1] = {required = true, default = def}, -- headword or cases
["head"] = {list = true, require_index = true},
["g"] = {list = true},
["id"] = true,
})
local heads = {args[1]}
for _, head in ipairs(args.head) do
insert(heads, head)
end
data.heads = heads
data.no_redundant_head_cat = true -- since 1= is required and goes into data.heads
data.genders = args.g
data.id = args.id
end
pos_functions["noun forms"] = non_lemma_forms
pos_functions["proper noun forms"] = non_lemma_forms
pos_functions["pronoun forms"] = non_lemma_forms
pos_functions["verb forms"] = non_lemma_forms
pos_functions["gerund forms"] = non_lemma_forms
pos_functions["adjective forms"] = non_lemma_forms
pos_functions["participle forms"] = non_lemma_forms
pos_functions["determiner forms"] = non_lemma_forms
pos_functions["numeral forms"] = non_lemma_forms
pos_functions["suffix forms"] = non_lemma_forms
return export
sc6h9202l8b4jhl09yi6cwgdr2pbb7k
Module:it-headword
828
33864
178600
171397
2026-11-06T01:19:11Z
GinawaSaHapon
3989
178600
Scribunto
text/plain
-- This module contains code for Italian headword templates.
-- Templates covered are:
-- * {{it-noun}}, {{it-proper noun}};
-- * {{it-verb}};
-- * {{it-adj}}, {{it-adj-comp}}, {{it-adj-sup}};
-- * {{it-det}};
-- * {{it-art}};
-- * {{it-pron-adj}};
-- * {{it-pp}};
-- * {{it-presp}};
-- * {{it-card-noun}}, {{it-card-adj}}, {{it-card-inv}};
-- * {{it-adv}};
-- * {{it-pos}};
-- * {{it-suffix form}}.
-- See [[Module:it-verb]] for Italian conjugation templates.
local export = {}
local pos_functions = {}
local force_cat = false -- for testing; if true, categories appear in non-mainspace pages
local m_strutils = require("Module:string utilities")
local usub = m_strutils.sub
local require_when_needed = require("Module:utilities/require when needed")
local insert = table.insert
local remove = table.remove
local m_table = require("Module:table")
local com = require("Module:it-common")
local en_utilities_module = "Module:en-utilities"
local headword_module = "Module:headword"
local headword_utilities_module = "Module:headword utilities"
local inflection_utilities_module = "Module:inflection utilities"
local it_verb_module = "Module:it-verb"
local parse_interface_module = "Module:parse interface"
local romut_module = "Module:romance utilities"
local lang = require("Module:languages").getByCode("it")
local langname = lang:getCanonicalName()
local m_en_utilities = require_when_needed(en_utilities_module)
local m_headword_utilities = require_when_needed(headword_utilities_module)
local glossary_link = require_when_needed(headword_utilities_module, "glossary_link")
local unpack = unpack or table.unpack -- Lua 5.2 compatibility
local no_split_apostrophe_words = {
["c'è"] = true,
["c'era"] = true,
["c'erano"] = true,
}
-----------------------------------------------------------------------------------------
-- Utility functions --
-----------------------------------------------------------------------------------------
local function track(page)
require("Module:debug/track")("it-headword/" .. page)
return true
end
-- Parse and insert an inflection not requiring additional processing into `data.inflections`. The raw arguments come
-- from `args[field]`, which is parsed for inline modifiers. `label` is the label that the inflections are given;
-- `accel` is the accelerator form, or nil.
local function parse_and_insert_inflection(data, args, field, label, accel, frob)
m_headword_utilities.parse_and_insert_inflection {
headdata = data,
forms = args[field],
paramname = field,
splitchar = ",",
label = label,
accel = accel and {form = accel} or nil,
frob = frob,
}
end
local function replace_hash_with_lemma(term, lemma)
-- If there is a % sign in the lemma, we have to replace it with %% so it doesn't get interpreted as a capture
-- replace expression.
lemma = lemma:gsub("%%", "%%%%")
return (term:gsub("#", lemma))
end
local list_param = {list = true, disallow_holes = true}
local boolean_param = {type = "boolean"}
-----------------------------------------------------------------------------------------
-- Main entry point --
-----------------------------------------------------------------------------------------
function export.show(frame)
local poscat = frame.args[1]
or error("Part of speech has not been specified. Please pass parameter 1 to the module invocation.")
local parargs = frame:getParent().args
local params = {
["head"] = list_param,
["id"] = true,
["sort"] = true,
["apoc"] = boolean_param,
["splithyph"] = boolean_param,
["nolinkhead"] = boolean_param,
["nolink"] = {type = "boolean", alias_of = "nolinkhead"},
["json"] = boolean_param,
["pagename"] = true, -- for testing
}
if pos_functions[poscat] then
for key, val in pairs(pos_functions[poscat].params) do
params[key] = val
end
end
local args = require("Module:parameters").process(parargs, params)
local pagename = args.pagename or mw.loadData("Module:headword/data").pagename
local user_specified_heads = args.head
local heads = user_specified_heads
if args.nolinkhead then
if #heads == 0 then
heads = {pagename}
end
else
local romut = require(romut_module)
local auto_linked_head = romut.add_links_to_multiword_term(pagename, args.splithyph,
no_split_apostrophe_words)
if #heads == 0 then
heads = {auto_linked_head}
else
for i, head in ipairs(heads) do
if head:find("^~") then
head = romut.apply_link_modifiers(auto_linked_head, usub(head, 2))
heads[i] = head
end
if head == auto_linked_head then
track("redundant-head")
end
end
end
end
local data = {
lang = lang,
pos_category = pos_functions[poscat] and pos_functions[poscat].pos_category or poscat,
categories = {},
heads = heads,
user_specified_heads = user_specified_heads,
no_redundant_head_cat = #user_specified_heads == 0,
genders = {},
inflections = {},
pagename = pagename,
id = args.id,
sort_key = args.sort,
force_cat_output = force_cat,
checkredlinks = pos_functions[poscat] and pos_functions[poscat].redlink_pos or true,
}
if pagename:find("^%-") and poscat ~= "suffix forms" then
data.is_suffix = true
data.pos_category = "suffixes"
data.checkredlinks = true
local singular_poscat = poscat
insert(data.categories, langname .. " na hulaping gumagawa ng " .. singular_poscat)
insert(data.inflections, {label = "hulaping gumagawa ng " .. singular_poscat})
end
if pos_functions[poscat] then
pos_functions[poscat].func(args, data)
end
if args.apoc then
-- Apocopated form of a term; do this after calling pos_functions[], because the function might modify
-- data.pos_category.
local pos = data.pos_category
if not pos:find(" forms") then
-- Apocopated forms are non-lemma forms.
local singular_poscat = m_en_utilities.singularize(pos)
data.pos_category = "mga anyong " .. singular_poscat
end
-- If this is a suffix, insert label 'apocopated' after 'FOO-forming suffix', otherwise insert at the beginning.
insert(data.inflections, data.is_suffix and 2 or 1, {label = glossary_link("apokope")})
end
if args.json then
return require("Module:JSON").toJSON(data)
end
return require(headword_module).full_headword(data)
end
local deriv_params = {
{"dim", glossary_link("pampaliit")},
{"dim_dim", "dobleng " .. glossary_link("pampaliit")},
{"aug_dim", glossary_link("pampalaki") .. "-" .. glossary_link("pampaliit")},
{"aug", glossary_link("pampalaki")},
{"dim_aug", glossary_link("pampaliit") .. "-" .. glossary_link("pampalaki")},
{"aug_aug", "dobleng " .. glossary_link("pampalaki")},
{"pej", glossary_link("pampanira")},
{"dim_pej", glossary_link("pampaliit") .. "-" .. glossary_link("pampanira")},
{"aug_pej", glossary_link("pampalaki") .. "-" .. glossary_link("pampanira")},
{"pej_pej", "dobleng " .. glossary_link("pampanira")},
{"end", glossary_link("pampalambing")},
{"dim_end", glossary_link("pampaliit") .. "-" .. glossary_link("pampalambing")},
{"aug_end", glossary_link("pampalaki") .. "-" .. glossary_link("pampalambing")},
{"derog", glossary_link("panglait")},
{"dim_derog", glossary_link("pampaliit") .. "-" .. glossary_link("panglait")},
{"aug_derog", glossary_link("pampalaki") .. "-" .. glossary_link("panglait")},
{"end_derog", glossary_link("pampalambing") .. "-" .. glossary_link("panglait")},
}
local function insert_deriv_params(params)
for _, deriv_param in ipairs(deriv_params) do
local param = unpack(deriv_param)
params[param] = list_param
end
end
local param_mods = {
t = {
-- We need to store the <t:...> inline modifier into the "gloss" key of the parsed part, because that is what
-- [[Module:links]] expects.
item_dest = "gloss",
},
gloss = {},
-- no 'tr' or 'ts', doesn't make sense for Italian
g = {
-- We need to store the <g:...> inline modifier into the "genders" key of the parsed part, because that is what
-- [[Module:links]] expects.
item_dest = "genders",
sublist = true,
},
id = {},
alt = {},
q = {type = "qualifier"},
qq = {type = "qualifier"},
lit = {},
pos = {},
-- no 'sc', doesn't make sense for Italian
}
local function parse_term_with_modifiers(paramname, val)
local function generate_obj(term)
local decomp = com.decompose(term)
local lemma = com.remove_non_final_accents(decomp)
if lemma ~= decomp then
term = com.compose("[[" .. lemma .. "|" .. decomp .. "]]")
end
return {term = term}
end
local retval = require(parse_interface_module).parse_inline_modifiers(val, {
paramname = paramname,
param_mods = param_mods,
generate_obj = generate_obj,
splitchar = "[/;,]",
preserve_splitchar = true,
})
for _, obj in ipairs(retval) do
if obj.delimiter == ";" then
obj.separator = "; "
elseif obj.delimiter == "/" then
obj.separator = "/"
-- default to nil for comma
end
end
return retval
end
local function insert_deriv_inflections(data, args)
for _, deriv_param in ipairs(deriv_params) do
local param, desc = unpack(deriv_param)
if #args[param] > 0 then
local inflection = {label = desc}
for _, term in ipairs(args[param]) do
local parsed_terms = parse_term_with_modifiers(param, term)
for _, parsed_term in ipairs(parsed_terms) do
insert(inflection, parsed_term)
end
end
insert(data.inflections, inflection)
end
end
end
-----------------------------------------------------------------------------------------
-- Nouns --
-----------------------------------------------------------------------------------------
local allowed_genders = m_table.listToSet(
{"m", "f", "mf", "mfbysense", "mfequiv", "gneut", "n", "m-p", "f-p", "mf-p", "mfbysense-p", "mfequiv-p", "gneut-p", "n-p", "?", "?-p"}
)
local function validate_genders(genders)
for _, g in ipairs(genders) do
if type(g) == "table" then
g = g.spec
end
if not allowed_genders[g] then
error("Unrecognized gender: " .. g)
end
end
end
local function do_noun(args, data, is_proper)
local is_plurale_tantum = false
local has_singular = false
local category_plpos = data.checkredlinks
if category_plpos == true then
category_plpos = data.pos_category
end
local category_pos = category_plpos
validate_genders(args[1])
data.genders = args[1]
local saw_m = false
local saw_f = false
local gender_for_default_plural
-- Check for specific genders and pluralia tantum.
for _, g in ipairs(args[1]) do
if type(g) == "table" then
g = g.spec
end
if g:find("-p$") then
is_plurale_tantum = true
else
has_singular = true
if g == "m" or g == "mf" or g == "mfbysense" then
saw_m = true
end
if g == "f" or g == "mf" or g == "mfbysense" then
saw_f = true
end
end
end
if saw_m and saw_f then
gender_for_default_plural = "mf"
elseif saw_f then
gender_for_default_plural = "f"
else
gender_for_default_plural = "m"
end
local lemma = data.pagename
local function inscat(cat)
insert(data.categories, langname .. " " .. cat)
end
local function insert_noun_inflection(terms, label, accel, no_inv)
for _, term in ipairs(terms) do
if not no_inv and term.term == lemma then
term.term = nil
term.label = glossary_link("pabago-bago")
end
end
m_headword_utilities.insert_inflection {
headdata = data,
terms = terms,
label = label,
accel = accel and {form = accel} or nil,
}
end
-- Plural
local plurals = {}
-- Fetch explicit masculine and feminine plurals here because we may change them below when processing plurals.
local mpls = m_headword_utilities.parse_term_list_with_modifiers {
paramname = "mpl",
forms = args.mpl,
splitchar = ",",
}
local fpls = m_headword_utilities.parse_term_list_with_modifiers {
paramname = "fpl",
forms = args.fpl,
splitchar = ",",
}
if is_plurale_tantum and not has_singular then
if args[2][1] then
error("Can't specify plurals of plurale tantum " .. category_pos)
end
insert(data.inflections, {label = glossary_link("plural only")})
elseif args.apoc then
-- apocopated noun
if args[2][1] then
error("Can't specify plurals of apocopated " .. category_pos)
end
else
-- Fetch plurals and associated decorations (qualifiers and labels) and genders.
plurals = m_headword_utilities.parse_term_list_with_modifiers {
paramname = {2, "pl"},
forms = args[2],
splitchar = ",",
include_mods = {"g"},
}
-- Check for special plural signals
local mode = nil
local pl1 = plurals[1]
if pl1 and #pl1.term == 1 then
mode = pl1.term
if mode == "?" or mode == "!" or mode == "-" or mode == "~" then
pl1.term = nil
if m_headword_utilities.termobj_has_decorations(pl1) then
error(("Can't specify inline modifiers with plural code '%s'"):format(mode))
end
remove(plurals, 1) -- Remove the mode parameter
elseif mode ~= "+" and mode ~= "#" then
error(("Unexpected plural code '%s'"):format(mode))
end
end
if is_plurale_tantum then
-- both singular and plural
insert(data.inflections, {label = "minsan " .. glossary_link("maramihan lamang") .. ", paiba-iba"})
end
if mode == "?" then
-- Plural is unknown
insert(data.categories, langname .. " na " .. category_plpos .. " na may di-alam o di-tukoy na anyong maramihan")
elseif mode == "!" then
-- Plural is not attested
insert(data.inflections, {label = "di-kumpirmado"})
insert(data.categories, langname .. " na " .. category_plpos .. " na may di-kumpirmadong anyong maramihan")
if plurals[1] then
error("Can't specify any plurals along with unattested plural code '!'")
end
elseif mode == "-" then
-- Uncountable noun; may occasionally have a plural
insert(data.categories, langname .. " na di-mabibilang na " .. category_plpos)
-- If plural forms were given explicitly, then show "usually"
if plurals[1] then
insert(data.inflections, {label = "madalas " .. glossary_link("di-mabibilang")})
insert(data.categories, langname .. " na mabibilang na " .. category_plpos)
else
insert(data.inflections, {label = glossary_link("di-mabibilang")})
end
else
-- Countable or mixed countable/uncountable
-- If no plurals, use the default plural unless mpl= or fpl= explicitly given.
if not plurals[1] and not mpls[1] and not fpls[1] and not is_proper then
plurals[1] = {term = "+"}
end
if mode == "~" then
-- Mixed countable/uncountable noun, always has a plural
insert(data.inflections, {label = glossary_link("mabibilang") .. " at " .. glossary_link("di-mabibilang")})
insert(data.categories, langname .. " na di-mabibilang na " .. category_plpos)
insert(data.categories, langname .. " na mabibilang na " .. category_plpos)
elseif plurals[1] then
-- Countable nouns
insert(data.categories, langname .. " na mabibilang na " .. category_plpos)
else
-- Uncountable nouns
insert(data.categories, langname .. " na di-mabibilang na " .. category_plpos)
end
end
-- Process plurals, handling requests for default plurals.
local has_default_or_hash = false
for _, pl in ipairs(plurals) do
if pl.term:find("^%+") or pl.term:find("#") or pl.term == "cap*" or pl.term == "cap*+" then
has_default_or_hash = true
break
end
end
if has_default_or_hash then
local newpls = {}
local function insert_pl(pl, defpl)
pl.term = defpl
insert(newpls, pl)
end
local function make_gendered_plural(pl, special)
if gender_for_default_plural == "mf" then
local default_mpl = com.make_plural(lemma, "m", special)
local default_fpl = com.make_plural(lemma, "f", special)
if default_mpl then
if default_mpl == default_fpl then
insert_pl(pl, default_mpl)
else
if args.mpl[1] or args.fpl[1] then
error("Can't specify gendered plural spec '" .. (special or "+") ..
"' along with gender=" .. gender_for_default_plural ..
" and also specify mpl= or fpl=")
end
mpls = {m_table.shallowCopy(pl)}
mpls[1].term = default_mpl
fpls = {pl}
fpls[1].term = default_fpl
end
end
else
local defpl = com.make_plural(lemma, gender_for_default_plural, special)
if defpl then
insert_pl(pl, defpl)
end
end
end
for _, pl in ipairs(plurals) do
if pl.term == "cap*" or pl.term == "cap*+" then
make_gendered_plural(pl, pl.term)
elseif pl.term == "+" then
make_gendered_plural(pl)
elseif pl.term:find("^%+") then
local special = require(romut_module).get_special_indicator(pl.term)
make_gendered_plural(pl, special)
else
insert_pl(pl, replace_hash_with_lemma(pl.term, lemma))
end
end
plurals = newpls
end
if plurals[2] then
inscat(category_plpos .. " na may maraming anyong maramihan")
end
-- If the first or only plural is the same as the singular, replace it with 'invariable', or 'usually
-- invariable' if there is more than one plural.
pl1 = plurals[1]
if pl1 and pl1.term == lemma then
if plurals[2] then
insert(data.inflections, {label = "madalas " .. glossary_link("di-nagbabago"),
q = pl1.q, qq = pl1.qq, l = pl1.l, ll = pl1.ll, refs = pl1.refs
})
else
insert(data.inflections, {label = glossary_link("di-nagbabago"),
q = pl1.q, qq = pl1.qq, l = pl1.l, ll = pl1.ll, refs = pl1.refs
})
end
remove(plurals, 1)
inscat("di-nababanghay na " .. category_plpos)
end
if plurals[1] then
-- Check for gender-changing plurals.
for _, pl in ipairs(plurals) do
if pl.genders then
for _, g in ipairs(pl.genders) do
if type(g) ~= "table" then
g = {spec = g}
end
if g.spec == "m" and not saw_m or g.spec == "f" and not saw_f then
inscat(category_plpos .. " na nagpapalit ng kasarian kapag maramihan")
end
end
end
end
end
end
-- Gather masculines/feminines. For each one, generate the corresponding plural. `field` is the name of the field
-- containing the masculine or feminine forms (normally "m" or "f"); `inflect` is a function of one or two arguments
-- to generate the default masculine or feminine from the lemma (the arguments are the lemma and optionally a
-- "special" flag to indicate how to handle multiword lemmas, and the function is normally make_feminine or
-- make_masculine from [[Module:it-common]]); and `default_plurals` is a list into which the corresponding default
-- plurals of the gathered or generated masculine or feminine forms are stored.
local function handle_mf(field, inflect, default_plurals)
local special
local mfs = m_headword_utilities.parse_term_list_with_modifiers {
paramname = field,
forms = args[field],
splitchar = ",",
frob = function(term)
if term == "+" then
-- Generate default masculine/feminine.
term = inflect(lemma)
else
term = replace_hash_with_lemma(term, lemma)
end
special = require(romut_module).get_special_indicator(term)
if special then
term = inflect(lemma, special)
end
return term
end
}
for _, mf in ipairs(mfs) do
local plobj = m_table.shallowCopy(mf)
plobj.term = com.make_plural(mf.term, field, special)
if plobj.term then
-- Add an accelerator for each masculine/feminine plural whose lemma is the corresponding singular, so that
-- the accelerated entry that is generated has a definition that looks like
-- # {{plural of|it|MFSING}}
plobj.accel = {form = "p", lemma = mf.term}
insert(default_plurals, plobj)
end
end
return mfs
end
local feminine_plurals = {}
local feminines = handle_mf("f", com.make_feminine, feminine_plurals)
local masculine_plurals = {}
local masculines = handle_mf("m", com.make_masculine, masculine_plurals)
local function handle_mf_plural(mfplfield, mfpls, gender, default_plurals, singulars)
if is_plurale_tantum then
return mfpls, true
end
local new_mfpls = {}
local saw_plus
local noinv
for i, mfpl in ipairs(mfpls) do
local accel
if #mfpls == #singulars then
-- If same number of overriding masculine/feminine plurals as singulars, assume each plural goes with
-- the corresponding singular and use each corresponding singular as the lemma in the accelerator. The
-- generated entry will have
-- # {{plural of|it|SINGULAR}}
-- as the definition.
accel = {form = "p", lemma = singulars[i].term}
else
accel = nil
end
if mfpl.term == "+" then
-- We should never see + twice. If we do, it will lead to problems since we overwrite the values of
-- default_plurals the first time around.
if saw_plus then
error(("Saw + twice when handling %s="):format(mfplfield))
end
saw_plus = true
if not default_plurals[1] then
local defpl = com.make_plural(lemma, gender)
if not defpl then
error("Unable to generate default plural of '" .. lemma .. "'")
end
default_plurals[1] = {term = defpl}
end
for _, defpl in ipairs(default_plurals) do
-- defpl is already a table and has an accel field
m_headword_utilities.combine_termobj_decorations(defpl, mfpl)
insert(new_mfpls, defpl)
end
-- don't use "invariable" because the plural is not with respect to the lemma but with respect to the
-- masc/fem singular
noinv = true
elseif mfpl.term == "cap*" or mfpl.term == "cap*+" or mfpl.term:find("^%+") then
if mfpl.term:find("^%+") then
mfpl.term = require(romut_module).get_special_indicator(mfpl.term)
end
if singulars[1] then
for _, mf in ipairs(singulars) do
local mfplobj = m_table.shallowCopy(mfpl)
mfplobj.term = com.make_plural(mf.term, gender, mfpl.term)
if mfplobj.term then
mfplobj.accel = accel
m_headword_utilities.combine_termobj_decorations(mfplobj, mf)
insert(new_mfpls, mfplobj)
end
-- don't use "invariable" because the plural is not with respect to the lemma but with respect
-- to the masc/fem singular
noinv = true
-- FIXME: Should we throw an error if no plural could be generated?
end
else
-- FIXME: This clause didn't exist in the corresponding code in [[Module:pt-headword]]. Is it
-- correct?
mfpl.term = com.make_plural(lemma, gender, mfpl.term)
if mfpl.term then
insert(new_mfpls, mfpl)
end
end
else
mfpl.accel = accel
mfpl.term = replace_hash_with_lemma(mfpl.term, lemma)
insert(new_mfpls, mfpl)
-- don't use "invariable" if masc/fem singular present because the plural is not with respect to
-- the lemma but with respect to the masc/fem singular
noinv = noinv or #singulars > 0
end
end
return new_mfpls, noinv
end
local mpl_noinv, fpl_noinv
-- Not fpls[1] because if the user didn't specify any explicit mpl= or fpl= but the lemma gender is mf or mfbysense
-- and has separate masculine and feminine plural forms (e.g. any term in -ista), we don't want to reprocess those
-- auto-generated forms.
if args.fpl[1] then
-- Override any existing feminine plurals.
feminine_plurals, fpl_noinv = handle_mf_plural("fpl", fpls, "f", feminine_plurals, feminines)
else
feminine_plurals, fpl_noinv = fpls, false
end
if args.mpl[1] then
-- Override any existing masculine plurals.
masculine_plurals, mpl_noinv = handle_mf_plural("mpl", mpls, "m", masculine_plurals, masculines)
else
masculine_plurals, mpl_noinv = mpls, false
end
local function redundant_plural(pl)
for _, p in ipairs(plurals) do
if p.term == pl.term then
return true
end
end
return false
end
for _, mpl in ipairs(masculine_plurals) do
if redundant_plural(mpl) then
track("noun-redundant-mpl")
end
end
for _, fpl in ipairs(feminine_plurals) do
if redundant_plural(fpl) then
track("noun-redundant-fpl")
end
end
if plurals[1] then
-- Set 'noinv' because we already took care of invariable plurals above.
insert_noun_inflection(plurals, "maramihan", "p", "noinv")
end
insert_noun_inflection(masculines, "panlalaki")
insert_noun_inflection(masculine_plurals, "panlalaki maramihan", nil, mpl_noinv)
insert_noun_inflection(feminines, "pambabae", "f")
insert_noun_inflection(feminine_plurals, "pambabae maramihan", nil, fpl_noinv)
local function parse_and_insert_noun_inflection(field, label, accel)
parse_and_insert_inflection(data, args, field, label, accel)
end
parse_and_insert_noun_inflection("adj", glossary_link("pang-ugnay", "pang-uring pang-ugnay"))
parse_and_insert_noun_inflection("adv", glossary_link("pang-abay"))
parse_and_insert_noun_inflection("dem", glossary_link("ngalang-lipi"))
parse_and_insert_noun_inflection("fdem", "pambabae " .. glossary_link("ngalang-lipi"))
insert_deriv_inflections(data, args)
-- Maybe add category 'Italian nouns with irregular gender' (or similar)
local irreg_gender_lemma = lemma:gsub(" .*", "") -- only look at first word
if (irreg_gender_lemma:find("o$") and (gender_for_default_plural == "f" or gender_for_default_plural == "mf"
or gender_for_default_plural == "mfbysense")) or
(irreg_gender_lemma:find("a$") and (gender_for_default_plural == "m" or gender_for_default_plural == "mf"
or gender_for_default_plural == "mfbysense")) then
inscat(category_plpos .. " na may di-regular na kasarian")
end
end
local function get_noun_params(nountype)
local params = {
[1] = {list = "g", disallow_holes = true, required = nountype ~= "proper", default = "?", type = "genders",
flatten = true},
[2] = {list = "pl", disallow_holes = true},
["m"] = list_param,
["f"] = list_param,
["mpl"] = list_param,
["fpl"] = list_param,
["adj"] = list_param, --adjective(s)
["adv"] = list_param, --adverb(s)
["dem"] = list_param, --demonym(s)
["fdem"] = list_param, --female demonym(s)
}
insert_deriv_params(params)
return params
end
pos_functions["nouns"] = {
params = get_noun_params("base"),
func = do_noun,
}
pos_functions["proper nouns"] = {
params = get_noun_params("proper"),
func = function(args, data)
do_noun(args, data, "is proper noun")
end,
}
pos_functions["cardinal nouns"] = {
params = get_noun_params("base"),
func = function(args, data)
do_noun(args, data)
insert(data.categories, 1, langname .. " cardinal numbers")
end,
pos_category = "numerals",
}
-----------------------------------------------------------------------------------------
-- Adjectives --
-----------------------------------------------------------------------------------------
local function do_adjective(args, data, is_superlative)
local feminines = {}
local masculine_plurals = {}
local feminine_plurals = {}
-- Use "participle" not "past participle" for categories such as 'invariable participles'
local category_plpos = data.checkredlinks
if category_plpos == true then
category_plpos = data.pos_category
end
local category_pos = category_plpos
if args.sp then
local romut = require(romut_module)
if not romut.allowed_special_indicators[args.sp] then
local indicators = {}
for indic, _ in pairs(romut.allowed_special_indicators) do
insert(indicators, "'" .. indic .. "'")
end
table.sort(indicators)
error("Special inflection indicator beginning can only be " ..
mw.text.listToText(indicators) .. ": " .. args.sp)
end
end
local lemma = data.pagename
local function fetch_inflections(field)
local retval = m_headword_utilities.parse_term_list_with_modifiers {
paramname = field,
forms = args[field],
splitchar = ",",
}
if not retval[1] then
return {{term = "+"}}
end
return retval
end
local function insert_inflection(terms, label, accel)
m_headword_utilities.insert_inflection {
headdata = data,
terms = terms,
label = label,
accel = accel and {form = accel} or nil,
}
end
if args.inv then
-- invariable adjective
insert(data.inflections, {label = glossary_link("di-nagbabago")})
insert(data.categories, langname .. " na di-nababanghay na " .. category_plpos)
end
if args.noforms then
-- [[bello]] and any others too complicated to describe in headword
insert(data.inflections, {label = "nasa baba ang pagbabanghay"})
end
if args.inv or args.apoc or args.noforms then
if args.sp or args.f[1] or args.pl[1] or args.mpl[1] or args.fpl[1] then
error("Can't specify inflections with an invariable or apocopated adjective or with noforms=")
end
elseif args.fonly then
-- feminine-only
if args.f[1] then
error("Can't specify explicit feminines with feminine-only " .. category_pos)
end
if args.pl[1] then
error("Can't specify explicit plurals with feminine-only " .. category_pos .. ", use fpl=")
end
if args.mpl[1] then
error("Can't specify explicit masculine plurals with feminine-only " .. category_pos)
end
local argsfpl = fetch_inflections("fpl")
for _, fpl in ipairs(argsfpl) do
if fpl.term == "+" then
local defpl = com.make_plural(lemma, "f", args.sp)
if not defpl then
error("Unable to generate default plural of '" .. lemma .. "'")
end
fpl.term = defpl
else
fpl.term = replace_hash_with_lemma(fpl.term, lemma)
end
insert(feminine_plurals, fpl)
end
insert(data.inflections, {label = "pambabae lamang"})
insert_inflection(feminine_plurals, "pambabae maramihan", "f|p")
else
-- Gather feminines.
for _, f in ipairs(fetch_inflections("f")) do
if f.term == "+" then
-- Generate default feminine.
f.term = com.make_feminine(lemma, args.sp)
else
f.term = replace_hash_with_lemma(f.term, lemma)
end
insert(feminines, f)
end
local fem_like_lemma = #feminines == 1 and feminines[1].term == lemma and
not m_headword_utilities.termobj_has_decorations(feminines[1])
if fem_like_lemma then
insert(data.categories, langname .. " na di-tiyak na " .. category_plpos)
end
local mpl_field = "mpl"
local fpl_field = "fpl"
if args.pl[1] then
if args.mpl[1] or args.fpl[1] then
error("Can't specify both pl= and mpl=/fpl=")
end
mpl_field = "pl"
fpl_field = "pl"
end
local argsmpl = fetch_inflections(mpl_field)
local argsfpl = fetch_inflections(fpl_field)
for _, mpl in ipairs(argsmpl) do
if mpl.term == "+" then
-- Generate default masculine plural.
local defpl = com.make_plural(lemma, "m", args.sp)
if not defpl then
error("Unable to generate default plural of '" .. lemma .. "'")
end
mpl.term = defpl
else
mpl.term = replace_hash_with_lemma(mpl.term, lemma)
end
insert(masculine_plurals, mpl)
end
for _, fpl in ipairs(argsfpl) do
if fpl.term == "+" then
for _, f in ipairs(feminines) do
-- Generate default feminine plural; f is a table.
local fplobj = m_table.shallowCopy(fpl)
local defpl = com.make_plural(f.term, "f", args.sp)
if not defpl then
error("Unable to generate default plural of '" .. f.term .. "'")
end
fplobj.term = defpl
m_headword_utilities.combine_termobj_decorations(fplobj, f)
insert(feminine_plurals, fplobj)
end
else
fpl.term = replace_hash_with_lemma(fpl.term, lemma)
insert(feminine_plurals, fpl)
end
end
local fem_pl_like_masc_pl = masculine_plurals[1] and feminine_plurals[1] and
m_table.deepEquals(masculine_plurals, feminine_plurals)
local masc_pl_like_lemma = #masculine_plurals == 1 and masculine_plurals[1].term == lemma and
not m_headword_utilities.termobj_has_decorations(masculine_plurals[1])
if fem_like_lemma and fem_pl_like_masc_pl and masc_pl_like_lemma then
-- actually invariable
insert(data.inflections, {label = glossary_link("di-nagbabago")})
insert(data.categories, langname .. " na di-nababanghay na " .. category_plpos)
else
-- Make sure there are feminines given and not same as lemma.
if not fem_like_lemma then
insert_inflection(feminines, "pambabae", "f|s")
elseif args.gneut then
data.genders = {"gneut"}
else
data.genders = {"mfbysense"}
end
if fem_pl_like_masc_pl then
if args.gneut then
insert_inflection(masculine_plurals, "maramihan", "p")
else
-- This is how the Spanish module works.
-- insert_inflection(masculine_plurals, "masculine and feminine plural", "p")
insert_inflection(masculine_plurals, "maramihan", "p")
end
else
insert_inflection(masculine_plurals, "panlalaki maramihan", "m|p")
insert_inflection(feminine_plurals, "pambabae maramihan", "f|p")
end
end
end
local function parse_and_insert_adj_inflection(field, label, accel, frob)
parse_and_insert_inflection(data, args, field, label, accel, frob)
end
parse_and_insert_adj_inflection("n", "di-tiyak")
parse_and_insert_adj_inflection("comp", glossary_link("pahambing"))
parse_and_insert_adj_inflection("sup", glossary_link("pasukdol"))
parse_and_insert_adj_inflection("adv", glossary_link("pang-abay"))
insert_deriv_inflections(data, args)
if args.irreg and is_superlative then
insert(data.categories, langname .. " na di-regular na pasukdol na " .. category_plpos)
end
end
local function get_adjective_params(adjtype)
local params = {
["inv"] = boolean_param, --invariable
["noforms"] = boolean_param, --too complicated to list forms except in a table
["sp"] = true, -- special indicator: "first", "first-last", etc.
["f"] = list_param, --feminine form(s)
["pl"] = list_param, --plural override(s)
["fpl"] = list_param, --feminine plural override(s)
["mpl"] = list_param, --masculine plural override(s)
["adv"] = list_param, --adverb(s)
}
if adjtype == "base" or adjtype == "part" or adjtype == "det" then
params["comp"] = list_param --comparative(s)
params["sup"] = list_param --superlative(s)
params["fonly"] = boolean_param -- feminine only
end
if adjtype == "sup" then
params["irreg"] = boolean_param
end
insert_deriv_params(params)
return params
end
pos_functions["adjectives"] = {
params = get_adjective_params("base"),
func = do_adjective,
}
pos_functions["comparative adjectives"] = {
params = get_adjective_params("comp"),
func = do_adjective,
pos_category = "adjectives",
}
pos_functions["superlative adjectives"] = {
params = get_adjective_params("sup"),
func = function(args, data)
do_adjective(args, data, "is superlative")
end,
pos_category = "adjectives",
}
pos_functions["cardinal adjectives"] = {
params = get_adjective_params("card"),
func = function(args, data)
do_adjective(args, data)
insert(data.categories, 1, langname .. " na paulat na pambilang")
end,
pos_category = "numerals",
}
pos_functions["past participles"] = {
params = get_adjective_params("part"),
func = do_adjective,
redlink_pos = "participles",
}
pos_functions["present participles"] = {
params = get_adjective_params("part"),
func = do_adjective,
redlink_pos = "participles",
}
pos_functions["determiners"] = {
params = get_adjective_params("det"),
func = do_adjective,
}
pos_functions["articles"] = {
params = get_adjective_params("det"),
func = do_adjective,
}
pos_functions["adjective-like pronouns"] = {
params = get_adjective_params("pron"),
func = do_adjective,
pos_category = "pronouns",
}
pos_functions["cardinal invariable"] = {
params = {},
func = function(args, data)
insert(data.categories, langname .. " na paulat na pambilang")
insert(data.categories, langname .. " di-nababanghay na pambilang")
insert(data.inflections, {label = glossary_link("di-nagbabago")})
end,
pos_category = "numerals",
}
-----------------------------------------------------------------------------------------
-- Adverbs --
-----------------------------------------------------------------------------------------
local function do_adverb(args, data)
local function parse_and_insert_adv_inflection(field, label, accel, frob)
parse_and_insert_inflection(data, args, field, label, accel, frob)
end
parse_and_insert_adv_inflection("comp", glossary_link("pahambing"))
parse_and_insert_adv_inflection("sup", glossary_link("pasukdol"))
parse_and_insert_adv_inflection("adj", glossary_link("pang-uri"))
end
local function get_adverb_params(advtype)
local params = {
["adj"] = list_param, --adjective(s)
}
if advtype == "base" then
params["comp"] = list_param --comparative(s)
params["sup"] = list_param --superlative(s)
end
return params
end
pos_functions["adverbs"] = {
params = get_adverb_params("base"),
func = do_adverb,
}
pos_functions["comparative adverbs"] = {
params = get_adverb_params("comp"),
func = do_adverb,
pos_category = "adverbs",
}
pos_functions["superlative adverbs"] = {
params = get_adverb_params("sup"),
func = do_adverb,
pos_category = "adverbs",
}
-----------------------------------------------------------------------------------------
-- Verbs --
-----------------------------------------------------------------------------------------
pos_functions["verbs"] = {
params = {
[1] = {},
["noautolinktext"] = boolean_param,
["noautolinkverb"] = boolean_param,
},
func = function(args, data)
if args[1] then
local alternant_multiword_spec = require(it_verb_module).do_generate_forms(args, "from headword", data.heads[1])
local function do_verb_form(slot, label, rowslot, rowlabel)
local forms = alternant_multiword_spec.forms[slot]
local retval
if alternant_multiword_spec.rowprops.all_defective[rowslot] then
if not alternant_multiword_spec.rowprops.defective[rowslot] then
-- No forms, but none expected; don't display anything
return
end
retval = {label = "walang " .. rowlabel}
elseif not forms then
retval = {label = "walang " .. label}
elseif alternant_multiword_spec.rowprops.all_unknown[rowslot] then
retval = {label = "di-alam na " .. rowlabel}
elseif forms[1].form == "?" then
retval = {label = "di-alam na " .. label}
else
-- Disable accelerators for now because we don't want the added accents going into the headwords.
-- FIXME: We now have support in [[Module:accel]] to specify the target explicitly; we can use this
-- so we can add the accelerators back with a param to avoid the accents.
local accel_form = nil -- all_verb_slots[slot]
retval = {label = label, accel = accel_form and {form = accel_form} or nil}
local prev_footnotes = nil
-- If the footnotes for this form are the same as the footnotes for the preceding form or
-- contain the preceding footnotes, replace the footnotes that are the same with "ditto".
-- This avoids repetition on pages like [[succedere]] where the form ''succedétti'' has a long
-- footnote which gets repeated in the traditional form ''succedètti'' (which also has the
-- footnote "[traditional]").
for _, form in ipairs(forms) do
local quals, refs = require(inflection_utilities_module).
convert_footnotes_to_qualifiers_and_references(form.footnotes)
local quals_with_ditto = quals
if quals and prev_footnotes then
local quals_contains_previous = true
for _, qual in ipairs(prev_footnotes) do
if not m_table.contains(quals, qual) then
quals_contains_previous = false
break
end
end
if quals_contains_previous then
local inserted_ditto = false
quals_with_ditto = {}
for _, qual in ipairs(quals) do
if m_table.contains(prev_footnotes, qual) then
if not inserted_ditto then
insert(quals_with_ditto, "ditto")
inserted_ditto = true
end
else
insert(quals_with_ditto, qual)
end
end
end
end
prev_footnotes = quals
insert(retval, {term = form.form, q = quals_with_ditto, refs = refs})
end
end
insert(data.inflections, retval)
end
if alternant_multiword_spec.props.is_pronominal then
insert(data.inflections, {label = glossary_link("panghalip")})
end
if alternant_multiword_spec.props.impers then
insert(data.inflections, {label = glossary_link("di=panao")})
end
if alternant_multiword_spec.props.thirdonly then
insert(data.inflections, {label = "ikatlong panauhan lamang"})
end
local thirdonly = alternant_multiword_spec.props.impers or alternant_multiword_spec.props.thirdonly
local sing_label = thirdonly and "ikatlong panauhan isahan" or "unang panauhan isahan"
for _, rowspec in ipairs {
{"pres", "pangkasalukuyan", true},
{"phis", "historikong pangnakaraan", true},
{"pp", "pandiwaring pangnakaraan", true},
{"imperf", "imperpekto"},
{"fut", "panghinaharap"},
{"sub", "pasakali"},
{"impsub", "imperpektong pasakali"},
} do
local rowslot, desc, always_show = unpack(rowspec)
local slot = rowslot .. (thirdonly and "3s" or "1s")
local must_show = alternant_multiword_spec.is_irreg[slot]
if always_show then
must_show = true
elseif rowslot == "imperf" and alternant_multiword_spec.props.has_explicit_stem_spec then
-- If there is an explicit stem spec, make sure it gets displayed; the imperfect is a good way of
-- showing this.
must_show = true
elseif not alternant_multiword_spec.forms[slot] then
-- If the principal part is unexpectedly missing, make sure we show this.
must_show = true
elseif alternant_multiword_spec.forms[slot][1].form == "?" then
-- If the principal part is unknown, make sure we show this.
must_show = true
end
if must_show then
if rowslot == "pp" then
do_verb_form(rowslot, desc, rowslot, desc)
else
do_verb_form(slot, sing_label .. " na " .. desc, rowslot, desc)
end
end
end
-- Also do the imperative, but not for third-only verbs, which are always missing the imperative.
if not thirdonly and (alternant_multiword_spec.is_irreg.imp2s
or not alternant_multiword_spec.forms.imp2s) then
do_verb_form("imp2s", "ikalawang panauhan isahan pautos", "imp", "pautos")
end
-- If there is a past participle but no auxiliary (e.g. [[malfare]]), explicitly add "no auxiliary". In
-- cases where there's no past participle and no auxiliary (e.g. [[irrompere]]), we don't do this as we
-- already get "no past participle" displayed. Don't display an auxiliary in any case if the lemma
-- consists entirely of reflexive verbs (for which the auxiliary is always [[essere]]).
if alternant_multiword_spec.props.is_non_reflexive and (
alternant_multiword_spec.forms.aux or alternant_multiword_spec.forms.pp
) then
do_verb_form("aux", "pantulong", "aux", "pantulong")
end
-- Add categories.
for _, cat in ipairs(alternant_multiword_spec.categories) do
insert(data.categories, cat)
end
-- If the user didn't explicitly specify head=, or specified exactly one head (not 2+) and we were able to
-- incorporate any links in that head into the 1= specification, use the infinitive generated by
-- [[Module:it-verb]] it in place of the user-specified or auto-generated head so that we get accents marked
-- on the verb(s). Don't do this if the user gave multiple heads or gave a head with a multiword-linked
-- verbal expression such as '[[dare esca]] [[al]] [[fuoco]]'.
if #data.user_specified_heads == 0 or (
#data.user_specified_heads == 1 and alternant_multiword_spec.incorporated_headword_head_into_lemma
) then
data.heads = {}
for _, lemma_obj in ipairs(alternant_multiword_spec.forms.inf) do
local quals, refs = require(inflection_utilities_module).
convert_footnotes_to_qualifiers_and_references(lemma_obj.footnotes)
insert(data.heads, {term = lemma_obj.form, q = quals, refs = refs})
end
end
end
end
}
-----------------------------------------------------------------------------------------
-- Suffix forms --
-----------------------------------------------------------------------------------------
pos_functions["suffix forms"] = {
params = {
[1] = {required = true, list = true, disallow_holes = true},
["g"] = {list = true, disallow_holes = true, type = "genders", flatten = true},
},
func = function(args, data)
validate_genders(args.g)
data.genders = args.g
local suffix_type = {}
for _, typ in ipairs(args[1]) do
insert(suffix_type, "hulaping gumagawa ng " .. typ)
end
insert(data.inflections, {label = "anyong di-lema ng " .. m_table.serialCommaJoin(suffix_type, {conj = "o"})})
end,
}
-----------------------------------------------------------------------------------------
-- Arbitrary parts of speech --
-----------------------------------------------------------------------------------------
pos_functions["arbitrary part of speech"] = {
params = {
[1] = {required = true},
["g"] = {list = true, disallow_holes = true, type = "genders", flatten = true},
},
func = function(args, data)
if data.is_suffix then
error("Can't use [[Template:it-pos]] with suffixes")
end
validate_genders(args.g)
data.genders = args.g
local plpos = m_en_utilities.pluralize(args[1])
data.pos_category = plpos
end,
}
return export
o0zvlihr717ri8f6bjgi48oorlji4ch
Padron:R:Vicassan's Pilipino-English Dictionary 1978
10
33875
178608
171034
2026-11-06T06:51:06Z
GinawaSaHapon
3989
178608
wikitext
text/x-wiki
{{#invoke:checkparams|error}}<!-- Validate template parameters
-->{{cite-book
|last=Santos
|first=Vito C.
|title=Vicassan's Pilipino-English Dictionary
|others=panimula ni {{w|Teodoro A. Agoncillo}}
|year=1978
|location=Metro Manila
|publisher={{w|National Book Store}}
|isbn=971-08-3654-4
|worklang=tl, en
|page={{{page|}}}}}<noinclude>
{{documentation}}
{{reference template cat|tl}}
</noinclude>
6zcp2hxc76kg3ttxuroxjptt78nqm3b
Module:R:it:Treccani
828
35893
178609
170355
2026-11-06T06:55:00Z
GinawaSaHapon
3989
178609
Scribunto
text/plain
local export = {}
function export.create(frame)
local params = {
[1] = {default = mw.title.getCurrentTitle().text},
[2] = {},
["sense"] = {},
["accessdate"] = {},
["encyclopedia"] = {type = "boolean"}
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local strippedTerm = mw.ustring.toNFD(args[1])
:gsub("[\204\128-\205\175]", "") -- strip combining diacritical marks, U+0300-U+036F
:gsub(' ', '-')
local encodedTerm = mw.uri.encode(strippedTerm)
local sense = args["sense"] or ''
if sense ~= '' then
encodedTerm = encodedTerm .. sense
end
local title = (args[2] or args[1]):gsub('_', ' ')
local type = args["encyclopedia"] and "enciclopedia" or "vocabolario"
local link = "[https://www.treccani.it/" .. type .. "/" .. encodedTerm .. " " .. title
.. (sense and ('<sup>' .. sense .. '</sup>') or '')
.. "] " ..
"sa Treccani.it – ''" .. mw.getLanguage("it"):ucfirst(type) .. " Treccani on line'', Istituto dell'Enciclopedia Italiana"
return link
end
return export
mgdsxt5jj75qnkeli9tvjh00p4yavpa
Apendise:Glosaryo
0
35981
178605
178576
2026-11-06T06:28:17Z
GinawaSaHapon
3989
/* P */
178605
wikitext
text/x-wiki
Ito ang glosaryo ng mga katagang pambalarila na ginagamit sa diksiyonaryong ito.
<!-- Paunawa: wag pong tanggalin ang mga kataga sa Ingles para po masuportahan yung mga module at template na hindi pa nasasalin nang maayos. Ang pangunahing kahulugan ay para sa salin nito sa Tagalog. Para sa kataga sa Ingles, ire-redirect natin sa kataga sa Tagalog. Ngayon, posibleng magkaroon ng samu't saring kataga para sa isang konsepto (hal. unang panauhan vs panauhan una), sa ganitong kaso, pakigamit po ang {{anchor}} kung ito ay variation lang ng kataga. Irereserba lang sa mga kataga dito ang mga katagang natatangi. -->
<!-- Wag munang i-link hanggat walang entry dito sa tlwikt. -->
{{compact TOC|num=yes}}
==0-9==
; 1st person
: ''tingnan ang '''{{lg|unang panauhan}}'''''
; 2nd person
: ''tingnan ang '''{{lg|ikalawang panauhan}}'''''
; 3rd person
: ''tingnan ang '''{{lg|ikatlong panauhan}}'''''
==Simbolo==
; {{anchor|*|asterisk|asterisko}} *
: kapag nakalagay bago ang isang kataga, ipinapahiwatig nito na ang naturang kataga ay isa lamang pagtataya at hindi kumpirmado sa pamamagitan ng aktuwal na pagsulat, halimbawa, ang katagang {{m|phi-pro|*dilaw}} ay ang salitang Proto-Pilipino para sa ''[[dilaw]]''.
; {{anchor|**|double asterisk|dobleng asterisko|dalawang asterisko}} **
: kapag nakalagay bago ang isang kataga, ipinapahiwatig nito ang naturang anyo ng kataga ay inaasahan kung susundin ang mga tuntunin, ngunit mali sa katunayan at may ibang anyo na aktuwal na ginagamit, halimbawa ang salitang Ingles na ''[[knife]]'', na kung susundin ang regular na paghuhulaping pangmaramihan ay magiging ''**knifes'', ngunit mali ito dahil ang tama ay ''[[knives]]''.
; {{anchor|[ ]|bracket|brackets|square bracket|square brackets}} [ ]
: kung ginagamit sa isang pagbanggit, ipinapahiwatig nito na ang kataga ay nabanggit lamang nang pahapyaw at hindi aktuwal na ginamit: ikumpara ang salitang Ingles na {{m|en|manoeuvre}} sa mga pangungusap na ''Many will find ''manoeuvre'' hard to spell'' ("Marami ang nahihirapan baybayin ang salitang ''manoeuvre''") at ''He ''manoeuvres'' his car to avoid a collision'' ("Minaneobra niya ang kanyang sasakyan para makaiwas sa banggaan"). Bukod dito, ginagamit din ang mga ito upang magbigay impormasyon o konteksto, halimbawa ay "mahilig siyang kumain ng {{l|tl|libro|id=anatomiya}} [ng baka]".
==A==
; {{anchor|a|a.}} a.
: [[#daglat|daglat]] para sa Latin ''[[ante]]'' ("[[bago]] [hindi ngayon o mamaya]"). Ibig sabihin, ang isang pagbanggit na may taon na ''a.'' 1924 ay nangangahulugan na ang naturang pagbanggit na yon ay bago ang taong 1924.
; abbreviation
: ''tingnan ang '''{{lg|daglat}}'''''
; ablatibo, ablative, kaukulang ablatibo
: ''tingnan ang '''{{lg|palayo}}'''''
; {{anchor|ablaut|grade|grado}} ablaut
: sa Proto-Indo-Europeo at mga anak nito (pamilyang Indo-Europeo), tumutukoy ito sa sistema ng pagpapalitan ng mga patinig kung saan maaaring magbago ang mga patinig ng isang salita depende sa kahulugan. Halimbawa sa Ingles (isa sa mga anak na wika nito) ang {{m|en|goose}} at {{m|en|geese}}, kung saan ang nauna ay ang anyong pang-isahan at ang huli ay ang anyong pangmaramihan. Ginagamit ang sistemang ito sa [[#banghay|pagbabanghay]] at paggawa ng salita. May partikular na klase ng ablaut na tinatawag na '''grade''' o ''grado'' (kagaya ng [[#zero-grade|zero-grade]]). Ikumpara sa [[#umlaut|umlaut]].
; absolutibo, absolutive
: ''tingnan ang '''{{lg|patanggap}}'''''
; abstraktong pangngalan, abstract noun
: ''tingnan ang '''{{lg|pangngalang basal}}'''''
; {{anchor|AD}} AD
: daglat para sa ''Anno Domini'', katumbas ng [[#KP|KP]] sa mundong Kristiyano.
; adjective, adj.
''tingnan ang '''{{lg|pang-uri}}'''''
; adverb, adv.
: ''tingnan ang '''{{lg|pang-abay}}'''''
; {{anchor|aktibong tinig|tahasang tinig|active voice}} aktibong tinig, active voice
: [[#tinig|tinig]] na nagpapakita sa anyo ng pandiwa kung saan ang simuno mismo ang siyang nagsasagawa sa kilos. Ikumpara sa ''[[#pasibong tinig|pasibong tinig]]''.
; {{anchor|aral na hiram|arál na hiram|learned borrowing|learned loan}} aral na hiram
: [[#hiram|salitang hiram]] na sadyang hiniram mula sa ibang wika imbes na dumaan sa likas na panghihiram ng mga wika sa isa't isa. Kadalasang resulta ito ng pagpunan ng mga mananalita sa mga konseptong wala sa kanilang wika. Halimbawa nito sa Tagalog ang {{m|tl|bansa}}, na isang aral na hiram mula sa Malay {{m|ms|bangsa}} upang punan ang konsepto ng Espanyol {{m|es|nacion}} dahil hindi maituturing na direktang katumbas nito ang {{m|tl|bayan}}.
; arkaiko, archaic
: ''tingnan ang '''{{lg|makaluma}}'''''
; {{anchor|aspect|aspekto|aspeto|grammatical aspect}} aspekto, aspeto, aspect
: katangian ng pandiwa na magbago ayon sa kakumpletuhan ng kilos. Wag ikalito sa [[#panahon|panahon]], na tumutukoy sa oras o panahon kung kailan isinagawa ang kilos. Sa Tagalog, ito ang [[#naganap|naganap]], [[#nagaganap|nagaganap]], [[#magaganap|magaganap]], at [[#kagaganap|kagaganap]].
==B==
; balintiyak na tinig
: ''tingnan ang '''{{lg|pasibong tinig}}'''''
; {{anchor|banghay|pagbabanghay|conjugation|inflection}} banghay, pagbabanghay
: pagbabago sa anyo ng mga salita ayon sa kategorya kagaya ng [[#aspekto|aspekto]], [[#panahon|panahon]], o [[#kailanan|kailanan]]. Karaniwang tumutukoy ito sa Tagalog sa proseso sa mga pandiwa, [[#deklinasyon|deklinasyon]] ang katumbas sa ibang bahagi ng pananalita kagaya ng sa pangngalan, panghalip, at pang-uri.
; {{anchor|bahagi ng pananalita|part of speech|PoS|POS|BNP|BnP}} bahagi ng pananalita, BNP, BnP
: kategorya ng salita ayon sa tungkulin nito sa isang pangungusap. Ilan sa mga halimbawa ang [[#pangngalan|pangngalan]], [[#panghalip|panghalip]], [[#pandiwa|pandiwa]], at [[#pang-uri|pang-uri]]. Maaaring kabilang ang mga salita sa higit sa isang kategorya, gaya ng sa Tagalog {{m|tl|pula}}, na maaaring gamitin bilang pangngalan (''ang kotse ay pula'') o pang-uri (''ang pulang kotse'').
; {{anchor|bahagyang aral|bahagyang arál|bahagyang aral na hiram|bahagyang arál na hiram|semi-learned|semi-learned borrowing}} bahagyang aral na hiram
: [[#hiram|hiram]] na salitang sadyang hiniram sa isang lumang wika na bahagyang binago upang umayon sa ponolohiya at morpolohiya ng nanghiram na wika. Ikumpara sa mga ''[[#aral na hiram|aral na hiram]]'', na may katulad na proseso ng panghihiram ngunit walang pagbabago, at ''[[#mana|mana]]'', na likas na nagmula sa isang lumang salita at dumaan sa mga likas na proseso ng wika.
; basal na pangngalan
: ''tingnan ang '''{{lg|pangngalang basal}}'''''
; {{anchor|BC|BK}} BC, BK
: daglat para sa Bago si Kristo, katumbas ng [[#BKP|BKP]] sa mundong Kristiyano.
; {{anchor|bihira|madalang|rare}} bihira, madalang
: ipinapahiwatig na ang naturang salita o kahulugan ay kumpirmadong ginagamit sa iilang piling konteksto at hindi karaniwang makikita o ginagamit labas sa mga kontekstong ito. Ikumpara sa [[#di-karaniwan|di-karaniwan]], na kahit papaano ay ginagamit ng malaki-laking grupo ngunit hindi ng mayorya.
; {{anchor|BCE|BKP}} BKP, BCE
: daglat para sa Bago ang Karaniwang Panahon, katumbas ng [[#BK|BK]] sa mundong sekular.
; borrowing, borrowed
: ''tingnan ang '''{{lg|hiram}}'''''
; by extension
: ''tingnan ang '''{{lg|pinalawak}}'''''
==C==
; {{anchor|c.|circa|sirka}} circa, sirka, c.
: ginagamit upang ipahiwatig na ang taon ay isa lamang pagtataya at hindi tumutukoy sa mismong taon.
; colloquial
: ''tingnan ang '''{{lg|kolokyal}}'''''
; comparative
: ''tingnan ang '''{{lg|pahambing}}'''''
; concrete noun
: ''tingnan ang '''{{lg|pangngalang tahas}}'''''
; conjugation
: [[#banghay|pagbabanghay]] sa pandiwa
; contemplative
: ''tingnan ang '''{{lg|magaganap}}'''''
==D==
; {{anchor|abbr|abbreviation|daglat}} daglat
: pinaikling anyo ng isang salita, halimbawa ay ''[[Dr.]]'' para sa [[doktor]].
; dated
: ''tingnan ang '''{{lg|luma}}'''''
; {{anchor|declination|declension|deklinasyon}} deklinasyon, declination, declension
: [[#banghay|pagbabanghay]] sa pangngalan at katulad
; diaresis, diaeresis
: ''tingnan ang '''{{lg|patuldok}}'''''
; di-literal
: ''tingnan ang '''{{lg|matalinghaga}}'''''
; {{anchor|di-pormal|impormal|inpormal|informal}} di-pormal
: ipinapahiwatig na ang naturang salita o balarila ay ginagamit sa pamilyar o kaswal na konteksto. Kabaligtaran ito ng ''[[#pormal|pormal]]'', na ginagamit naman sa mga pormal na konteksto. Kabilang sa mga di-pormal na pananalita ang [[#kolokyal|kolokyal]], ngunit hindi dapat ikalito sa ''[[#balbal|balbal]]'' o ''[[#di-pamantayan|di-pamantayan]]''.
; doblete, doublet
: ''tingnan ang '''{{lg|magkaparehong pinagmulan}}'''''
==E==
; extended, extended sense
: ''tingnan ang '''{{lg|pinalawak}}'''''
==F==
; figurative
: ''tingnan ang '''{{lg|matalinghaga}}'''''
; first person, first-person
: ''tingnan ang '''{{lg|unang panauhan}}'''''
; formal
: ''tingnan ang '''{{lg|pormal}}'''''
; future tense
: ''tingnan ang '''{{lg|panghinaharap}}'''''
==G==
; genitive
: ''tingnan ang '''{{lg|paari}}'''''
==H==
; henitibo, kaukulang henitibo
: ''tingnan ang '''{{lg|paari}}'''''
; hinaharap
: ''tingnan ang '''{{lg|panghinaharap}}'''''
; {{anchor|hiram na salita|salitang hiram|salitang-hiram|hiniram|hiniram na salita|salitang hiniram|hiram|loanword|loan word|loaned|borrowing|borrowed|borrowed term}} hiram, hiram na salita, panghihiram
: salitang nagmula sa ibang wika. Iba ito sa pagbuo ng salita na nagmula sa mas matandang anyo ng parehong wika. Humihiram madalas ang Tagalog sa Espanyol at Ingles, bagamat marami rin itong wika na pinanghihiraman. Ilan sa mga halimbawa ang {{m|tl|trak}} at {{m|tl|magasin}} mula Ingles at {{m|tl|oras}} at {{m|tl|maleta}} mula naman sa Espanyol. Maaari itong binago nang lubusan upang umakma sa pagbaybay ng wikang humiram gaya ng {{m|tl|kumpisal}} mula Espanyol {{m|es|confesar}}, o hindi, lalo na kung umaakma ang orihinal na baybay sa pagbaybay ng wikang humihiram gaya ng {{m|tl|bola}}, na nagmula sa Espanyol {{m|es|bola}}. Ikumpara sa ''[[#kalko|kalko]]'', kung saan tanging kahulugan lamang ang hiniram.
; {{anchor|historikal|historical|makasaysayan}} historikal, historical
: ipinapahiwatig na ang naturang salita ay tumutukoy sa isang konseptong wala na sa kasalukuyan, gaya ng [[Unyong Sobyet]]. Iba ito sa ''[[#lipas na|lipas na]]'' o ''[[#makaluma|makaluma]]'', na maaari pa ring tumukoy sa isang bagay na meron sa kasalukuyan kahit na hindi na ginagamit ng marami ang mga salitang ito.
; {{anchor|homopono|homophone}} homopono, homophone
: tumutukoy sa mga salitang magkapareho ng bigkas ngunit nagkakaiba sa pagbaybay, kahulugan, o salin.
==I==
; {{anchor|second person|second-person|2nd person|pangalawang panauhan|ikalawang panauhan}} ikalawang panauhan, pangalawang panauhan
: [[#panauhan|panauhan]] na tumutukoy sa kausap ng nagsasalita, halimbawa sa Tagalog ang mga panghalip na ''[[ikaw]]'', ''[[ka]]'', at ''[[kayo]]''.
; {{anchor|third person|third-person|3rd person|pangatlong panauhan|ikatlong panauhan}} ikatlong panauhan, pangatlong panauhan
: [[#panauhan|panauhan]] na tumutukoy sa pinag-uusapan ng nagsasalita kung saan hindi siya kabilang, halimbawa sa Tagalog ang mga panghalip na ''[[siya]]'', ''[[niya]]'', at ''[[sila]]''.
; imperatibo, imperative
: ''tingnan ang '''{{lg|pautos}}'''''
; imperpektibo, imperfective
: ''tingnan ang '''{{lg|nagaganap}}'''''
; indicative
: ''tingnan ang '''{{lg|paturol}}'''''
; inflection
: ''tingnan ang '''{{lg|banghay}}'''''
; informal
: ''tingnan ang '''{{lg|di-pormal}}'''''
; inherited
: ''tingnan ang '''{{lg|mana}}'''''
; {{anchor|isahan|isa|singular|pang-isahan|sing.|isahang bilang}} isahan
: [[#kailanan|kailanan]] na nagpapahiwatig na iisa lamang ang bagay.
==K==
; {{anchor|kagaganap|kakaganap}} kagaganap, kakaganap
: [[#aspekto|aspekto]] na nagpapahiwatig na kamakailan lang natapos ang isang kilos, halimbawa, ''kakakain''.
; {{anchor|number|grammatical number|kailanan|bilang}} kailanan
: kategorya ng balarila na naglalarawan sa dami o bilang ng isang bagay. Ilan sa mga halimbawa ang [[#maramihan|maramihan]] at [[#isahan|isahan]]
; kasalukuyan
: ''tingnan ang '''{{lg|pangkasalukuyan}}'''''
; kaso
: ''tingnan ang '''{{lg|kaukulan}}'''''
; {{anchor|case|grammatical case|kaukulan|kaso}} kaukulan
: isa sa mga anyo ng pangngalan depende sa tungkulin nito sa isang pangungusap, ilan sa mga halimbawa nito ang [[#palagyo|palagyo]] at [[#paari|paari]].
; {{anchor|colloquial|kolokyal}} kolokyal
: ipinapahiwatig na ang naturang salita o kahulugan ay ginagamit sa isang partikular na barayti ng wika. Ginagamit lamang ang mga salitang ito sa kalapit o kaswal na konteksto. Maaaring katumbas ng ''[[#di-pormal|di-pormal]]'' sa ibang mga wika, at kung itinatangi ang dalawa kagaya ng sa Tagalog, mas malakas ang kolokyal kesa di-pormal.
; komparatibo, kumparatibo
: ''tingnan ang '''{{lg|pahambing}}'''''
; kongkretong pangngalan, pangngalang kongkreto
: ''tingnan ang '''{{lg|pangngalang tahas}}'''''
; kontemplatibo
: ''tingnan ang '''{{lg|magaganap}}'''''
; {{anchor|KP|CE}} KP, CE
: daglat para sa Karaniwang Panahon, katumbas ng [[#AD|AD]] sa mundong sekular
==L==
; learned borrowing, learned loan
: ''tingnan ang '''{{lg|aral na hiram}}'''''
; {{anchor|obsolete|lipas na|obs.}} lipas na
: hindi na ginagamit, at hindi na maiintindihan ng karaniwang tao. Mas malakas kesa ''[[#makaluma|makaluma]]'', at di hamak na mas malakas kesa ''[[#luma|luma]]''. Iba ito sa ''[[#historikal|historikal]]'', na ginagamit pa sa kasalukuyan ngunit tumutukoy sa isang bagay na wala na.
; loanword, loan word
: ''tingnan ang '''{{lg|hiram}}'''''
; {{anchor|dated|luma|laos}} luma, laos
: ginagamit noon, ngunit hindi na ngayon, bagamat ginagamit pa rin ng nakakatandang henerasyon. Kumbaga, laos na, gaya ng {{m|tl|walastik}}. Mas mahina sa ''[[#makaluma|makaluma]]'', na hindi na ginagamit maliban kung gustong magtunog-luma, o ''[[#lipas na|lipas na]]'', na wala na'ng gumagamit at nakakaintindi sa kahit anong konteksto.
==M==
; {{anchor|contemplative|magaganap|kontemplatibo}} magaganap
: [[#aspekto|aspekto]] na nagpapahiwatig na hindi pa nagsisimula ang isang kilos, halimbawa, ''kakain''. Sa Tagalog, karaniwan itong naipagkakamali sa [[#panahon|panahong]] [[#panghinaharap|panghinaharap]] dahil sa pagsasagawa sa kilos sa hinaharap (ikumpara ang ''kakain ako'' sa ''kakain ako mamaya'').
; {{anchor|doublet|doblete|magkaparehong pinagmulan|parehong ninuno|parehong pinagmulan}} magkaparehong pinagmulan
: mga pares ng salita ng isang wika na parehong nagmula sa iisang ninunong salita ngunit ay dalawang magkaibang salita sa modernong panahon. Madalas itong nangyayari dahil sa resulta ng [[#hiram|panghihiram]] sa mga wikang may kaugnayan dito gaya ng kaso ng {{m|tl|baliw}} at {{m|tl|ibayo}} na pawang tumutukoy sa magkakaibang konsepto ngunit parehong nagmula sa iisang ninunong salitang Proto-Malayo-Polinesyo {{m|map-pro|*baliw}}, o di kaya'y nabuo sa magkaibang punto ng kasaysayan ng wika gaya naman ng kaso ng Tagalog {{m|tl|ahedres}} at {{m|tl|satol}}, parehong tumutukoy sa laro ngunit ang nauna ay direktang hiniram sa Espanyol at ang huli ay isang [[#lipas na|lipas na salitang]] nagmula sa Sanskrit, na pinakapinagmulan naman ng salitang Espanyol.
; {{anchor|makaluma|archaic|arkaiko}} makaluma
: hindi na madalas gamitin, at kung gamitin man sa kasalukuyan ay upang magbigay ng tono ng kalumaan gaya ng mga nobelang historikal. Halimbawa ang paggamit sa salitang ''[[kalatas]]'' imbes na ''[[papel]]''. Mas mahina kesa ''[[#lipas na|lipas na]]'', na hindi na talaga ginagamit at maiintindihan, ngunit mas malakas pa rin kesa ''[[#luma|luma]]'', na naiintindihan pa rin at ginagamit ng marami-rami na bahagi ng mas matandang henerasyon.
; makasaysayan
: ''tingnan ang '''{{lg|historikal}}'''''
; {{anchor|inherited|inherited term|inheritance|mana|manang salita|minanang salita|minana}} mana, manang salita, pagmamana
: tumutukoy sa mga salitang nagmula sa isang lumang salita mula sa magulang wika nito sa pamamagitan ng likas na pagbabago ng tunog at walang karagdagang paglalapi, hindi tulad ng sa mga [[#hiram|hiram]]. Halimbawa, nagmula ang salitang {{m|tl|dahon}} sa magulang wika nitong Proto-Pilipino {{m|phi-pro|*dahun}}.
; {{anchor|maramihan|marami|pangmaramihan|plural|pl.|maramihang bilang}} maramihan
: [[#kailanan|kailanan]] na nagpapahiwatig na higit sa isa ang dami ng mga bagay. Sa Tagalog, minamarkahan ito ng partikulong ''[[mga]]'', habang sa ibang wika, binabanghay ito gaya ng sa Ingles {{m|en|books}}, na anyong maramihan ng {{m|en|book}}.
; {{anchor|figurative|non-literal|di-literal|matalinghaga}} matalinghaga
: hindi [[#literal|literal]], pawang tumutukoy sa mga [[metapora]], [[idyoma]], at katulad na paraan ng pananalita na hindi dapat unawain sa literal nitong kahulugan gaya ng ''[[balat-sibuyas]] ''("madaling umiyak; iyakin").
; mood
: ''tingnan ang '''{{lg|panagano}}'''''
==N==
; {{anchor|perpektibo|naganap|perfective}} naganap
: [[#aspekto|aspekto]] na nagpapahiwatig na tapos na ang isang kilos, halimbawa, ''kumain''. Sa Tagalog, karaniwan itong naipagkakamali sa [[#panahon|panahong]] [[#pangnakaraan|pangnakaraan]] dahil sa pagkakumpleto ng kilos (ikumpara ang ''kumain ako'' sa ''kumain na ako''). Wag ikalito sa ''[[#perpekto|perpekto]]'', na wala sa Tagalog ngunit mabubuo sa mga wikang may panahon kagaya ng sa Ingles.
; {{anchor|imperpektibo|nagaganap|imperfective}} nagaganap
: [[#aspekto|aspekto]] na nagpapahiwatig na hindi pa tapos ang isang kilos, halimbawa, ''kumakain''. Sa Tagalog, karaniwan itong naipagkakamali sa [[#panahon|panahong]] [[#pangkasalukuyan|pangkasalukuyan]] dahil sa pagsasagawa sa kilos sa kasalukuyan (ikumpara ang ''kumakain ako'' sa ''kumakain ako ngayon''). Wag ikalito sa ''[[#imperpekto|imperpekto]]'', na wala sa Tagalog ngunit mabubuo sa mga wikang may panahon kagaya ng sa Ingles.
; nakaraan, nagdaan
: ''tingnan ang '''{{lg|pangnakaraan}}'''''
; {{anchor|nilipat|transferred|transferred sense}} nilipat
: ipinapahiwatig na ang orihinal na kahulugan ng isang salita ay ginamit upang tumukoy sa isang partikular na konseptong may kaugnayan dito. Halimbawa, sa Latin, pumapatungkol ang salitang {{m|la|liber}} sa paglaya, ngunit nagkaroon ito ng nilipat na kahulugan para tumukoy sa mga malalayang tao (hindi alipin). Ikumpara sa ''[[#pinalawak|pinalawak]]'', na pumapatungkol naman sa kahulugan na pinalawak upang tumukoy sa ibang konseptong katulad nito.
; nominatibo, nominative, kaukulang nominatibo
: ''tingnan ang '''{{lg|palagyo}}'''''
; non-literal
: ''tingnan ang '''{{lg|matalinghaga}}'''''
; noun, n.
: ''tingnan ang '''{{lg|pangngalan}}'''''
==O==
; obsolete, obs.
: ''tingnan ang '''{{lg|lipas na}}'''''
==P==
; {{anchor|genitive|genitive case|kaukulang paari|paari}} paari, kaukulang paari
: [[#kaukulan|kaukulan]] na nagpapahiwatig sa pag-aari o kaugnayan, sa Tagalog, minamarkahan ito ng ''[[ng]]'' para sa mga di-tao at ''[[ni]]'' (''[[nina]]'' kapag maramihan) para sa mga tao.
; {{anchor|pahambing|kumparatibo|komparatibo|comparative}} pahambing
: [[#banghay|pagbabanghay]] sa isang pang-uri upang ipakita ang antas ng paghahambing na higit sa karaniwan ngunit hindi nasa tugatog. Sa Tagalog, ginagamit ang partikulong ''[[mas]]'' gaya ng ''mas masarap'' upang ipakita ang antas na ito.
; {{anchor|nominative|nominative case|kaukulang palagyo|palagyo}} palagyo, kaukulang palagyo
: [[#kaukulan|kaukulan]] na nagpapahiwatig sa gumagawa ng kilos, sa Tagalog, minamarkahan ito ng ''[[ang]]'' para sa mga di-tao o ''[[si]]'' (''[[sina]]'' kapag maramihan) para sa mga tao.
; {{anchor|ablative|ablative case|kaukulang palayo|palayo}} palayo, kaukulang palayo
: [[#kaukulan|kaukulan]] na nagpapahiwatig ng paglayo mula sa isang bagay. Para sa mga wikang meron nito, ginagamit ito nang mag-isa o may kasamang pang-ukol. Pinakamalapit na halimbawa sa Tagalog ay ang paggamit sa pang-ukol na ''[[mula]]'', kagaya ng sa ''mula Buendia''. May mga wikang tulad ng Latin na meron nito ngunit nakakuha ng maraming gamit bukod sa pagpapahiwatig ng paglayo.
; {{anchor|aug.|augmentative|pampalaki}} pampalaki
: anyo ng isang salita na ginagamit upang ipahiwatig ang kalakihan, kahalagahan, katandaan, o katindihan nito.
; {{anchor|dim.|diminutive|pampaliit}} pampaliit
: anyo ng isang salita na ginagamit upang ipahiwatig ang kaliitan, kabataan, o kawalang-halaga nito.
; {{anchor|grammatical mood|mood|panagano}} panagano
: anyo ng pandiwa na nagpapahiwatig sa paano sinabi ng nagsasalita ang isang bagay, gaya halimbawa ng ''[[#pasakali|pasakali]]'', na nagpapahiwatig na ang sinabi ay maaaring mangyari.
; {{anchor|panahon|tense|grammatical tense}} panahon
: katangian ng pandiwa na magbago depende sa oras o panahon kung kailan isinagawa ang kilos. Wag ikalito sa [[#aspekto|aspekto]], na tumutukoy sa kakumpletuhan ng kilos. Walang ganito sa Tagalog; pinakamalapit na katumbas ang paggamit sa mga salitang nagpapahiwatig ng oras gaya ng ''[[ngayon]]'', ''[[na]]'', ''[[kanina]]'', ''[[kasalukuyan]]'', at ''[[mamaya]]''. Ilan sa mga halimbawa ang [[#pangnakaraan|pangnakaraan]], [[#panghinaharap|panghinaharap]], at [[#pangkasalukuyan|pangkasalukuyan]].
; {{anchor|person|grammatical person|panauhan}} panauhan
: kategorya sa balarila na naglalarawan sa kaugnayan ng nagsasalita sa pinag-uusapan, ilan sa mga halimbawa ang [[#unang panauhan|unang panauhan]], [[#ikalawang panauhan|ikalawang panauhan]], at [[#ikatlong panauhan|ikatlong panauhan]].
; {{anchor|pandiwa|pnd|v.|vb.|verb}} pandiwa
: [[#bahagi ng pananalita|bahagi ng pananalita]] na tumutukoy sa kilos, kaganapan, o katayuan. Tinatawag na [[#pagbabanghay|pagbabanghay]] ang proseso ng pagbabago ng anyo nito ayon sa tungkulin nito sa pangungusap.
; {{anchor|pang-abay|pnb|adverb|adv.}} pang-abay
: [[#bahagi ng pananalita|bahagi ng pananalita]] na naglalarawan sa pang-uri, pandiwa, o kapwa pang-abay. Sa Tagalog, umaakto ito na parang pang-uri at [[#banghay|binabanghay]] din sa kaparehong paraan, ang pagkakaiba lamang ay kung anong bahagi ng pananalita ang inilalarawan nito. Halimbawa ay ''mabilis maglakad'', kung saan ''mabilis'' ang pang-abay sa pandiwang ''maglakad''. Pansinin na magagamit din ang mga ito bilang pang-uri, gaya ng sa ''mabilis na lakad''.
; {{anchor|panghalip|pnh|pron.|pro.|pronoun}} panghalip
: [[#bahagi ng pananalita|bahagi ng pananalita]] na humahalili sa isang pangngalan at tumutukoy sa paksa ng pinag-uusapan. Maaari itong humalili sa pangalan ng tao na nasa usapan gaya ng mga panghalip panao {{m|tl|ikaw}} at {{m|tl|ako}}, o tumukoy sa ibang tao ({{m|tl|siya}}) o bagay ({{m|tl|iyon}}).
; {{anchor|pang-uri|pnu|adjective|adj.}} pang-uri
: [[bahagi ng pananalita]] na naglalarawan sa pangngalan o panghalip. Marami, ngunit hindi lahat, ng mga pang-uri sa Tagalog ang kinakabitan ng unlaping {{m|tl|ma-}} gaya ng ''maganda''. Halimbawa ay ''pulang mansanas'' o ''mansanas na pula'', sa parehong kaso, ''pula'' ang pang-uri.
; {{anchor|panghinaharap|hinaharap|future tense|panahong panghinaharap}} panghinaharap
: [[#panahon|panahon]] na nagpapahiwatig na ang kilos ay isasagawa sa hinaharap. Sa Tagalog, minamarkahan ito ng mga salitang umuukol sa hinaharap gaya ng ''[[mamaya]]'' o ''[[bukas]]''. Sa Ingles, minamarkahan ito ng mga salitang {{m|en|will}} o {{m|en|shall}}.
; pang-isahan
: ''tingnan ang '''{{lg|isahan}}'''''
; {{anchor|pangkasalukuyan|kasalukuyan|panahong pangkasalukuyan|present tense}} pangkasalukuyan
: [[#panahon|panahon]] na nagpapahiwatig na ang kilos ay isinasagawa sa ngayon. Sa Tagalog, minamarkahan ito ng mga salitang umuukol sa kasalukuyan gaya ng ''[[ngayon]]'' o ''[[na]]''. Sa Ingles, karaniwang binabanghay ang mga pandiwa gamit ang hulaping {{m|en|-ing}} para maipahiwatig ang panahong ito.
; pangmaramihan
: ''tingnan ang '''{{lg|maramihan}}'''''
; {{anchor|pangnakaraan|nakaraan|nagdaan|pangnagdaan|panahong pangnakaraan|past tense}} pangnakaraan, pangnagdaan
: [[#panahon|panahon]] na nagpapahiwatig na ang kilos ay isinagawa sa nakaraan. Sa Tagalog, minamarkahan ito ng mga salitang umuukol sa nakaraan gaya ng ''[[kanina]]'' o ''[[kahapon]]''. Halimbawa ay ang salitang Ingles na {{m|en|saw}}, ang anyong pangnakaraan ng {{m|en|see}}.
; {{anchor|noun|pangngalan|n.|png}} pangngalan
: [[#bahagi ng pananalita|bahagi ng pananalita]] na tumutukoy sa [[tao]], [[bagay]], [[lugar]], o [[konsepto]].
; {{anchor|basal na pangngalan|pangngalang basal|abstract noun|abstraktong pangngalan|pangngalang abstrakto}} pangngalang basal, basal na pangangalan
: [[#pangngalan|pangngalan]] na tumutukoy sa mga konsepto, kumpara sa mga [[#pangngalang tahas|pangngalang tahas]], na tumutukoy naman sa mga pisikal na bagay.
; {{anchor|tahas na pangngalan|pangngalang tahas|concrete noun|kongkretong pangngalan|pangngalang kongkreto}} pangngalang tahas, tahas na pangangalan
: [[#pangngalan|pangngalan]] na tumutukoy sa mga pisikal na bagay, kumpara sa mga [[#pangngalang basal|pangngalang basal]], na tumutukoy naman sa mga konsepto.
; part of speech, POS, PoS
: ''tingnan ang '''{{lg|bahagi ng pananalita}}'''''
; {{anchor|subjunctive|subjunctive mood|pasakali|panaganong pasakali}} pasakali
: [[#panagano|panagano]] na nagpapahiwatig na ang sinabi ng nagsasalita ay maaaring mangyari. Ikumpara sa ''[[#paturol|paturol]]'', na naglalarawan sa isang tunay na pangyayari.
; {{anchor|pasibong tinig|balintiyak na tinig|passive voice}} pasibong tinig, passive voice
: [[#tinig|tinig]] na nagpapakita sa anyo ng pandiwa kung saan hindi simuno ang nagsasagawa sa kilos, at minsan ay ito mismo ang tumatanggap ng kilos. Ikumpara sa [[#aktibong tinig|aktibong tinig]].
; past tense
: ''tingnan ang '''{{lg|pangnakaraan}}'''''
; {{anchor|pasukdol|superlative|superlatibo}} pasukdol
: [[#banghay|pagbabanghay]] sa pang-uri upang ipakita ang antas ng paghahambing na higit sa lahat. Sa Tagalog, ikinakabit ang mga unlaping {{m|tl|pinaka-}} o {{m|tl|napaka-}} gaya ng ''pinakamasarap'' o ''napakasarap'' upang ipakita ang antas na ito.
; {{anchor|absolutive|absolutibo|kaukulang absolutibo|kaukulang patanggap|patanggap}} patanggap, kaukulang patanggap
: [[#kaukulan|kaukulan]] na nagpapahiwatig sa tumatanggap o nakakaranas ng resulta ng kilos.
; {{anchor|diaresis|diaeresis|patuldok}} patuldok
: [[#tuldik|tuldik]] ( ¨ ) na karaniwang inilalagay sa taas ng isang patinig. Sa mga wikang Pilipino, ginagamit lamang ito para sa titik ''e'' (''ë'') upang kumatawan sa tunog na schwa sa ilang mga wika gaya ng Maranaw (''Mëranaw''). Sa ibang mga wika, inilalagay ito sa mga patinig upang sabihin na dapat itong bigkasin nang hiwalay at hindi bilang [[diptonggo]], gaya ng {{m+|fr|naïf|t=walang muwang}}, o para sabihin na iba ang pagbigkas sa naturang patinig kumpara sa karaniwan, gaya ng sa Aleman {{m|de|über|t=ibabaw}} at {{m|de|König|t=hari}}, sa prosesong tinatawag na [[#umlaut|umlaut]].
; {{anchor|indicative mood|indikatibo|indicative|paturol|panaganong paturol}} paturol
: [[#panagano|panagano]] na nagpapahiwatig na ang sinabi ng nagsasalita ay naganap o naglalarawan sa isang tunay na pangyayari o bagay. Ikumpara sa ''[[#pasakali|pasakali]]'', na naglalarawan ng mga pangyayaring maaaring mangyari.
; {{anchor|imperative|imperative mood|imperatibo|pautos|panaganong pautos}} pautos
: [[#panagano|panagano]] na nagpapahiwatig na isang utos ang pahayag. Sa Tagalog, binabanghay ang mga pandiwa upang maipakita ito, gaya ng ''[[kumuha|kunin]]'' o ''[[magligpit|iligpit]]''.
; perpektibo, perfective
: ''tingnan ang '''{{lg|naganap}}'''''
; person
: ''tingnan ang '''{{lg|panauhan}}'''''
; {{anchor|pinalawak|extended sense|by extension}} pinalawak
: ipinapahiwatig na ang orihinal na kahulugan nito ay pinalawak upang tumukoy sa mas maraming konsepto na hindi kasama sa orihinal na kahulugan nito. Halimbawa, tumutukoy ang salitang {{m|tl|mabigat}} sa literal na pisikal na bigat, ngunit nagkaroon ito kalaunan ng pinalawak na kahulugan na "nakakapagod, mahirap, seryoso" gaya ng sa ''mabigat na parusa''. Ikumpara ito sa ''[[#nilipat|nilipat]]'', na tumutukoy naman sa paglipat ng kahulugan upang tumukoy sa isang partikular na konseptong may kaugnayan dito.
; plural, pl
: ''tingnan ang '''{{lg|maramihan}}'''''
; pnb<!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|pang-abay}}'''''
; pnd <!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|pandiwa}}'''''
; png <!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|pangngalan}}'''''
; pnh <!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|panghalip}}'''''
; pnu <!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|pang-uri}}'''''
; {{anchor|formal|pormal}} pormal
: ipinapahiwatig na ang naturang salita o balarila ay ginagamit sa mga pormal na konteksto, gaya ng sa opisyal o legal na dokumento, panitikan, o minsan kapag kausap ang mas nakakatanda (sa edad o trabaho). Kabaligtaran ito ng ''[[#di-pormal|di-pormal]]'', na karaniwang ginagamit sa mga kaswal na konteksto.
; present tense
: ''tingnan ang '''{{lg|pangkasalukuyan}}'''''
; pronoun, pron., pro.
: ''tingnan ang '''{{lg|panghalip}}'''''
==R==
; rare
: ''tingnan ang '''{{lg|bihira}}'''''
==S==
; salitang-hiram, salitang hiram
: ''tingnan ang '''{{lg|hiram}}'''''
; second person, second-person
: ''tingnan ang '''{{lg|ikalawang panauhan}}'''''
; semi-learned, semi-learned borrowing
: ''tingnan ang '''{{lg|bahagyang aral na hiram}}'''''
; singular, sing.
: ''tingnan ang '''{{lg|isahan}}'''''
; subjunctive
: ''tingnan ang '''{{lg|pasakali}}'''''
; superlatibo, superlative
: ''tingnan ang '''{{lg|pasukdol}}'''''
==T==
; tahas na pangngalan
: ''tingnan ang '''{{lg|pangngalang tahas}}'''''
; tahasang tinig
: ''tingnan ang '''{{lg|aktibong tinig}}'''''
; tense
: ''tingnan ang '''{{lg|panahon}}'''''
; third person, third-person
: ''tingnan ang '''{{lg|ikatlong panauhan}}'''''
; {{anchor|tinig|voice}} tinig
: katangian ng pandiwa na nagpapahiwatig ng kaugnayan nito sa simuno. Ilan sa mga halimbawa ang [[#aktibong tinig|aktibo]] at [[#pasibong tinig|pasibo]].
; tiyempo
: ''tingnan ang '''{{lg|panahon}}'''''
; transferred, transferred sense
: ''tingnan ang '''{{lg|nilipat}}'''''
; {{anchor|tuldik|diacritic|diacritical mark|diakritiko|diyakritiko|dayakritiko|accent|accent mark|aksent}} tuldik
: simbolong ikinakabit o inilalagay sa isang titik upang baguhin ang tunog nito. Sa Tagalog at mga wikang Pilipino, may tatlong tuldik na ginagamit, [[#pahilis|pahilis]] ( ´ ), [[#paiwa|paiwa]] ( ` ), at [[#pakupya|pakupya]] ( ^ ), na ginagamit upang ipakita ang pagbigkas sa mga salita para maitangi ito sa mga may kaparehong baybay. Bukod dito, ginagamit din sa ilang mga wikang Pilipino ang tuldik na [[#patuldok|patuldok]], gaya ng sa Maranaw, upang isulat ang tunog na schwa.
==U==
; {{anchor|umlaut}} umlaut
: pagbabago sa tunog kung saan binabago ang isang patinig upang umayon sa patinig ng kasunod nitong pantig. Ikumpara sa ''[[#ablaut|ablaut]]''. Ginagamit rin ang kataga para sa tuldik na [[#patuldok|patuldok]], upang ilarawan ang isang patinig na sumailalim sa prosesong ito.
; {{anchor|first person|first-person|1st person|unang panauhan}} unang panauhan
: [[#panauhan|panauhan]] na tumutukoy sa nagsasalita o grupo ng mga nagsasalita, halimbawa sa Tagalog ang mga panghalip na ''[[ako]]'', ''[[ko]]'', at ''[[kami]]''.
==V==
; verb, v., vb.
: ''tingnan ang '''{{lg|pandiwa}}'''''
; voice
: ''tingnan ang '''{{lg|tinig}}'''''
==Z==
; {{anchor|zero-grade|zero grade}} zero-grade
: sa Proto-Indo-Europeo, tumutukoy sa anyo ng [[#ablaut|ablaut]] ng isang ugat na hindi nagtataglay ng mga pangunahing ponemang patinig {{ic|*/e/}} at {{ic|*/o/}}. Halimbawa, {{m|ine-pro||*bʰr̥-}} ang ''zero-grade'' ng Indo-Europeong ugat {{m|ine-pro|*bʰer-|t=magbuhat, magpasan}}.
tmkv4xbeydefcwm7q7d3rzb204z6zk0
178606
178605
2026-11-06T06:35:24Z
GinawaSaHapon
3989
178606
wikitext
text/x-wiki
Ito ang glosaryo ng mga katagang pambalarila na ginagamit sa diksiyonaryong ito.
<!-- Paunawa: wag pong tanggalin ang mga kataga sa Ingles para po masuportahan yung mga module at template na hindi pa nasasalin nang maayos. Ang pangunahing kahulugan ay para sa salin nito sa Tagalog. Para sa kataga sa Ingles, ire-redirect natin sa kataga sa Tagalog. Ngayon, posibleng magkaroon ng samu't saring kataga para sa isang konsepto (hal. unang panauhan vs panauhan una), sa ganitong kaso, pakigamit po ang {{anchor}} kung ito ay variation lang ng kataga. Irereserba lang sa mga kataga dito ang mga katagang natatangi. -->
<!-- Wag munang i-link hanggat walang entry dito sa tlwikt. -->
{{compact TOC|num=yes}}
==0-9==
; 1st person
: ''tingnan ang '''{{lg|unang panauhan}}'''''
; 2nd person
: ''tingnan ang '''{{lg|ikalawang panauhan}}'''''
; 3rd person
: ''tingnan ang '''{{lg|ikatlong panauhan}}'''''
==Simbolo==
; {{anchor|*|asterisk|asterisko}} *
: kapag nakalagay bago ang isang kataga, ipinapahiwatig nito na ang naturang kataga ay isa lamang pagtataya at hindi kumpirmado sa pamamagitan ng aktuwal na pagsulat, halimbawa, ang katagang {{m|phi-pro|*dilaw}} ay ang salitang Proto-Pilipino para sa ''[[dilaw]]''.
; {{anchor|**|double asterisk|dobleng asterisko|dalawang asterisko}} **
: kapag nakalagay bago ang isang kataga, ipinapahiwatig nito ang naturang anyo ng kataga ay inaasahan kung susundin ang mga tuntunin, ngunit mali sa katunayan at may ibang anyo na aktuwal na ginagamit, halimbawa ang salitang Ingles na ''[[knife]]'', na kung susundin ang regular na paghuhulaping pangmaramihan ay magiging ''**knifes'', ngunit mali ito dahil ang tama ay ''[[knives]]''.
; {{anchor|[ ]|bracket|brackets|square bracket|square brackets}} [ ]
: kung ginagamit sa isang pagbanggit, ipinapahiwatig nito na ang kataga ay nabanggit lamang nang pahapyaw at hindi aktuwal na ginamit: ikumpara ang salitang Ingles na {{m|en|manoeuvre}} sa mga pangungusap na ''Many will find ''manoeuvre'' hard to spell'' ("Marami ang nahihirapan baybayin ang salitang ''manoeuvre''") at ''He ''manoeuvres'' his car to avoid a collision'' ("Minaneobra niya ang kanyang sasakyan para makaiwas sa banggaan"). Bukod dito, ginagamit din ang mga ito upang magbigay impormasyon o konteksto, halimbawa ay "mahilig siyang kumain ng {{l|tl|libro|id=anatomiya}} [ng baka]".
==A==
; {{anchor|a|a.}} a.
: [[#daglat|daglat]] para sa Latin ''[[ante]]'' ("[[bago]] [hindi ngayon o mamaya]"). Ibig sabihin, ang isang pagbanggit na may taon na ''a.'' 1924 ay nangangahulugan na ang naturang pagbanggit na yon ay bago ang taong 1924.
; abbreviation
: ''tingnan ang '''{{lg|daglat}}'''''
; ablatibo, ablative, kaukulang ablatibo
: ''tingnan ang '''{{lg|palayo}}'''''
; {{anchor|ablaut|grade|grado}} ablaut
: sa Proto-Indo-Europeo at mga anak nito (pamilyang Indo-Europeo), tumutukoy ito sa sistema ng pagpapalitan ng mga patinig kung saan maaaring magbago ang mga patinig ng isang salita depende sa kahulugan. Halimbawa sa Ingles (isa sa mga anak na wika nito) ang {{m|en|goose}} at {{m|en|geese}}, kung saan ang nauna ay ang anyong pang-isahan at ang huli ay ang anyong pangmaramihan. Ginagamit ang sistemang ito sa [[#banghay|pagbabanghay]] at paggawa ng salita. May partikular na klase ng ablaut na tinatawag na '''grade''' o ''grado'' (kagaya ng [[#zero-grade|zero-grade]]). Ikumpara sa [[#umlaut|umlaut]].
; absolutibo, absolutive
: ''tingnan ang '''{{lg|patanggap}}'''''
; abstraktong pangngalan, abstract noun
: ''tingnan ang '''{{lg|pangngalang basal}}'''''
; {{anchor|AD}} AD
: daglat para sa ''Anno Domini'', katumbas ng [[#KP|KP]] sa mundong Kristiyano.
; adjective, adj.
''tingnan ang '''{{lg|pang-uri}}'''''
; adverb, adv.
: ''tingnan ang '''{{lg|pang-abay}}'''''
; {{anchor|aktibong tinig|tahasang tinig|active voice}} aktibong tinig, active voice
: [[#tinig|tinig]] na nagpapakita sa anyo ng pandiwa kung saan ang simuno mismo ang siyang nagsasagawa sa kilos. Ikumpara sa ''[[#pasibong tinig|pasibong tinig]]''.
; {{anchor|aral na hiram|arál na hiram|learned borrowing|learned loan}} aral na hiram
: [[#hiram|salitang hiram]] na sadyang hiniram mula sa ibang wika imbes na dumaan sa likas na panghihiram ng mga wika sa isa't isa. Kadalasang resulta ito ng pagpunan ng mga mananalita sa mga konseptong wala sa kanilang wika. Halimbawa nito sa Tagalog ang {{m|tl|bansa}}, na isang aral na hiram mula sa Malay {{m|ms|bangsa}} upang punan ang konsepto ng Espanyol {{m|es|nacion}} dahil hindi maituturing na direktang katumbas nito ang {{m|tl|bayan}}.
; arkaiko, archaic
: ''tingnan ang '''{{lg|makaluma}}'''''
; {{anchor|aspect|aspekto|aspeto|grammatical aspect}} aspekto, aspeto, aspect
: katangian ng pandiwa na magbago ayon sa kakumpletuhan ng kilos. Wag ikalito sa [[#panahon|panahon]], na tumutukoy sa oras o panahon kung kailan isinagawa ang kilos. Sa Tagalog, ito ang [[#naganap|naganap]], [[#nagaganap|nagaganap]], [[#magaganap|magaganap]], at [[#kagaganap|kagaganap]].
; augmentative, aug.
: ''tingnan ang '''{{lg|pampalaki}}'''''
==B==
; balintiyak na tinig
: ''tingnan ang '''{{lg|pasibong tinig}}'''''
; {{anchor|banghay|pagbabanghay|conjugation|inflection}} banghay, pagbabanghay
: pagbabago sa anyo ng mga salita ayon sa kategorya kagaya ng [[#aspekto|aspekto]], [[#panahon|panahon]], o [[#kailanan|kailanan]]. Karaniwang tumutukoy ito sa Tagalog sa proseso sa mga pandiwa, [[#deklinasyon|deklinasyon]] ang katumbas sa ibang bahagi ng pananalita kagaya ng sa pangngalan, panghalip, at pang-uri.
; {{anchor|bahagi ng pananalita|part of speech|PoS|POS|BNP|BnP}} bahagi ng pananalita, BNP, BnP
: kategorya ng salita ayon sa tungkulin nito sa isang pangungusap. Ilan sa mga halimbawa ang [[#pangngalan|pangngalan]], [[#panghalip|panghalip]], [[#pandiwa|pandiwa]], at [[#pang-uri|pang-uri]]. Maaaring kabilang ang mga salita sa higit sa isang kategorya, gaya ng sa Tagalog {{m|tl|pula}}, na maaaring gamitin bilang pangngalan (''ang kotse ay pula'') o pang-uri (''ang pulang kotse'').
; {{anchor|bahagyang aral|bahagyang arál|bahagyang aral na hiram|bahagyang arál na hiram|semi-learned|semi-learned borrowing}} bahagyang aral na hiram
: [[#hiram|hiram]] na salitang sadyang hiniram sa isang lumang wika na bahagyang binago upang umayon sa ponolohiya at morpolohiya ng nanghiram na wika. Ikumpara sa mga ''[[#aral na hiram|aral na hiram]]'', na may katulad na proseso ng panghihiram ngunit walang pagbabago, at ''[[#mana|mana]]'', na likas na nagmula sa isang lumang salita at dumaan sa mga likas na proseso ng wika.
; basal na pangngalan
: ''tingnan ang '''{{lg|pangngalang basal}}'''''
; {{anchor|BC|BK}} BC, BK
: daglat para sa Bago si Kristo, katumbas ng [[#BKP|BKP]] sa mundong Kristiyano.
; {{anchor|bihira|madalang|rare}} bihira, madalang
: ipinapahiwatig na ang naturang salita o kahulugan ay kumpirmadong ginagamit sa iilang piling konteksto at hindi karaniwang makikita o ginagamit labas sa mga kontekstong ito. Ikumpara sa [[#di-karaniwan|di-karaniwan]], na kahit papaano ay ginagamit ng malaki-laking grupo ngunit hindi ng mayorya.
; {{anchor|BCE|BKP}} BKP, BCE
: daglat para sa Bago ang Karaniwang Panahon, katumbas ng [[#BK|BK]] sa mundong sekular.
; borrowing, borrowed
: ''tingnan ang '''{{lg|hiram}}'''''
; by extension
: ''tingnan ang '''{{lg|pinalawak}}'''''
==C==
; {{anchor|c.|circa|sirka}} circa, sirka, c.
: ginagamit upang ipahiwatig na ang taon ay isa lamang pagtataya at hindi tumutukoy sa mismong taon.
; colloquial
: ''tingnan ang '''{{lg|kolokyal}}'''''
; comparative
: ''tingnan ang '''{{lg|pahambing}}'''''
; concrete noun
: ''tingnan ang '''{{lg|pangngalang tahas}}'''''
; conjugation
: [[#banghay|pagbabanghay]] sa pandiwa
; contemplative
: ''tingnan ang '''{{lg|magaganap}}'''''
==D==
; {{anchor|abbr|abbreviation|daglat}} daglat
: pinaikling anyo ng isang salita, halimbawa ay ''[[Dr.]]'' para sa [[doktor]].
; dated
: ''tingnan ang '''{{lg|luma}}'''''
; {{anchor|declination|declension|deklinasyon}} deklinasyon, declination, declension
: [[#banghay|pagbabanghay]] sa pangngalan at katulad
; derogatory, der.
: ''tingnan ang '''{{lg|pampanira}}'''''
; diaresis, diaeresis
: ''tingnan ang '''{{lg|patuldok}}'''''
; di-literal
: ''tingnan ang '''{{lg|matalinghaga}}'''''
; {{anchor|di-pormal|impormal|inpormal|informal}} di-pormal
: ipinapahiwatig na ang naturang salita o balarila ay ginagamit sa pamilyar o kaswal na konteksto. Kabaligtaran ito ng ''[[#pormal|pormal]]'', na ginagamit naman sa mga pormal na konteksto. Kabilang sa mga di-pormal na pananalita ang [[#kolokyal|kolokyal]], ngunit hindi dapat ikalito sa ''[[#balbal|balbal]]'' o ''[[#di-pamantayan|di-pamantayan]]''.
; diminutive, dim.
: ''tingnan ang '''{{lg|pampaliit}}'''''
; doblete, doublet
: ''tingnan ang '''{{lg|magkaparehong pinagmulan}}'''''
==E==
; extended, extended sense
: ''tingnan ang '''{{lg|pinalawak}}'''''
==F==
; figurative
: ''tingnan ang '''{{lg|matalinghaga}}'''''
; first person, first-person
: ''tingnan ang '''{{lg|unang panauhan}}'''''
; formal
: ''tingnan ang '''{{lg|pormal}}'''''
; future tense
: ''tingnan ang '''{{lg|panghinaharap}}'''''
==G==
; genitive
: ''tingnan ang '''{{lg|paari}}'''''
==H==
; henitibo, kaukulang henitibo
: ''tingnan ang '''{{lg|paari}}'''''
; hinaharap
: ''tingnan ang '''{{lg|panghinaharap}}'''''
; {{anchor|hiram na salita|salitang hiram|salitang-hiram|hiniram|hiniram na salita|salitang hiniram|hiram|loanword|loan word|loaned|borrowing|borrowed|borrowed term}} hiram, hiram na salita, panghihiram
: salitang nagmula sa ibang wika. Iba ito sa pagbuo ng salita na nagmula sa mas matandang anyo ng parehong wika. Humihiram madalas ang Tagalog sa Espanyol at Ingles, bagamat marami rin itong wika na pinanghihiraman. Ilan sa mga halimbawa ang {{m|tl|trak}} at {{m|tl|magasin}} mula Ingles at {{m|tl|oras}} at {{m|tl|maleta}} mula naman sa Espanyol. Maaari itong binago nang lubusan upang umakma sa pagbaybay ng wikang humiram gaya ng {{m|tl|kumpisal}} mula Espanyol {{m|es|confesar}}, o hindi, lalo na kung umaakma ang orihinal na baybay sa pagbaybay ng wikang humihiram gaya ng {{m|tl|bola}}, na nagmula sa Espanyol {{m|es|bola}}. Ikumpara sa ''[[#kalko|kalko]]'', kung saan tanging kahulugan lamang ang hiniram.
; {{anchor|historikal|historical|makasaysayan}} historikal, historical
: ipinapahiwatig na ang naturang salita ay tumutukoy sa isang konseptong wala na sa kasalukuyan, gaya ng [[Unyong Sobyet]]. Iba ito sa ''[[#lipas na|lipas na]]'' o ''[[#makaluma|makaluma]]'', na maaari pa ring tumukoy sa isang bagay na meron sa kasalukuyan kahit na hindi na ginagamit ng marami ang mga salitang ito.
; {{anchor|homopono|homophone}} homopono, homophone
: tumutukoy sa mga salitang magkapareho ng bigkas ngunit nagkakaiba sa pagbaybay, kahulugan, o salin.
==I==
; {{anchor|second person|second-person|2nd person|pangalawang panauhan|ikalawang panauhan}} ikalawang panauhan, pangalawang panauhan
: [[#panauhan|panauhan]] na tumutukoy sa kausap ng nagsasalita, halimbawa sa Tagalog ang mga panghalip na ''[[ikaw]]'', ''[[ka]]'', at ''[[kayo]]''.
; {{anchor|third person|third-person|3rd person|pangatlong panauhan|ikatlong panauhan}} ikatlong panauhan, pangatlong panauhan
: [[#panauhan|panauhan]] na tumutukoy sa pinag-uusapan ng nagsasalita kung saan hindi siya kabilang, halimbawa sa Tagalog ang mga panghalip na ''[[siya]]'', ''[[niya]]'', at ''[[sila]]''.
; imperatibo, imperative
: ''tingnan ang '''{{lg|pautos}}'''''
; imperpektibo, imperfective
: ''tingnan ang '''{{lg|nagaganap}}'''''
; indicative
: ''tingnan ang '''{{lg|paturol}}'''''
; inflection
: ''tingnan ang '''{{lg|banghay}}'''''
; informal
: ''tingnan ang '''{{lg|di-pormal}}'''''
; inherited
: ''tingnan ang '''{{lg|mana}}'''''
; {{anchor|isahan|isa|singular|pang-isahan|sing.|isahang bilang}} isahan
: [[#kailanan|kailanan]] na nagpapahiwatig na iisa lamang ang bagay.
==K==
; {{anchor|kagaganap|kakaganap}} kagaganap, kakaganap
: [[#aspekto|aspekto]] na nagpapahiwatig na kamakailan lang natapos ang isang kilos, halimbawa, ''kakakain''.
; {{anchor|number|grammatical number|kailanan|bilang}} kailanan
: kategorya ng balarila na naglalarawan sa dami o bilang ng isang bagay. Ilan sa mga halimbawa ang [[#maramihan|maramihan]] at [[#isahan|isahan]]
; kasalukuyan
: ''tingnan ang '''{{lg|pangkasalukuyan}}'''''
; kaso
: ''tingnan ang '''{{lg|kaukulan}}'''''
; {{anchor|case|grammatical case|kaukulan|kaso}} kaukulan
: isa sa mga anyo ng pangngalan depende sa tungkulin nito sa isang pangungusap, ilan sa mga halimbawa nito ang [[#palagyo|palagyo]] at [[#paari|paari]].
; {{anchor|colloquial|kolokyal}} kolokyal
: ipinapahiwatig na ang naturang salita o kahulugan ay ginagamit sa isang partikular na barayti ng wika. Ginagamit lamang ang mga salitang ito sa kalapit o kaswal na konteksto. Maaaring katumbas ng ''[[#di-pormal|di-pormal]]'' sa ibang mga wika, at kung itinatangi ang dalawa kagaya ng sa Tagalog, mas malakas ang kolokyal kesa di-pormal.
; komparatibo, kumparatibo
: ''tingnan ang '''{{lg|pahambing}}'''''
; kongkretong pangngalan, pangngalang kongkreto
: ''tingnan ang '''{{lg|pangngalang tahas}}'''''
; kontemplatibo
: ''tingnan ang '''{{lg|magaganap}}'''''
; {{anchor|KP|CE}} KP, CE
: daglat para sa Karaniwang Panahon, katumbas ng [[#AD|AD]] sa mundong sekular
==L==
; learned borrowing, learned loan
: ''tingnan ang '''{{lg|aral na hiram}}'''''
; {{anchor|obsolete|lipas na|obs.}} lipas na
: hindi na ginagamit, at hindi na maiintindihan ng karaniwang tao. Mas malakas kesa ''[[#makaluma|makaluma]]'', at di hamak na mas malakas kesa ''[[#luma|luma]]''. Iba ito sa ''[[#historikal|historikal]]'', na ginagamit pa sa kasalukuyan ngunit tumutukoy sa isang bagay na wala na.
; loanword, loan word
: ''tingnan ang '''{{lg|hiram}}'''''
; {{anchor|dated|luma|laos}} luma, laos
: ginagamit noon, ngunit hindi na ngayon, bagamat ginagamit pa rin ng nakakatandang henerasyon. Kumbaga, laos na, gaya ng {{m|tl|walastik}}. Mas mahina sa ''[[#makaluma|makaluma]]'', na hindi na ginagamit maliban kung gustong magtunog-luma, o ''[[#lipas na|lipas na]]'', na wala na'ng gumagamit at nakakaintindi sa kahit anong konteksto.
==M==
; {{anchor|contemplative|magaganap|kontemplatibo}} magaganap
: [[#aspekto|aspekto]] na nagpapahiwatig na hindi pa nagsisimula ang isang kilos, halimbawa, ''kakain''. Sa Tagalog, karaniwan itong naipagkakamali sa [[#panahon|panahong]] [[#panghinaharap|panghinaharap]] dahil sa pagsasagawa sa kilos sa hinaharap (ikumpara ang ''kakain ako'' sa ''kakain ako mamaya'').
; {{anchor|doublet|doblete|magkaparehong pinagmulan|parehong ninuno|parehong pinagmulan}} magkaparehong pinagmulan
: mga pares ng salita ng isang wika na parehong nagmula sa iisang ninunong salita ngunit ay dalawang magkaibang salita sa modernong panahon. Madalas itong nangyayari dahil sa resulta ng [[#hiram|panghihiram]] sa mga wikang may kaugnayan dito gaya ng kaso ng {{m|tl|baliw}} at {{m|tl|ibayo}} na pawang tumutukoy sa magkakaibang konsepto ngunit parehong nagmula sa iisang ninunong salitang Proto-Malayo-Polinesyo {{m|map-pro|*baliw}}, o di kaya'y nabuo sa magkaibang punto ng kasaysayan ng wika gaya naman ng kaso ng Tagalog {{m|tl|ahedres}} at {{m|tl|satol}}, parehong tumutukoy sa laro ngunit ang nauna ay direktang hiniram sa Espanyol at ang huli ay isang [[#lipas na|lipas na salitang]] nagmula sa Sanskrit, na pinakapinagmulan naman ng salitang Espanyol.
; {{anchor|makaluma|archaic|arkaiko}} makaluma
: hindi na madalas gamitin, at kung gamitin man sa kasalukuyan ay upang magbigay ng tono ng kalumaan gaya ng mga nobelang historikal. Halimbawa ang paggamit sa salitang ''[[kalatas]]'' imbes na ''[[papel]]''. Mas mahina kesa ''[[#lipas na|lipas na]]'', na hindi na talaga ginagamit at maiintindihan, ngunit mas malakas pa rin kesa ''[[#luma|luma]]'', na naiintindihan pa rin at ginagamit ng marami-rami na bahagi ng mas matandang henerasyon.
; makasaysayan
: ''tingnan ang '''{{lg|historikal}}'''''
; {{anchor|inherited|inherited term|inheritance|mana|manang salita|minanang salita|minana}} mana, manang salita, pagmamana
: tumutukoy sa mga salitang nagmula sa isang lumang salita mula sa magulang wika nito sa pamamagitan ng likas na pagbabago ng tunog at walang karagdagang paglalapi, hindi tulad ng sa mga [[#hiram|hiram]]. Halimbawa, nagmula ang salitang {{m|tl|dahon}} sa magulang wika nitong Proto-Pilipino {{m|phi-pro|*dahun}}.
; {{anchor|maramihan|marami|pangmaramihan|plural|pl.|maramihang bilang}} maramihan
: [[#kailanan|kailanan]] na nagpapahiwatig na higit sa isa ang dami ng mga bagay. Sa Tagalog, minamarkahan ito ng partikulong ''[[mga]]'', habang sa ibang wika, binabanghay ito gaya ng sa Ingles {{m|en|books}}, na anyong maramihan ng {{m|en|book}}.
; {{anchor|figurative|non-literal|di-literal|matalinghaga}} matalinghaga
: hindi [[#literal|literal]], pawang tumutukoy sa mga [[metapora]], [[idyoma]], at katulad na paraan ng pananalita na hindi dapat unawain sa literal nitong kahulugan gaya ng ''[[balat-sibuyas]] ''("madaling umiyak; iyakin").
; mood
: ''tingnan ang '''{{lg|panagano}}'''''
==N==
; {{anchor|perpektibo|naganap|perfective}} naganap
: [[#aspekto|aspekto]] na nagpapahiwatig na tapos na ang isang kilos, halimbawa, ''kumain''. Sa Tagalog, karaniwan itong naipagkakamali sa [[#panahon|panahong]] [[#pangnakaraan|pangnakaraan]] dahil sa pagkakumpleto ng kilos (ikumpara ang ''kumain ako'' sa ''kumain na ako''). Wag ikalito sa ''[[#perpekto|perpekto]]'', na wala sa Tagalog ngunit mabubuo sa mga wikang may panahon kagaya ng sa Ingles.
; {{anchor|imperpektibo|nagaganap|imperfective}} nagaganap
: [[#aspekto|aspekto]] na nagpapahiwatig na hindi pa tapos ang isang kilos, halimbawa, ''kumakain''. Sa Tagalog, karaniwan itong naipagkakamali sa [[#panahon|panahong]] [[#pangkasalukuyan|pangkasalukuyan]] dahil sa pagsasagawa sa kilos sa kasalukuyan (ikumpara ang ''kumakain ako'' sa ''kumakain ako ngayon''). Wag ikalito sa ''[[#imperpekto|imperpekto]]'', na wala sa Tagalog ngunit mabubuo sa mga wikang may panahon kagaya ng sa Ingles.
; nakaraan, nagdaan
: ''tingnan ang '''{{lg|pangnakaraan}}'''''
; {{anchor|nilipat|transferred|transferred sense}} nilipat
: ipinapahiwatig na ang orihinal na kahulugan ng isang salita ay ginamit upang tumukoy sa isang partikular na konseptong may kaugnayan dito. Halimbawa, sa Latin, pumapatungkol ang salitang {{m|la|liber}} sa paglaya, ngunit nagkaroon ito ng nilipat na kahulugan para tumukoy sa mga malalayang tao (hindi alipin). Ikumpara sa ''[[#pinalawak|pinalawak]]'', na pumapatungkol naman sa kahulugan na pinalawak upang tumukoy sa ibang konseptong katulad nito.
; nominatibo, nominative, kaukulang nominatibo
: ''tingnan ang '''{{lg|palagyo}}'''''
; non-literal
: ''tingnan ang '''{{lg|matalinghaga}}'''''
; noun, n.
: ''tingnan ang '''{{lg|pangngalan}}'''''
==O==
; obsolete, obs.
: ''tingnan ang '''{{lg|lipas na}}'''''
==P==
; {{anchor|genitive|genitive case|kaukulang paari|paari}} paari, kaukulang paari
: [[#kaukulan|kaukulan]] na nagpapahiwatig sa pag-aari o kaugnayan, sa Tagalog, minamarkahan ito ng ''[[ng]]'' para sa mga di-tao at ''[[ni]]'' (''[[nina]]'' kapag maramihan) para sa mga tao.
; {{anchor|pahambing|kumparatibo|komparatibo|comparative}} pahambing
: [[#banghay|pagbabanghay]] sa isang pang-uri upang ipakita ang antas ng paghahambing na higit sa karaniwan ngunit hindi nasa tugatog. Sa Tagalog, ginagamit ang partikulong ''[[mas]]'' gaya ng ''mas masarap'' upang ipakita ang antas na ito.
; {{anchor|nominative|nominative case|kaukulang palagyo|palagyo}} palagyo, kaukulang palagyo
: [[#kaukulan|kaukulan]] na nagpapahiwatig sa gumagawa ng kilos, sa Tagalog, minamarkahan ito ng ''[[ang]]'' para sa mga di-tao o ''[[si]]'' (''[[sina]]'' kapag maramihan) para sa mga tao.
; {{anchor|ablative|ablative case|kaukulang palayo|palayo}} palayo, kaukulang palayo
: [[#kaukulan|kaukulan]] na nagpapahiwatig ng paglayo mula sa isang bagay. Para sa mga wikang meron nito, ginagamit ito nang mag-isa o may kasamang pang-ukol. Pinakamalapit na halimbawa sa Tagalog ay ang paggamit sa pang-ukol na ''[[mula]]'', kagaya ng sa ''mula Buendia''. May mga wikang tulad ng Latin na meron nito ngunit nakakuha ng maraming gamit bukod sa pagpapahiwatig ng paglayo.
; {{anchor|aug.|augmentative|pampalaki}} pampalaki
: anyo ng isang salita na ginagamit upang ipahiwatig ang kalakihan, kahalagahan, katandaan, o katindihan nito.
; {{anchor|dim.|diminutive|pampaliit}} pampaliit
: anyo ng isang salita na ginagamit upang ipahiwatig ang kaliitan, kabataan, o kawalang-halaga nito.
; {{anchor|pej.|der.|pejorative|derogatory|panglait|pampanira|pampaninira|paninira}} pampanira, panglait
: anyo ng isang salita na ginagamit upang ipahiwatig ang negatibong damdamin o panliliit o panlalait tungo dito.
; {{anchor|grammatical mood|mood|panagano}} panagano
: anyo ng pandiwa na nagpapahiwatig sa paano sinabi ng nagsasalita ang isang bagay, gaya halimbawa ng ''[[#pasakali|pasakali]]'', na nagpapahiwatig na ang sinabi ay maaaring mangyari.
; {{anchor|panahon|tense|grammatical tense}} panahon
: katangian ng pandiwa na magbago depende sa oras o panahon kung kailan isinagawa ang kilos. Wag ikalito sa [[#aspekto|aspekto]], na tumutukoy sa kakumpletuhan ng kilos. Walang ganito sa Tagalog; pinakamalapit na katumbas ang paggamit sa mga salitang nagpapahiwatig ng oras gaya ng ''[[ngayon]]'', ''[[na]]'', ''[[kanina]]'', ''[[kasalukuyan]]'', at ''[[mamaya]]''. Ilan sa mga halimbawa ang [[#pangnakaraan|pangnakaraan]], [[#panghinaharap|panghinaharap]], at [[#pangkasalukuyan|pangkasalukuyan]].
; {{anchor|person|grammatical person|panauhan}} panauhan
: kategorya sa balarila na naglalarawan sa kaugnayan ng nagsasalita sa pinag-uusapan, ilan sa mga halimbawa ang [[#unang panauhan|unang panauhan]], [[#ikalawang panauhan|ikalawang panauhan]], at [[#ikatlong panauhan|ikatlong panauhan]].
; {{anchor|pandiwa|pnd|v.|vb.|verb}} pandiwa
: [[#bahagi ng pananalita|bahagi ng pananalita]] na tumutukoy sa kilos, kaganapan, o katayuan. Tinatawag na [[#pagbabanghay|pagbabanghay]] ang proseso ng pagbabago ng anyo nito ayon sa tungkulin nito sa pangungusap.
; {{anchor|pang-abay|pnb|adverb|adv.}} pang-abay
: [[#bahagi ng pananalita|bahagi ng pananalita]] na naglalarawan sa pang-uri, pandiwa, o kapwa pang-abay. Sa Tagalog, umaakto ito na parang pang-uri at [[#banghay|binabanghay]] din sa kaparehong paraan, ang pagkakaiba lamang ay kung anong bahagi ng pananalita ang inilalarawan nito. Halimbawa ay ''mabilis maglakad'', kung saan ''mabilis'' ang pang-abay sa pandiwang ''maglakad''. Pansinin na magagamit din ang mga ito bilang pang-uri, gaya ng sa ''mabilis na lakad''.
; {{anchor|panghalip|pnh|pron.|pro.|pronoun}} panghalip
: [[#bahagi ng pananalita|bahagi ng pananalita]] na humahalili sa isang pangngalan at tumutukoy sa paksa ng pinag-uusapan. Maaari itong humalili sa pangalan ng tao na nasa usapan gaya ng mga panghalip panao {{m|tl|ikaw}} at {{m|tl|ako}}, o tumukoy sa ibang tao ({{m|tl|siya}}) o bagay ({{m|tl|iyon}}).
; {{anchor|pang-uri|pnu|adjective|adj.}} pang-uri
: [[bahagi ng pananalita]] na naglalarawan sa pangngalan o panghalip. Marami, ngunit hindi lahat, ng mga pang-uri sa Tagalog ang kinakabitan ng unlaping {{m|tl|ma-}} gaya ng ''maganda''. Halimbawa ay ''pulang mansanas'' o ''mansanas na pula'', sa parehong kaso, ''pula'' ang pang-uri.
; {{anchor|panghinaharap|hinaharap|future tense|panahong panghinaharap}} panghinaharap
: [[#panahon|panahon]] na nagpapahiwatig na ang kilos ay isasagawa sa hinaharap. Sa Tagalog, minamarkahan ito ng mga salitang umuukol sa hinaharap gaya ng ''[[mamaya]]'' o ''[[bukas]]''. Sa Ingles, minamarkahan ito ng mga salitang {{m|en|will}} o {{m|en|shall}}.
; pang-isahan
: ''tingnan ang '''{{lg|isahan}}'''''
; {{anchor|pangkasalukuyan|kasalukuyan|panahong pangkasalukuyan|present tense}} pangkasalukuyan
: [[#panahon|panahon]] na nagpapahiwatig na ang kilos ay isinasagawa sa ngayon. Sa Tagalog, minamarkahan ito ng mga salitang umuukol sa kasalukuyan gaya ng ''[[ngayon]]'' o ''[[na]]''. Sa Ingles, karaniwang binabanghay ang mga pandiwa gamit ang hulaping {{m|en|-ing}} para maipahiwatig ang panahong ito.
; pangmaramihan
: ''tingnan ang '''{{lg|maramihan}}'''''
; {{anchor|pangnakaraan|nakaraan|nagdaan|pangnagdaan|panahong pangnakaraan|past tense}} pangnakaraan, pangnagdaan
: [[#panahon|panahon]] na nagpapahiwatig na ang kilos ay isinagawa sa nakaraan. Sa Tagalog, minamarkahan ito ng mga salitang umuukol sa nakaraan gaya ng ''[[kanina]]'' o ''[[kahapon]]''. Halimbawa ay ang salitang Ingles na {{m|en|saw}}, ang anyong pangnakaraan ng {{m|en|see}}.
; {{anchor|noun|pangngalan|n.|png}} pangngalan
: [[#bahagi ng pananalita|bahagi ng pananalita]] na tumutukoy sa [[tao]], [[bagay]], [[lugar]], o [[konsepto]].
; {{anchor|basal na pangngalan|pangngalang basal|abstract noun|abstraktong pangngalan|pangngalang abstrakto}} pangngalang basal, basal na pangangalan
: [[#pangngalan|pangngalan]] na tumutukoy sa mga konsepto, kumpara sa mga [[#pangngalang tahas|pangngalang tahas]], na tumutukoy naman sa mga pisikal na bagay.
; {{anchor|tahas na pangngalan|pangngalang tahas|concrete noun|kongkretong pangngalan|pangngalang kongkreto}} pangngalang tahas, tahas na pangangalan
: [[#pangngalan|pangngalan]] na tumutukoy sa mga pisikal na bagay, kumpara sa mga [[#pangngalang basal|pangngalang basal]], na tumutukoy naman sa mga konsepto.
; part of speech, POS, PoS
: ''tingnan ang '''{{lg|bahagi ng pananalita}}'''''
; {{anchor|subjunctive|subjunctive mood|pasakali|panaganong pasakali}} pasakali
: [[#panagano|panagano]] na nagpapahiwatig na ang sinabi ng nagsasalita ay maaaring mangyari. Ikumpara sa ''[[#paturol|paturol]]'', na naglalarawan sa isang tunay na pangyayari.
; {{anchor|pasibong tinig|balintiyak na tinig|passive voice}} pasibong tinig, passive voice
: [[#tinig|tinig]] na nagpapakita sa anyo ng pandiwa kung saan hindi simuno ang nagsasagawa sa kilos, at minsan ay ito mismo ang tumatanggap ng kilos. Ikumpara sa [[#aktibong tinig|aktibong tinig]].
; past tense
: ''tingnan ang '''{{lg|pangnakaraan}}'''''
; {{anchor|pasukdol|superlative|superlatibo}} pasukdol
: [[#banghay|pagbabanghay]] sa pang-uri upang ipakita ang antas ng paghahambing na higit sa lahat. Sa Tagalog, ikinakabit ang mga unlaping {{m|tl|pinaka-}} o {{m|tl|napaka-}} gaya ng ''pinakamasarap'' o ''napakasarap'' upang ipakita ang antas na ito.
; {{anchor|absolutive|absolutibo|kaukulang absolutibo|kaukulang patanggap|patanggap}} patanggap, kaukulang patanggap
: [[#kaukulan|kaukulan]] na nagpapahiwatig sa tumatanggap o nakakaranas ng resulta ng kilos.
; {{anchor|diaresis|diaeresis|patuldok}} patuldok
: [[#tuldik|tuldik]] ( ¨ ) na karaniwang inilalagay sa taas ng isang patinig. Sa mga wikang Pilipino, ginagamit lamang ito para sa titik ''e'' (''ë'') upang kumatawan sa tunog na schwa sa ilang mga wika gaya ng Maranaw (''Mëranaw''). Sa ibang mga wika, inilalagay ito sa mga patinig upang sabihin na dapat itong bigkasin nang hiwalay at hindi bilang [[diptonggo]], gaya ng {{m+|fr|naïf|t=walang muwang}}, o para sabihin na iba ang pagbigkas sa naturang patinig kumpara sa karaniwan, gaya ng sa Aleman {{m|de|über|t=ibabaw}} at {{m|de|König|t=hari}}, sa prosesong tinatawag na [[#umlaut|umlaut]].
; {{anchor|indicative mood|indikatibo|indicative|paturol|panaganong paturol}} paturol
: [[#panagano|panagano]] na nagpapahiwatig na ang sinabi ng nagsasalita ay naganap o naglalarawan sa isang tunay na pangyayari o bagay. Ikumpara sa ''[[#pasakali|pasakali]]'', na naglalarawan ng mga pangyayaring maaaring mangyari.
; {{anchor|imperative|imperative mood|imperatibo|pautos|panaganong pautos}} pautos
: [[#panagano|panagano]] na nagpapahiwatig na isang utos ang pahayag. Sa Tagalog, binabanghay ang mga pandiwa upang maipakita ito, gaya ng ''[[kumuha|kunin]]'' o ''[[magligpit|iligpit]]''.
; pejorative, pej.
: ''tingnan ang '''{{lg|pampanira}}'''''
; perpektibo, perfective
: ''tingnan ang '''{{lg|naganap}}'''''
; person
: ''tingnan ang '''{{lg|panauhan}}'''''
; {{anchor|pinalawak|extended sense|by extension}} pinalawak
: ipinapahiwatig na ang orihinal na kahulugan nito ay pinalawak upang tumukoy sa mas maraming konsepto na hindi kasama sa orihinal na kahulugan nito. Halimbawa, tumutukoy ang salitang {{m|tl|mabigat}} sa literal na pisikal na bigat, ngunit nagkaroon ito kalaunan ng pinalawak na kahulugan na "nakakapagod, mahirap, seryoso" gaya ng sa ''mabigat na parusa''. Ikumpara ito sa ''[[#nilipat|nilipat]]'', na tumutukoy naman sa paglipat ng kahulugan upang tumukoy sa isang partikular na konseptong may kaugnayan dito.
; plural, pl
: ''tingnan ang '''{{lg|maramihan}}'''''
; pnb<!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|pang-abay}}'''''
; pnd <!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|pandiwa}}'''''
; png <!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|pangngalan}}'''''
; pnh <!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|panghalip}}'''''
; pnu <!-- daglat sa Diksiyonaryo.ph -->
: ''tingnan ang '''{{lg|pang-uri}}'''''
; {{anchor|formal|pormal}} pormal
: ipinapahiwatig na ang naturang salita o balarila ay ginagamit sa mga pormal na konteksto, gaya ng sa opisyal o legal na dokumento, panitikan, o minsan kapag kausap ang mas nakakatanda (sa edad o trabaho). Kabaligtaran ito ng ''[[#di-pormal|di-pormal]]'', na karaniwang ginagamit sa mga kaswal na konteksto.
; present tense
: ''tingnan ang '''{{lg|pangkasalukuyan}}'''''
; pronoun, pron., pro.
: ''tingnan ang '''{{lg|panghalip}}'''''
==R==
; rare
: ''tingnan ang '''{{lg|bihira}}'''''
==S==
; salitang-hiram, salitang hiram
: ''tingnan ang '''{{lg|hiram}}'''''
; second person, second-person
: ''tingnan ang '''{{lg|ikalawang panauhan}}'''''
; semi-learned, semi-learned borrowing
: ''tingnan ang '''{{lg|bahagyang aral na hiram}}'''''
; singular, sing.
: ''tingnan ang '''{{lg|isahan}}'''''
; subjunctive
: ''tingnan ang '''{{lg|pasakali}}'''''
; superlatibo, superlative
: ''tingnan ang '''{{lg|pasukdol}}'''''
==T==
; tahas na pangngalan
: ''tingnan ang '''{{lg|pangngalang tahas}}'''''
; tahasang tinig
: ''tingnan ang '''{{lg|aktibong tinig}}'''''
; tense
: ''tingnan ang '''{{lg|panahon}}'''''
; third person, third-person
: ''tingnan ang '''{{lg|ikatlong panauhan}}'''''
; {{anchor|tinig|voice}} tinig
: katangian ng pandiwa na nagpapahiwatig ng kaugnayan nito sa simuno. Ilan sa mga halimbawa ang [[#aktibong tinig|aktibo]] at [[#pasibong tinig|pasibo]].
; tiyempo
: ''tingnan ang '''{{lg|panahon}}'''''
; transferred, transferred sense
: ''tingnan ang '''{{lg|nilipat}}'''''
; {{anchor|tuldik|diacritic|diacritical mark|diakritiko|diyakritiko|dayakritiko|accent|accent mark|aksent}} tuldik
: simbolong ikinakabit o inilalagay sa isang titik upang baguhin ang tunog nito. Sa Tagalog at mga wikang Pilipino, may tatlong tuldik na ginagamit, [[#pahilis|pahilis]] ( ´ ), [[#paiwa|paiwa]] ( ` ), at [[#pakupya|pakupya]] ( ^ ), na ginagamit upang ipakita ang pagbigkas sa mga salita para maitangi ito sa mga may kaparehong baybay. Bukod dito, ginagamit din sa ilang mga wikang Pilipino ang tuldik na [[#patuldok|patuldok]], gaya ng sa Maranaw, upang isulat ang tunog na schwa.
==U==
; {{anchor|umlaut}} umlaut
: pagbabago sa tunog kung saan binabago ang isang patinig upang umayon sa patinig ng kasunod nitong pantig. Ikumpara sa ''[[#ablaut|ablaut]]''. Ginagamit rin ang kataga para sa tuldik na [[#patuldok|patuldok]], upang ilarawan ang isang patinig na sumailalim sa prosesong ito.
; {{anchor|first person|first-person|1st person|unang panauhan}} unang panauhan
: [[#panauhan|panauhan]] na tumutukoy sa nagsasalita o grupo ng mga nagsasalita, halimbawa sa Tagalog ang mga panghalip na ''[[ako]]'', ''[[ko]]'', at ''[[kami]]''.
==V==
; verb, v., vb.
: ''tingnan ang '''{{lg|pandiwa}}'''''
; voice
: ''tingnan ang '''{{lg|tinig}}'''''
==Z==
; {{anchor|zero-grade|zero grade}} zero-grade
: sa Proto-Indo-Europeo, tumutukoy sa anyo ng [[#ablaut|ablaut]] ng isang ugat na hindi nagtataglay ng mga pangunahing ponemang patinig {{ic|*/e/}} at {{ic|*/o/}}. Halimbawa, {{m|ine-pro||*bʰr̥-}} ang ''zero-grade'' ng Indo-Europeong ugat {{m|ine-pro|*bʰer-|t=magbuhat, magpasan}}.
i15vct9rar6pppc6tx0oe45g1g5khjx
botanika
0
39020
178607
2026-11-06T06:50:18Z
GinawaSaHapon
3989
Nilikha ang pahina na may '=={{=tl=}}== ===Etimolohiya=== {{ety|tl|:bor|es:botánica<ety:uder<la:botanica<ety:uder<grc:βοτανική>>>>|text=3|tree=1}} ===Pagbigkas=== {{tl-pr|botánika}} ===Pangngalan=== {{tl-noun|botániká|b=+}} # [[agham]] na nakatuon sa pag-aaral sa mga [[halaman]] ====Kaugnay na kataga==== {{col|tl|botaniko}} ===Magbasa pa=== * {{R:KWF Diksiyonaryo}} * {{R:Pambansang Diksiyonaryo}} * {{R:Vicassan's Pilipino-English Dictionary 1978|page=181}} ===Anagrama===...'
178607
wikitext
text/x-wiki
=={{=tl=}}==
===Etimolohiya===
{{ety|tl|:bor|es:botánica<ety:uder<la:botanica<ety:uder<grc:βοτανική>>>>|text=3|tree=1}}
===Pagbigkas===
{{tl-pr|botánika}}
===Pangngalan===
{{tl-noun|botániká|b=+}}
# [[agham]] na nakatuon sa pag-aaral sa mga [[halaman]]
====Kaugnay na kataga====
{{col|tl|botaniko}}
===Magbasa pa===
* {{R:KWF Diksiyonaryo}}
* {{R:Pambansang Diksiyonaryo}}
* {{R:Vicassan's Pilipino-English Dictionary 1978|page=181}}
===Anagrama===
* {{anagrams|tl|a=aabiknot|Batikano}}
3wm47upcs6jzio8mgoyywmlnq0d9khe
Padron:R:it:Collins
10
39021
178610
2026-11-06T06:55:50Z
GinawaSaHapon
3989
Nilikha ang pahina na may '“[https://www.collinsdictionary.com/dictionary/italian-english/{{urlencode:{{replace|{{{1|{{pagename}}}}}| |-}}|PATH}}” {{{2|{{{1|{{pagename}}}}}}}}]”, sa ''Collins Italian-English Dictionary'' (sa wikang Ingles)<noinclude>{{refcat}}</noinclude>'
178610
wikitext
text/x-wiki
“[https://www.collinsdictionary.com/dictionary/italian-english/{{urlencode:{{replace|{{{1|{{pagename}}}}}| |-}}|PATH}}” {{{2|{{{1|{{pagename}}}}}}}}]”, sa ''Collins Italian-English Dictionary'' (sa wikang Ingles)<noinclude>{{refcat}}</noinclude>
qovt9dyaw07bufkf8at3wi1eep8vfsw