Wikikamus
mswiktionary
https://ms.wiktionary.org/wiki/Wikikamus:Laman_Utama
MediaWiki 1.48.0-wmf.3
case-sensitive
Media
Khas
Perbincangan
Pengguna
Perbincangan pengguna
Wikikamus
Perbincangan Wikikamus
Fail
Perbincangan fail
MediaWiki
Perbincangan MediaWiki
Templat
Perbincangan templat
Bantuan
Perbincangan bantuan
Kategori
Perbincangan kategori
Lampiran
Perbincangan lampiran
Rima
Perbincangan rima
Tesaurus
Perbincangan tesaurus
Indeks
Perbincangan indeks
Petikan
Perbincangan petikan
Rekonstruksi
Perbincangan rekonstruksi
Padanan isyarat
Perbincangan padanan isyarat
Konkordans
Perbincangan konkordans
TimedText
TimedText talk
Modul
Perbincangan modul
Acara
Perbincangan acara
mentega
0
7594
381367
333264
2026-11-04T08:36:32Z
Apisite
4339
/* Bahasa Melayu */
381367
wikitext
text/x-wiki
{{wikipedia}}
==Bahasa Melayu==
[[Fail:Butter dish.jpg|thumb|Mentega dalam bekasnya]]
[[Fail:Diospyros blancoi.jpg|thumb|Buah mentega]]
===Kata nama===
{{ms-kn|j=منتيݢ}}
# pepejal [[lemak]] berwarna [[kuning]] pucat yang diperbuat daripada [[krim]] [[susu]] (biasa digunakan dalam masakan atau dimakan dengan roti).
# [[pohon]] kecil yang ditanam sebagai pohon hias, dan buahnya yang dapat dimakan; ''Diospyros discolor''/''Diospyros blancoi''.
====Kata terbitan====
* mementegai: menyapu dengan mentega.
===Etimologi===
{{bor+|ms|pt|manteiga}}.
===Sebutan===
{{dewan|men|té|ga}}
===Terjemahan===
{{ter-atas|makanan daripada susu}}
* Abkhaz: {{t|ab|азеҭ}}
* Afrikaans: {{tt+|af|botter}}
* Ajië: {{tt|aji|dibëë}}
* Akkadia: {{tt|akk|𒉌𒉣𒈾|tr=ḫimētu}}
* Albania: {{tt+|sq|gjalpë|m}}
* Alutiiq: {{tt|ems|masla}}
* Altai Selatan: {{tt|alt|сармай}}, {{tt|alt|сары май}}, {{tt|alt|май}}, {{tt|alt|сарју}}, {{tt|alt|сары јуу}}
* Amhara: {{tt|am|ቅቤ}}
* Apache Barat: {{tt|apw|ibeʼ nestʼógi}}
* Arab: {{tt|ar|زُبْدَة|f}}
*: Arab Chad: {{t|shu|زبدة|f|tr=zibde}}
*: Arab Hijaz: {{tt|acw|زبدة|f|tr=zibda, zubda}}
*: Arab Masyrik Selatan: {{tt|ajp|زبدة|f|tr=zibda, zubda}}
*: Arab Mesir: {{tt|arz|زبدة|f|tr=zébda}}
*: Arab Teluk: {{tt|afb|زبدة|tr=zibda}}
* Aragon: {{tt|an|manteca|f}}
* Aram: {{tt|arc|כרעא|m|tr=karʽa}}
* Armenia: {{tt+|hy|կարագ}}, {{tt+|hy|կոգի}} {{q|archaic}}
*: Armenia Kuno: {{tt|xcl|կոգի}}, {{tt|xcl|իւղ}}
* Aromania: {{tt|rup|umtu|n}}
* Assam: {{tt|as|মাখণ}}, {{tt|as|ননী}}
* Asturia: {{tt|ast|mantega|f}}
* Aukan: {{t|djk|botoo}}
* Azeri: {{tt+|az|yağ}}
* Bahasa Isyarat Amerika: {{tt|ase|H@TipPalm-PalmDown-OpenB@CenterChesthigh-PalmUp Contact H@BasePalm H@TipPalm Contact H@BasePalm H@TipPalm Contact H@BasePalm}}
* Bashkir: {{tt|ba|май}}
* Basque: {{tt+|eu|gurin}}
* Bavaria: {{tt|bar|Budda|m}}, {{tt|bar|Budan|m}}; {{tt|bar|Butta|m}} {{q|Vienna}}
* Belanda: {{tt+|nl|boter|f}}
* Belanda Pertengahan: {{tt|dum|boter|alt=bōter|m|f}}
* Belarus: {{tt|be|ма́сла|n}}
* Bengali: {{tt+|bn|মাখন}}
* Breton: {{tt+|br|amanenn|m}}, {{tt+|br|amann|m}}
* Breton Pertengahan: {{tt|xbm|amanen}}
* Bulgaria: {{tt+|bg|масло́|n}}, {{tt+|bg|ма́сло|n}}
* Burma: {{tt+|my|ထောပတ်}}
* Buryat: {{tt|bua|сагаан тоһон}}
* Catalonia: {{tt+|ca|mantega|f}}
* Champenois: {{tt|roa-cha|bure}} {{q|Auve}}
* Chechen: {{tt|ce|налха}}, {{tt|ce|даьтта}}
* Cherokee: {{tt|chr|ᎪᏢᏅ}}, {{tt|chr|ᎪᏢᏅᎢ}}
* Cheyenne: {{tt|chy|heóveamėške}}
* Cina:
*: Hakka: {{tt|hak|牛油|tr=ngiù-yù}}, {{tt|hak|乳油|tr=nen-yù}}, {{tt|hak|白塔|tr=pat-tá}}
*: Hokkien: {{tt+|nan-hbl|牛油|tr=gû-iû}}, {{tt|nan-hbl|bá-tah}} {{q|Taiwan}}
*: Kantonis: {{tt|yue|牛油}}
*: Mandarin: {{tt+|cmn|黃油}}, {{tt+|cmn|牛油}}, {{tt+|cmn|白脫}}
*: Min Timur: {{t|cdo|牛奶油}}
*: Wu: {{tt|wuu|白脫|}}, {{tt|wuu|牛油}}, {{t|wuu|白脫油}}
* Chuvash: {{tt|cv|ҫу}}
* Coptic: {{tt|cop|ϭⲉⲗⲓ}} {{q|Bohairic}}; {{tt|cop|ⲥⲁⲓⲣⲉ}} {{q|Sahidic}}
* Cornish: {{tt|kw|amanyn|m}}
* Cornish Kuno: {{tt|oco|amanen}}
* Corsican: {{tt|co|butiru|m}}, {{tt|co|butirru|m}}
* Crimean Tatar: {{tt|crh|may}}, {{tt|crh|yağ}}
* Crow: {{tt|cro|taláashiili}}
* Czech: {{tt+|cs|máslo|n}}
* Dalmatian: {{tt|dlm|butir|m}}
* Danish: {{tt+|da|smør|n}}
* Dolgan: {{tt|dlg|арыы|tr=arıı}}
* East Central German: {{tt|gmw-ecg|Putter|f}} {{q|Silesia}}
* Elfdalia: {{tt|ovd|smyör|n}}
* Emilia: {{tt|egl|butér|m}} {{q|Modenese}}
* Enets Hutan: {{tt|enf|дюр}}
* Erzya: {{tt|myv|ой|f}}
* Esperanto: {{tt+|eo|butero}}
* Estonia: {{tt+|et|või}}
* Faroe: {{tt|fo|smør|n}}
* Fiji: {{tt+|fj|bata}}
* Finland: {{tt+|fi|voi}}
* Flemish Barat: {{tt|vls|beuter|m}}
* Frisia:
*: Frisia Barat: {{tt|fy|bûter|c}}
*: Frisia Saterland: {{tt|stq|Buutere|f}}
*: Frisia Utara: {{tt|frr|bööder}} {{q|Mooring}}
* Frisia Kuno: {{tt|ofs|butera}}
* Friulia: {{tt|fur|butîr}}
* Fula: {{tt|ff|nebbam}}
* Gael Scotland: {{tt|gd|ìm|m}}
* Galicia: {{tt+|gl|manteiga|f}}
* Gamilaraay: {{tt|kld|dhuuman}}
* Georgia: {{tt+|ka|კარაქი}}
* Gottscheer: {{tt|gmw-gts|púttər|m|f|n}}
* Greenland: {{tt|kl|punneq}}
* Gujarati: {{tt+|gu|માખણ|n}}, {{tt|gu|મસ્કો}}
* Hausa: {{tt|ha|man shanu}}
* Hawaii: {{tt|haw|waiūpaka}}, {{tt|haw|paka}}
* Hindi: {{tt+|hi|घी|m}}, {{tt+|hi|मक्खन|m}}, {{tt+|hi|माखन}}, {{tt+|hi|नवनी|f}}, {{tt+|hi|नवनीत|m}}, {{tt+|hi|नोनी|f}}, {{tt+|hi|नैनू|m}}, {{tt+|hi|मस्का|m}}, {{tt+|hi|मसका|m}}
* Hungary: {{tt+|hu|vaj}}
* Hunsrik: {{tt|hrx|Butter|f}}
* Ibrani: {{tt+|he|חֶמְאָה|f|tr=khem'a}}
* Iceland: {{tt+|is|smjör|n}}, {{tt|is|butur|n}} {{q|obsolete}}
* Ido: {{tt+|io|butro}}
* Indonesia: {{tt+|id|mentega}}
* Inggeris: {{t+|en|butter}}
* Inggeris Kuno: {{tt|ang|butere|f}}
* Ingria: {{tt|izh|voi}}
* Ingush: {{tt|inh|налх}}, {{tt|inh|даьтта}}
* Interlingua: {{tt+|ia|butyro}}
* Ireland: {{tt+|ga|im|m}}
*: Ireland Purba: {{tt|sga|imb|n}}
* Itali: {{tt+|it|burro|m}}, {{tt+|it|butirro|m}} {{q|obsolete}}
* Jawa:
*: Carakan: {{tt+|jv|ꦩꦼꦂꦠꦺꦒ}}, {{tt|jv|ꦩꦤ꧀ꦠꦺꦒ}} {{q|dialectal}}
*: Rumi: {{tt|jv|mertéga}}, {{tt|jv|mentéga}} {{q|dialectal}}
* Jepun: {{tt+|ja|バター|tr=batā}}, {{tt+|ja|牛酪|tr=ぎゅうらく, gyūraku}}, {{tt+|ja|乳酪|tr=にゅうらく, nyūraku}}
* Jerman: {{tt+|de|Butter|f}}, {{tt+|de|Anke|m}} {{q|Switzerland}}
* Jerman Alemanni: {{tt|gsw|Anke|m}}, {{tt|gsw|Butter|m}}
* Jingpho: {{tt|kac|htaw bat}}
* Kachchi: {{tt|kfr|મખણ}}
* Kannada: {{tt+|kn|ಬೆಣ್ಣೆ}}
* Karelia: {{tt|krl|voi}}
* Kashmiri: {{t|ks|تھٔنؠ}}
* Kashubian: {{tt|csb|masło|n}}
* Kazakh: {{tt|kk|май}}, {{tt|kk|сармай}}, {{tt|kk|сары май}}
* Khanty Utara: {{t|kca-nor|вуй}}
* Khmer: {{tt|km|បឺរ}}, {{tt|km|ខ្លាញ់ទឹកដោះ}}
* Komi-Permyak: {{tt|koi|ви}}, {{t-check|koi|вый}}
* Komi-Zyria: {{tt|kpv|вый}}
* Konkani: {{tt|kok|लोणी}}
* Korea: {{tt+|ko|버터}}, {{t+|ko|빠다}} {{qualifier|Korea Utara}}
* Kreol Antilles: {{tt|gcf|bè}}}
* Kreol Haiti: {{tt|ht|bè}}
* Kreol Mauritius: {{tt|mfe|diber}}
* Kreol Seychelles: {{tt|crs|diber}}
* Kurdi:
*: Kurdi Tengah: {{tt|ckb|کەرە}}
*: Kurdi Utara: {{tt|kmr|rûnê nivişk|m}}, {{tt+|kmr|nivîşk}}, {{tt+|kmr|kere}}, {{tt+|kmr|rûn}}
* Kyrgyz: {{tt+|ky|май}}, {{tt+|ky|сары май}}, {{tt+|ky|сүт май}}, {{tt+|ky|паста}}, {{tt+|ky|повидло}}, {{tt+|ky|май сүйкөө}}
* Ladin: {{tt|lld|smauz|m}}; {{tt|lld|smaltz|n}} {{q|Luserna, Sette Comuni}}
* Lakota: {{tt|lkt|asáŋpi-wígli}}, {{tt|lkt|asáŋpi-glí}}
* Lao: {{tt+|lo|ເບີ}}, {{tt|lo|ເນີຍ}}
* Latgalia: {{tt|ltg|svīsts}}
* Latin: {{tt|la|butyrum|alt=būtȳrum|n}}
* Latvia: {{tt+|lv|sviests|m}}
* Leon: {{tt|roa-leo|manteiga|f}}, {{tt|roa-leo|untu|m}}
* Liguria: {{tt|lij|bitiru|alt=bitìru|m}} {{q|Genoese}}; {{tt|lij|bürru|m}} {{q|Monégasque}}
* Limburg: {{tt+|li|bótter|m}}
* Lithuania: {{tt|lt|sviestas|m}}
* Livonia: {{tt|liv|vȭidag}}
* Livvi: {{tt|olo|voi}}
* Lombard: {{tt+|lmo|butter}}, {{tt|lmo|büter}}; {{tt+|lmo|burro}}; {{tt+|lmo|buter|m}} {{q|Western}}, {{tt|lmo|boter|m}} {{q|Eastern}}
* Jerman Hilir:
*: Saxon Hilir Belanda: {{tt+|nds-nl|botter|f}}
*: Jerman Hilir Jerman: {{tt+|nds-de|Botter|f}}, {{tt|nds-de|Bodder}} {{q|Mecklenburgisch}}, {{tt|nds-de|Bueter}} {{q|Märkisch}}
* Jerman Hilir Pertengahan: {{tt|gml|botter}}
* Jerman Hulu Pertengahan: {{tt|gmh|anke}}
* Jerman Pennsylvania: {{tt|pdc|Budder|m}}
* Ludia: {{tt|lud|voi}}
* Luxembourg: {{tt+|lb|Botter|m}}
* Macedonia: {{tt|mk|путер|m}}, {{tt+|mk|маст|f}}
* Malagasy: {{tt+|mg|dibera}}
* Malayalam: {{tt+|ml|വെണ്ണ}}
* Malta: {{tt+|mt|butir}}
* Manx: {{tt|gv|eeym|m}}
* Maori: {{tt+|mi|pata}}
* Maranao: {{tt|mrw|mantikiliya}}
* Marathi: {{tt|mr|माखण|n}}, {{tt|mr|लोणी|n}}
* Mari:
*: Mari Barat: {{tt|mrj|ӱ}}
*: Mari Timur: {{tt|mhr|ӱй}}
* Marshall: {{tt|mh|bōta}}
* Megleno-Romania: {{t|ruq|unt}}
* Miranda: {{tt|mwl|manteiga|f}}
* Mohawk: {{tt|moh|owistóhseraʼ}}
* Moksha: {{tt|mdf|вай}}
* Mon: {{tt+|mnw|ထဝ်ဗာတ်}}
* Mongol:
*: Cyril: {{tt+|mn|масло}}, {{tt|mn|цөцгийн тос}}, {{tt|mn|шар тос}} {{qual|China}}
*: Mongol: {{tt|mn|ᠮᠠᠰᠯᠣ᠋}}, {{tt|mn|ᠴᠥᠴᠦᠭᠡᠢ ᠶᠢᠨ ᠲᠣᠰᠤ}}, {{tt|mn|ᠰᠢᠷᠠ ᠲᠣᠰᠤ}}
* Nahuatl:
*: Nahuatl Huasteca Pusat: {{tt|nch|chichiualayotl}}
*: Nahuatl Pusaat: {{tt|nhn|chichihualayotl}} {{q|Amecameca}}
*: Nahuatl Huasteca Timur: {{tt|nhe|tlachiacayotl}}
* Navajo: {{tt|nv|mandagíiya}}
* Neapolis: {{tt|nap|butirro|m}}
* Nenets Tundra: {{tt|yrk|юрˮ}}
* Nepal: {{tt|ne|नौनी}}, {{tt|ne|मक्खन}}
* Nganasan: {{tt|nio|люоˮсадир}}
* Norman: {{tt|nrf|beurre|m}} {{q|Jersey}}, {{tt|nrf|burre|m}} {{q|Guernsey}}, {{tt|nrf|buure|m}} {{q|continental Norman}}, {{tt|nrf|bür|m}} {{q|Sark}}
* Norway:
*: Bokmål: {{tt+|nb|smør|n}}
*: Nynorsk: {{tt|nn|smør|n}}
* Occitan: {{tt+|oc|burre|m}}, {{tt+|oc|bodre|m}}
* Odia: {{t+|or|ଲହୁଣୀ}}
* Ojibwe: {{tt|oj|ozaawi-bimide}}, {{tt|oj|bimide}}
* Okanagan: {{tt|oka|kmiƛ'mn}}
* Orok: {{tt|oaa|simuksä}}
* Oromo: {{tt|om|dhadhaa}}
* Osage: {{tt|osa|paazénii wéli}}
* Ossetia: {{tt|os|нӕлхӕ}}
* Parsi:
*: Dari: {{tt|prs|مَسْکَه}}
*: Parsi Iran: {{tt|fa-ira|کَرِه}}
* Pashto: {{tt+|ps|کوچ|m|tr=kuč}}
* Perancis: {{tt+|fr|beurre|m}}
* Perancis Kuno: {{tt|fro|bure|m}}, {{tt|fro|burre|m}}
* Perancis Pertengahan: {{tt|frm|burre}}
* Piedmont: {{tt|pms|bur|m}}, {{tt|pms|butir|m}}
* Plautdietsch: {{tt+|pdt|Botta|f}}
* Poland: {{tt+|pl|masło|n}}
* Portugis: {{tt+|pt|manteiga|f}}
* Punjabi: {{tt|pa|ਮੱਖਣ|m}}
* Quechua: {{tt|qu|mantikilla}}
* Romani: {{tt|rom|khil|m}}
* Romania: {{tt+|ro|unt|n}}
* Romansch: {{tt|rm|paintg|m}}
* Rusia: {{tt+|ru|ма́сло|n}}, {{tt+|ru|сли́вочное ма́сло|n}}
* Rusyn Carpathia: {{t|rue|ма́сло|n}}
* Rusyn Pannonia: {{t|rsk|масло|n}}
* Rwanda-Rundi: {{tt|rw|amavuta}}, {{tt|rw|ama-vuta}}
* S'gaw Karen: {{tt|ksw|ထီပး}}, {{tt|ksw|ဝံၣ်သိစီ}}
* Sami:
*: Inari: {{tt|smn|vuoj̣â}}
*: Kildin: {{tt|sjd|вӯйй}}
*: Lule: {{tt|smj|vuodja}}
*: Pite: {{tt|sje|vuodja}}, {{tt|sje|vuojja}}
*: Selatan: {{tt|sma|voeje}}
*: Skolt: {{tt|sms|vuõjj}}
*: Ter: {{tt|sjt|vɨjj}}
*: Ume: {{tt|sju|vuajja}}
*: Utara: {{tt|se|vuodja}}
* Samoa: {{tt+|sm|pata}}
* Samogiti: {{tt|sgs|svėists|m}}
* Sanskrit: {{tt+|sa|नवनीत}}, {{tt+|sa|घृत|n}}
* Sardinia: {{tt|sc|butiru|m}}
* Scots: {{tt|sco|butter}}, {{tt|sco|buter}}
* Sepanyol: {{tt+|es|mantequilla|f}}, {{tt+|es|manteca|f}} {{q|Argentina, Paraguay, Uruguay}}
* Sepanyol Kuno: {{tt|osp|butiro|m}}, {{tt|osp|buturo|m}}
* Serbo-Croatia:
*: Cyril: {{tt|sh|маслац|alt=ма̏слац|m}}, {{tt|sh|путер|alt=пу̏тер|m}}
*: Latin: {{tt+|sh|maslac|alt=mȁslac|m}}, {{tt+|sh|puter|alt=pȕter|m}}
* Shan: {{tt|shn|ထေႃးပၢတ်ႈ}}
* Sicilia: {{tt|scn|butirru|m}}
* Sidamo: {{tt|sid|buuro}}
* Silesia: {{tt|szl|masło|n}}
* Sindhi: {{tt|sd|مکڻ|tr=makhanu}}; {{q|jenis cair}} {{tt|sd|گيہہ|m|tr=gīhu|alt=گيِہہُ|sc=sd-Arab}}
* Sinhala: {{tt|si|බටර්}}
* Slav Gereja Kuno:
*: Cyril: {{tt|cu|масло|n}}
* Slovak: {{tt+|sk|maslo|n}}
* Slovene: {{tt+|sl|maslo|n}}, {{tt|sl|puter|m}} {{q|colloquial}}
* Somali: {{tt+|so|subag|m}}
* Sorbia:
*: Sorbia Hilir: {{tt|dsb|butra|f}}, {{tt|dsb|masło|n}} {{q|rare}}
*: Sorbia Hulu: {{tt|hsb|butra|f}}
* Sotho: {{tt+|st|sereledi}}
* Sumer: {{tt|sux|𒉌|tr=i₃, ia₃}}
* Sunda: {{tt|su|ᮙᮔ᮪ᮒᮦᮌ}}
* Swahili: {{tt+|sw|siagi}}
* Swazi: {{tt|ss|libhotela|c5}}
* Swedish: {{tt+|sv|smör|n}}
* Syria Klasik: {{tt|syc|ܚܐܘܬܐ|f|tr=ḥeˀwṯā}}, {{tt|syc|ܟܪܥܐ|tr=kərāʿāʾ, kārʿāʾ, karʿāʾ}}
* Tagalog: {{tt|tl|mantekilya}}
* Tajik: {{tt|tg|маска}}, {{tt+|tg|равған}}, {{tt|tg|равғани зард}}
* Talysh: {{t|tly|ruyən}}
* Tamil: {{tt+|ta|வெண்ணெய்}}, {{tt+|ta|இழுது}}, {{tt+|ta|விழுது}}
* Tarantino: {{tt|roa-tar|burre|m}}
* Tarifit: {{t|rif|trussi|f}}
* Tatar: {{tt+|tt|май}}
* Telugu: {{tt+|te|వెన్న}}
* Tetum: {{tt|tet|manteiga}}
* Thai: {{tt+|th|เนย}}
* Tibet: {{tt|bo|མར།}}, {{tt|bo|གསོལ་མར}} {{q|honorific}}
* Tigre: {{tt|tig|ዝበድ}}
* Tigrinya: {{t|ti|ጠስሚ}}
* Tocharia B: {{tt|txb|kewiye}}
* Tok Pisin: {{tt|tpi|bata}}
* Tongo Sranan: {{tt|srn|botro}}
* Turki: {{tt+|tr|tereyağı}}, {{tt+|tr|yağ}} {{q|usang}}
* Turki Uthmaniyah: {{tt|ota|ترهیاغی|tr=tereyağı}}, {{tt|ota|یاغ|tr=yağ}}, {{t|ota|روغن|tr=revgan, rugan}}
* Turkmen: {{tt|tk|mesge}}
* Tuva: {{tt|tyv|саржаг}}, {{tt|tyv|үс}}
* Udi: {{tt|udi|кӏаракӏ}}
* Udmurt: {{tt|udm|вӧй}}
* Ugarit: {{tt|uga|𐎃𐎎𐎀𐎚|tr=ḫmảt}}
* Ukraine: {{tt+|uk|ма́сло|n}}
* Unami: {{tt|unm|putël|in}}
* Urdu: {{tt|ur|گھی|m}}, {{tt|ur|مَکَّھن|m}}, {{tt|ur|نَونی|f}}, {{tt|ur|نُونی|f}}, {{tt|ur|نَوَنِیت|m}}
* Uyghur: {{tt|ug|سېرىق ماي}}
* Uzbek: {{tt+|uz|saryogʻ}}, {{tt+|uz|moy}}
*: Cyril: {{tt|uz|сарёғ}}, {{tt+|uz|мой}}
* Venetia: {{tt+|vec|butiro|m}}, {{tt|vec|botiro|m}}
* Veps: {{tt|vep|voi}}
* Vietnam: {{tt+|vi|bơ}}
* Vilamovia: {{tt|wym|putter|f}}
* Vili: {{t|vif|mantèka}}
* Volapük: {{tt+|vo|bör}}, {{tt|vo|mileg}} {{q|older term}}
* Võro: {{tt|vro|võid}}
* Votic: {{tt|vot|või}}
* Wales: {{tt+|cy|menyn|m}}, {{t+|cy|ymenyn|m}}
* Wales Pertengahan: {{tt|wlm|ymenyn}}
* Walloon: {{tt+|wa|boure|m}}
* Waray-Waray: {{tt|war|mantikilya}}
* Winnebago: {{t|win|hirawaxiri}}
* Wolof: {{tt|wo|bóor}}, {{tt+|wo|diw}}
* Xârâcùù: {{tt|ane|dibèè}}
* Xhosa: {{tt|xh|ibhotolo|c9}}
* Yakut: {{tt|sah|арыы}}
* Yiddish: {{tt|yi|פּוטער|f}}
* Yola: {{tt|yol|buthther}}
* Yoruba: {{tt|yo|bọta|alt=bọ́tà}}, {{tt|yo|ori|alt=òrí}}
* Yunani: {{tt+|el|βούτυρο|n}}
*: Purba: {{tt|grc|βούτυρον|n}}
*: Cappadocia: {{tt|cpg|καράκι}}
* Yup'ik: {{tt|esu|masslaaq}}
* Zealand: {{tt|zea|beuter}}
* Zhuang: {{tt|za|naijyouz}}
* Zulu: {{tt+|zu|ibhotela|alt=îbhotêla|c5}}
{{ter-bawah}}
===Lihat juga===
* [[marjerin]].
* [[mentega kacang]].
==Bahasa Indonesia==
* Lihat takrifan bahasa Melayu.
9gwsdgrijtbjdx6kv3tuxvc0ghkq58t
tulisan
0
12800
381370
376450
2026-11-04T08:49:35Z
Apisite
4339
381370
wikitext
text/x-wiki
==Bahasa Melayu==
{{Pautan Projek Wikimedia}}
===Kata nama===
{{ms-kn|j=توليسن}}
# Hasil daripada menulis, sesuatu yang ditulis, cara menulis.
#* '''1968''', ''[http://eresources.nlb.gov.sg/newspapers/Digitised/Article/beritaharian19680518-1.2.95?ST=1&AT=filter&DF=&DT=&AO=false&NPT=&L=Malay&CTA=&NID=&CT=ARTICLE&WC=&YR=&k=tulisan%26ka%3dtulisan&P=2&Display=0&filterS=0&QT=tulisan&oref=article Rameran2 tulisan tua di-shorkan di-seluroh negeri]'', Berita Harian, m/s 10.
#*:{{quote|ms|Bahan2 '''tulisan''' tersebut termasok-lah '''tulisan''' Melayu dengan huruf Pallawa yang di-perkenalkan oleh ugama2 Hindu dan Buddha yang di-gunakan dalam abad ketujoh Masehi.|Bahan-bahan '''tulisan''' tersebut termasuklah '''tulisan''' Melayu dengan huruf Pallawa yang diperkenalkan oleh agama-agama Hindu dan Buddha yang digunakan dalam abad ketujuh Masihi.}}
# Hasil sastera (dalam bentuk prosa atau puisi).
#* '''1962''', Mohammad bin Long, ''[http://eresources.nlb.gov.sg/newspapers/Digitised/Article/beritaharian19620818-1.2.57?ST=1&AT=filter&K=tulisan&KA=tulisan&DF=&DT=&Display=0&AO=false&NPT=&L=Malay&CTA=&NID=&CT=ARTICLE&WC=&YR=&QT=tulisan&oref=article Harus tidak begitu faham]'', Berita Harian, m/s 4.
#*:{{quote|ms|Sa-belum mengemukakan pendapat-nya, ada-lah lebeh bijak bagi Ustaz itu meneliti '''tulisan''' saya itu lebeh dalam.|Sebelum mengemukakan pendapatnya, adalah lebih bijak bagi Ustaz itu meneliti '''tulisan''' saya itu lebih dalam.}}
# {{label|ms|sastera lama}} Sesuatu yang digambarkan.
# Kain yang dibatik (bukan dicetak).
# Sesuatu yang ditakdirkan
#* '''1984''', ''[http://eresources.nlb.gov.sg/newspapers/Digitised/Article/beritaharian19840128-1.2.30?ST=1&AT=filter&K=tulisan&KA=tulisan&DF=&DT=&Display=0&AO=false&NPT=&L=Malay&CTA=&NID=&CT=ARTICLE&WC=&YR=&QT=tulisan&oref=article Tukilan Hari Ini]'', Berita Harian, m/s 4.
#*:{{quote|ms|Berita adalah murni. Ia mestilah tepat dan tidak boleh merupakan '''tulisan''' yang berdasarkan ramalan.}}
===Etimologi===
{{akhiran|ms|tulis|an}}
===Sebutan===
* {{dewan|tu|li|san}}
* {{a|Sebutan baku; Kamus Dewan Perdana}} {{IPA|ms|/tu.li.san/}}
* {{audio|ms|LL-Q9237 (msa)-Hakimi97-tulisan.wav|Audio (MY-zsm)}}
* {{rhymes|ms|san}}
* {{penyempangan|ms|tu|li|san}}
===Terjemahan===
{{ter-atas|sesuatu yang ditulis}}
* Aceh: {{t|ace|teunuléh}}
* Arab: {{t|ar|كِتَابَة|f}}
*: Arab Mesir: {{t|arz|كتابة|f|tr=ketaaba}}
* Aramia:
*: Ibrani: {{t|arc|כתבא|m|tr=ktābā, ktobo|sc=Hebr}}
*: Syriak: {{t|arc|ܟܬܒܐ|m|tr=ktābā, ktobo|sc=Hebr}}
* Aromania: {{t|rup|scriari|f}}, {{t|rup|scriiturã|f}}
* Bashkir: {{t|ba|яҙма}}
* Belanda: {{t|nl|schrijfsel|n}}, {{t+|nl|geschrift|n}}
* Czech: {{t+|cs|spis|m}}
* Esperanto: {{t|eo|skribaĵo}}
* Estonia: {{t|et|kirjutis}}
* Finland: {{t+|fi|kirjoitus}}
* Friulia: {{t|fur|scriture|f}}
* Greek: {{t+|el|γραπτό|f}}, {{t+|el|έγγραφο|n}}
*: Kuno: {{t|grc|γραφή|f}}
* Hungary: {{t+|hu|írás}}
* Indonesia: {{t+|id|tulisan}}
* Inggeris: {{t+|en|writing}}
* Jerman: {{t+|de|Schrift|f}}, {{t+|de|Schriftstück|n}}
* Latin: {{t+|la|scriptum|n}}
* Norman: {{t|nrf|êcrithie|f}} {{qualifier|Jersey}}
* Perancis: {{t+|fr|écrit|m}}
* Poland: {{t+|pl|napis|m}}
* Portugis: {{t+|pt|escrita|f}}
* Romania: {{t+|ro|scriere|f}}, {{t+|ro|scriitură|f}}
* Rusia: {{t+|ru|писа́ние|n}}, {{t+|ru|за́пись|f}}, {{t+|ru|на́дпись|f}}
* Slovene: {{t|sl|zapis|m}}
* Sepanyol: {{t+|es|escrito|m}}, {{t+|es|escritura|f}}
* Swahili: {{t+|sw|maandiko|cma}}
* Turki: {{t+|tr|yazı}}
* Wales: {{t+|cy|ysgrif}}
{{ter-bawah}}
{{ter-atas|karya penulis}}
* Bashkir: {{t|ba|әҫәр}}
* Belanda: {{t|nl|schrijfsel|n}}, {{t+|nl|werk|n}}, {{t+|nl|oeuvre|n}}
* Cina:
*: Mandarin: {{t+|cmn|寫作|sc=Hani}}, {{t+|cmn|写作|tr=xiězuò|sc=Hani}}, {{t+|cmn|著作|tr=zhùzuò|sc=Hani}}
* Czech: {{t+|cs|spis|m}}
* Estonia: {{t|et|kirjutis}}, {{t|et|kirjatöö}}, {{t|et|teos}}
* Finland: {{t+|fi|kirjoitus}}, {{t+|fi|teos}}
* Perancis: {{t+|fr|œuvre|f}}
* Greek: {{t+|el|έργο|n}}
* Inggeris: {{t+|en|writing}}
* Jepun: {{t+|ja|著作|tr=ちょさく, chosaku|sc=Jpan}}
* Jerman: {{t+|de|Schrift|f}}, {{t+|de|Arbeit|f}}, {{t+|de|Werk|n}}
* Korea: {{t+|ko|저작|tr=Jeojak}} ({{t+|ko|著作}})
* Kurdish:
*: Sorani: {{t+|ku|نوسین}}
* Portugs: {{t+|pt|obra|f}}
* Rusia: {{qualifier|литерату́рное}} {{t+|ru|произведе́ние|n}}
* Sepanyol: {{t+|es|escrito|m}}, {{t+|es|escritura|f}}
* Swahili: {{t+|sw|maandiko|cma}}
* Telugu: {{t+|te|రచన}} {{qualifier|usually plural}}, {{t|te|రచనలు}}
* Turki: {{t+|tr|yazı}}
* Ukraine: {{t+|uk|твір|m}}
{{ter-bawah}}
===Tesaurus===
====Sinonim====
* {{qualifier|hasil sastera}} {{l|ms|karangan}}
* {{qualifier|sesuatu yang digambarkan}} {{l|ms|gambaran}}, {{l|ms|lukisan}}
* {{qualifier|kain yang dibatik}} {{l|ms|batik}}
* {{qualifier|takdir}} {{l|ms|nasib}}, {{l|ms|suratan}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
14lb3fwdjtqwsr9mzt6o2rnrfifz4gw
klorin
0
12903
381332
334432
2026-11-03T13:12:36Z
Hakimi97
2668
/* Kata nama */ Betulkan ejaan
381332
wikitext
text/x-wiki
==Bahasa Melayu=={{Wikipedia}}
{{elements|ms|Cl|sulfur|S|argon|Ar}}
===Kata nama===
{{ms-kn|j=کلورین}} (Simbol: '''[[Cl]]''')
# {{sense|[[kimia|Kimia]]}} Suatu [[gas]] berwarna hijau kekuning-kuningan dan berbau busuk; [[unsur kimia]] dengan [[nombor atom]] 17.
#* Sejenis [[halogen]].
====Kata terbitan====
* {{l|ms|klorida}}
===Etimologi===
Daripada {{bor|ms|en|chlorine}}.
===Sebutan===
* {{dewan|klo|rin}}
* {{penyempangan|ms|klo|rin}}
* {{rima|ms|rin|in}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
0u0jibdbn6ufvzmchrxr5gox5e21gri
Modul:ms-headword
828
13096
381364
380840
2026-11-04T03:48:57Z
Hakimi97
2668
Mengemas kini mengikut padanan Wikikamus bahasa Inggeris (semakan [[en:Special:Diff/95412287|95412287]])
381364
Scribunto
text/plain
local export = {}
local pos_functions = {}
local require = require
local require_when_needed = require("Module:require when needed")
-- Modules
local m_debug_track = require("Module:debug/track")
local m_head = require("Module:headword")
local m_params = require("Module:parameters")
local pages_module = "Module:pages"
-- Utilities
local u = require_when_needed("Module:string/char")
local PAGENAME = mw.loadData("Module:headword/data").pagename
local ugsub = mw.ustring.gsub
local ufind = mw.ustring.find
local umatch = mw.ustring.match
local ugmatch = mw.ustring.gmatch
local usub = mw.ustring.sub
local ulen = mw.ustring.len
-- Languages
local lang = require("Module:languages").getByCode("ms")
local langname = lang:getCanonicalName()
local script = lang:findBestScript(PAGENAME) -- Latn or Arab
local function track(page)
return m_debug_track("ms-headword/" .. page)
end
function export.show(frame)
local iparams = {
[1] = {required = true},
}
local params = {
["head"] = {list = true, disallow_holes = true},
["j"] = {list = true, disallow_holes = true},
["id"] = true,
["sort"] = true,
["var"] = {type = "boolean"},
["nolinkhead"] = {type = "boolean"},
["json"] = {type = "boolean"},
["pagename"] = true, -- for testing
}
local par_args = frame:getParent().args
-- Process frame arguments i.e. {{#invoke:ms-headword|show|arguments}}
local iargs = m_params.process(frame.args, iparams)
local poscat = iargs[1]
-- Append additional params in pos_functions to global params in export.show
-- Necessary before processing parent args as each part of speech has their own parameters
-- See pos_functions["adjectives"] for example
if pos_functions[poscat] then
local posparams = pos_functions[poscat].params
if type(posparams) == "function" then
posparams = posparams(lang)
end
for key, val in pairs(posparams) do
params[key] = val
end
end
-- Process frame parent arguments i.e. {{ms-head|arguments}}
local args = m_params.process(par_args, params)
local pagename = args.pagename or mw.loadData("Module:headword/data").pagename
local head = args.head and args.head[1] or PAGENAME
local var = args.var
if var == nil then
var = script:getCode() == "Arab"
end
local data = {
lang = lang,
pos_category = poscat,
categories = {},
heads = args.head,
inflections = {},
pagename = pagename,
id = args.id,
sort_key = args.sort,
is_suffix = false,
translits = { "-" },
var = var,
}
if (ufind(PAGENAME, "اء[وي]")) then
head = ugsub(PAGENAME, "(ا)(ء)([وي])", "%1<sup>%2</sup>%3") -- superscript hamza
end
if args["ku"] ~= nil or args["mu"] ~= nil or args["nya"] ~= nil then
track("clean up kumunya")
end
if args["r"] ~= nil then
track("clean up r")
end
local function any_match(pattern)
if head and ufind(head, pattern) then
return true
end
for _, v in ipairs(args["j"]) do
if v and ufind(v, pattern) then
return true
end
end
return false
end
if any_match("[كڬگ]") then
track("incorrect Jawi spelling")
error("Please use ک in place of ك and ݢ in place of ڬ and گ.")
end
-- special marks: ZWSP (200B), ZWNJ (200C), ZWJ (200D), LRM (200E), RLM (200F)
local special_marks = "[" .. u(0x200B) .. u(0x200D) .. "-" .. u(0x200F) .. "]"
if any_match(special_marks) then
track("incorrect Jawi spelling")
error("Please remove ZWSP, ZWJ, LRM, and RLM from title/headword. Use ZWNJ in place of ZWSP for words like ساءينس.")
end
local warning_text = ""
if any_match("[" .. u(0x200C) .. "]") and require(pages_module).is_preview() then
warning_text = '<span class="error">WARNING: You included a ZWNJ character in the title or headword. Please ' ..
"verify whether this is correct; only in rare cases like ساءينس is it correct to include a ZWNJ character." ..
"</span>"
table.insert(data.categories, "Perkataan bahasa Melayu dengan aksara ZWNJ")
end
local letter_replacements = { ["M"] = "m", ["N#"] = "ng", ["R#"] = "r" }
local pattern_replacements = { }
function export.affixation(text, affix)
local first_consonant
if affix == "-" then
text = text .. "-" .. text
elseif umatch(affix, "^%-.+%-$") then
first_consonant = umatch(text, "^[^aeiou]+")
text = first_consonant .. usub(affix, 2, -2) ..
usub(text, ulen(first_consonant) + 1,
-1)
else
text = affix:gsub("%-", "#" .. text)
text = text:gsub("N([^aeiou]*)([aeiou])([^aeiou]*)$", "nge%1%2%3")
text = text:gsub("meN#p", "memp")
for pattern, replacement in pairs(pattern_replacements) do
text = text:gsub(pattern, replacement)
end
text = text:gsub("[MNR]#?", letter_replacements)
text = text:gsub("#", "")
end
return text
end
local jawi = { label = "Jawi spelling" }
for _, term in ipairs(args["j"]) do
if term then
table.insert(jawi, { term = term })
end
end
if #jawi > 0 then table.insert(data.inflections, jawi) end
if script:getCode() == "Arab" then
table.insert(data.categories, "Perkataan dalam tulisan Arab bahasa Melayu")
end
if pos_functions[poscat] and pos_functions[poscat].func then
pos_functions[poscat].func(args, data)
end
return m_head.full_headword(data) .. warning_text
end
pos_functions["kata nama"] = {
params = {
[1] = {list = true},
["pl"] = {alias_of = 1, list = true},
},
func = function(args, data)
-- Main code for noun plurality
local jawi = data.var
local pl1 = args[1][1]
-- Helpers -------------------------------------------------------
local function insert_plural(tbl, ...)
for _, v in ipairs(...) do
table.insert(tbl, v)
end
return tbl
end
local function make_default_plural(pagename, jawi)
local plural = {}
local jawi_letter = "ابتةثجچحخدذرزسشصضطظعغڠفڤقکݢلمنوۏهءيىڽ"
-- Auto-detect full reduplication
if pagename:match("^([a-zA-Z" .. jawi_letter .. "]+)%-%1$") then
table.insert(
plural, "[[" .. pagename .. "]]"
)
return plural
end
local subwords = mw.text.split(pagename, "%s")
local firstword = subwords[1]
local plural_entry = "[[" .. firstword .. "]]-[[" .. firstword .. "]]"
local plural_entry2_j = "[[" .. firstword .. "]][[ـ٢|٢]]"
if #subwords > 1 then
-- Concatenate all the remaining subwords (from 2 onward)
for i = 2, #subwords do
plural_entry = plural_entry .. " [[" .. subwords[i] .. "]]"
if jawi then
plural_entry2_j = plural_entry2_j .. " [[" .. subwords[i] .. "]]"
end
end
end
table.insert(
plural, plural_entry
)
if jawi then
table.insert(
plural, plural_entry2_j
) -- add "2" only first word
end
return plural
end
------------------------------------------------------------------
-- Unknown or uncertain and requests
if pl1 == "req" then
table.insert(data.categories, "Permintaan bentuk jamak dalam entri bahasa " .. langname)
elseif pl1 == "?" then
table.insert(data.categories, "Kata nama dengan bentuk jamak yang tidak diketahui atau tidak pasti bahasa " .. langname)
-- Uncountable and semi-countable
elseif pl1 == "-" then
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
table.insert(data.inflections, {label = "[[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"})
elseif pl1 == "u" then
local pl_countable = {label = "biasanya [[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"}
local pl_plural = {label = "jamak"}
table.insert(data.categories, "Kata nama berbilang bahasa " .. langname)
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
pl_plural = insert_plural(pl_plural, make_default_plural(data.pagename, jawi))
table.insert(data.inflections, pl_countable)
table.insert(data.inflections, pl_plural)
elseif pl1 == "~" then
local pl_countable = {label = "[[Lampiran:Glosari#berbilang|berbilang]] dan [[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"}
local pl_plural = {label = "jamak"}
table.insert(data.categories, "Kata nama berbilang bahasa " .. langname)
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
pl_plural = insert_plural(pl_plural, make_default_plural(data.pagename, jawi))
table.insert(data.inflections, pl_countable)
table.insert(data.inflections, pl_plural)
elseif pl1 == "pt" or pl1 == "p" then
error(langname .. " doesn't have plurale tantum, please delete the causing parameter.")
elseif pl1 == "st" or pl1 == "s" then
error(langname .. " doesn't have singulare tantum, please replace the causing parameter with |-.")
elseif pl1 == "1" then
error("The parameter |pl=1 is invalid. Please specify the plurality with an existing value.")
else
-- Countable
local pl = {label = "jamak"}
if not pl1 or pl1 == "+" then
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
elseif pl1 == "a" then
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
table.insert(pl, "[[para]] " .. data.pagename)
elseif pl1 == "*" then
table.insert(pl, data.pagename)
elseif pl1 == "*+" then
table.insert(pl, data.pagename)
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
else
for _, i in ipairs(args[1]) do
local exclude = {
a = true,
u = true,
req = true,
["+"] = true,
["~"] = true,
["-"] = true,
["*"] = true,
["*+"] = true,
}
-- Incase first argument is used not as the first argument
-- (e.g. {{ms-noun|custom-plural|a}})
if not exclude[i] then
table.insert(pl, i)
end
end
end
table.insert(data.inflections, pl)
end
end
}
-- Generally, proper nouns don't have plural unless in certain cases
-- e.g. Muslim -> Muslimin
pos_functions["kata nama khas"] = {
params = {
[1] = {list = true}, -- allow custom plural
["pl"] = {alias_of = 1, list = true},
},
func = function(args, data)
local pl1 = args[1]
local pl = { label = "jamak" }
if #pl1 ~= 0 then
for _, v in ipairs(pl1) do
table.insert(pl, v)
end
table.insert(data.inflections, pl)
end
end
}
pos_functions["kata kerja"] = {
params = {
[1] = { list = true },
active = { list = true },
bare = { list = true },
passive = { list = true },
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
local equivalent_letters = {
k = "ک", t = "ت", s = "س", p = "ڤ",
}
-- Helpers -------------------------------------------------------
local function first_n(s, n)
return usub(s, 1, n)
end
local function rest_from(s, n)
return usub(s, n + 1)
end
local function is_equiv(first, target)
return first == target or first == equivalent_letters[target]
end
local function is_vowel_char(ch)
return ch:match('[aiueoاويى]') ~= nil
end
local function vowel_count(s)
local count = 0
for ch in ugmatch(s, '.') do
if is_vowel_char(ch) then
count = count + 1
if count > 1 then return count end
end
end
return count
end
local function make_form(prefix_latin, prefix_jawi, use_jawi, rest)
if use_jawi then
return prefix_jawi .. (rest or base)
else
return prefix_latin .. (rest or base)
end
end
----------------------------------------------------------------
if args[1] and args[1][1] == "b" then
-- Default base forms
local default_passive_latin = "di" .. base
local default_passive_jawi = "د" .. base
local active_form
local passive_form = jawi and default_passive_jawi or default_passive_latin
-- If base has more than 1 vowel, use 'meng'/'مڠ' forms
local vcount = vowel_count(base)
if vcount == 1 then
-- For bases with exactly one vowel: use 'menge' / 'مڠ' + base
if jawi then
active_form = "مڠ" .. base
else
active_form = "menge" .. base
end
else
local first_two = first_n(base, 2)
local first = first_n(base, 1)
-- Mapping for special two-letter onsets
local two_map = {
["sy"] = { latin = "men", jawi = "من", strip = false },
["pl"] = { latin = "mem", jawi = "مم", strip = false },
["ڤل"] = { latin = "mem", jawi = "مم", strip = false },
["pr"] = { latin = "mem", jawi = "مم", strip = false },
["ڤر"] = { latin = "mem", jawi = "مم", strip = false },
["tr"] = { latin = "men", jawi = "من", strip = false },
["تر"] = { latin = "men", jawi = "من", strip = false },
["kl"] = { latin = "meng", jawi = "مڠ", strip = false },
["کل"] = { latin = "meng", jawi = "مڠ", strip = false },
["kr"] = { latin = "meng", jawi = "مڠ", strip = false },
["کر"] = { latin = "meng", jawi = "مڠ", strip = false },
["kh"] = { latin = "meng", jawi = "مڠ", strip = false },
}
if two_map[first_two] then
local m = two_map[first_two]
active_form = make_form(m.latin, m.jawi, jawi)
else
-- Single-letter rules and character-class rules
if is_equiv(first, "k") then
-- drop first letter and use meng / مڠ + rest
if jawi then
active_form = "مڠ" .. rest_from(base, 1)
else
active_form = "meng" .. rest_from(base, 1)
end
elseif is_equiv(first, "t") then
if jawi then
active_form = "من" .. rest_from(base, 1)
else
active_form = "men" .. rest_from(base, 1)
end
elseif is_equiv(first, "s") then
if jawi then
active_form = "مڽ" .. rest_from(base, 1)
else
active_form = "meny" .. rest_from(base, 1)
end
elseif is_equiv(first, "p") then
if jawi then
active_form = "مم" .. rest_from(base, 1)
else
active_form = "mem" .. rest_from(base, 1)
end
else
if first:match("[cjdzچجدزش]") then
active_form = make_form("men", "من", jawi)
elseif first:match("[bfvبفۏ]") then
active_form = make_form("mem", "مم", jawi)
elseif first:match("[ghݢݢحخهة]") then
active_form = make_form("meng", "مڠ", jawi)
elseif is_vowel_char(first) then
active_form = make_form("meng", "مڠ", jawi)
else
-- fallback: default 'me' form
active_form = jawi and ("م" .. base) or ("me" .. base)
end
end
end
end
args.active = { active_form }
args.passive = { passive_form }
elseif args[1] and args[1][1] == "a" then
if #args[1] > 2 then
error("This template doesn't use argument |3=")
elseif #args[1] < 2 then
error("Please enter the bare form of the verb.")
end
local default_passive_latin = "di" .. args[1][2]
local default_passive_jawi = "د" .. args[1][2]
local passive_form = jawi and default_passive_jawi or default_passive_latin
args.bare = { args[1][2] }
args.passive = { passive_form }
else
-- still, if active provided but passive missing, generate passive
if args.active and args.active[1] and (not args.passive or not args.passive[1]) then
args.passive = { jawi and ("د" .. base) or ("di" .. base) }
end
end
if args.active and args.active[1] then
args.active.label = "active"
table.insert(data.inflections, args.active)
end
if args.bare and args.bare[1] then
args.bare.label = "bare form"
table.insert(data.inflections, args.bare)
end
if args.passive and args.passive[1] then
args.passive.label = "third-person passive"
table.insert(data.inflections, args.passive)
end
end
}
pos_functions["bentuk kata kerja"] = pos_functions["kata kerja"]
pos_functions["kata sifat"] = {
params = {
[1] = { list = true }, -- allow |~|, |-|, |?|, |+|, |e|
comparative = { alias_of = 1, list = false },
superlative = { list = true },
equative = { list = true },
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
local first = usub(base, 1, 1)
local eq_enable
-- Comperative & Superlative
local periphrastic = {
comp_latn = "[[lebih]] " .. base,
sup_latn = "[[paling]] " .. base,
comp_j = "[[لبيه]] " .. base,
sup_j = "[[ڤاليڠ]] " .. base,
}
-- Equative is non-periphrastic (seBASE)
local equative = {
latn = "se" .. base,
jawi = "[[س]]" .. base,
}
-- Helpers -------------------------------------------------------
local function eq_check(tbl)
local found = false
for i = #tbl, 1, -1 do -- iterate backwards when removing
if tbl[i] == "e" then
table.remove(tbl, i)
found = true
end
end
return tbl, found
end
------------------------------------------------------------------
args[1], eq_enable = eq_check(args[1])
-- 1) “?” → no inflections, but add request category and stop.
if args[1][1] == "?" then
table.insert(data.categories,
"Permintaan infleksi dalam entri kata sifat bahasa " .. langname)
return
end
-- 2) “-” → just “not comparable” and stop.
if args[1][1] == "-" then
table.insert(data.inflections, { label = "[[Lampiran:Glosari#tidak sebanding|tidak sebanding]]" })
table.insert(data.categories, "Kata sifat tidak sebanding bahasa " .. langname)
return
end
-- 3) “~” → insert the note, but then fall through to normal comp/sup.
if args[1][1] == "~" then
table.insert(data.inflections, { label = "umumnya [[Lampiran:Glosari#tidak sebanding|tidak sebanding]]" })
end
-- 4) Comparative: always show (default)
if args[1][1] == nil or args[1][1] == "+" then
if jawi then
args.comparative = { periphrastic.comp_j }
args.superlative = { periphrastic.sup_j }
else
args.comparative = { periphrastic.comp_latn }
args.superlative = { periphrastic.sup_latn }
end
-- If "+" flag, additionally show morphological superlative
if args[1][1] == "+" then
local is_r = (first == "r" or first == "ر")
local morph = jawi
and (is_r and "ت" or "تر")
or (is_r and "te" or "ter")
-- First show periphrastic form (Jawi or Latin), then synthetic form
args.superlative = {
jawi and periphrastic.sup_j or periphrastic.sup_latn,
morph .. base
}
end
end
-- 5) Equative: only when e is called
if eq_enable then
args.equative = { jawi and equative.jawi or equative.latn }
else
args.equative = nil
end
-- 6) emit in order
if args.comparative and args.comparative[1] then
args.comparative.label = "[[Lampiran:Glosari#sebanding|sebanding]]"
table.insert(data.inflections, args.comparative)
end
if args.superlative and args.superlative[1] then
args.superlative.label = "[[Lampiran:Glosari#superlatif|superlatif]]"
table.insert(data.inflections, args.superlative)
end
if args.equative and args.equative[1] then
args.equative.label = "[[Lampiran:Glosari#samaan|samaan]]"
table.insert(data.inflections, args.equative)
end
end,
}
pos_functions["penjodoh bilangan"] = {
params = {
[1] = { list = true }, -- allow |+| or custom singular
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
-- Helpers -------------------------------------------------------
local function alt_sing(tbl)
if #tbl == 0 then return false end
if #tbl == 1 and tbl[1] == "+" then
return false
end
return true
end
local function plus_sign(tbl)
for _, v in ipairs(tbl) do
if v == "+" then
return true
end
end
return false
end
------------------------------------------------------------------
-- decide what form(s) to emit
local sing_forms = {label = "mufrad"}
-- if nothing explicit was passed, or "+" is called, auto‑generate
if #args[1] == 0 or plus_sign(args[1]) then
if jawi then
table.insert(sing_forms, "سي" .. base)
else
table.insert(sing_forms, "se" .. base)
end
end
-- If there's alternative singular form
-- {e.g. {{ms-classifier|sorang}}
if alt_sing(args[1]) then
for _, v in ipairs(args[1]) do
table.insert(sing_forms, v)
end
end
-- emit an inflection labeled “singular”
table.insert(data.inflections, sing_forms)
table.insert(data.categories, "Penjodoh bilangan bahasa " .. langname)
end
}
return export
nn5w5cao9ezoo91lcnkobj3ue568n36
381368
381364
2026-11-04T08:40:26Z
Apisite
4339
381368
Scribunto
text/plain
local export = {}
local pos_functions = {}
local require = require
local require_when_needed = require("Module:require when needed")
-- Modules
local m_debug_track = require("Module:debug/track")
local m_head = require("Module:headword")
local m_params = require("Module:parameters")
local pages_module = "Module:pages"
-- Utilities
local u = require_when_needed("Module:string/char")
local PAGENAME = mw.loadData("Module:headword/data").pagename
local ugsub = mw.ustring.gsub
local ufind = mw.ustring.find
local umatch = mw.ustring.match
local ugmatch = mw.ustring.gmatch
local usub = mw.ustring.sub
local ulen = mw.ustring.len
-- Languages
local lang = require("Module:languages").getByCode("ms")
local langname = lang:getCanonicalName()
local script = lang:findBestScript(PAGENAME) -- Latn or Arab
local function track(page)
return m_debug_track("ms-headword/" .. page)
end
function export.show(frame)
local iparams = {
[1] = {required = true},
}
local params = {
["head"] = {list = true, disallow_holes = true},
["j"] = {list = true, disallow_holes = true},
["id"] = true,
["sort"] = true,
["var"] = {type = "boolean"},
["nolinkhead"] = {type = "boolean"},
["json"] = {type = "boolean"},
["pagename"] = true, -- for testing
}
local par_args = frame:getParent().args
-- Process frame arguments i.e. {{#invoke:ms-headword|show|arguments}}
local iargs = m_params.process(frame.args, iparams)
local poscat = iargs[1]
-- Append additional params in pos_functions to global params in export.show
-- Necessary before processing parent args as each part of speech has their own parameters
-- See pos_functions["adjectives"] for example
if pos_functions[poscat] then
local posparams = pos_functions[poscat].params
if type(posparams) == "function" then
posparams = posparams(lang)
end
for key, val in pairs(posparams) do
params[key] = val
end
end
-- Process frame parent arguments i.e. {{ms-head|arguments}}
local args = m_params.process(par_args, params)
local pagename = args.pagename or mw.loadData("Module:headword/data").pagename
local head = args.head and args.head[1] or PAGENAME
local var = args.var
if var == nil then
var = script:getCode() == "Arab"
end
local data = {
lang = lang,
pos_category = poscat,
categories = {},
heads = args.head,
inflections = {},
pagename = pagename,
id = args.id,
sort_key = args.sort,
is_suffix = false,
translits = { "-" },
var = var,
}
if (ufind(PAGENAME, "اء[وي]")) then
head = ugsub(PAGENAME, "(ا)(ء)([وي])", "%1<sup>%2</sup>%3") -- superscript hamza
end
if args["ku"] ~= nil or args["mu"] ~= nil or args["nya"] ~= nil then
track("clean up kumunya")
end
if args["r"] ~= nil then
track("clean up r")
end
local function any_match(pattern)
if head and ufind(head, pattern) then
return true
end
for _, v in ipairs(args["j"]) do
if v and ufind(v, pattern) then
return true
end
end
return false
end
if any_match("[كڬگ]") then
track("incorrect Jawi spelling")
error("Please use ک in place of ك and ݢ in place of ڬ and گ.")
end
-- special marks: ZWSP (200B), ZWNJ (200C), ZWJ (200D), LRM (200E), RLM (200F)
local special_marks = "[" .. u(0x200B) .. u(0x200D) .. "-" .. u(0x200F) .. "]"
if any_match(special_marks) then
track("incorrect Jawi spelling")
error("Please remove ZWSP, ZWJ, LRM, and RLM from title/headword. Use ZWNJ in place of ZWSP for words like ساءينس.")
end
local warning_text = ""
if any_match("[" .. u(0x200C) .. "]") and require(pages_module).is_preview() then
warning_text = '<span class="error">WARNING: You included a ZWNJ character in the title or headword. Please ' ..
"verify whether this is correct; only in rare cases like ساءينس is it correct to include a ZWNJ character." ..
"</span>"
table.insert(data.categories, "Perkataan bahasa Melayu dengan aksara ZWNJ")
end
local letter_replacements = { ["M"] = "m", ["N#"] = "ng", ["R#"] = "r" }
local pattern_replacements = { }
function export.affixation(text, affix)
local first_consonant
if affix == "-" then
text = text .. "-" .. text
elseif umatch(affix, "^%-.+%-$") then
first_consonant = umatch(text, "^[^aeiou]+")
text = first_consonant .. usub(affix, 2, -2) ..
usub(text, ulen(first_consonant) + 1,
-1)
else
text = affix:gsub("%-", "#" .. text)
text = text:gsub("N([^aeiou]*)([aeiou])([^aeiou]*)$", "nge%1%2%3")
text = text:gsub("meN#p", "memp")
for pattern, replacement in pairs(pattern_replacements) do
text = text:gsub(pattern, replacement)
end
text = text:gsub("[MNR]#?", letter_replacements)
text = text:gsub("#", "")
end
return text
end
local jawi = { label = "Tulisan Jawi" }
for _, term in ipairs(args["j"]) do
if term then
table.insert(jawi, { term = term })
end
end
if #jawi > 0 then table.insert(data.inflections, jawi) end
if script:getCode() == "Arab" then
table.insert(data.categories, "Perkataan dalam tulisan Arab bahasa Melayu")
end
if pos_functions[poscat] and pos_functions[poscat].func then
pos_functions[poscat].func(args, data)
end
return m_head.full_headword(data) .. warning_text
end
pos_functions["kata nama"] = {
params = {
[1] = {list = true},
["pl"] = {alias_of = 1, list = true},
},
func = function(args, data)
-- Main code for noun plurality
local jawi = data.var
local pl1 = args[1][1]
-- Helpers -------------------------------------------------------
local function insert_plural(tbl, ...)
for _, v in ipairs(...) do
table.insert(tbl, v)
end
return tbl
end
local function make_default_plural(pagename, jawi)
local plural = {}
local jawi_letter = "ابتةثجچحخدذرزسشصضطظعغڠفڤقکݢلمنوۏهءيىڽ"
-- Auto-detect full reduplication
if pagename:match("^([a-zA-Z" .. jawi_letter .. "]+)%-%1$") then
table.insert(
plural, "[[" .. pagename .. "]]"
)
return plural
end
local subwords = mw.text.split(pagename, "%s")
local firstword = subwords[1]
local plural_entry = "[[" .. firstword .. "]]-[[" .. firstword .. "]]"
local plural_entry2_j = "[[" .. firstword .. "]][[ـ٢|٢]]"
if #subwords > 1 then
-- Concatenate all the remaining subwords (from 2 onward)
for i = 2, #subwords do
plural_entry = plural_entry .. " [[" .. subwords[i] .. "]]"
if jawi then
plural_entry2_j = plural_entry2_j .. " [[" .. subwords[i] .. "]]"
end
end
end
table.insert(
plural, plural_entry
)
if jawi then
table.insert(
plural, plural_entry2_j
) -- add "2" only first word
end
return plural
end
------------------------------------------------------------------
-- Unknown or uncertain and requests
if pl1 == "req" then
table.insert(data.categories, "Permintaan bentuk jamak dalam entri bahasa " .. langname)
elseif pl1 == "?" then
table.insert(data.categories, "Kata nama dengan bentuk jamak yang tidak diketahui atau tidak pasti bahasa " .. langname)
-- Uncountable and semi-countable
elseif pl1 == "-" then
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
table.insert(data.inflections, {label = "[[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"})
elseif pl1 == "u" then
local pl_countable = {label = "biasanya [[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"}
local pl_plural = {label = "jamak"}
table.insert(data.categories, "Kata nama berbilang bahasa " .. langname)
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
pl_plural = insert_plural(pl_plural, make_default_plural(data.pagename, jawi))
table.insert(data.inflections, pl_countable)
table.insert(data.inflections, pl_plural)
elseif pl1 == "~" then
local pl_countable = {label = "[[Lampiran:Glosari#berbilang|berbilang]] dan [[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"}
local pl_plural = {label = "jamak"}
table.insert(data.categories, "Kata nama berbilang bahasa " .. langname)
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
pl_plural = insert_plural(pl_plural, make_default_plural(data.pagename, jawi))
table.insert(data.inflections, pl_countable)
table.insert(data.inflections, pl_plural)
elseif pl1 == "pt" or pl1 == "p" then
error(langname .. " doesn't have plurale tantum, please delete the causing parameter.")
elseif pl1 == "st" or pl1 == "s" then
error(langname .. " doesn't have singulare tantum, please replace the causing parameter with |-.")
elseif pl1 == "1" then
error("The parameter |pl=1 is invalid. Please specify the plurality with an existing value.")
else
-- Countable
local pl = {label = "jamak"}
if not pl1 or pl1 == "+" then
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
elseif pl1 == "a" then
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
table.insert(pl, "[[para]] " .. data.pagename)
elseif pl1 == "*" then
table.insert(pl, data.pagename)
elseif pl1 == "*+" then
table.insert(pl, data.pagename)
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
else
for _, i in ipairs(args[1]) do
local exclude = {
a = true,
u = true,
req = true,
["+"] = true,
["~"] = true,
["-"] = true,
["*"] = true,
["*+"] = true,
}
-- Incase first argument is used not as the first argument
-- (e.g. {{ms-noun|custom-plural|a}})
if not exclude[i] then
table.insert(pl, i)
end
end
end
table.insert(data.inflections, pl)
end
end
}
-- Generally, proper nouns don't have plural unless in certain cases
-- e.g. Muslim -> Muslimin
pos_functions["kata nama khas"] = {
params = {
[1] = {list = true}, -- allow custom plural
["pl"] = {alias_of = 1, list = true},
},
func = function(args, data)
local pl1 = args[1]
local pl = { label = "jamak" }
if #pl1 ~= 0 then
for _, v in ipairs(pl1) do
table.insert(pl, v)
end
table.insert(data.inflections, pl)
end
end
}
pos_functions["kata kerja"] = {
params = {
[1] = { list = true },
active = { list = true },
bare = { list = true },
passive = { list = true },
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
local equivalent_letters = {
k = "ک", t = "ت", s = "س", p = "ڤ",
}
-- Helpers -------------------------------------------------------
local function first_n(s, n)
return usub(s, 1, n)
end
local function rest_from(s, n)
return usub(s, n + 1)
end
local function is_equiv(first, target)
return first == target or first == equivalent_letters[target]
end
local function is_vowel_char(ch)
return ch:match('[aiueoاويى]') ~= nil
end
local function vowel_count(s)
local count = 0
for ch in ugmatch(s, '.') do
if is_vowel_char(ch) then
count = count + 1
if count > 1 then return count end
end
end
return count
end
local function make_form(prefix_latin, prefix_jawi, use_jawi, rest)
if use_jawi then
return prefix_jawi .. (rest or base)
else
return prefix_latin .. (rest or base)
end
end
----------------------------------------------------------------
if args[1] and args[1][1] == "b" then
-- Default base forms
local default_passive_latin = "di" .. base
local default_passive_jawi = "د" .. base
local active_form
local passive_form = jawi and default_passive_jawi or default_passive_latin
-- If base has more than 1 vowel, use 'meng'/'مڠ' forms
local vcount = vowel_count(base)
if vcount == 1 then
-- For bases with exactly one vowel: use 'menge' / 'مڠ' + base
if jawi then
active_form = "مڠ" .. base
else
active_form = "menge" .. base
end
else
local first_two = first_n(base, 2)
local first = first_n(base, 1)
-- Mapping for special two-letter onsets
local two_map = {
["sy"] = { latin = "men", jawi = "من", strip = false },
["pl"] = { latin = "mem", jawi = "مم", strip = false },
["ڤل"] = { latin = "mem", jawi = "مم", strip = false },
["pr"] = { latin = "mem", jawi = "مم", strip = false },
["ڤر"] = { latin = "mem", jawi = "مم", strip = false },
["tr"] = { latin = "men", jawi = "من", strip = false },
["تر"] = { latin = "men", jawi = "من", strip = false },
["kl"] = { latin = "meng", jawi = "مڠ", strip = false },
["کل"] = { latin = "meng", jawi = "مڠ", strip = false },
["kr"] = { latin = "meng", jawi = "مڠ", strip = false },
["کر"] = { latin = "meng", jawi = "مڠ", strip = false },
["kh"] = { latin = "meng", jawi = "مڠ", strip = false },
}
if two_map[first_two] then
local m = two_map[first_two]
active_form = make_form(m.latin, m.jawi, jawi)
else
-- Single-letter rules and character-class rules
if is_equiv(first, "k") then
-- drop first letter and use meng / مڠ + rest
if jawi then
active_form = "مڠ" .. rest_from(base, 1)
else
active_form = "meng" .. rest_from(base, 1)
end
elseif is_equiv(first, "t") then
if jawi then
active_form = "من" .. rest_from(base, 1)
else
active_form = "men" .. rest_from(base, 1)
end
elseif is_equiv(first, "s") then
if jawi then
active_form = "مڽ" .. rest_from(base, 1)
else
active_form = "meny" .. rest_from(base, 1)
end
elseif is_equiv(first, "p") then
if jawi then
active_form = "مم" .. rest_from(base, 1)
else
active_form = "mem" .. rest_from(base, 1)
end
else
if first:match("[cjdzچجدزش]") then
active_form = make_form("men", "من", jawi)
elseif first:match("[bfvبفۏ]") then
active_form = make_form("mem", "مم", jawi)
elseif first:match("[ghݢݢحخهة]") then
active_form = make_form("meng", "مڠ", jawi)
elseif is_vowel_char(first) then
active_form = make_form("meng", "مڠ", jawi)
else
-- fallback: default 'me' form
active_form = jawi and ("م" .. base) or ("me" .. base)
end
end
end
end
args.active = { active_form }
args.passive = { passive_form }
elseif args[1] and args[1][1] == "a" then
if #args[1] > 2 then
error("This template doesn't use argument |3=")
elseif #args[1] < 2 then
error("Please enter the bare form of the verb.")
end
local default_passive_latin = "di" .. args[1][2]
local default_passive_jawi = "د" .. args[1][2]
local passive_form = jawi and default_passive_jawi or default_passive_latin
args.bare = { args[1][2] }
args.passive = { passive_form }
else
-- still, if active provided but passive missing, generate passive
if args.active and args.active[1] and (not args.passive or not args.passive[1]) then
args.passive = { jawi and ("د" .. base) or ("di" .. base) }
end
end
if args.active and args.active[1] then
args.active.label = "active"
table.insert(data.inflections, args.active)
end
if args.bare and args.bare[1] then
args.bare.label = "bare form"
table.insert(data.inflections, args.bare)
end
if args.passive and args.passive[1] then
args.passive.label = "third-person passive"
table.insert(data.inflections, args.passive)
end
end
}
pos_functions["bentuk kata kerja"] = pos_functions["kata kerja"]
pos_functions["kata sifat"] = {
params = {
[1] = { list = true }, -- allow |~|, |-|, |?|, |+|, |e|
comparative = { alias_of = 1, list = false },
superlative = { list = true },
equative = { list = true },
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
local first = usub(base, 1, 1)
local eq_enable
-- Comperative & Superlative
local periphrastic = {
comp_latn = "[[lebih]] " .. base,
sup_latn = "[[paling]] " .. base,
comp_j = "[[لبيه]] " .. base,
sup_j = "[[ڤاليڠ]] " .. base,
}
-- Equative is non-periphrastic (seBASE)
local equative = {
latn = "se" .. base,
jawi = "[[س]]" .. base,
}
-- Helpers -------------------------------------------------------
local function eq_check(tbl)
local found = false
for i = #tbl, 1, -1 do -- iterate backwards when removing
if tbl[i] == "e" then
table.remove(tbl, i)
found = true
end
end
return tbl, found
end
------------------------------------------------------------------
args[1], eq_enable = eq_check(args[1])
-- 1) “?” → no inflections, but add request category and stop.
if args[1][1] == "?" then
table.insert(data.categories,
"Permintaan infleksi dalam entri kata sifat bahasa " .. langname)
return
end
-- 2) “-” → just “not comparable” and stop.
if args[1][1] == "-" then
table.insert(data.inflections, { label = "[[Lampiran:Glosari#tidak sebanding|tidak sebanding]]" })
table.insert(data.categories, "Kata sifat tidak sebanding bahasa " .. langname)
return
end
-- 3) “~” → insert the note, but then fall through to normal comp/sup.
if args[1][1] == "~" then
table.insert(data.inflections, { label = "umumnya [[Lampiran:Glosari#tidak sebanding|tidak sebanding]]" })
end
-- 4) Comparative: always show (default)
if args[1][1] == nil or args[1][1] == "+" then
if jawi then
args.comparative = { periphrastic.comp_j }
args.superlative = { periphrastic.sup_j }
else
args.comparative = { periphrastic.comp_latn }
args.superlative = { periphrastic.sup_latn }
end
-- If "+" flag, additionally show morphological superlative
if args[1][1] == "+" then
local is_r = (first == "r" or first == "ر")
local morph = jawi
and (is_r and "ت" or "تر")
or (is_r and "te" or "ter")
-- First show periphrastic form (Jawi or Latin), then synthetic form
args.superlative = {
jawi and periphrastic.sup_j or periphrastic.sup_latn,
morph .. base
}
end
end
-- 5) Equative: only when e is called
if eq_enable then
args.equative = { jawi and equative.jawi or equative.latn }
else
args.equative = nil
end
-- 6) emit in order
if args.comparative and args.comparative[1] then
args.comparative.label = "[[Lampiran:Glosari#sebanding|sebanding]]"
table.insert(data.inflections, args.comparative)
end
if args.superlative and args.superlative[1] then
args.superlative.label = "[[Lampiran:Glosari#superlatif|superlatif]]"
table.insert(data.inflections, args.superlative)
end
if args.equative and args.equative[1] then
args.equative.label = "[[Lampiran:Glosari#samaan|samaan]]"
table.insert(data.inflections, args.equative)
end
end,
}
pos_functions["penjodoh bilangan"] = {
params = {
[1] = { list = true }, -- allow |+| or custom singular
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
-- Helpers -------------------------------------------------------
local function alt_sing(tbl)
if #tbl == 0 then return false end
if #tbl == 1 and tbl[1] == "+" then
return false
end
return true
end
local function plus_sign(tbl)
for _, v in ipairs(tbl) do
if v == "+" then
return true
end
end
return false
end
------------------------------------------------------------------
-- decide what form(s) to emit
local sing_forms = {label = "mufrad"}
-- if nothing explicit was passed, or "+" is called, auto‑generate
if #args[1] == 0 or plus_sign(args[1]) then
if jawi then
table.insert(sing_forms, "سي" .. base)
else
table.insert(sing_forms, "se" .. base)
end
end
-- If there's alternative singular form
-- {e.g. {{ms-classifier|sorang}}
if alt_sing(args[1]) then
for _, v in ipairs(args[1]) do
table.insert(sing_forms, v)
end
end
-- emit an inflection labeled “singular”
table.insert(data.inflections, sing_forms)
table.insert(data.categories, "Penjodoh bilangan bahasa " .. langname)
end
}
return export
2b8wu1qs4f1f47m8z6nxrpavrzivux5
381369
381368
2026-11-04T08:41:34Z
Apisite
4339
381369
Scribunto
text/plain
local export = {}
local pos_functions = {}
local require = require
local require_when_needed = require("Module:require when needed")
-- Modules
local m_debug_track = require("Module:debug/track")
local m_head = require("Module:headword")
local m_params = require("Module:parameters")
local pages_module = "Module:pages"
-- Utilities
local u = require_when_needed("Module:string/char")
local PAGENAME = mw.loadData("Module:headword/data").pagename
local ugsub = mw.ustring.gsub
local ufind = mw.ustring.find
local umatch = mw.ustring.match
local ugmatch = mw.ustring.gmatch
local usub = mw.ustring.sub
local ulen = mw.ustring.len
-- Languages
local lang = require("Module:languages").getByCode("ms")
local langname = lang:getCanonicalName()
local script = lang:findBestScript(PAGENAME) -- Latn or Arab
local function track(page)
return m_debug_track("ms-headword/" .. page)
end
function export.show(frame)
local iparams = {
[1] = {required = true},
}
local params = {
["head"] = {list = true, disallow_holes = true},
["j"] = {list = true, disallow_holes = true},
["id"] = true,
["sort"] = true,
["var"] = {type = "boolean"},
["nolinkhead"] = {type = "boolean"},
["json"] = {type = "boolean"},
["pagename"] = true, -- for testing
}
local par_args = frame:getParent().args
-- Process frame arguments i.e. {{#invoke:ms-headword|show|arguments}}
local iargs = m_params.process(frame.args, iparams)
local poscat = iargs[1]
-- Append additional params in pos_functions to global params in export.show
-- Necessary before processing parent args as each part of speech has their own parameters
-- See pos_functions["adjectives"] for example
if pos_functions[poscat] then
local posparams = pos_functions[poscat].params
if type(posparams) == "function" then
posparams = posparams(lang)
end
for key, val in pairs(posparams) do
params[key] = val
end
end
-- Process frame parent arguments i.e. {{ms-head|arguments}}
local args = m_params.process(par_args, params)
local pagename = args.pagename or mw.loadData("Module:headword/data").pagename
local head = args.head and args.head[1] or PAGENAME
local var = args.var
if var == nil then
var = script:getCode() == "Arab"
end
local data = {
lang = lang,
pos_category = poscat,
categories = {},
heads = args.head,
inflections = {},
pagename = pagename,
id = args.id,
sort_key = args.sort,
is_suffix = false,
translits = { "-" },
var = var,
}
if (ufind(PAGENAME, "اء[وي]")) then
head = ugsub(PAGENAME, "(ا)(ء)([وي])", "%1<sup>%2</sup>%3") -- superscript hamza
end
if args["ku"] ~= nil or args["mu"] ~= nil or args["nya"] ~= nil then
track("clean up kumunya")
end
if args["r"] ~= nil then
track("clean up r")
end
local function any_match(pattern)
if head and ufind(head, pattern) then
return true
end
for _, v in ipairs(args["j"]) do
if v and ufind(v, pattern) then
return true
end
end
return false
end
if any_match("[كڬگ]") then
track("incorrect Jawi spelling")
error("Please use ک in place of ك and ݢ in place of ڬ and گ.")
end
-- special marks: ZWSP (200B), ZWNJ (200C), ZWJ (200D), LRM (200E), RLM (200F)
local special_marks = "[" .. u(0x200B) .. u(0x200D) .. "-" .. u(0x200F) .. "]"
if any_match(special_marks) then
track("incorrect Jawi spelling")
error("Please remove ZWSP, ZWJ, LRM, and RLM from title/headword. Use ZWNJ in place of ZWSP for words like ساءينس.")
end
local warning_text = ""
if any_match("[" .. u(0x200C) .. "]") and require(pages_module).is_preview() then
warning_text = '<span class="error">WARNING: You included a ZWNJ character in the title or headword. Please ' ..
"verify whether this is correct; only in rare cases like ساءينس is it correct to include a ZWNJ character." ..
"</span>"
table.insert(data.categories, "Perkataan bahasa Melayu dengan aksara ZWNJ")
end
local letter_replacements = { ["M"] = "m", ["N#"] = "ng", ["R#"] = "r" }
local pattern_replacements = { }
function export.affixation(text, affix)
local first_consonant
if affix == "-" then
text = text .. "-" .. text
elseif umatch(affix, "^%-.+%-$") then
first_consonant = umatch(text, "^[^aeiou]+")
text = first_consonant .. usub(affix, 2, -2) ..
usub(text, ulen(first_consonant) + 1,
-1)
else
text = affix:gsub("%-", "#" .. text)
text = text:gsub("N([^aeiou]*)([aeiou])([^aeiou]*)$", "nge%1%2%3")
text = text:gsub("meN#p", "memp")
for pattern, replacement in pairs(pattern_replacements) do
text = text:gsub(pattern, replacement)
end
text = text:gsub("[MNR]#?", letter_replacements)
text = text:gsub("#", "")
end
return text
end
local jawi = { label = "tulisan Jawi" }
for _, term in ipairs(args["j"]) do
if term then
table.insert(jawi, { term = term })
end
end
if #jawi > 0 then table.insert(data.inflections, jawi) end
if script:getCode() == "Arab" then
table.insert(data.categories, "Perkataan dalam tulisan Arab bahasa Melayu")
end
if pos_functions[poscat] and pos_functions[poscat].func then
pos_functions[poscat].func(args, data)
end
return m_head.full_headword(data) .. warning_text
end
pos_functions["kata nama"] = {
params = {
[1] = {list = true},
["pl"] = {alias_of = 1, list = true},
},
func = function(args, data)
-- Main code for noun plurality
local jawi = data.var
local pl1 = args[1][1]
-- Helpers -------------------------------------------------------
local function insert_plural(tbl, ...)
for _, v in ipairs(...) do
table.insert(tbl, v)
end
return tbl
end
local function make_default_plural(pagename, jawi)
local plural = {}
local jawi_letter = "ابتةثجچحخدذرزسشصضطظعغڠفڤقکݢلمنوۏهءيىڽ"
-- Auto-detect full reduplication
if pagename:match("^([a-zA-Z" .. jawi_letter .. "]+)%-%1$") then
table.insert(
plural, "[[" .. pagename .. "]]"
)
return plural
end
local subwords = mw.text.split(pagename, "%s")
local firstword = subwords[1]
local plural_entry = "[[" .. firstword .. "]]-[[" .. firstword .. "]]"
local plural_entry2_j = "[[" .. firstword .. "]][[ـ٢|٢]]"
if #subwords > 1 then
-- Concatenate all the remaining subwords (from 2 onward)
for i = 2, #subwords do
plural_entry = plural_entry .. " [[" .. subwords[i] .. "]]"
if jawi then
plural_entry2_j = plural_entry2_j .. " [[" .. subwords[i] .. "]]"
end
end
end
table.insert(
plural, plural_entry
)
if jawi then
table.insert(
plural, plural_entry2_j
) -- add "2" only first word
end
return plural
end
------------------------------------------------------------------
-- Unknown or uncertain and requests
if pl1 == "req" then
table.insert(data.categories, "Permintaan bentuk jamak dalam entri bahasa " .. langname)
elseif pl1 == "?" then
table.insert(data.categories, "Kata nama dengan bentuk jamak yang tidak diketahui atau tidak pasti bahasa " .. langname)
-- Uncountable and semi-countable
elseif pl1 == "-" then
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
table.insert(data.inflections, {label = "[[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"})
elseif pl1 == "u" then
local pl_countable = {label = "biasanya [[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"}
local pl_plural = {label = "jamak"}
table.insert(data.categories, "Kata nama berbilang bahasa " .. langname)
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
pl_plural = insert_plural(pl_plural, make_default_plural(data.pagename, jawi))
table.insert(data.inflections, pl_countable)
table.insert(data.inflections, pl_plural)
elseif pl1 == "~" then
local pl_countable = {label = "[[Lampiran:Glosari#berbilang|berbilang]] dan [[Lampiran:Glosari#tidak berbilang|tidak berbilang]]"}
local pl_plural = {label = "jamak"}
table.insert(data.categories, "Kata nama berbilang bahasa " .. langname)
table.insert(data.categories, "Kata nama tidak berbilang bahasa " .. langname)
pl_plural = insert_plural(pl_plural, make_default_plural(data.pagename, jawi))
table.insert(data.inflections, pl_countable)
table.insert(data.inflections, pl_plural)
elseif pl1 == "pt" or pl1 == "p" then
error(langname .. " doesn't have plurale tantum, please delete the causing parameter.")
elseif pl1 == "st" or pl1 == "s" then
error(langname .. " doesn't have singulare tantum, please replace the causing parameter with |-.")
elseif pl1 == "1" then
error("The parameter |pl=1 is invalid. Please specify the plurality with an existing value.")
else
-- Countable
local pl = {label = "jamak"}
if not pl1 or pl1 == "+" then
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
elseif pl1 == "a" then
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
table.insert(pl, "[[para]] " .. data.pagename)
elseif pl1 == "*" then
table.insert(pl, data.pagename)
elseif pl1 == "*+" then
table.insert(pl, data.pagename)
pl = insert_plural(pl, make_default_plural(data.pagename, jawi))
else
for _, i in ipairs(args[1]) do
local exclude = {
a = true,
u = true,
req = true,
["+"] = true,
["~"] = true,
["-"] = true,
["*"] = true,
["*+"] = true,
}
-- Incase first argument is used not as the first argument
-- (e.g. {{ms-noun|custom-plural|a}})
if not exclude[i] then
table.insert(pl, i)
end
end
end
table.insert(data.inflections, pl)
end
end
}
-- Generally, proper nouns don't have plural unless in certain cases
-- e.g. Muslim -> Muslimin
pos_functions["kata nama khas"] = {
params = {
[1] = {list = true}, -- allow custom plural
["pl"] = {alias_of = 1, list = true},
},
func = function(args, data)
local pl1 = args[1]
local pl = { label = "jamak" }
if #pl1 ~= 0 then
for _, v in ipairs(pl1) do
table.insert(pl, v)
end
table.insert(data.inflections, pl)
end
end
}
pos_functions["kata kerja"] = {
params = {
[1] = { list = true },
active = { list = true },
bare = { list = true },
passive = { list = true },
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
local equivalent_letters = {
k = "ک", t = "ت", s = "س", p = "ڤ",
}
-- Helpers -------------------------------------------------------
local function first_n(s, n)
return usub(s, 1, n)
end
local function rest_from(s, n)
return usub(s, n + 1)
end
local function is_equiv(first, target)
return first == target or first == equivalent_letters[target]
end
local function is_vowel_char(ch)
return ch:match('[aiueoاويى]') ~= nil
end
local function vowel_count(s)
local count = 0
for ch in ugmatch(s, '.') do
if is_vowel_char(ch) then
count = count + 1
if count > 1 then return count end
end
end
return count
end
local function make_form(prefix_latin, prefix_jawi, use_jawi, rest)
if use_jawi then
return prefix_jawi .. (rest or base)
else
return prefix_latin .. (rest or base)
end
end
----------------------------------------------------------------
if args[1] and args[1][1] == "b" then
-- Default base forms
local default_passive_latin = "di" .. base
local default_passive_jawi = "د" .. base
local active_form
local passive_form = jawi and default_passive_jawi or default_passive_latin
-- If base has more than 1 vowel, use 'meng'/'مڠ' forms
local vcount = vowel_count(base)
if vcount == 1 then
-- For bases with exactly one vowel: use 'menge' / 'مڠ' + base
if jawi then
active_form = "مڠ" .. base
else
active_form = "menge" .. base
end
else
local first_two = first_n(base, 2)
local first = first_n(base, 1)
-- Mapping for special two-letter onsets
local two_map = {
["sy"] = { latin = "men", jawi = "من", strip = false },
["pl"] = { latin = "mem", jawi = "مم", strip = false },
["ڤل"] = { latin = "mem", jawi = "مم", strip = false },
["pr"] = { latin = "mem", jawi = "مم", strip = false },
["ڤر"] = { latin = "mem", jawi = "مم", strip = false },
["tr"] = { latin = "men", jawi = "من", strip = false },
["تر"] = { latin = "men", jawi = "من", strip = false },
["kl"] = { latin = "meng", jawi = "مڠ", strip = false },
["کل"] = { latin = "meng", jawi = "مڠ", strip = false },
["kr"] = { latin = "meng", jawi = "مڠ", strip = false },
["کر"] = { latin = "meng", jawi = "مڠ", strip = false },
["kh"] = { latin = "meng", jawi = "مڠ", strip = false },
}
if two_map[first_two] then
local m = two_map[first_two]
active_form = make_form(m.latin, m.jawi, jawi)
else
-- Single-letter rules and character-class rules
if is_equiv(first, "k") then
-- drop first letter and use meng / مڠ + rest
if jawi then
active_form = "مڠ" .. rest_from(base, 1)
else
active_form = "meng" .. rest_from(base, 1)
end
elseif is_equiv(first, "t") then
if jawi then
active_form = "من" .. rest_from(base, 1)
else
active_form = "men" .. rest_from(base, 1)
end
elseif is_equiv(first, "s") then
if jawi then
active_form = "مڽ" .. rest_from(base, 1)
else
active_form = "meny" .. rest_from(base, 1)
end
elseif is_equiv(first, "p") then
if jawi then
active_form = "مم" .. rest_from(base, 1)
else
active_form = "mem" .. rest_from(base, 1)
end
else
if first:match("[cjdzچجدزش]") then
active_form = make_form("men", "من", jawi)
elseif first:match("[bfvبفۏ]") then
active_form = make_form("mem", "مم", jawi)
elseif first:match("[ghݢݢحخهة]") then
active_form = make_form("meng", "مڠ", jawi)
elseif is_vowel_char(first) then
active_form = make_form("meng", "مڠ", jawi)
else
-- fallback: default 'me' form
active_form = jawi and ("م" .. base) or ("me" .. base)
end
end
end
end
args.active = { active_form }
args.passive = { passive_form }
elseif args[1] and args[1][1] == "a" then
if #args[1] > 2 then
error("This template doesn't use argument |3=")
elseif #args[1] < 2 then
error("Please enter the bare form of the verb.")
end
local default_passive_latin = "di" .. args[1][2]
local default_passive_jawi = "د" .. args[1][2]
local passive_form = jawi and default_passive_jawi or default_passive_latin
args.bare = { args[1][2] }
args.passive = { passive_form }
else
-- still, if active provided but passive missing, generate passive
if args.active and args.active[1] and (not args.passive or not args.passive[1]) then
args.passive = { jawi and ("د" .. base) or ("di" .. base) }
end
end
if args.active and args.active[1] then
args.active.label = "active"
table.insert(data.inflections, args.active)
end
if args.bare and args.bare[1] then
args.bare.label = "bare form"
table.insert(data.inflections, args.bare)
end
if args.passive and args.passive[1] then
args.passive.label = "third-person passive"
table.insert(data.inflections, args.passive)
end
end
}
pos_functions["bentuk kata kerja"] = pos_functions["kata kerja"]
pos_functions["kata sifat"] = {
params = {
[1] = { list = true }, -- allow |~|, |-|, |?|, |+|, |e|
comparative = { alias_of = 1, list = false },
superlative = { list = true },
equative = { list = true },
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
local first = usub(base, 1, 1)
local eq_enable
-- Comperative & Superlative
local periphrastic = {
comp_latn = "[[lebih]] " .. base,
sup_latn = "[[paling]] " .. base,
comp_j = "[[لبيه]] " .. base,
sup_j = "[[ڤاليڠ]] " .. base,
}
-- Equative is non-periphrastic (seBASE)
local equative = {
latn = "se" .. base,
jawi = "[[س]]" .. base,
}
-- Helpers -------------------------------------------------------
local function eq_check(tbl)
local found = false
for i = #tbl, 1, -1 do -- iterate backwards when removing
if tbl[i] == "e" then
table.remove(tbl, i)
found = true
end
end
return tbl, found
end
------------------------------------------------------------------
args[1], eq_enable = eq_check(args[1])
-- 1) “?” → no inflections, but add request category and stop.
if args[1][1] == "?" then
table.insert(data.categories,
"Permintaan infleksi dalam entri kata sifat bahasa " .. langname)
return
end
-- 2) “-” → just “not comparable” and stop.
if args[1][1] == "-" then
table.insert(data.inflections, { label = "[[Lampiran:Glosari#tidak sebanding|tidak sebanding]]" })
table.insert(data.categories, "Kata sifat tidak sebanding bahasa " .. langname)
return
end
-- 3) “~” → insert the note, but then fall through to normal comp/sup.
if args[1][1] == "~" then
table.insert(data.inflections, { label = "umumnya [[Lampiran:Glosari#tidak sebanding|tidak sebanding]]" })
end
-- 4) Comparative: always show (default)
if args[1][1] == nil or args[1][1] == "+" then
if jawi then
args.comparative = { periphrastic.comp_j }
args.superlative = { periphrastic.sup_j }
else
args.comparative = { periphrastic.comp_latn }
args.superlative = { periphrastic.sup_latn }
end
-- If "+" flag, additionally show morphological superlative
if args[1][1] == "+" then
local is_r = (first == "r" or first == "ر")
local morph = jawi
and (is_r and "ت" or "تر")
or (is_r and "te" or "ter")
-- First show periphrastic form (Jawi or Latin), then synthetic form
args.superlative = {
jawi and periphrastic.sup_j or periphrastic.sup_latn,
morph .. base
}
end
end
-- 5) Equative: only when e is called
if eq_enable then
args.equative = { jawi and equative.jawi or equative.latn }
else
args.equative = nil
end
-- 6) emit in order
if args.comparative and args.comparative[1] then
args.comparative.label = "[[Lampiran:Glosari#sebanding|sebanding]]"
table.insert(data.inflections, args.comparative)
end
if args.superlative and args.superlative[1] then
args.superlative.label = "[[Lampiran:Glosari#superlatif|superlatif]]"
table.insert(data.inflections, args.superlative)
end
if args.equative and args.equative[1] then
args.equative.label = "[[Lampiran:Glosari#samaan|samaan]]"
table.insert(data.inflections, args.equative)
end
end,
}
pos_functions["penjodoh bilangan"] = {
params = {
[1] = { list = true }, -- allow |+| or custom singular
},
func = function(args, data)
local base = data.pagename
local jawi = data.var
-- Helpers -------------------------------------------------------
local function alt_sing(tbl)
if #tbl == 0 then return false end
if #tbl == 1 and tbl[1] == "+" then
return false
end
return true
end
local function plus_sign(tbl)
for _, v in ipairs(tbl) do
if v == "+" then
return true
end
end
return false
end
------------------------------------------------------------------
-- decide what form(s) to emit
local sing_forms = {label = "mufrad"}
-- if nothing explicit was passed, or "+" is called, auto‑generate
if #args[1] == 0 or plus_sign(args[1]) then
if jawi then
table.insert(sing_forms, "سي" .. base)
else
table.insert(sing_forms, "se" .. base)
end
end
-- If there's alternative singular form
-- {e.g. {{ms-classifier|sorang}}
if alt_sing(args[1]) then
for _, v in ipairs(args[1]) do
table.insert(sing_forms, v)
end
end
-- emit an inflection labeled “singular”
table.insert(data.inflections, sing_forms)
table.insert(data.categories, "Penjodoh bilangan bahasa " .. langname)
end
}
return export
ikj8k7jdvctkq6oje4n597ww2v66lz7
kukus
0
17155
381335
335543
2026-11-03T13:14:14Z
Hakimi97
2668
Betulkan format
381335
wikitext
text/x-wiki
==Bahasa Melayu==
===Kata kerja===
{{ms-kk|j=کوکوس}}
# {{lb|ms|transitif|memasak}} [[memasak|Memasak]] dengan meletakkan bahan makanan dalam bekas berisi [[wap air]] bersuhu tinggi.
{{ms-ks}}
# Keadaan makanan yang dikukus.
===Sebutan===
* {{dewan|ku|kus}}
===Terjemahan===
{{ter-atas|memasak dengan wap air}}
* Assam: {{t|as|ভাপত দে}}
* Belanda: {{t+|nl|stomen}}
* Cina:
*: Kantonis: {{t|yue|清蒸|tr=cing1 zing1|sc=Hani}}, {{t|yue|蒸|tr=zing1|sc=Hani}}
*: Mandarin: {{t+|cmn|清蒸|tr=qīng zhēng|sc=Hani}}
* Czech: {{t+|cs|dusit}}
* Denmark: {{t+|da|dampe}}
* Finland: {{t+|fi|höyryttää}}
* Galicia: {{t+|gl|abafar}}
* Hungary: {{t+|hu|párol}}, {{t+|hu|dinsztel}}
* Inggeris: {{t+|en|steam}}
* Jepun: {{t+|ja|蒸す|tr=musu}}
* Jerman: {{t+|de|dämpfen}}, {{t+|de|dünsten}}
* Ladino:
*: Latin: {{t|lad|abafar|sc=Latn}}, {{t|lad|enhaminar|sc=Latn}}
* Latvia: {{t+|lv|sutināt}}
* Mongolia: {{t+|mn|жигнэх|sc=Cyrl}}, {{t|mn|уураар чанах|sc=Cyrl}}
* Norman: {{t|nrf|tchuithe à l'ieau}} {{qualifier|Jersey}}
* Perancis: {{t+|fr|cuisiner|alt=cuisiner à la vapeur}}
* Portugal: {{t|pt|[[cozer]]/[[cozinhar]] [[no]] [[vapor]]}}
* Romania: {{t+|ro|aburi}}, {{t|ro|fierbe în aburi}}, {{t|ro|fierbe la aburi}}
* Sweden: {{t+|sv|ångkoka}}
* Thai: {{t+|th|นึ่ง}}
{{ter-bawah}}
===Anagram===
* {{l|ms|sukuk}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
==Bahasa Kadazandusun==
===Kata sifat===
{{inti|dtp|kata sifat}}
# [[kecut]]
mefhvzo20h22ngcgv00cbwnxpb8s7et
syahid
0
17189
381334
334575
2026-11-03T13:13:44Z
Hakimi97
2668
Betulkan penggunaan templat
381334
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=شهيد}}
# {{lb|ms|agama|kematian}} Orang yang [[mati]] ketika dalam perjuangan untuk mempertahankan agamanya.
====Terbitan kata====
* {{l|ms|mati syahid}}
* {{l|ms|syuhada}}
===Etimologi===
Daripada {{der|ms|ar|شَهِيد}}.
===Sebutan===
* {{dewan|sya|hid}}
===Tesaurus===
* Sinonim: {{l|ms|martir}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
bys16u900xn3an0dglvolrmoso9tzj4
mati pucuk
0
17326
381363
335010
2026-11-04T03:13:04Z
Hakimi97
2668
/* Kata nama */ Betulkan ejaan
381363
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=ماتي ڤوچوق}}
# Situasi [[zakar]] yang tidak dapat menegang dalam keadaan [[syahwat]] tinggi lalu menyukarkan proses penghantaran [[sperma]] ke [[faraj]].
===Etimologi===
{{compound|ms|mati|pucuk}}.
===Sebutan===
* {{dewan|ma|ti|pu|cuk}}
* {{a|Johor-Selangor}} {{IPA|ms|/ma.ti pu.coʔ/}}
* {{a|Riau-Lingga}} {{IPA|ms|/ma.ti pu.cʊʔ/}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
{{C|ms|Patologi}}
q5486o9xz1obh5b8m7g82v7w81tk2g6
terusan
0
18066
381337
376321
2026-11-03T13:14:56Z
Hakimi97
2668
Betulkan ejaan
381337
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=تروسن}}
# Suatu laluan air yang dikorek untuk dijadikan laluan [[pengangkutan]] atau [[pengairan]].
===Etimologi===
{{suffix|ms|terus|an}}
===Sebutan===
* {{dewan|te|ru|san}}
* {{audio|ms|Ms-MY-terusan.ogg|Audio (MY)}}
===Terjemahan===
{{ter-atas|laluan air buatan}}
* Albania: {{t+|sq|kanal|m}}
* Arab: {{t|ar|قَنَاة|f}}
* Armenia: {{t+|hy|ջրանցք}}
* Assam: {{t|as|খাল}}, {{t|as|নলা}}
* Asturia: {{t|ast|canal|f}}
* Azerbaijan: {{t+|az|arx}}, {{t+|az|kanal}}
* Belanda: {{t+|nl|kanaal|n}}, {{t+|nl|vaart|f}}, {{t+|nl|gracht|f}} (banyak digunakan di Holland)
* Belarus: {{t|be|кана́л|m|sc=Cyrl}}
* Bengali: {{t|bn|খাল}}
* Breton: {{t+|br|kanol}}
* Bulgaria: {{t+|bg|кана́л|m}}
* Burma: {{t+|my|မြောင်း|sc=Mymr}}, {{t+|my|တူးမြောင်း}}
* Catala: {{t+|ca|canal|m}}
* Cina:
*: Kantonis: {{t|yue|運河}}, {{t|yue|运河|tr=wan6 ho4|sc=Hani}}
*: Mandarin: {{t+|cmn|運河|sc=Hani}}, {{t+|cmn|运河|tr=yùnhé|sc=Hani}}
*: Min Nan: {{t+|nan|運河|sc=Hani}}, {{t|nan|运河|tr=ūn-hô|sc=Hani}}
* Czech: {{t+|cs|kanál|m}}, {{t+|cs|průplav|m}}
* Denmark: {{t+|da|kanal|c}}
* Esperanto: {{t|eo|kanalo}}
* Estonia: {{t+|et|kanal}}
* Finland: {{t+|fi|kanava}}
* Galicia: {{t|gl|canal|m}}, {{t+|gl|canle|f}}
* Gael Scotland: {{t|gd|canàl|m}}, {{t|gd|sruth-chlais|f}}
* Georgia: {{t|ka|არხი|sc=Geor}}
* Hindi: {{t+|hi|नहर|f|sc=Deva}}, {{t+|hi|नाला|m}}
* Hungary: {{t+|hu|csatorna}}
* Ibrani: {{t+|he|תְּעָלָה|f|tr=te'ala}}
* Iceland: {{t+|is|skurður|m}}, {{t|is|síki|n}}
* Indonesia: {{t+|id|kanal}}, {{t+|id|terusan}}
* Inggeris: {{t+|en|canal}}
* Ireland: {{t|ga|canáil|f}}
* Itali: {{t+|it|canale|m}}
* Jepun: {{t+|ja|運河|tr=うんが, unga}}, {{t+|ja|水路|tr=すいろ, suiro}}
* Jerman: {{t+|de|Kanal|m}}
* Jerman Pennsylvania: {{t|pdc|Kanaal}}
* Kazakh: {{t+|kk|канал|sc=Cyrl}}
* Khmer: {{t+|km|ប្រឡាយ|tr=prɑlaay|sc=Khmr}}, {{t+|km|ព្រែកជីក}}
* Korea: {{t+|ko|운하}}
* Kurdi:
*: Kurdi Tengah: {{t|ckb|کەناڵ}}, {{t|ckb|جۆگە}}
*: Kurdi Utara: {{t+|kmr|co|m}}, {{t+|kmr|cihok|m}}, {{t+|kmr|cobar|m}}
* Kyrgyz: {{t+|ky|канал|sc=Cyrl}}
* Lao: {{t+|lo|ຄອງ}}, {{t|lo|ຕະຄອງ}}, {{t|lo|ລຳຄອງ}}
* Latin: {{t|la|fossa|f}}
* Latvia: {{t+|lv|kanāls|m}}
* Lithuania: {{t+|lt|kanalas|m}}
* Jerman Rendah:
*: Saxon Belanda Bawah: {{t|nds-nl|daip|n}} {{qualifier|Gronings}}, {{t|nds-nl|knoal|n}} {{qualifier|Gronings dan Sallands}}, {{t|nds-nl|wetering|f}} {{qualifier|Sallands}}
* Makedonia: {{t|mk|канал|m|sc=Cyrl}}
* Malta: {{t|mt|kanal|m}}
* Maori: {{t|mi|wai tawaka}}
* Mongolia: {{t+|mn|суваг|sc=Cyrl}}
* Norman: {{t|nrf|canal|m}} {{qualifier|Jersey}}
* Norway:
*: Bokmål: {{t+|nb|kanal|m}}
*: Nynorsk: {{t|nn|kanal|m}}
* Parsi: {{t+|fa|کانال|tr=kânâl}}, {{t|fa|آبراه|tr=âb-râh}}
* Perancis: {{t+|fr|canal|m}}
* Poland: {{t+|pl|kanał|m}}
* Portugis: {{t+|pt|canal|m}}
* Punjabi: {{t|pa|ਨਹਿਰ|f}}
* Romania: {{t+|ro|canal|m}}
* Rusia: {{t+|ru|кана́л|m}}
* Sanskrit: {{t+|sa|खल्ल|m}}, {{t+|sa|कुल्या|f}}
* Sepanyol: {{t+|es|canal|m|f}}
* Serbo-Croatia:
*: Cyril: {{t|sh|канал|m|sc=Cyrl}}
*: Rumi: {{t+|sh|kanal|m}}
* Slovak: {{t|sk|kanál|m}}, {{t|sk|prieplav}}
* Slovenia: {{t|sl|kanal|m}}, {{t|sl|prekop|m}}
* Sorbia:
*: Sorbia Bawah: {{t|dsb| kanal |m}}
* Swahili: {{t+|sw|mfereji}}
* Sweden: {{t+|sv|kanal|c}}
* Tajik: {{t+|tg|канал|sc=Cyrl}}
* Tamil: {{t+|ta|கால்வாய்}}
* Telugu: {{t+|te|కాలువ}}
* Thai: {{t+|th|คลอง}}, {{t|th|ลำน้ำ|tr=lamnáam}}
* Tokaria B: {{t|txb|newiya}}
* Turki: {{t+|tr|ark}}, {{t+|tr|kanal}}
* Turkmen: {{t|tk|kanal}}
* Ukraine: {{t+|uk|кана́л|m}}
* Urdu: {{t|ur|نہر|f|tr=nahar|sc=ur-Arab}}
* Uyghur: {{t|ug|قانلا}}
* Uzbek: {{t+|uz|kanal}}
* Venetia: {{t+|vec|val|f}}, {{t|vec|vałe|f}}
* Vietnam: {{t+|vi|kênh}}, {{t|vi|kênh đào}}
* Wales: {{t|cy|camlas}}
* Yiddish: {{t|yi|קאַנאַל|m|sc=Hebr}}, {{t|yi|דורכגאָס|m|sc=Hebr}}
* Yunani: {{t+|el|κανάλι|n|sc=Grek}}
*: Purba: {{t|grc|ὀχετός|m}}, {{t|grc|διῶρυξ|f}}
{{ter-bawah}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
ihl3vdv1r7sk4y8fnnotbpfw2wvwces
kekecewaan
0
18417
381340
334532
2026-11-03T13:16:02Z
Hakimi97
2668
/* Kata nama */ Betulkan ejaan
381340
wikitext
text/x-wiki
==Bahasa Melayu==
===Kata nama===
{{ms-kn|j=ککچيواءن}}
# Sifat dan tahap [[kecewa]] pada seseorang.
===Etimologi===
{{apitan|ms|ke|kecewa|an}}
===Sebutan===
* {{dewan|ke|ke|cé|wa|han}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
{{C|ms|Emosi}}
f0jcfdv7dyxqhsb048l41way59vrceh
takbir
0
18427
381346
334253
2026-11-03T13:19:53Z
Hakimi97
2668
/* Kata nama */ Betulkan ejaan
381346
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=تکبِير}}
# {{lb|ms|Islam}} Suatu laungan memuji [[Allah]], Allah Akbar ("Allah Maha Besar") yang disebut sebagai [[zikir]] umum.
===Etimologi===
Daripada {{bor|ms|ar|تَكْبِير}}.
===Sebutan===
* {{dewan|tak|bir}}
===Terjemahan===
{{ter-atas|takbir}}
* Arab: {{t+|ar|تَكْبِير}}
* Cina:
*: Mandarin: {{t|cmn|大贊辭|sc=Hani}}, {{t|cmn|大赞辞|tr=dàzàncí|sc=Hani}}
* Comoria Ngazidja: {{t|zdj|takiɓiru}}
* Hindi: {{t+|hi|तकबीर}}, {{t|hi|अल्लाहो अकबर}}, {{t|hi|अल्लाहु अकबर}}, {{t|hi|अल्लाहू अकबर}}, {{t|hi|अल्लाह अकबर}}
* Jepun: {{t|ja|タクビール|tr=takubīru|sc=Jpan}}
* Jerman: {{t|de|Takbīr|n}}
* Perancis: {{t+|fr|takbîr|m}}
* Rusia: {{t+|ru|такби́р|m}}
* Serbo-Croatia:
*: Cyril: {{t|sh|текбир|m}}
*: Rumi: {{t|sh|tekbir|m}}
* Swahili: {{t|sw|takbiri|c9|c10}}
* Turki: {{t+|tr|tekbir}}
* Uyghur: {{t|ug|تەكبىر}}
* Uzbek: {{t+|uz|takbir}}
{{ter-bawah}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
==Bahasa Indonesia==
{{Wikipedia|lang=id}}
===Kata nama===
{{id-noun}}
# {{lb|id|Islam}} Suatu laungan memuji Allah, Allah Akbar ("Allah Maha Besar") yang disebut sebagai zikir umum.
===Etimologi===
Daripada {{bor|id|ar|تَكْبِير}}.
==Bahasa Inggeris==
{{Wikipedia|lang=en}}
===Kata nama===
{{en-noun}}
# {{lb|en|Islam}} Suatu laungan memuji Allah, Allah Akbar ("Allah Maha Besar") yang disebut sebagai zikir umum.
===Etimologi===
Daripada {{bor|en|ar|تَكْبِير}}.
==Bahasa Uzbek==
{{Wikipedia|lang=uz}}
===Kata nama===
{{head|uz|kata nama}}
# {{lb|uz|Islam}} Suatu laungan memuji Allah, Allah Akbar ("Allah Maha Besar") yang disebut sebagai zikir umum.
===Etimologi===
Daripada {{bor|uz|ar|تَكْبِير}}.
opkvkl7t68i5d88u4ko0r9bvak0i1ww
senjata
0
18523
381336
334188
2026-11-03T13:14:37Z
Hakimi97
2668
Betulkan ejaan
381336
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=سنجات}}
# Sebarang [[alatan]] yang digunakan untuk menyerang seseorang atau sesuatu (seperti dalam [[pertahanan]], [[peperangan]] atau [[jenayah]]).
# {{lb|ms|kiasan}} Sebarang benda atau perkara yang digunakan untuk mencapai sesuatu matlamat.
=====Kata terbitan=====
* {{l|ms|persenjataan}}
* {{l|ms|senjata api}}
===Etimologi===
Daripada {{der|ms|sa|संयत्त|t=keadaan bersedia}} atau {{der|ms|sa|सज्जता|t=persediaan}}.
===Sebutan===
* {{dewan|sen|ja|ta}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
{{C|ms|Senjata}}
==Bahasa Indonesia==
{{Wikipedia|lang=id}}
===Kata nama===
{{ms-kn|j=سنجات}}
# Sebarang alatan yang digunakan untuk menyerang seseorang atau sesuatu (seperti dalam pertahanan, peperangan atau jenayah).
# {{lb|id|kiasan}} Sebarang benda atau perkara yang digunakan untuk mencapai sesuatu matlamat.
=====Kata terbitan=====
* {{l|id|persenjataan}}
* {{l|id|senjata api}}
===Etimologi===
Daripada {{der|id|sa|संयत्त|t=keadaan bersedia}} atau {{der|id|sa|सज्जता|t=persediaan}}.
===Sebutan===
* {{IPA|id|[sənˈd͡ʒat̪a]}}
* {{penyempangan|id|sēn|ja|ta}}
===Pautan luar===
* {{R:KBBI Daring}}
{{C|id|Senjata}}
nzm0v733a06ne9d7ocsrzdq9v4xlnrz
381360
381336
2026-11-04T03:11:45Z
Hakimi97
2668
/* Kata nama */ No jawi script for Indonesian language
381360
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=سنجات}}
# Sebarang [[alatan]] yang digunakan untuk menyerang seseorang atau sesuatu (seperti dalam [[pertahanan]], [[peperangan]] atau [[jenayah]]).
# {{lb|ms|kiasan}} Sebarang benda atau perkara yang digunakan untuk mencapai sesuatu matlamat.
=====Kata terbitan=====
* {{l|ms|persenjataan}}
* {{l|ms|senjata api}}
===Etimologi===
Daripada {{der|ms|sa|संयत्त|t=keadaan bersedia}} atau {{der|ms|sa|सज्जता|t=persediaan}}.
===Sebutan===
* {{dewan|sen|ja|ta}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
{{C|ms|Senjata}}
==Bahasa Indonesia==
{{Wikipedia|lang=id}}
===Kata nama===
{{ms-kn}}
# Sebarang alatan yang digunakan untuk menyerang seseorang atau sesuatu (seperti dalam pertahanan, peperangan atau jenayah).
# {{lb|id|kiasan}} Sebarang benda atau perkara yang digunakan untuk mencapai sesuatu matlamat.
=====Kata terbitan=====
* {{l|id|persenjataan}}
* {{l|id|senjata api}}
===Etimologi===
Daripada {{der|id|sa|संयत्त|t=keadaan bersedia}} atau {{der|id|sa|सज्जता|t=persediaan}}.
===Sebutan===
* {{IPA|id|[sənˈd͡ʒat̪a]}}
* {{penyempangan|id|sēn|ja|ta}}
===Pautan luar===
* {{R:KBBI Daring}}
{{C|id|Senjata}}
illp4u3cxx2wo91d1llj4g70l4dg8fd
381362
381360
2026-11-04T03:12:43Z
Hakimi97
2668
/* Kata nama */ Tukar ke kod bahasa id
381362
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=سنجات}}
# Sebarang [[alatan]] yang digunakan untuk menyerang seseorang atau sesuatu (seperti dalam [[pertahanan]], [[peperangan]] atau [[jenayah]]).
# {{lb|ms|kiasan}} Sebarang benda atau perkara yang digunakan untuk mencapai sesuatu matlamat.
=====Kata terbitan=====
* {{l|ms|persenjataan}}
* {{l|ms|senjata api}}
===Etimologi===
Daripada {{der|ms|sa|संयत्त|t=keadaan bersedia}} atau {{der|ms|sa|सज्जता|t=persediaan}}.
===Sebutan===
* {{dewan|sen|ja|ta}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
{{C|ms|Senjata}}
==Bahasa Indonesia==
{{Wikipedia|lang=id}}
===Kata nama===
{{id-kn}}
# Sebarang alatan yang digunakan untuk menyerang seseorang atau sesuatu (seperti dalam pertahanan, peperangan atau jenayah).
# {{lb|id|kiasan}} Sebarang benda atau perkara yang digunakan untuk mencapai sesuatu matlamat.
=====Kata terbitan=====
* {{l|id|persenjataan}}
* {{l|id|senjata api}}
===Etimologi===
Daripada {{der|id|sa|संयत्त|t=keadaan bersedia}} atau {{der|id|sa|सज्जता|t=persediaan}}.
===Sebutan===
* {{IPA|id|[sənˈd͡ʒat̪a]}}
* {{penyempangan|id|sēn|ja|ta}}
===Pautan luar===
* {{R:KBBI Daring}}
{{C|id|Senjata}}
718gxabjez084n5sdxzl28qlsji6wpr
perlahan
0
18585
381333
335249
2026-11-03T13:13:14Z
Hakimi97
2668
/* Kata sifat */ Betulkan ejaan
381333
wikitext
text/x-wiki
==Bahasa Melayu==
===Kata sifat===
{{ms-ks|j=ڤرلاهن}}
# Dalam keadaan yang tidak tergesa-gesa (seperti gerakan atau aktiviti).
#: {{ant|ms|laju|cepat}}
# Keadaan [[suara]] yang tidak jelas atau sukar didengari.
#: {{ant|ms|jelas}}
# Dalam keadaan yang tidak [[kuat]].
{{ms-kk}}
# {{lb|ms|pasif}} Menjadikan suatu objek bergerak secara perlahan.
# {{lb|ms|pasif}} Menjadikan suara atau bunyi lebih perlahan.
===Sebutan===
* {{dewan|per|la|han}}
* {{audio|ms|Ms-MY-perlahan.ogg|Audio (MY)}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
1o29uzdiiet8thnacswpkylbo5i80b9
pecahan
0
18592
381339
334256
2026-11-03T13:15:42Z
Hakimi97
2668
/* Kata nama */ Betulkan ejaan
381339
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=ڤچهن}}
# Sebahagian daripada sesuatu.
#: {{lb|ms|aritmetik}} Perwakilan pecahan [[nombor bulat]] terdiri daripada [[pengangka]] dan [[penyebut]].
===Etimologi===
{{suf|ms|pecah|an}}
===Sebutan===
* {{dewan|pe|ca|han}}
* {{IPA|ms|/pə.t͡ʃa.han/}}
* {{rima|ms|han|an}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
==Bahasa Indonesia==
{{Wikipedia|lang=id}}
===Kata nama===
{{ms-kn|j=ڤچهن}}
# Sebahagian daripada sesuatu.
#: {{lb|id|aritmetik}} Perwakilan pecahan nombor bulat.
===Etimologi===
{{suf|id|pecah|an}}
===Sebutan===
* {{IPA|id|/pə.t͡ʃa.han/}}
* {{rima|id|han|an}}
===Pautan luar===
* {{R:KBBI Daring}}
rbaogstblw79got07faxyr1tuv2bx7a
381361
381339
2026-11-04T03:12:15Z
Hakimi97
2668
/* Kata nama */ No jawi script for Indonesian language
381361
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=ڤچهن}}
# Sebahagian daripada sesuatu.
#: {{lb|ms|aritmetik}} Perwakilan pecahan [[nombor bulat]] terdiri daripada [[pengangka]] dan [[penyebut]].
===Etimologi===
{{suf|ms|pecah|an}}
===Sebutan===
* {{dewan|pe|ca|han}}
* {{IPA|ms|/pə.t͡ʃa.han/}}
* {{rima|ms|han|an}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
==Bahasa Indonesia==
{{Wikipedia|lang=id}}
===Kata nama===
{{id-kn}}
# Sebahagian daripada sesuatu.
#: {{lb|id|aritmetik}} Perwakilan pecahan nombor bulat.
===Etimologi===
{{suf|id|pecah|an}}
===Sebutan===
* {{IPA|id|/pə.t͡ʃa.han/}}
* {{rima|id|han|an}}
===Pautan luar===
* {{R:KBBI Daring}}
pm2ijy63e4gwms7i0aygjm9z1onp1os
pinggang
0
18752
381345
334343
2026-11-03T13:19:33Z
Hakimi97
2668
Betulkan ejaan
381345
wikitext
text/x-wiki
==Bahasa Melayu==
{{Wikipedia}}
===Kata nama===
{{ms-kn|j=ڤيڠݢڠ}}
# Bahagian badan di antara [[pusat]] dan [[pelvis]].
===Sebutan===
* {{dewan|ping|gang}}
* {{audio|ms|Ms-MY-pinggang.ogg|Audio (MY)}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
{{C|ms|Anatomi}}
==Bahasa Indonesia==
===Kata nama===
{{id-noun}}
# Bahagian badan di antara pusat dan pelvis.
===Pautan luar===
* {{R:KBBI Daring}}
gd5ze6ik91ch84s22h3injndy2guk9m
gelas
0
18944
381338
334386
2026-11-03T13:15:23Z
Hakimi97
2668
/* Kata nama */ Betulkan ejaan
381338
wikitext
text/x-wiki
==Bahasa Melayu==
===Kata nama===
{{ms-kn|j=ݢلس}}
# Suatu bekas tak bertangkai, lazim diperbuat daripada [[kaca]] yang digunakan sebagai tempat letak [[minuman]].
===Etimologi===
Pinjaman {{bor|ms|en|glass}}.
===Sebutan===
* {{dewan|ge|las}}
* {{AFA|ms|/ɡəlas/}}
* {{audio|ms|Ms-MY-gelas.ogg|Audio (MY)}}
===Lihat juga===
* {{l|ms|cawan}}
===Rujukan===
* {{R:KD4}}
===Pautan luar===
* {{R:PRPM}}
jnxaq2xhrhhe41qaou6t5muuvpi2k2f
sinasawat
0
26212
381353
284567
2026-11-03T14:12:33Z
Rombituon
6133
/* Bahasa Kadazandusun */
381353
wikitext
text/x-wiki
==Bahasa Kadazandusun==
===Kata nama===
{{inti|dtp|kata nama}}
# [[pentas]]
#: {{cp|dtp|Suminding i Nana hilo sakai '''sinasawat'''.|Nana menyanyi di atas '''pentas'''.}}
===Sebutan===
* {{IPA|dtp|/si.na.sa.wat/}}
* {{penyempangan|dtp|si|na|sa|wat}}
gm6q97e4tnjfre2cia7lfr2f8i52j0j
kikiriison
0
28794
381358
136574
2026-11-03T14:39:55Z
Rombituon
6133
/* Bahasa Kadazandusun */
381358
wikitext
text/x-wiki
==Bahasa Kadazandusun==
===Takrifan===
{{inti|dtp|kata nama}}
# papan gelongsor
#: {{ux|dtp|Mamain yahai dilo '''kikiirison'''.
|Kami bermain '''papan gelongsor'''.}}
5ziot9jjvgts8cqnua34uxt91kqk8vv
خنزير
0
47001
381341
164103
2026-11-03T13:17:09Z
Hakimi97
2668
Hakimi97 telah memindahkan laman [[خنزير]] ke [[خنزير]]: Tajuk salah eja
164103
wikitext
text/x-wiki
==Bahasa Melayu==
===Takrifan===
====Kata nama====
{{ms-kn}}
# {{ms-jawi|khinzir}}
#: {{sin|ms|بابي}}
===Sebutan===
* {{penyempangan|ms|خن|زير}}
===Bacaan lanjut===
* {{R:PRPM}}
guiiqwl8f29nubyk6b6g382o69ysj76
381343
381341
2026-11-03T13:18:25Z
Hakimi97
2668
Hakimi97 telah memindahkan laman [[خنزير]] ke [[خنزير]]: Tajuk salah eja
164103
wikitext
text/x-wiki
==Bahasa Melayu==
===Takrifan===
====Kata nama====
{{ms-kn}}
# {{ms-jawi|khinzir}}
#: {{sin|ms|بابي}}
===Sebutan===
* {{penyempangan|ms|خن|زير}}
===Bacaan lanjut===
* {{R:PRPM}}
guiiqwl8f29nubyk6b6g382o69ysj76
Wikikamus:dtp/kalas
4
141670
381355
369911
2026-11-03T14:15:33Z
Rombituon
6133
/* Bahasa Kadazandusun */
381355
wikitext
text/x-wiki
==Bahasa {{bahasa|dtp}}==
===Kata nama===
{{inti|dtp|kata nama}}
# {{label|1=dtp|2=|3=Sabah}} kelas{{cp|dtp|Balajal yolo hilo id suang '''kalas'''.|Mereka belajar di dalam '''kelas'''.}}
lk5vmtlvlz6jaq40cg9psq6ampezu5y
Perbincangan modul:ms-headword
829
148666
381330
381328
2026-11-03T12:50:27Z
Hakimi97
2668
/* Kecualikan ZWNJ pada semakan masukan kata */ Balas
381330
wikitext
text/x-wiki
== Kecualikan ZWNJ pada semakan masukan kata ==
Apa yg saya lihat di baris 119, kod ini akan semak jika ada aksara khas halimunan Unicode spt ZWNJ, ZWJ dsb, menghasilkan ralat sengaja. Tetapi ini akan bermasalah untuk perkataan Jawi spt Sains ساٴينس yang memerlukan ZWNJ.
Misalnya pada masukan ini:
https://ms.wiktionary.org/wiki/sains_komputer
Boleh saja saya sunting kod itu, tapi mungkinkah ada sebab kemunasabahan/kemunasarawakan yg disengajakan? [[Pengguna:Kazuki278|Kazuki278]] ([[Perbincangan pengguna:Kazuki278|bincang]]) 04:33, 3 November 2026 (UTC)
:Saya salin tampal daripada [[:en:Module:ms-headword]]. Anda boleh berikan maklum balas di [[:en:Module talk:ms-headword
:]] sebaliknya. '''[[Pengguna:Hakimi97|محمد حكيمي]]''' ([[Perbincangan pengguna:Hakimi97|bincang]]) 12:50, 3 November 2026 (UTC)
8u9dbsq8ex3sm3csmj5ntmmtmv8rq67
381331
381330
2026-11-03T12:58:54Z
Hakimi97
2668
Betulkan format
381331
wikitext
text/x-wiki
== Kecualikan ZWNJ pada semakan masukan kata ==
Apa yg saya lihat di baris 119, kod ini akan semak jika ada aksara khas halimunan Unicode spt ZWNJ, ZWJ dsb, menghasilkan ralat sengaja. Tetapi ini akan bermasalah untuk perkataan Jawi spt Sains ساٴينس yang memerlukan ZWNJ.
Misalnya pada masukan ini:
https://ms.wiktionary.org/wiki/sains_komputer
Boleh saja saya sunting kod itu, tapi mungkinkah ada sebab kemunasabahan/kemunasarawakan yg disengajakan? [[Pengguna:Kazuki278|Kazuki278]] ([[Perbincangan pengguna:Kazuki278|bincang]]) 04:33, 3 November 2026 (UTC)
:Saya salin tampal daripada [[:en:Module:ms-headword]]. Anda boleh berikan maklum balas di [[:en:Module talk:ms-headword]] sebaliknya. '''[[Pengguna:Hakimi97|محمد حكيمي]]''' ([[Perbincangan pengguna:Hakimi97|bincang]]) 12:50, 3 November 2026 (UTC)
ax641cbt6y1axhog7e91pjjlgotyptb
381371
381331
2026-11-04T11:37:53Z
Hakimi97
2668
/* Kecualikan ZWNJ pada semakan masukan kata */ Balas
381371
wikitext
text/x-wiki
== Kecualikan ZWNJ pada semakan masukan kata ==
Apa yg saya lihat di baris 119, kod ini akan semak jika ada aksara khas halimunan Unicode spt ZWNJ, ZWJ dsb, menghasilkan ralat sengaja. Tetapi ini akan bermasalah untuk perkataan Jawi spt Sains ساٴينس yang memerlukan ZWNJ.
Misalnya pada masukan ini:
https://ms.wiktionary.org/wiki/sains_komputer
Boleh saja saya sunting kod itu, tapi mungkinkah ada sebab kemunasabahan/kemunasarawakan yg disengajakan? [[Pengguna:Kazuki278|Kazuki278]] ([[Perbincangan pengguna:Kazuki278|bincang]]) 04:33, 3 November 2026 (UTC)
:Saya salin tampal daripada [[:en:Module:ms-headword]]. Anda boleh berikan maklum balas di [[:en:Module talk:ms-headword]] sebaliknya. '''[[Pengguna:Hakimi97|محمد حكيمي]]''' ([[Perbincangan pengguna:Hakimi97|bincang]]) 12:50, 3 November 2026 (UTC)
::@[[Pengguna:Kazuki278|Kazuki278]], masalah ini sudah selesai sekarang ni. Terima kasih atas maklum balas '''[[Pengguna:Hakimi97|محمد حكيمي]]''' ([[Perbincangan pengguna:Hakimi97|bincang]]) 11:37, 4 November 2026 (UTC)
3bjj8zqiidwm4b71mo0b1ng74fy312k
خنزير
0
148668
381342
2026-11-03T13:17:10Z
Hakimi97
2668
Hakimi97 telah memindahkan laman [[خنزير]] ke [[خنزير]]: Tajuk salah eja
381342
wikitext
text/x-wiki
#LENCONG [[خنزير]]
8dht61sq1d91nuss9npvs4mo9h94zv2
381347
381342
2026-11-03T13:20:37Z
Hakimi97
2668
Mengubah sasaran lencongan dari [[خنزير]] ke [[خنزير]]
381347
wikitext
text/x-wiki
#LENCONG [[خنزير]]
335m9q2dimytu3nh150asy755rhjr00
خنزير
0
148669
381344
2026-11-03T13:18:25Z
Hakimi97
2668
Hakimi97 telah memindahkan laman [[خنزير]] ke [[خنزير]]: Tajuk salah eja
381344
wikitext
text/x-wiki
#LENCONG [[خنزير]]
335m9q2dimytu3nh150asy755rhjr00
teme'e
0
148670
381348
2026-11-03T13:21:24Z
Hakimi97
2668
Mencipta laman baru dengan kandungan '{{wt:ms/{{PAGENAME}}}}'
381348
wikitext
text/x-wiki
{{wt:ms/{{PAGENAME}}}}
oduz2pevfujwte0m2yicioulifapb4r
Wikikamus:ms/kodi
4
148671
381349
2026-11-03T14:00:03Z
Uwais Athrun
11607
Sumbangan perkataan Perak
381349
wikitext
text/x-wiki
==Bahasa {{bahasa|ms}}==
===Kata kerja===
{{inti|ms|kata kerja}}
# {{label|1=ms|2=dialek|3=Perak}} mengurus, membaiki
#: {{cp|ms|chor, minta tolong '''kodi''' moto aok ni| saudara, mohon tolong '''baiki''' moto aku ni}}
ra9z7pdoh88rn040ji2130jssjuey6q
Wikikamus:ms/dan
4
148672
381350
2026-11-03T14:03:14Z
Uwais Athrun
11607
Sumbangan perkataan Perak
381350
wikitext
text/x-wiki
==Bahasa {{bahasa|ms}}==
===Kata kerja===
{{inti|ms|kata kerja}}
# {{label|1=ms|2=dialek|3=Perak}} sempat
#: {{cp|ms|'''dan''' lagi dak nak gi ni?| '''sempat''' lagi tak nak pergi ni?}}
2o4w4fk3ov0z5vyd6jn8xh21cxsbxf2
Wikikamus:ms/jenuh
4
148673
381351
2026-11-03T14:08:09Z
Uwais Athrun
11607
Sumbangan perkataan Perak
381351
wikitext
text/x-wiki
==Bahasa {{bahasa|ms}}==
===Kata kerja===
{{inti|ms|kata kerja}}
# {{label|1=ms|2=dialek|3=Perak}} masa yang lama
#: {{cp|ms|Aok '''jenuh''' dah ngadap. Nunggu gilior miker bile nak siapnye? Aku dah '''lama''' menghadap. Tunggu kau punya giliran bila nak siap?}}
47rzuy35fowozbbiamsdox8adowv5e0
Wikikamus:ms/bah
4
148674
381352
2026-11-03T14:10:17Z
Uwais Athrun
11607
Sumbangan perkataan Perak
381352
wikitext
text/x-wiki
==Bahasa {{bahasa|ms}}==
===Kata kerja===
{{inti|ms|kata kerja}}
# {{label|1=ms|2=dialek|3=Perak}} air banjir
#: {{cp|ms|ajenye naye ayor '''bah''' masuk ke rumah| sungguhlah terainaya '''air banjir''' masuk rumah}}
9cb3q2r1b927z6klz94bnftfs2noco2
Wikikamus:ms/jiruh
4
148675
381354
2026-11-03T14:15:14Z
Uwais Athrun
11607
Sumbangan perkataan Perak
381354
wikitext
text/x-wiki
==Bahasa {{bahasa|ms}}==
===Kata kerja===
{{inti|ms|kata kerja}}
# {{label|1=ms|2=dialek|3=Perak}} [[siram|jirus]], siram
#: {{cp|ms|Nanti petang miker tolong '''jiruh''' pokok aok ni, nanti ate lenyor, tunggu le.| Nanti petang tolong '''siram'''kan pokok aku ni, kalau layu siap kau}}
6dlkudmkla3jmtjwfm2hs8krrg0c1cm
Wikikamus:ms/hambat
4
148676
381356
2026-11-03T14:16:38Z
Uwais Athrun
11607
Sumbangan perkataan Perak
381356
wikitext
text/x-wiki
==Bahasa {{bahasa|ms}}==
===Kata kerja===
{{inti|ms|kata kerja}}
# {{label|1=ms|2=dialek|3=Perak}} kejar
#: {{cp|ms|'''hambat''' deme!| '''kejar''' diorang!}}
t9o3klbn43xyejnmdhsxkarwlg1rvi7
longkod pambasaan
0
148677
381357
2026-11-03T14:18:09Z
Rombituon
6133
Mencipta laman baru dengan kandungan '==Bahasa Kadazandusun== ===Kata nama=== {{inti|dtp|Kata nama}} # [[pusat sumber]] # [[perpustakaan]] #: {{cp|dtp| Minolos oku buuk hilo '''longkod pambasaan'''.| Saya meminjam buku di '''perpustakaan'''.}}'
381357
wikitext
text/x-wiki
==Bahasa Kadazandusun==
===Kata nama===
{{inti|dtp|Kata nama}}
# [[pusat sumber]]
# [[perpustakaan]]
#: {{cp|dtp| Minolos oku buuk hilo '''longkod pambasaan'''.| Saya meminjam buku di '''perpustakaan'''.}}
1eosgs59sb6tn0jtsqo2m1d9xlv8gku
Wikikamus:bdr/but
4
148678
381359
2026-11-03T15:59:15Z
Sipatung
10839
Tambah ayat
381359
wikitext
text/x-wiki
==Bahasa {{bahasa|bdr}}==
===Kata nama===
{{inti|bdr|kata nama}}
# {{label|1=bdr|2=dialek|3=Sabah}} bot {{cp|bdr|Aku menik '''but''' peketa suang.|Saya naik '''[[bot]]''' menyeberang sungai.}}
f3tsbqpsruccwff0qxskwqb8m8mg1wv
war crime
0
148679
381365
2026-11-04T08:33:21Z
Apisite
4339
Mencipta laman baru dengan kandungan '==Bahasa Inggeris== ===Kata nama=== {{en-noun}} # [[jenayah perang]]'
381365
wikitext
text/x-wiki
==Bahasa Inggeris==
===Kata nama===
{{en-noun}}
# [[jenayah perang]]
h2qflhyqv5e8bt577guykk6gp385ssx
381366
381365
2026-11-04T08:33:37Z
Apisite
4339
381366
wikitext
text/x-wiki
==Bahasa Inggeris==
===Kata nama===
{{en-noun|s}}
# [[jenayah perang]]
o4nhzkm9ay0w3vui4gfyxm7x3oc8nxw