Wiksiyonaryo tlwiktionary https://tl.wiktionary.org/wiki/Wiksiyonaryo:Unang_Pahina MediaWiki 1.47.0-wmf.20 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 Wiksiyonaryo:Kapihan 4 1934 178009 177762 2026-09-21T02:17:23Z Yivan000 4078 /* Hiling para sa renewal ng aking pagka-admin (2) */ bagong seksyon 178009 wikitext text/x-wiki {{Pambungad ng Kapihan}} {{Wiktionary:Puntahan ng Pamayanan}} {{Wiktionary:Kapihan/Sinupan}} ---- == Sa mga pangalan ng wika, pamilya, atbp. == Nang ginawa ang mga karamihan ng entrada dito, hindi pa masyadong napapalaganap ang modernong Ortograpiyang Pambansa. Ngayon na minomordernisa natin ang Wiksiyonaryong Tagalog, sinimulan kong sundin ang mga alituntuning ito lalo na pagdating sa mga pangalan ng wika. Makikita sa [[Wiksiyonaryo:Listahan ng mga wika]] (at ang mga iba pang kawing doon) ang aking progress at ang aking mga samu't saring desisyon patungkol sa saling Tagalog ng mga pangalan ng wika <small>(na maaari na rin sigurong gamitin sa mga iba pang mga pangalan)</small>. Maigting na isusunod ang mga alituntunin ng Ortograpiyang Pambansa. Nais kong ipaliwanag dito ang ilan: <ol> <li> Lalo na sa mga wika ng Pilipinas, umiiral ang opisyal na pangalan mula sa KWF. * Ang ◌́ at ◌̀ ay itinanggal, ang ◌̂ ay itinanggal kapag nasa hulihang titik lamang, at ang ◌̈ ay naiiwan. * Kapag may pagkakaiba, mas nalalamang ang mas recent na nailimbag at/o ang mas klarong may consensus sa mga katutubong nagsasalita nito. {| class=wikitable ! Kowd !! Ingles || KWF !! Wiksiyonaryo (Bago) |- | {{code|tsg}} || Tausug || Bahása Sug || Bahasa Sug |- | {{code|agt}} || Central Cagayan Agta || Pánnon || Pannon |- | {{code|kne}} || Kankanaey || Kankanáëy || Kankanaëy |- | {{code|snl}} || Sangil || Sangirë̂ || Sangirë |- | {{code|ubl}} || Buhi'non Bikol || Boînën || Boînën |- | {{code|sfe}} || Eastern Subanun || Subánën Ginselugnén<ref>https://kwfwikaatkultura.ph/subanen-2/</ref> || G̓insëlug̓ën Sub̓anën<ref>https://www.facebook.com/share/p/17hXPKnTmP/</ref> |- | {{code|iwk}} || I-Wak || Îguwák || Îguwak |- | {{code|psp}} || Philippine Sign Language || Filipíno Sign Language || Filipino Sign Language |- | {{code|map}} || Austronesian || <s>Austronesian<ref>https://kwfwikaatkultura.ph/mga-wika-ng-pilipinas/</ref></s> EDIT 2026-09-04: Awstronesyo<ref>https://www.facebook.com/share/p/1BVD5EcS79/</ref> || <s>Austronesian</s> Awstronesyo |} </li> <li> Gamitin ang umiiral na Espanyol na pangalan. * Tanggalin ang ◌́ at ang unahang H dahil hindi ito binibigkas. * Ireispel ang J → H dahil para sa /d͡ʒ/ lamang ang J; ang J sa Espanyol ay katunog ng H. * Panatilihin ang F, V, Ñ, at Z. * Ireispel ang C → K o S; QU → K * Sundin ang mga panuto patungkol sa kambal-patinig. * Ireispel ang CH → TS. * Tignang mabuti kung kailangang ireispel ang NG sa NGG. {| class=wikitable ! Kowd !! Ingles !! Espanyol !! Wiksiyonaryo (Luma) !! Wiksiyonaryo (Bago) |- | {{code|fr}} || French || Francés || Pranses || Franses |- | {{code|mg}} || Malagasy || Malgache || Malagasi || Malgatse |- | {{code|fi}} || Finnish || Finés<ref>https://www.fundeu.es/recomendacion/fines-finlandes/ (''Finés'' sa wika, ''Finlandés'' sa bansa)</ref> || Pinlandes || Fines |- | {{code|vi}} || Vietnamese || Vietnamita<ref>https://dle.rae.es/vietnamita</ref> || Biyetnames || Viyetnamita |- | {{code|nl}} || Dutch || Neerlandés<ref>https://www.linguno.com/wordComparison/esp/neerlandes-holandes/ (''Holandés'' ay isang [[:Kategorya:Olandes na Nerlandes|varayti]] ng ''Neerlandés'')</ref> || Olandes || Nerlandes |- | {{code|alv}} || Atlantic-Congo || Atlántico-Congoleñas || - || Atlantiko-Konggoleñas |} </li> <li> (''General guideline lamang'') Ang unang salita ay ang pinakapangunahin, tapos ang mga sumusunod na salita ay mas espesipiko. Ito ang karaniwang pattern na ginagawa ng KWF. {| class=wikitable ! Kowd !! Ingles !! KWF !! Espanyol !! Wiksiyonaryo (Bago) |- | {{code|abc}} || Ambala Ayta || Áyta Ambalá || - || Ayta Ambala |- | {{code|sgb}} || Mag-Anchi Ayta || Áyta Mag-ántsí || - || Ayta Mag-antsi |- | {{code|due}} || Umiray Dumaget Agta || Agtâ Dumágat Umíray || - || Agta Dumagat Umiray |- | {{code|plw}} || Brooke's Point Palawano || Paláw-an Brooke's Point || - || Palaw-an Brooke's Point |- | {{code|nb}} || Norwegian Bokmål || - || Noruego bokmål || Norwego Bokmål |- | {{code|acy}} || Cypriot Arabic || - || Árabe chipriota || Arabe Tsipriyota |} </li> <li> Kapag may parte sa pangalan na maaaring isalin gamit Tagalog, isalin ito. * Batay sa pattern ng KWF, "South" → "Timog", "Southern" → "Katimugan", atbp. {|class=wikitable ! Kowd !! Ingles !! KWF !! Espanyol !! Wiksiyonaryo (Bago) |- | {{code|ksc}} || Southern Kalinga || Katimúgang Kalíngga || - || Katimugang Kalingga |- | {{code|plv}} || Southwest Palawano || Paláw-an Tímog Kanlúran || - || Palaw-an Timog Kanluran |- | {{code|ajp}} || South Levantine Arabic || - || Árabe levantino del sur || Arabe Timog Levantino |- | {{code|fy}} || West Frisian || - || Frisón occidental || Kanlurang Frison |- | {{code|ltc}} || Middle Chinese || - || Chino medio || Gitnang Tsino |- | {{code|nr}} || Southern Ndebele || - || - || Katimugang Ndebele |- |} </li> </ol> '''Notes''': <references/> Bukás naman ako upang amyendahan ang mga alituntuning ito. Maaari niyo ring sabihin/i-edit kapag may napansin kayong mali sa [[Wiksiyonaryo:Listahan ng mga wika]]. Nais ko lamang na magsimula tayo nang mas moderno na. {{workgroup ping|tl|u1=ysrael214|u2=Sky Harbor|u3=JWilz12345}} <small>at ng lahat ng mga interesado dito</small>. — <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 15:46, 22 Disyembre 2025 (UTC) :[[Tagagamit:Yivan000|Yivan000]], may ilan akong duda tungkol sa mungkahing ito, ngunit may saysay naman ito at maaari pa naman itong pagbutihin. Halimbawa, hindi ako naniniwala na dapat nating gamitin ang titik 'v' sa halip na 'b' sa mga salitang nagmula sa Espanyol o Ingles. Mas mainam (at lalo na't mas katanggap-tanggap) ang paggamit ng "Biyetnamita" sa halip na "Viyetnamita", at kung iyan ang gagawin natin hindi ba mas mabuti na lang na hiramin nang buo at walang pagbabago ang mga salitang nagmula sa Espanyol ("Vietnamita")? May ilan din dito na katanggap-tanggap din sa Espanyol tulad ng "Olandes" (holandés), na mas karaniwan sa karaniwang salita, sa halip na "Neerlandes" (neerlandés) na itinaguriang mas pormal. :Kung pinag-uusapan namin natin ang bansa palpak po rin dito ang KWF: nang ipinalabas nila ang kanilang tinaguriang "atlas sa wikang Filipino" noong mga 2013-2014 inilagay lamang nila ang mga pangalan ng bansa sa Ingles at Espanyol nang walang pangalang isina-Tagalog/Filipino na tulad ng "Hapon", "Tsina" o kahit "Pilipinas", kahit kung umiiral na sila sa mismong wika. :Gayundin, bakit hindi natin isinalin ang FSL (sa Wikipedia, nakatungo ito sa [[:w:Wikang pasenyas ng mga Pilipino|Wikang pasenyas ng mga Pilipino]]) at ang Austronesian (na nakatungo rin sa [[:w:mga wikang Austronesyo|Mga wikang Austronesyo]])? Alam kong opisyal na regulador ng wikang Filipino ang KWF pero naniniwala ako na may kakayahan ang mga proyektong Wikimedia na impluwensiyahan ang direksiyon ng pag-usbong ng wika sa isang lugar na mas mabuti pa sa kung saan itinutungo tayo ng pamahalaan, at dapat natin itong gawin, pero nang may paggalang sa umiiral na leksikon tulad ng inihihiling ng unang tuntunin sa paghiram ng salita ayon sa ortograpiyang Filipino na siyang ipinapatupad ng KWF. --[[Tagagamit:Sky Harbor|<b style="color: #0066ff">Sky Harbor</b>]] <sup>([[Usapang tagagamit:Sky Harbor|<b style="color:#0066ff">usapan</b>]])</sup> 05:09, 6 Enero 2026 (UTC) ::@[[Tagagamit:Sky Harbor|Sky Harbor]] <small>(pati na rin sina @[[Tagagamit:ysrael214|Ysrael214]], @[[User:Mar vin kaiser|Mar vin kaiser]] @[[User:Mlgc1998|Mlgc1998]] @[[User:TagaSanPedroAko|TagaSanPedroAko]] upang makita nyo to)</small><br/> Nagpadala ako ng email sa Komisyon ng Wikang Filipino mismo upang matugunan sa kung papaano ang nararapat sa pagsasalin ng mga pangalan ng wika. '''[https://imgur.com/a/TW42hxS Basahin ninyo dito ang tugon nila]'''. ::Base sa tugon nila (at ayon sa aking interpretasyon), may tama naman ang paggagawa ko ng mga saling Filipino na ibase at ireispel mula sa Espanyol. May tama rin naman si Sky Harbor na maaari ring gamitin nang puro mula Espanyol. Ngunit para sa akin, nais ko ring ipatupad ang nakasaad sa OP/MMP sa kung paano mag-adapt ng mga salin sa Filipino. <small>(Dahil dito, bukas ako sa pagpalit ng salin ng ''Austronesian'' at FSL.)</small> ::Nais ko rin sana malaman kung ano ang interpretasyon ninyo sa tugon ng KWF.— <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 12:46, 17 Pebrero 2026 (UTC) ::@[[Tagagamit:Yivan000|Yivan000]] Sa tingin ko ang sabi ng KWF, "tldr: bahala kayo." Pero ngayon ko lang nalaman na may Atlas ang KWF, mukhang ito iyon https://www.scribd.com/document/399878486/Atlas-Ng-Mga-Bansa-Sa-Mundo-2 == Hiling para sa renewal ng aking pagka-admin == Magandang araw sa inyong lahat. Narito ang ilan sa mga nagawa ko rito bilang isang tagapangasiwa dito sa Wiksiyonaryong Tagalog: * Paglilinis ng mga kategorya (paglilipat at pagmomodernisa) * Pagbura ng mga di angkop na pahina (bandalismo, mga di ginagamit na padron, etc.) * Pagdadagdag ng mga gadget na mas nakakatulong sa pag-browse ng website na ito (gaya ng pop-up pag nag-hohover) * Pagmomodernisa ng global CSS at JS ayon sa kasalukuyang ginagamit ng Wiksiyonaryong Ingles * Pagpalit ng mga ibang MediaWiki interface localization strings upang mas akma dito Nais ko pang ipagpatuloy ang aking nasimulan na. — <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 10:55, 19 Marso 2026 (UTC) :@[[Tagagamit:Yivan000|Yivan000]] {{sang-ayon}} <span style="color:#330005; font-size:1.65em; vertical-align:middle">𝄽</span> [[Tagagamit:Ysrael214|ysrael214]] ([[Usapang tagagamit:Ysrael214|{{MediaWiki:Talkpagelinktext}}]]) 13:59, 19 Marso 2026 (UTC) == Hiling para sa renewal ng aking pagka-admin (2) == Magandang araw sa inyong lahat. Naipagpapatuloy ko ang mga naigawa ko sa itaas bilang tagapangasiwa. Nais ko pang ipagpatuloy ito. — <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 02:17, 21 Setyembre 2026 (UTC) 8jrux2x8fqyb49zqs5559y9mj3r5y7d 178011 178009 2026-09-21T03:46:21Z Ysrael214 4615 /* Hiling para sa renewal ng aking pagka-admin (2) */ Tugon 178011 wikitext text/x-wiki {{Pambungad ng Kapihan}} {{Wiktionary:Puntahan ng Pamayanan}} {{Wiktionary:Kapihan/Sinupan}} ---- == Sa mga pangalan ng wika, pamilya, atbp. == Nang ginawa ang mga karamihan ng entrada dito, hindi pa masyadong napapalaganap ang modernong Ortograpiyang Pambansa. Ngayon na minomordernisa natin ang Wiksiyonaryong Tagalog, sinimulan kong sundin ang mga alituntuning ito lalo na pagdating sa mga pangalan ng wika. Makikita sa [[Wiksiyonaryo:Listahan ng mga wika]] (at ang mga iba pang kawing doon) ang aking progress at ang aking mga samu't saring desisyon patungkol sa saling Tagalog ng mga pangalan ng wika <small>(na maaari na rin sigurong gamitin sa mga iba pang mga pangalan)</small>. Maigting na isusunod ang mga alituntunin ng Ortograpiyang Pambansa. Nais kong ipaliwanag dito ang ilan: <ol> <li> Lalo na sa mga wika ng Pilipinas, umiiral ang opisyal na pangalan mula sa KWF. * Ang ◌́ at ◌̀ ay itinanggal, ang ◌̂ ay itinanggal kapag nasa hulihang titik lamang, at ang ◌̈ ay naiiwan. * Kapag may pagkakaiba, mas nalalamang ang mas recent na nailimbag at/o ang mas klarong may consensus sa mga katutubong nagsasalita nito. {| class=wikitable ! Kowd !! Ingles || KWF !! Wiksiyonaryo (Bago) |- | {{code|tsg}} || Tausug || Bahása Sug || Bahasa Sug |- | {{code|agt}} || Central Cagayan Agta || Pánnon || Pannon |- | {{code|kne}} || Kankanaey || Kankanáëy || Kankanaëy |- | {{code|snl}} || Sangil || Sangirë̂ || Sangirë |- | {{code|ubl}} || Buhi'non Bikol || Boînën || Boînën |- | {{code|sfe}} || Eastern Subanun || Subánën Ginselugnén<ref>https://kwfwikaatkultura.ph/subanen-2/</ref> || G̓insëlug̓ën Sub̓anën<ref>https://www.facebook.com/share/p/17hXPKnTmP/</ref> |- | {{code|iwk}} || I-Wak || Îguwák || Îguwak |- | {{code|psp}} || Philippine Sign Language || Filipíno Sign Language || Filipino Sign Language |- | {{code|map}} || Austronesian || <s>Austronesian<ref>https://kwfwikaatkultura.ph/mga-wika-ng-pilipinas/</ref></s> EDIT 2026-09-04: Awstronesyo<ref>https://www.facebook.com/share/p/1BVD5EcS79/</ref> || <s>Austronesian</s> Awstronesyo |} </li> <li> Gamitin ang umiiral na Espanyol na pangalan. * Tanggalin ang ◌́ at ang unahang H dahil hindi ito binibigkas. * Ireispel ang J → H dahil para sa /d͡ʒ/ lamang ang J; ang J sa Espanyol ay katunog ng H. * Panatilihin ang F, V, Ñ, at Z. * Ireispel ang C → K o S; QU → K * Sundin ang mga panuto patungkol sa kambal-patinig. * Ireispel ang CH → TS. * Tignang mabuti kung kailangang ireispel ang NG sa NGG. {| class=wikitable ! Kowd !! Ingles !! Espanyol !! Wiksiyonaryo (Luma) !! Wiksiyonaryo (Bago) |- | {{code|fr}} || French || Francés || Pranses || Franses |- | {{code|mg}} || Malagasy || Malgache || Malagasi || Malgatse |- | {{code|fi}} || Finnish || Finés<ref>https://www.fundeu.es/recomendacion/fines-finlandes/ (''Finés'' sa wika, ''Finlandés'' sa bansa)</ref> || Pinlandes || Fines |- | {{code|vi}} || Vietnamese || Vietnamita<ref>https://dle.rae.es/vietnamita</ref> || Biyetnames || Viyetnamita |- | {{code|nl}} || Dutch || Neerlandés<ref>https://www.linguno.com/wordComparison/esp/neerlandes-holandes/ (''Holandés'' ay isang [[:Kategorya:Olandes na Nerlandes|varayti]] ng ''Neerlandés'')</ref> || Olandes || Nerlandes |- | {{code|alv}} || Atlantic-Congo || Atlántico-Congoleñas || - || Atlantiko-Konggoleñas |} </li> <li> (''General guideline lamang'') Ang unang salita ay ang pinakapangunahin, tapos ang mga sumusunod na salita ay mas espesipiko. Ito ang karaniwang pattern na ginagawa ng KWF. {| class=wikitable ! Kowd !! Ingles !! KWF !! Espanyol !! Wiksiyonaryo (Bago) |- | {{code|abc}} || Ambala Ayta || Áyta Ambalá || - || Ayta Ambala |- | {{code|sgb}} || Mag-Anchi Ayta || Áyta Mag-ántsí || - || Ayta Mag-antsi |- | {{code|due}} || Umiray Dumaget Agta || Agtâ Dumágat Umíray || - || Agta Dumagat Umiray |- | {{code|plw}} || Brooke's Point Palawano || Paláw-an Brooke's Point || - || Palaw-an Brooke's Point |- | {{code|nb}} || Norwegian Bokmål || - || Noruego bokmål || Norwego Bokmål |- | {{code|acy}} || Cypriot Arabic || - || Árabe chipriota || Arabe Tsipriyota |} </li> <li> Kapag may parte sa pangalan na maaaring isalin gamit Tagalog, isalin ito. * Batay sa pattern ng KWF, "South" → "Timog", "Southern" → "Katimugan", atbp. {|class=wikitable ! Kowd !! Ingles !! KWF !! Espanyol !! Wiksiyonaryo (Bago) |- | {{code|ksc}} || Southern Kalinga || Katimúgang Kalíngga || - || Katimugang Kalingga |- | {{code|plv}} || Southwest Palawano || Paláw-an Tímog Kanlúran || - || Palaw-an Timog Kanluran |- | {{code|ajp}} || South Levantine Arabic || - || Árabe levantino del sur || Arabe Timog Levantino |- | {{code|fy}} || West Frisian || - || Frisón occidental || Kanlurang Frison |- | {{code|ltc}} || Middle Chinese || - || Chino medio || Gitnang Tsino |- | {{code|nr}} || Southern Ndebele || - || - || Katimugang Ndebele |- |} </li> </ol> '''Notes''': <references/> Bukás naman ako upang amyendahan ang mga alituntuning ito. Maaari niyo ring sabihin/i-edit kapag may napansin kayong mali sa [[Wiksiyonaryo:Listahan ng mga wika]]. Nais ko lamang na magsimula tayo nang mas moderno na. {{workgroup ping|tl|u1=ysrael214|u2=Sky Harbor|u3=JWilz12345}} <small>at ng lahat ng mga interesado dito</small>. — <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 15:46, 22 Disyembre 2025 (UTC) :[[Tagagamit:Yivan000|Yivan000]], may ilan akong duda tungkol sa mungkahing ito, ngunit may saysay naman ito at maaari pa naman itong pagbutihin. Halimbawa, hindi ako naniniwala na dapat nating gamitin ang titik 'v' sa halip na 'b' sa mga salitang nagmula sa Espanyol o Ingles. Mas mainam (at lalo na't mas katanggap-tanggap) ang paggamit ng "Biyetnamita" sa halip na "Viyetnamita", at kung iyan ang gagawin natin hindi ba mas mabuti na lang na hiramin nang buo at walang pagbabago ang mga salitang nagmula sa Espanyol ("Vietnamita")? May ilan din dito na katanggap-tanggap din sa Espanyol tulad ng "Olandes" (holandés), na mas karaniwan sa karaniwang salita, sa halip na "Neerlandes" (neerlandés) na itinaguriang mas pormal. :Kung pinag-uusapan namin natin ang bansa palpak po rin dito ang KWF: nang ipinalabas nila ang kanilang tinaguriang "atlas sa wikang Filipino" noong mga 2013-2014 inilagay lamang nila ang mga pangalan ng bansa sa Ingles at Espanyol nang walang pangalang isina-Tagalog/Filipino na tulad ng "Hapon", "Tsina" o kahit "Pilipinas", kahit kung umiiral na sila sa mismong wika. :Gayundin, bakit hindi natin isinalin ang FSL (sa Wikipedia, nakatungo ito sa [[:w:Wikang pasenyas ng mga Pilipino|Wikang pasenyas ng mga Pilipino]]) at ang Austronesian (na nakatungo rin sa [[:w:mga wikang Austronesyo|Mga wikang Austronesyo]])? Alam kong opisyal na regulador ng wikang Filipino ang KWF pero naniniwala ako na may kakayahan ang mga proyektong Wikimedia na impluwensiyahan ang direksiyon ng pag-usbong ng wika sa isang lugar na mas mabuti pa sa kung saan itinutungo tayo ng pamahalaan, at dapat natin itong gawin, pero nang may paggalang sa umiiral na leksikon tulad ng inihihiling ng unang tuntunin sa paghiram ng salita ayon sa ortograpiyang Filipino na siyang ipinapatupad ng KWF. --[[Tagagamit:Sky Harbor|<b style="color: #0066ff">Sky Harbor</b>]] <sup>([[Usapang tagagamit:Sky Harbor|<b style="color:#0066ff">usapan</b>]])</sup> 05:09, 6 Enero 2026 (UTC) ::@[[Tagagamit:Sky Harbor|Sky Harbor]] <small>(pati na rin sina @[[Tagagamit:ysrael214|Ysrael214]], @[[User:Mar vin kaiser|Mar vin kaiser]] @[[User:Mlgc1998|Mlgc1998]] @[[User:TagaSanPedroAko|TagaSanPedroAko]] upang makita nyo to)</small><br/> Nagpadala ako ng email sa Komisyon ng Wikang Filipino mismo upang matugunan sa kung papaano ang nararapat sa pagsasalin ng mga pangalan ng wika. '''[https://imgur.com/a/TW42hxS Basahin ninyo dito ang tugon nila]'''. ::Base sa tugon nila (at ayon sa aking interpretasyon), may tama naman ang paggagawa ko ng mga saling Filipino na ibase at ireispel mula sa Espanyol. May tama rin naman si Sky Harbor na maaari ring gamitin nang puro mula Espanyol. Ngunit para sa akin, nais ko ring ipatupad ang nakasaad sa OP/MMP sa kung paano mag-adapt ng mga salin sa Filipino. <small>(Dahil dito, bukas ako sa pagpalit ng salin ng ''Austronesian'' at FSL.)</small> ::Nais ko rin sana malaman kung ano ang interpretasyon ninyo sa tugon ng KWF.— <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 12:46, 17 Pebrero 2026 (UTC) ::@[[Tagagamit:Yivan000|Yivan000]] Sa tingin ko ang sabi ng KWF, "tldr: bahala kayo." Pero ngayon ko lang nalaman na may Atlas ang KWF, mukhang ito iyon https://www.scribd.com/document/399878486/Atlas-Ng-Mga-Bansa-Sa-Mundo-2 == Hiling para sa renewal ng aking pagka-admin == Magandang araw sa inyong lahat. Narito ang ilan sa mga nagawa ko rito bilang isang tagapangasiwa dito sa Wiksiyonaryong Tagalog: * Paglilinis ng mga kategorya (paglilipat at pagmomodernisa) * Pagbura ng mga di angkop na pahina (bandalismo, mga di ginagamit na padron, etc.) * Pagdadagdag ng mga gadget na mas nakakatulong sa pag-browse ng website na ito (gaya ng pop-up pag nag-hohover) * Pagmomodernisa ng global CSS at JS ayon sa kasalukuyang ginagamit ng Wiksiyonaryong Ingles * Pagpalit ng mga ibang MediaWiki interface localization strings upang mas akma dito Nais ko pang ipagpatuloy ang aking nasimulan na. — <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 10:55, 19 Marso 2026 (UTC) :@[[Tagagamit:Yivan000|Yivan000]] {{sang-ayon}} <span style="color:#330005; font-size:1.65em; vertical-align:middle">𝄽</span> [[Tagagamit:Ysrael214|ysrael214]] ([[Usapang tagagamit:Ysrael214|{{MediaWiki:Talkpagelinktext}}]]) 13:59, 19 Marso 2026 (UTC) == Hiling para sa renewal ng aking pagka-admin (2) == Magandang araw sa inyong lahat. Naipagpapatuloy ko ang mga naigawa ko sa itaas bilang tagapangasiwa. Nais ko pang ipagpatuloy ito. — <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 02:17, 21 Setyembre 2026 (UTC) :@[[Tagagamit:Yivan000|Yivan000]] {{sang-ayon}} <span style="color:#330005; font-size:1.65em; vertical-align:middle">𝄽</span> [[Tagagamit:Ysrael214|ysrael214]] ([[Usapang tagagamit:Ysrael214|{{MediaWiki:Talkpagelinktext}}]]) 03:46, 21 Setyembre 2026 (UTC) 6lbolmkc681hrr0ccj2s03yn52l57u3 irregolarità 0 21235 178012 120569 2026-09-21T04:57:30Z Yivan000 4078 178012 wikitext text/x-wiki =={{=it=}}== ===Etimolohiya=== {{ety|it|:af|irregolare|-ità}} Mula {{af|it|irregolare|-ità}}. ===Pagbigkas=== {{it-pr}} ===Pangngalan=== {{it-noun|f|#}} # [[iregularidad]] #: {{ant|it|regolarità}} ===Basahin pa=== * {{R:it:Treccani}} =={{=mt=}}== ===Etimolohiya=== {{ety|mt|:bor|it:irregolarità|text=+|tree=1}} ===Pagbigkas=== * {{IPA|mt|/ɪr.rɛ.ɡɔ.la.rɪˈtaː/}} * {{rhymes|mt|aː|s=6}} ===Pangngalan=== {{mt-head|noun|g=f|p=irregolaritajiet}} # [[iregularidad]] #: {{ant|mt|regolarità}} ====Katawagang kaugnay==== {{col|mt|regola|regolari|irregolari|regolarment|regolarità|regolabbli|regolament|irregolabbli|regolatur|rregola|rregolarizza}} bga8esv6507uqzoo0brhway5t9ck02t Usapang tagagamit:Yivan000 3 31755 178007 177425 2026-09-20T19:43:07Z Leaderbot 5288 /* Notice of expiration of your interface-admin right */ bagong seksyon 178007 wikitext text/x-wiki <blockquote style="text-align:center"> ''Usapan. Usapang pahina.'' ''Sinabing kailangang magsulat ako ng usapang pahina. At heto ako nagsusulat ng usapang pahina.'' ''Walang nagsabi niyan. Hindi sila nag-usap.'' ''Binabasa mo 'to, hindi inuusap.'' ''- Yivan'' </blockquote> == [[Padron:af-adj-table-2]] == To make table inflection in this template display properly, you should need update/create page [[MediaWiki:Common.css]], [[MediaWiki:Gadget-Site.css]] and [[MediaWiki:Gadget-LanguagesAndScripts.css]]. [[User:Hiyuune|<b style="font-family:Segoe UI Light;color:#FFB3AE;letter-spacing:">Hiyuune</b>]] [[User talk: Hiyuune|<b style="font-family:Segoe UI Light;color:#FFF7AD;letter-spacing:">(angustifolia)</b>]] 17:19, 24 Disyembre 2025 (UTC) == Notice of expiration of your interface-admin right == <div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "interface-admin" (Interface administrators) will expire on 2026-03-21 10:16:18. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Tagagamit:Leaderbot|Leaderbot]] ([[Usapang tagagamit:Leaderbot|kausapin]]) 19:42, 14 Marso 2026 (UTC)</div> == Notice of expiration of your sysop right == <div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "sysop" (Mga admin) will expire on 2026-03-21 10:16:18. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Tagagamit:Leaderbot|Leaderbot]] ([[Usapang tagagamit:Leaderbot|kausapin]]) 19:42, 14 Marso 2026 (UTC)</div> == [[Natatangi:Talaan ng pansala/4]] == Hi. This filter cause error when I mark speedy deletion this page [[fsvtifsvty]]. Can you resolve it? [[User:Hiyuune|<span style="font-family: Segoe UI Light;color:#FF69B4;letter-spacing:">Linh Huynh</span>]] ([[User talk:Hiyuune|<span style="color:#008080;">talk</span>]]) 13:43, 25 Agosto 2026 (UTC) :Thank you for letting me know; it should hopefully be fixed. — <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 14:37, 25 Agosto 2026 (UTC) == Notice of expiration of your interface-admin right == <div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "interface-admin" (Interface administrators) will expire on 2026-09-27 15:35:47. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Tagagamit:Leaderbot|Leaderbot]] ([[Usapang tagagamit:Leaderbot|kausapin]]) 19:43, 20 Setyembre 2026 (UTC)</div> pqsqo25wm2u4q5k35c0d1diezokfiaz 178008 178007 2026-09-20T19:43:11Z Leaderbot 5288 /* Notice of expiration of your sysop right */ bagong seksyon 178008 wikitext text/x-wiki <blockquote style="text-align:center"> ''Usapan. Usapang pahina.'' ''Sinabing kailangang magsulat ako ng usapang pahina. At heto ako nagsusulat ng usapang pahina.'' ''Walang nagsabi niyan. Hindi sila nag-usap.'' ''Binabasa mo 'to, hindi inuusap.'' ''- Yivan'' </blockquote> == [[Padron:af-adj-table-2]] == To make table inflection in this template display properly, you should need update/create page [[MediaWiki:Common.css]], [[MediaWiki:Gadget-Site.css]] and [[MediaWiki:Gadget-LanguagesAndScripts.css]]. [[User:Hiyuune|<b style="font-family:Segoe UI Light;color:#FFB3AE;letter-spacing:">Hiyuune</b>]] [[User talk: Hiyuune|<b style="font-family:Segoe UI Light;color:#FFF7AD;letter-spacing:">(angustifolia)</b>]] 17:19, 24 Disyembre 2025 (UTC) == Notice of expiration of your interface-admin right == <div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "interface-admin" (Interface administrators) will expire on 2026-03-21 10:16:18. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Tagagamit:Leaderbot|Leaderbot]] ([[Usapang tagagamit:Leaderbot|kausapin]]) 19:42, 14 Marso 2026 (UTC)</div> == Notice of expiration of your sysop right == <div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "sysop" (Mga admin) will expire on 2026-03-21 10:16:18. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Tagagamit:Leaderbot|Leaderbot]] ([[Usapang tagagamit:Leaderbot|kausapin]]) 19:42, 14 Marso 2026 (UTC)</div> == [[Natatangi:Talaan ng pansala/4]] == Hi. This filter cause error when I mark speedy deletion this page [[fsvtifsvty]]. Can you resolve it? [[User:Hiyuune|<span style="font-family: Segoe UI Light;color:#FF69B4;letter-spacing:">Linh Huynh</span>]] ([[User talk:Hiyuune|<span style="color:#008080;">talk</span>]]) 13:43, 25 Agosto 2026 (UTC) :Thank you for letting me know; it should hopefully be fixed. — <span style="font-size:25px">🍕</span> <span style="font-family:'Comic Sans MS';"><span style="color:#FFC83D">Yivan</span><span style="color:#F7894A">000</span> <small><sup>[[User:Yivan000|view]]</sup><sub>[[User_talk:Yivan000|talk]]</sub></small></span> 14:37, 25 Agosto 2026 (UTC) == Notice of expiration of your interface-admin right == <div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "interface-admin" (Interface administrators) will expire on 2026-09-27 15:35:47. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Tagagamit:Leaderbot|Leaderbot]] ([[Usapang tagagamit:Leaderbot|kausapin]]) 19:43, 20 Setyembre 2026 (UTC)</div> == Notice of expiration of your sysop right == <div dir="ltr">Hi, as part of [[:m:Special:MyLanguage/Global reminder bot|Global reminder bot]], this is an automated reminder to let you know that your permission "sysop" (Mga tagapangasiwa) will expire on 2026-09-27 15:35:47. Please renew this right if you would like to continue using it. <i>In other languages: [[:m:Special:MyLanguage/Global reminder bot/Messages/default|click here]]</i> [[Tagagamit:Leaderbot|Leaderbot]] ([[Usapang tagagamit:Leaderbot|kausapin]]) 19:43, 20 Setyembre 2026 (UTC)</div> 52u5bknxp2h9zgtqugumov4mpdz7zyq Kategorya:Neolohismo ayon sa wika 14 38849 178010 2026-09-21T02:41:05Z Yivan000 4078 Nilikha ang pahina na may '{{auto cat}}' 178010 wikitext text/x-wiki {{auto cat}} eomzlm5v4j7ond1phrju7cnue91g5qx Padron:mt-head 10 38850 178013 2026-09-21T04:58:50Z Yivan000 4078 Nilikha ang pahina na may '{{#invoke:mt-headword|show}}<!-- --><noinclude>{{documentation}}</noinclude>' 178013 wikitext text/x-wiki {{#invoke:mt-headword|show}}<!-- --><noinclude>{{documentation}}</noinclude> p6x5o7iatlnws9iq3wj2s428nbwjnme Module:mt-headword 828 38851 178014 2026-09-21T04:59:20Z Yivan000 4078 Nilikha ang pahina na may 'local export = {} local pos_functions = {} local M = require("Module:module loader").init { require = { headword_utilities = "Module:headword utilities", mt_verb_form = "Module:mt-verb form", }, lazy = { lang = function() return require("Module:languages").getByCode("mt") end, }, } local force_cat = false local valid_genders = {"m", "f", "p", "d", "mf", "mfbysense", "?"} local gender_default = { nouns = "?", numerals = "?", ["verbal nouns"] = "?"...' 178014 Scribunto text/plain local export = {} local pos_functions = {} local M = require("Module:module loader").init { require = { headword_utilities = "Module:headword utilities", mt_verb_form = "Module:mt-verb form", }, lazy = { lang = function() return require("Module:languages").getByCode("mt") end, }, } local force_cat = false local valid_genders = {"m", "f", "p", "d", "mf", "mfbysense", "?"} local gender_default = { nouns = "?", numerals = "?", ["verbal nouns"] = "?", ["numeral forms"] = "?", ["collective nouns"] = "m", ["singulative nouns"] = "f", ["adjective feminine forms"] = "f", ["adjective plural forms"] = "p", ["noun dual forms"] = "d", } local pos_category_for = { ["collective nouns"] = "nouns", ["singulative nouns"] = "noun forms", ["verbal nouns"] = "nouns", ["past participles"] = "participles", ["active participles"] = "participles", } local function validate_genders(data, genders, gender_type) data:validate_genders(genders, valid_genders, {gender_type = gender_type, no_augment = true}) end function export.show(frame) local props = { lang = M.lang, frame = frame, pos_functions = pos_functions, force_cat = force_cat, infls = { {"g", type = "genders", default = function(data) return gender_default[data.orig_poscat] end, validate = function(data, genders) validate_genders(data, genders) end, }, {cat = function(data) if data.pagename:find("[Gg]ħ") then return "terms spelled with Għ" end end}, }, augment_params = function(data, params) local pos = pos_functions[data.orig_poscat] if pos and pos.augment_params then pos.augment_params(data, params) end end, augment_headdata = function(data) data.pos_category = pos_category_for[data.pos_category] or data.pos_category end, } local headword = M.headword_utilities.process_headword(props) if props.definition then return headword .. "\n# " .. props.definition end return headword end pos_functions["head"] = { infls = function(data) local pos = pos_functions[data.orig_poscat] return pos and pos.infls or {} end, func = function(data, args) local pos = pos_functions[data.orig_poscat] if pos and pos.func then pos.func(data, args) end end, } local function gendered_term_infl(param, label) return {param, label = label, include_mods = {"g"}, process_after_parse = function(data, terms) for _, termobj in ipairs(terms) do validate_genders(data, termobj.genders, label) end return terms end, } end pos_functions["nouns"] = { infls = { {"cons", label = "construct state"}, {"d", label = "dual"}, {"p", label = "plural"}, {"pauc", label = "paucal"}, {"pcons", label = "plural construct state"}, {"f", label = "female equivalent"}, {"m", label = "male equivalent"}, {"dim", label = "diminutive"}, }, } pos_functions["proper nouns"] = { infls = { {"cons", label = "construct state"}, {"p", label = "plural"}, {"f", label = "female equivalent"}, {"m", label = "male equivalent"}, }, } pos_functions["numerals"] = { infls = { {cat = "cardinal numbers"}, {"cons", label = "construct state"}, {"d", label = "dual"}, {"p", label = "plural"}, {"pauc", label = "paucal"}, {"pcons", label = "plural construct state"}, {"f", label = "feminine"}, {"m", label = "masculine"}, {"dim", label = "diminutive"}, }, } pos_functions["collective nouns"] = { infls = { {fixed_label = "collective", cat = "collective nouns"}, gendered_term_infl("sing", "singulative"), {"cons", label = "construct state"}, {"d", label = "dual"}, {"p", label = "plural"}, {"pauc", label = "paucal"}, {"dim", label = "diminutive"}, }, } pos_functions["singulative nouns"] = { infls = { {fixed_label = "singulative", cat = "singulative nouns"}, gendered_term_infl("coll", "collective"), {"cons", label = "construct state"}, {"d", label = "dual"}, {"p", label = "plural"}, {"pauc", label = "paucal"}, {"dim", label = "diminutive"}, }, } pos_functions["noun forms"] = { infls = { {"cons", label = "construct state"}, }, } pos_functions["verbal nouns"] = { infls = { {"inst", label = "instance noun"}, {"p", label = "plural"}, }, } local function reject_if_invariable(data) if data.process_props.args[2] then error("Can't specify feminine or plural forms of an invariable adjective (-)") end end pos_functions["adjectives"] = { infls = { {2, validate = {"-"}, fixed_label = "<<invariable>>", cat = "indeclinable adjectives"}, {"f", label = "feminine singular", validate = reject_if_invariable}, {"p", label = "plural", validate = reject_if_invariable}, {"dim", label = "diminutive"}, {"comp", label = "comparative"}, }, } pos_functions["verbs"] = { infls = { {2, label = "imperfect"}, {3, label = "past participle"}, {4, label = "active participle"}, {5, label = "verbal noun"}, }, augment_params = function(data, params) params.imper = {alias_of = 2} params.pp = {alias_of = 3} params.ap = {alias_of = 4} params.vn = {alias_of = 5} end, func = function(data, args) if args[4] then data:track("active participle") end end, } pos_functions["verb forms"] = { augment_params = function(data, params) params[2] = {sublist = "comma without whitespace"} for _, param in ipairs {"slots", "noslots", "conjid", "noconjid", "t", "gloss"} do params[param] = true end end, func = function(data, args) if args[2] then data.process_props.data.definition = M.mt_verb_form.definition_line { pagename = data.pagename, lemmas = args[2], slots = args.slots, noslots = args.noslots, conjid = args.conjid, noconjid = args.noconjid, gloss = args.t or args.gloss, } end end, } local function participles(cat) return { infls = { {cat = cat}, {"f", label = "feminine"}, {"p", label = "plural"}, }, } end pos_functions["past participles"] = participles("past participles") pos_functions["active participles"] = participles("active participles") pos_functions["determiners"] = { infls = { {"m", label = "masculine"}, {"f", label = "feminine"}, {"p", label = "plural"}, }, } local function affixes_pronouns() return { infls = { {"f", label = "feminine"}, {"d", label = "dual"}, {"p", label = "plural"}, }, } end pos_functions["suffixes"] = affixes_pronouns() pos_functions["prefixes"] = affixes_pronouns() pos_functions["pronouns"] = affixes_pronouns() pos_functions["adverbs"] = { infls = { {"stem", label = "stem"}, {"emph", label = "emphatic"}, }, } return export ljc8z4xfjf0539epsovsccrhefq89nh Module:module loader 828 38852 178015 2026-09-21T05:00:45Z Yivan000 4078 Nilikha ang pahina na may '--[==[ intro: This module lets a module declare all of its dependencies at the top, in one place, while still loading each of them only when the code reaches it. A page which never enters a given branch never pays for the modules that branch needs. Call `init` once and keep the table it returns: ``` local M = require("Module:module loader").init{ require = { utilities = "Module:utilities", languages = "Module:languages", }, loadData = { headword_data =...' 178015 Scribunto text/plain --[==[ intro: This module lets a module declare all of its dependencies at the top, in one place, while still loading each of them only when the code reaches it. A page which never enters a given branch never pays for the modules that branch needs. Call `init` once and keep the table it returns: ``` local M = require("Module:module loader").init{ require = { utilities = "Module:utilities", languages = "Module:languages", }, loadData = { headword_data = "Module:headword/data", }, lazy = { lang = function() return require("Module:languages").getByCode("de") end, }, } M.utilities.format_categories(...) -- requires Module:utilities M.headword_data.page -- mw.loadData on first access M.lang:makeEntryName(...) -- runs the getter on first access ``` The table `init` returns is a proxy. Reading a name for the first time does the work, and the result is {rawset} onto the proxy, so every later read is a plain table lookup and no metamethod runs. The same applies one level down: for a `require` entry, reading `M.<var>name</var>.<var>member</var>` caches that member on the sub-proxy. What a name reads as depends on the field it was declared in: * `require` and `requireOptional` give a sub-proxy, not the module table. Key lookups pass through, so the module's own {__index} still fires, but only keys already read exist on the proxy itself, so {pairs} and {#} see only those. Metamethods like {__call} apply to the module, not to the proxy that stands in for it. * `loadData` and `loadDataOptional` give the {mw.loadData} table itself, which behaves like any other table, so iteration works. * `lazy` gives whatever the getter returned. A name which was never declared reads as {nil}, as does an optional module which failed to load. The failure is cached, so a missing module is looked up once and not on every access. Guard with {if M.foo then} instead of indexing straight into it. A module declared under `require` which returns a function rather than a table is cached and returned as that function, with no proxy around it. The laziness is per-access, not per-call. The proxy defers until a name is read, not until the value that name holds is called, so binding a name to a local at the top of a module loads it there and then: ``` local shallowCopy = M.table.shallowCopy -- loads Module:table immediately ``` This applies to every field, `lazy` included, since {local x = M.x} is itself the access which runs the getter. Keep the access at the call site instead, where it costs two table lookups once the first access has cached both levels. Where a bare local is wanted, use the self-overwriting loader idiom of [[Module:table]] and [[Module:parameters]], which defers to the first call and costs nothing after it, because the local is replaced by the target function: ``` local function shallowCopy(...) shallowCopy = require("Module:table").shallowCopy return shallowCopy(...) end ``` ]==] local export = {} local NIL = {} -- sentinel for optional loadData/require that failed (so we don't retry) -- Validate the declaration: a short name may appear in only one of the five fields, and a -- module path may not appear twice across require and loadData. local function validate(modules, data_modules, optional_data_modules, optional_require_modules, lazy_modules) local seen_names = {} local seen_paths = {} -- Check require modules for name, path in pairs(modules) do if seen_names[name] then error("Module loader: duplicate name '" .. name .. "'") end seen_names[name] = "require" if seen_paths[path] then error("Module loader: module '" .. path .. "' loaded twice (as '" .. seen_paths[path] .. "' and '" .. name .. "')") end seen_paths[path] = name end -- Check loadData modules for name, path in pairs(data_modules) do if seen_names[name] then error("Module loader: duplicate name '" .. name .. "' (in both require and loadData)") end seen_names[name] = "loadData" if seen_paths[path] then error("Module loader: module '" .. path .. "' loaded twice (as '" .. seen_paths[path] .. "' and '" .. name .. "')") end seen_paths[path] = name end -- Check loadDataOptional (names only; its paths are not tracked) for name, path in pairs(optional_data_modules or {}) do if seen_names[name] then error("Module loader: duplicate name '" .. name .. "'") end seen_names[name] = "loadDataOptional" end -- Check requireOptional (names only) for name, path in pairs(optional_require_modules or {}) do if seen_names[name] then error("Module loader: duplicate name '" .. name .. "'") end seen_names[name] = "requireOptional" end -- Check lazy (names only) for name in pairs(lazy_modules or {}) do if seen_names[name] then error("Module loader: duplicate name '" .. name .. "'") end seen_names[name] = "lazy" end end -- Build a proxy for a lazy object: table of name → function () → value. Each key is evaluated once and cached. local function make_lazy_object_proxy(getters) return setmetatable({}, { __index = function(proxy, key) local getter = getters[key] if type(getter) ~= "function" then return nil end local value = getter() rawset(proxy, key, value) return value end }) end --[==[ Given a table of dependency declarations ``opts``, returns the lazy proxy described above. Call it once, at the top of a module. ``opts`` may contain any of the following fields, all optional: * `require`: maps a short name to a module path, which is loaded with {require} on first access. * `loadData`: maps a short name to a data module path, which is loaded with {mw.loadData} on first access. The table is returned as-is. * `requireOptional`: as `require`, but the load runs under {pcall}, and a module which is missing or throws an error reads as {nil}. Such a module must return a table; one returning a function counts as missing. * `loadDataOptional`: as `loadData`, but the load runs under {pcall}, and a module which is missing or throws an error reads as {nil}. * `lazy`: maps a short name to a getter for a value which is not a whole module. Where `require` and `loadData` defer loading a module, `lazy` defers computing a value, such as an object built from a module, or something borrowed from elsewhere which you would rather not touch until it is needed. Each entry is either a function returning the value, or a table of names to such functions, giving a nested object whose keys are each evaluated on their own first access. For instance: ** {lang = function() return require("Module:languages").getByCode("de") end}, so that [[Module:languages]] is not loaded on pages which never reach the relevant branch. ** {ustring = function() return mw.ustring end}, a sub-namespace of {mw}. ** {concat = function() return table.concat end}, a plain alias. ** {mw = {getCurrentTitle = ..., getCurrentFrame = ..., getContentLanguage = ...}}, the nested form, with one deferred key per expensive call. Throws an error if a short name is declared in more than one field, or if the same module path is declared twice across `require` and `loadData`. Paths in the optional fields are not tracked, so a module may be declared both as required and as optional.]==] function export.init(opts) local modules = opts.require or {} local data_modules = opts.loadData or {} local optional_data_modules = opts.loadDataOptional or {} local optional_require_modules = opts.requireOptional or {} local lazy_modules = opts.lazy or {} validate(modules, data_modules, optional_data_modules, optional_require_modules, lazy_modules) local loaded_modules = {} local function get_module(module_name) local cached = loaded_modules[module_name] if cached ~= nil then if cached == NIL then return nil end return cached end if data_modules[module_name] then loaded_modules[module_name] = mw.loadData(data_modules[module_name]) elseif optional_data_modules[module_name] then local ok, data = pcall(mw.loadData, optional_data_modules[module_name]) loaded_modules[module_name] = (ok and data) and data or NIL elseif optional_require_modules[module_name] then local ok, mod = pcall(require, optional_require_modules[module_name]) loaded_modules[module_name] = (ok and mod and type(mod) == "table") and mod or NIL elseif modules[module_name] then loaded_modules[module_name] = require(modules[module_name]) end local m = loaded_modules[module_name] if m == NIL then return nil end return m end local proxy_metatable = { __index = function(proxy, module_name) -- Lazy: single getter function or table of getters (nested lazy object) if lazy_modules[module_name] then local lazy_def = lazy_modules[module_name] if type(lazy_def) == "function" then local value = lazy_def() rawset(proxy, module_name, value) return value end if type(lazy_def) == "table" then local sub = make_lazy_object_proxy(lazy_def) rawset(proxy, module_name, sub) return sub end end local module = get_module(module_name) if not module then return nil end -- If the module itself is a function, cache and return it directly if type(module) == "function" then rawset(proxy, module_name, module) return module end -- For loadData / loadDataOptional modules, return the table directly (no function proxying) if data_modules[module_name] or optional_data_modules[module_name] then rawset(proxy, module_name, module) return module end -- Everything else (require, and requireOptional that loaded) gets a proxy that -- caches individual members as they are read. local function_proxy = setmetatable({}, { __index = function(function_cache, function_name) local cached_function = module[function_name] rawset(function_cache, function_name, cached_function) return cached_function end }) rawset(proxy, module_name, function_proxy) return function_proxy end } return setmetatable({}, proxy_metatable) end return export 4yt8l6eou5zun5d9uyqgkh1c1u1w3d4