Wiktionary
thwiktionary
https://th.wiktionary.org/wiki/%E0%B8%A7%E0%B8%B4%E0%B8%81%E0%B8%B4%E0%B8%9E%E0%B8%88%E0%B8%99%E0%B8%B2%E0%B8%99%E0%B8%B8%E0%B8%81%E0%B8%A3%E0%B8%A1:%E0%B8%AB%E0%B8%99%E0%B9%89%E0%B8%B2%E0%B8%AB%E0%B8%A5%E0%B8%B1%E0%B8%81
MediaWiki 1.47.0-wmf.19
case-sensitive
สื่อ
พิเศษ
พูดคุย
ผู้ใช้
คุยกับผู้ใช้
วิกิพจนานุกรม
คุยเรื่องวิกิพจนานุกรม
ไฟล์
คุยเรื่องไฟล์
มีเดียวิกิ
คุยเรื่องมีเดียวิกิ
แม่แบบ
คุยเรื่องแม่แบบ
วิธีใช้
คุยเรื่องวิธีใช้
หมวดหมู่
คุยเรื่องหมวดหมู่
ภาคผนวก
คุยเรื่องภาคผนวก
ดัชนี
คุยเรื่องดัชนี
สัมผัส
คุยเรื่องสัมผัส
อรรถาภิธาน
คุยเรื่องอรรถาภิธาน
TimedText
TimedText talk
มอดูล
คุยเรื่องมอดูล
Event
Event talk
ของ
0
10161
5759997
5753630
2026-09-09T09:26:50Z
~2026-48667-08
19506
/* */
5759997
wikitext
text/x-wiki
{{also/auto}} ntnwtmwmwy. Vtn3ymatm. qtn26mw. Wt3yet caty d F tbrynn XNBC🙃😂😂😝😀😉😃😉😄🐕🦺🐅🐑🐆🐕🦺🐑🐩🦊🐑🦊🐒😆eybwteyn. 3wtnstag twnreyfn. Twneynnehwtj. TV TV hey Ryan Henry un3g. Egeyeywtbet twyla. ey eyeyya🐕🦺🐺🐽🐕🦺🐅🐺🐵twbt2b3tab1rvwtrv. T1 eay 2t. at. ett 2t at wtwtyeyyweujeungas not.
B1rhheyw3twth wfb2tru. T23yqtn
== ภาษาไทย ==
=== รูปแบบอื่น ===
* {{alt|th|ฃอง||เลิกใช้}}
=== รากศัพท์ ===
{{inh+|th|tai-pro|*χɔːŋᴬ}}; ร่วมเชื้อสายกับ{{cog|nod|ᨡᩬᨦ}}, {{cog|lo|ຂອງ}}, {{cog|khb|ᦃᦸᧂ}}, {{cog|blt|ꪄꪮꪉ}}, {{cog|shn|ၶွင်}}, {{cog|tdd|ᥑᥩᥒᥴ}}, {{cog|phk|ၵွင်}}, {{cog|aho|𑜁𑜨𑜂𑜫}}, {{cog|za|hong|tr=หอง|t=การงาน}}, {{cog|zzj|kong|tr=ของ|t=สิ่งของ}}
=== การออกเสียง ===
{{th-pron}}
=== คำนาม ===
{{th-noun}}
# [[สิ่ง]][[ต่าง]] ๆ
==== ลูกคำ ====
{{col4|th|ของกลาง|ของกำนัล|ของกำมะลอ|ของกิน|ของเก่า|ของขบเคี้ยว|ของขลัง|ของขวัญ|ของขึ้น|ของแข็ง|ของค้าง|ของคาว|ของเค็ม|ของเคียง|ของโจร|ของชำ|ของชำร่วย|ของใช้|ของดี|ของตลาด|ของตาย|ของเถื่อน|ของนอก|ของป่า|ของร้อน|ของระบาด|ของรับไหว้|ของลับ|ของเล่น|ของเลื่อน|ของเลื่อนเตือนขันหมาก|ของวัด|ของว่าง|ของสงฆ์|ของสงวน|ของสด|ของสดของคาว|ของสดคาว|ของสูง|ของเสีย|ของแสลง|ของหมั้น|ของหลวง|ของหลุด|ของหวาน|ของหายตะพายบาป|ของเหลว|ของแห้ง|ของไหล|ของไหว้|ข้าวของ|จ้างทำของ|เจ้าของ|ปล่อยของ|ลองของ|เล่นขายของ|วิ่งเก็บของ|สิ่งของ|ออกของ}}
=== คำบุพบท ===
{{th-prep}}
# [[แห่ง]] (ใช้สำหรับนำหน้า[[นาม]]ที่เป็นผู้[[ครอบครอง]])
==== ลูกคำ ====
<!--lemmas in dictionaries-->
{{col4|th|ข้อบังคับของบริษัท|ข้อมูลข่าวสารของราชการ}}
==== คำแปลภาษาอื่น ====
{{trans-top|คำกำกับนามที่เป็นผู้ครอบครอง}}
* เขมร: {{t+|km|របស់}}
* คำเมือง: {{t+|nod|ᨡᩬᨦ}}
* ดัตช์: {{t+|nl|van}}
* ไทดำ: ''ปกติไม่ใช้''
* ไทใหญ่: ''ปกติไม่ใช้''
* ลาว: {{t+|lo|ຂອງ}}
* อังกฤษ: {{t+|en|of|tr=เอิฟว์}}
{{trans-bottom}}
== ภาษาคำเมือง ==
=== คำนาม ===
{{nod-noun}}
# {{alternative form of|nod|ᨡᩬᨦ}}
=== คำบุพบท ===
{{nod-prep}}
# {{alternative form of|nod|ᨡᩬᨦ}}
stida058y2hc10jlp6b7znh0l1gve5f
หลัก
0
29374
5759972
5758764
2026-09-08T23:07:56Z
~2026-48652-51
19504
ย้อนรุ่นแก้ไข [[Special:Diff/2693102|2693102]] ของ [[Special:Contributions/Ternera|Ternera]] ([[User talk:Ternera|คุย]])
5759972
wikitext
text/x-wiki
{{also/}}
== ภาษาไทย ==
=== รูปแบบอื่น ===
* {{alt|th|หลกก||เลิกใช้}}
=== การออกเสียง ===
{{th-pron|หฺลัก}}
=== รากศัพท์ 1 ===
{{inh+|th|tai-pro|*ʰlakᴰ}}; ร่วมเชื้อสายกับ{{cog|nod|ᩉᩖᩢᨠ}}, {{cog|lo|ຫຼັກ}}, {{cog|khb|ᦜᧅ}}, {{cog|shn|လၵ်း}}, {{cog|aho|𑜎𑜀𑜫}}, {{cog|skb|ลั๊ก}}, {{cog|zzj|laek}}, {{cog|za|laek}}
==== คำนาม ====
{{th-noun}}
# [[เสา]][[ที่]][[ปัก]][[ไว้]], ที่[[ผูก]], ที่[[มั่น]]
#: {{ux|th|เอาเรือไปผูกไว้กับหลัก}}
# [[เครื่องหมาย]]
#: {{ux|th|หลักเขต}}
# [[เครื่อง]][[ยึดเหนี่ยว]]
#: {{ux|th|มีธรรมะเป็นหลักในการดำรงชีวิต}}
# เครื่อง[[จับ]][[ยึด]]
#: {{ux|th|หลักแจว}}
# [[สาระ]]ที่[[มั่นคง]]
#: {{ux|th|พูดจาไม่มีหลัก}}
#: {{ux|th|หลักกฎหมาย}}
#: {{ux|th|หลักเศรษฐศาสตร์}}
# [[ตำแหน่ง]][[ของ]][[ตัวเลข]][[ซึ่ง]][[แสดง]][[จำนวน]] คือ ถ้าเป็นเลขตัวเดียว เรียกว่า จำนวนหน่วย เลข 2 ตัวเรียงกัน เรียกว่า จำนวนสิบ เลข 3 ตัวเรียงกัน เรียกว่า จำนวนร้อย เลข 4 ตัวเรียงกัน เรียกว่า จำนวนพัน เลข 5 ตัวเรียงกัน เรียกว่า จำนวนหมื่น เลข 6 ตัวเรียงกัน เรียกว่า จำนวนแสน เลข 7 ตัวเรียงกัน เรียกว่า จำนวนล้าน
#: {{ux|th|987 เป็นจำนวนร้อย, 9 เป็นเลขหลักร้อย หมายถึง 900, ส่วน 8 เป็นเลขหลักสิบ หมายถึง 80, และ 7 เป็นเลขหลักหน่วย หมายถึง 7}}
==== คำแปลภาษาอื่น ====
{{trans-top|หลักที่ปักไว้}}
* ไทใหญ่: {{t+|shn|လၵ်း}}
* ลาว: {{t+|lo|ຫຼັກ}}
{{trans-bottom}}
===== ลูกคำ =====
{{col4|th|กาจับหลัก|เข้าหลัก|จับหลัก|จำหลัก|ตั้งหลัก|ตั้งหลัก|ปักหลัก|เป็นหลักเป็นฐาน|เป็นหลักเป็นแหล่ง|ผมหลักแจว|ผู้หลักผู้ใหญ่|พยานหลักฐาน|แม่สื่อแม่ชัก ไม่ได้เจ้าตัว เอาวัวพันหลัก|ไม้หลักปักขี้ควาย|ไม้หลักปักเลน|ลงหลักปักฐาน|ลิงชิงหลัก|วัวพันหลัก|เสาหลัก|เสาหลักเมือง|เสียหลัก|หลักกรรเชียง|หลักกระเชียง|หลักการ|หลักกู|หลักเกณฑ์|หลักแจว|หลักชัย|หลักฐาน|หลักฐานเป็นหนังสือ|หลักตอ|หลักทรัพย์|หลักบ้านหลักเมือง|หลักประกัน|หลักพยาน|หลักลอย|หลักวิชา|หลักสูตร|หลักแหล่ง|หลักแหลม}}
=== รากศัพท์ 2 ===
{{slbor|th|sa|लक्ष}} หรือ{{slbor|th|pi|ลกฺข}}; ร่วมเชื้อสายกับ{{cog|km|លក្ខ}}
==== คำคุณศัพท์ ====
{{th-adj|-}}
# {{lb|th|โบ}} จำนวน[[แสน]]
== ภาษาคำเมือง ==
=== การออกเสียง ===
* {{IPA|nod|/lak˨˦/|a=เชียงใหม่}}
=== คำนาม ===
{{nod-noun|tl=1}}
# {{alternative form of|nod|ᩉᩖᩢᨠ}}
== ภาษาปักษ์ใต้ ==
=== คำกริยา ===
{{sou-verb}}
# [[ลัก]], [[ขโมย]]
=== อ้างอิง ===
* {{R:sou:ERIC|8}}
== ภาษาอีสาน ==
=== คำคุณศัพท์ ===
{{tts-adj}}
# [[ฉลาด]]
fq3kfati43srhkt06u0yeptzifvrxv1
5759973
5759972
2026-09-09T05:38:48Z
Octahedron80
267
?
5759973
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
=== รูปแบบอื่น ===
* {{alt|th|หลกก||เลิกใช้}}
=== การออกเสียง ===
{{th-pron|หฺลัก}}
=== รากศัพท์ 1 ===
{{inh+|th|tai-pro|*ʰlakᴰ}}; ร่วมเชื้อสายกับ{{cog|nod|ᩉᩖᩢᨠ}}, {{cog|lo|ຫຼັກ}}, {{cog|khb|ᦜᧅ}}, {{cog|shn|လၵ်း}}, {{cog|aho|𑜎𑜀𑜫}}, {{cog|skb|ลั๊ก}}, {{cog|zzj|laek}}, {{cog|za|laek}}
==== คำนาม ====
{{th-noun}}
# [[เสา]][[ที่]][[ปัก]][[ไว้]], ที่[[ผูก]], ที่[[มั่น]]
#: {{ux|th|เอาเรือไปผูกไว้กับหลัก}}
# [[เครื่องหมาย]]
#: {{ux|th|หลักเขต}}
# [[เครื่อง]][[ยึดเหนี่ยว]]
#: {{ux|th|มีธรรมะเป็นหลักในการดำรงชีวิต}}
# เครื่อง[[จับ]][[ยึด]]
#: {{ux|th|หลักแจว}}
# [[สาระ]]ที่[[มั่นคง]]
#: {{ux|th|พูดจาไม่มีหลัก}}
#: {{ux|th|หลักกฎหมาย}}
#: {{ux|th|หลักเศรษฐศาสตร์}}
# [[ตำแหน่ง]][[ของ]][[ตัวเลข]][[ซึ่ง]][[แสดง]][[จำนวน]] คือ ถ้าเป็นเลขตัวเดียว เรียกว่า จำนวนหน่วย เลข 2 ตัวเรียงกัน เรียกว่า จำนวนสิบ เลข 3 ตัวเรียงกัน เรียกว่า จำนวนร้อย เลข 4 ตัวเรียงกัน เรียกว่า จำนวนพัน เลข 5 ตัวเรียงกัน เรียกว่า จำนวนหมื่น เลข 6 ตัวเรียงกัน เรียกว่า จำนวนแสน เลข 7 ตัวเรียงกัน เรียกว่า จำนวนล้าน
#: {{ux|th|987 เป็นจำนวนร้อย, 9 เป็นเลขหลักร้อย หมายถึง 900, ส่วน 8 เป็นเลขหลักสิบ หมายถึง 80, และ 7 เป็นเลขหลักหน่วย หมายถึง 7}}
==== คำแปลภาษาอื่น ====
{{trans-top|หลักที่ปักไว้}}
* ไทใหญ่: {{t+|shn|လၵ်း}}
* ลาว: {{t+|lo|ຫຼັກ}}
{{trans-bottom}}
===== ลูกคำ =====
{{col4|th|กาจับหลัก|เข้าหลัก|จับหลัก|จำหลัก|ตั้งหลัก|ตั้งหลัก|ปักหลัก|เป็นหลักเป็นฐาน|เป็นหลักเป็นแหล่ง|ผมหลักแจว|ผู้หลักผู้ใหญ่|พยานหลักฐาน|แม่สื่อแม่ชัก ไม่ได้เจ้าตัว เอาวัวพันหลัก|ไม้หลักปักขี้ควาย|ไม้หลักปักเลน|ลงหลักปักฐาน|ลิงชิงหลัก|วัวพันหลัก|เสาหลัก|เสาหลักเมือง|เสียหลัก|หลักกรรเชียง|หลักกระเชียง|หลักการ|หลักกู|หลักเกณฑ์|หลักแจว|หลักชัย|หลักฐาน|หลักฐานเป็นหนังสือ|หลักตอ|หลักทรัพย์|หลักบ้านหลักเมือง|หลักประกัน|หลักพยาน|หลักลอย|หลักวิชา|หลักสูตร|หลักแหล่ง|หลักแหลม}}
=== รากศัพท์ 2 ===
{{slbor|th|sa|लक्ष}} หรือ{{slbor|th|pi|ลกฺข}}; ร่วมเชื้อสายกับ{{cog|km|លក្ខ}}
==== คำคุณศัพท์ ====
{{th-adj|-}}
# {{lb|th|โบ}} จำนวน[[แสน]]
== ภาษาคำเมือง ==
=== การออกเสียง ===
* {{IPA|nod|/lak˨˦/|a=เชียงใหม่}}
=== คำนาม ===
{{nod-noun|tl=1}}
# {{alternative form of|nod|ᩉᩖᩢᨠ}}
== ภาษาปักษ์ใต้ ==
=== คำกริยา ===
{{sou-verb}}
# [[ลัก]], [[ขโมย]]
=== อ้างอิง ===
* {{R:sou:ERIC|8}}
== ภาษาอีสาน ==
=== คำคุณศัพท์ ===
{{tts-adj}}
# [[ฉลาด]]
5826xhgossjzgqf9vtkziuy7e61xjfy
หม่อน
0
29780
5759929
5759928
2026-09-08T11:59:05Z
Octahedron80
267
/* คำนาม */
5759929
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
{{wp}}
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|tts|มอน}}, {{cog|lo|ມອນ}}, {{cog|nod|ᨾᩬᩁ}}, {{cog|khb|ᦙᦸᧃ}}, {{cog|blt|ꪣꪮꪙ}}, {{cog|shn|မွၼ်း}}, {{cog|za|monj|tr=หม้อน|t=ต้นหม่อน}}
=== การออกเสียง ===
{{th-pron|หฺม็่อน}}
=== คำนาม ===
{{th-noun}}
# [[ชื่อ]][[ไม้ต้น]][[ชนิด]] {{species|Morus alba}} L. [[ใน]][[วงศ์]] Moraceae [[ใช้]][[ใบ]][[สำหรับ]][[เลี้ยง]][[ตัว]][[ไหม]] [[ผล]][[สุก]][[กิน]][[ได้]]
== ภาษาคำเมือง ==
=== การออกเสียง ===
* {{IPA|nod|/mɔn˨˩/|a=เชียงใหม่}}
=== คำนาม ===
{{nod-noun|คน|ฅน}}
# {{alternative form of|nod|ᩉ᩠ᨾᩬ᩵ᩁ}}
#: {{syn|nod|ᩋᩩ᩠᩶ᨿᩉ᩠ᨾᩬ᩵ᩁ}}
{{topics|nod|ครอบครัว}}
kgbnvgx4tq7fkwa715t46wuujpg1m9a
5759932
5759929
2026-09-08T12:06:20Z
Octahedron80
267
/* คำนาม */
5759932
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
{{wp}}
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|tts|มอน}}, {{cog|lo|ມອນ}}, {{cog|nod|ᨾᩬᩁ}}, {{cog|khb|ᦙᦸᧃ}}, {{cog|blt|ꪣꪮꪙ}}, {{cog|shn|မွၼ်း}}, {{cog|za|monj|tr=หม้อน|t=ต้นหม่อน}}
=== การออกเสียง ===
{{th-pron|หฺม็่อน}}
=== คำนาม ===
{{th-noun}}
# [[ชื่อ]][[ไม้ต้น]][[ชนิด]] {{taxlink|Morus alba}} L. [[ใน]][[วงศ์]] Moraceae [[ใช้]][[ใบ]][[สำหรับ]][[เลี้ยง]][[ตัว]][[ไหม]] [[ผล]][[สุก]][[กิน]][[ได้]]
== ภาษาคำเมือง ==
=== การออกเสียง ===
* {{IPA|nod|/mɔn˨˩/|a=เชียงใหม่}}
=== คำนาม ===
{{nod-noun|คน|ฅน}}
# {{alternative form of|nod|ᩉ᩠ᨾᩬ᩵ᩁ}}
#: {{syn|nod|ᩋᩩ᩠᩶ᨿᩉ᩠ᨾᩬ᩵ᩁ}}
{{topics|nod|ครอบครัว}}
2xhv5z3v61tgfvdkag8wmbdqsmun60m
5759933
5759932
2026-09-08T12:06:43Z
Octahedron80
267
/* คำนาม */
5759933
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
{{wp}}
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|tts|มอน}}, {{cog|lo|ມອນ}}, {{cog|nod|ᨾᩬᩁ}}, {{cog|khb|ᦙᦸᧃ}}, {{cog|blt|ꪣꪮꪙ}}, {{cog|shn|မွၼ်း}}, {{cog|za|monj|tr=หม้อน|t=ต้นหม่อน}}
=== การออกเสียง ===
{{th-pron|หฺม็่อน}}
=== คำนาม ===
{{th-noun}}
# [[ชื่อ]][[ไม้ต้น]][[ชนิด]] {{taxlink|Morus alba|species}} L. [[ใน]][[วงศ์]] Moraceae [[ใช้]][[ใบ]][[สำหรับ]][[เลี้ยง]][[ตัว]][[ไหม]] [[ผล]][[สุก]][[กิน]][[ได้]]
== ภาษาคำเมือง ==
=== การออกเสียง ===
* {{IPA|nod|/mɔn˨˩/|a=เชียงใหม่}}
=== คำนาม ===
{{nod-noun|คน|ฅน}}
# {{alternative form of|nod|ᩉ᩠ᨾᩬ᩵ᩁ}}
#: {{syn|nod|ᩋᩩ᩠᩶ᨿᩉ᩠ᨾᩬ᩵ᩁ}}
{{topics|nod|ครอบครัว}}
g5oqfivgpb9u4lx84zpr8aqsi9pccge
5759968
5759933
2026-09-08T13:45:05Z
Octahedron80
267
/* คำนาม */
5759968
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
{{wp}}
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|tts|มอน}}, {{cog|lo|ມອນ}}, {{cog|nod|ᨾᩬᩁ}}, {{cog|khb|ᦙᦸᧃ}}, {{cog|blt|ꪣꪮꪙ}}, {{cog|shn|မွၼ်း}}, {{cog|za|monj|tr=หม้อน|t=ต้นหม่อน}}
=== การออกเสียง ===
{{th-pron|หฺม็่อน}}
=== คำนาม ===
{{th-noun}}
# [[ชื่อ]][[ไม้ต้น]][[ชนิด]] {{taxlink|Morus alba|species}} L. [[ใน]][[วงศ์]] Moraceae [[ใช้]][[ใบ]][[สำหรับ]][[เลี้ยง]][[ตัว]][[ไหม]] [[ผล]][[สุก]][[กิน]][[ได้]]
#: {{syn|th|มัลเบอร์รีขาว}}
== ภาษาคำเมือง ==
=== การออกเสียง ===
* {{IPA|nod|/mɔn˨˩/|a=เชียงใหม่}}
=== คำนาม ===
{{nod-noun|คน|ฅน}}
# {{alternative form of|nod|ᩉ᩠ᨾᩬ᩵ᩁ}}
#: {{syn|nod|ᩋᩩ᩠᩶ᨿᩉ᩠ᨾᩬ᩵ᩁ}}
{{topics|nod|ครอบครัว}}
ryscb4e821421eymjevdtzh62mctf4g
5759969
5759968
2026-09-08T13:45:34Z
Octahedron80
267
/* คำนาม */
5759969
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
{{wp}}
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|tts|มอน}}, {{cog|lo|ມອນ}}, {{cog|nod|ᨾᩬᩁ}}, {{cog|khb|ᦙᦸᧃ}}, {{cog|blt|ꪣꪮꪙ}}, {{cog|shn|မွၼ်း}}, {{cog|za|monj|tr=หม้อน|t=ต้นหม่อน}}
=== การออกเสียง ===
{{th-pron|หฺม็่อน}}
=== คำนาม ===
{{th-noun}}
# [[ชื่อ]][[ไม้ต้น]][[ชนิด]] {{taxlink|Morus alba|species}} L. [[ใน]][[วงศ์]] Moraceae [[ใช้]][[ใบ]][[สำหรับ]][[เลี้ยง]][[ตัว]][[ไหม]] [[ผล]][[สุก]][[กิน]][[ได้]]
#: {{syn|th|หม่อนขาว|มัลเบอร์รีขาว}}
== ภาษาคำเมือง ==
=== การออกเสียง ===
* {{IPA|nod|/mɔn˨˩/|a=เชียงใหม่}}
=== คำนาม ===
{{nod-noun|คน|ฅน}}
# {{alternative form of|nod|ᩉ᩠ᨾᩬ᩵ᩁ}}
#: {{syn|nod|ᩋᩩ᩠᩶ᨿᩉ᩠ᨾᩬ᩵ᩁ}}
{{topics|nod|ครอบครัว}}
95fcwi31s33bbu9s7jjjq2vgk9semjb
แม่แบบ:species
10
32450
5759934
1898676
2026-09-08T12:10:17Z
Octahedron80
267
5759934
wikitext
text/x-wiki
{{taxlink|{{{1|Dummy dummy}}}|species}}
satsgmjvrva56j0eymt0rxbszwwqoy9
5759935
5759934
2026-09-08T12:11:06Z
Octahedron80
267
5759935
wikitext
text/x-wiki
{{taxlink|{{{1|Homo sapiens}}}|species}}
d3d24y2mhqspfywkacgqei0scojjmpx
พิเศษ
0
33283
5759989
4757711
2026-09-09T06:34:00Z
Octahedron80
267
/* คำคุณศัพท์ */
5759989
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{bor+|th|sa|विशेष}}; เทียบ{{cog|pi|วิเสส}}; {{doublet|th|วิเศษ}}
=== การออกเสียง ===
{{th-pron|พิ-เสด}}
=== คำคุณศัพท์ ===
{{th-adj}}
# [[นอกเหนือ]]หรือ[[แตกต่าง]]ไปจาก[[ปรกติ]][[ธรรมดา]] (มักใช้ในทาง[[ดี]])
#: {{ux|th|ในกรณีพิเศษ}}
#: {{ux|th|เขาเป็นคนมีความจำเลิศเป็นพิเศษ}}
# ไม่ใช่ปรกติธรรมดาหรือ[[ประจำ]]
#: {{ux|th|อาจารย์พิเศษ}}
# ที่[[แยก]]เป็นส่วนหนึ่ง[[ต่างหาก]]
#: {{ux|th|คนไข้พิเศษ}}
#: {{ux|th|นักศึกษาพิเศษ}}
# [[ลำดับ]][[ชั้น]]หรือ[[ขั้น]]ของ[[ยศ]]เป็นต้นที่สูงกว่า[[เอก]]
#: {{ux|th|ข้าราชการชั้นพิเศษ}}
#: {{ux|th|พระครูสัญญาบัตรชั้นพิเศษ}}
==== ลูกคำ ====
{{col|th|กรมการพิเศษ|คุณพิเศษ|งานพิเศษ|ชำนัญพิเศษ|ทางพิเศษ|ทางหลวงพิเศษ|บุริมสิทธิพิเศษ|มติพิเศษ|หน้าทับพิเศษ|ความสามารถพิเศษ|เรียนพิเศษ|สอนพิเศษ|สิทธิพิเศษ|ประโยชน์พิเศษ|ผลประโยชน์พิเศษ|อำนาจพิเศษ|เขตพิเศษ|เขตปกครองพิเศษ}}
hzz84epa2054u87l73icszmj4bxlljp
5759990
5759989
2026-09-09T06:34:55Z
Octahedron80
267
/* ลูกคำ */
5759990
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{bor+|th|sa|विशेष}}; เทียบ{{cog|pi|วิเสส}}; {{doublet|th|วิเศษ}}
=== การออกเสียง ===
{{th-pron|พิ-เสด}}
=== คำคุณศัพท์ ===
{{th-adj}}
# [[นอกเหนือ]]หรือ[[แตกต่าง]]ไปจาก[[ปรกติ]][[ธรรมดา]] (มักใช้ในทาง[[ดี]])
#: {{ux|th|ในกรณีพิเศษ}}
#: {{ux|th|เขาเป็นคนมีความจำเลิศเป็นพิเศษ}}
# ไม่ใช่ปรกติธรรมดาหรือ[[ประจำ]]
#: {{ux|th|อาจารย์พิเศษ}}
# ที่[[แยก]]เป็นส่วนหนึ่ง[[ต่างหาก]]
#: {{ux|th|คนไข้พิเศษ}}
#: {{ux|th|นักศึกษาพิเศษ}}
# [[ลำดับ]][[ชั้น]]หรือ[[ขั้น]]ของ[[ยศ]]เป็นต้นที่สูงกว่า[[เอก]]
#: {{ux|th|ข้าราชการชั้นพิเศษ}}
#: {{ux|th|พระครูสัญญาบัตรชั้นพิเศษ}}
==== ลูกคำ ====
{{col|th|กรมการพิเศษ|คุณพิเศษ|งานพิเศษ|ชำนัญพิเศษ|ทางพิเศษ|ทางหลวงพิเศษ|บุริมสิทธิพิเศษ|มติพิเศษ|หน้าทับพิเศษ|ความสามารถพิเศษ|เรียนพิเศษ|สอนพิเศษ|สิทธิพิเศษ|ประโยชน์พิเศษ|ผลประโยชน์พิเศษ|อำนาจพิเศษ|เขตพิเศษ|เขตปกครองพิเศษ|เงินพิเศษ|เงินเพิ่มพิเศษ|ลักษณะพิเศษ}}
elyuh9os0nu21z8gf6kdimf13rqx7wy
5759991
5759990
2026-09-09T06:36:37Z
Octahedron80
267
/* ลูกคำ */
5759991
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{bor+|th|sa|विशेष}}; เทียบ{{cog|pi|วิเสส}}; {{doublet|th|วิเศษ}}
=== การออกเสียง ===
{{th-pron|พิ-เสด}}
=== คำคุณศัพท์ ===
{{th-adj}}
# [[นอกเหนือ]]หรือ[[แตกต่าง]]ไปจาก[[ปรกติ]][[ธรรมดา]] (มักใช้ในทาง[[ดี]])
#: {{ux|th|ในกรณีพิเศษ}}
#: {{ux|th|เขาเป็นคนมีความจำเลิศเป็นพิเศษ}}
# ไม่ใช่ปรกติธรรมดาหรือ[[ประจำ]]
#: {{ux|th|อาจารย์พิเศษ}}
# ที่[[แยก]]เป็นส่วนหนึ่ง[[ต่างหาก]]
#: {{ux|th|คนไข้พิเศษ}}
#: {{ux|th|นักศึกษาพิเศษ}}
# [[ลำดับ]][[ชั้น]]หรือ[[ขั้น]]ของ[[ยศ]]เป็นต้นที่สูงกว่า[[เอก]]
#: {{ux|th|ข้าราชการชั้นพิเศษ}}
#: {{ux|th|พระครูสัญญาบัตรชั้นพิเศษ}}
==== ลูกคำ ====
{{col|th|กรมการพิเศษ|คุณพิเศษ|งานพิเศษ|ชำนัญพิเศษ|ทางพิเศษ|ทางหลวงพิเศษ|บุริมสิทธิพิเศษ|มติพิเศษ|หน้าทับพิเศษ|ความสามารถพิเศษ|เรียนพิเศษ|สอนพิเศษ|สิทธิพิเศษ|ประโยชน์พิเศษ|ผลประโยชน์พิเศษ|อำนาจพิเศษ|เขตพิเศษ|เขตปกครองพิเศษ|เงินพิเศษ|เงินเพิ่มพิเศษ|ลักษณะพิเศษ|เด็กพิเศษ}}
70lkehc4s539co32oxsn2tbv9wj8k97
5759993
5759991
2026-09-09T06:41:31Z
Octahedron80
267
/* รากศัพท์ */
5759993
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{bor+|th|sa|विशेष}}; เทียบ{{cog|pi|วิเสส}}; {{doublet|th|วิเศษ}}
{{ศบญ|special|q1=ทั่วไป|adventicious|q2=พฤกษศาสตร์, ป่าไม้|adventitious|super}}
=== การออกเสียง ===
{{th-pron|พิ-เสด}}
=== คำคุณศัพท์ ===
{{th-adj}}
# [[นอกเหนือ]]หรือ[[แตกต่าง]]ไปจาก[[ปรกติ]][[ธรรมดา]] (มักใช้ในทาง[[ดี]])
#: {{ux|th|ในกรณีพิเศษ}}
#: {{ux|th|เขาเป็นคนมีความจำเลิศเป็นพิเศษ}}
# ไม่ใช่ปรกติธรรมดาหรือ[[ประจำ]]
#: {{ux|th|อาจารย์พิเศษ}}
# ที่[[แยก]]เป็นส่วนหนึ่ง[[ต่างหาก]]
#: {{ux|th|คนไข้พิเศษ}}
#: {{ux|th|นักศึกษาพิเศษ}}
# [[ลำดับ]][[ชั้น]]หรือ[[ขั้น]]ของ[[ยศ]]เป็นต้นที่สูงกว่า[[เอก]]
#: {{ux|th|ข้าราชการชั้นพิเศษ}}
#: {{ux|th|พระครูสัญญาบัตรชั้นพิเศษ}}
==== ลูกคำ ====
{{col|th|กรมการพิเศษ|คุณพิเศษ|งานพิเศษ|ชำนัญพิเศษ|ทางพิเศษ|ทางหลวงพิเศษ|บุริมสิทธิพิเศษ|มติพิเศษ|หน้าทับพิเศษ|ความสามารถพิเศษ|เรียนพิเศษ|สอนพิเศษ|สิทธิพิเศษ|ประโยชน์พิเศษ|ผลประโยชน์พิเศษ|อำนาจพิเศษ|เขตพิเศษ|เขตปกครองพิเศษ|เงินพิเศษ|เงินเพิ่มพิเศษ|ลักษณะพิเศษ|เด็กพิเศษ}}
i152r9srt8ihlyl1m2dxm5got0l8may
5759994
5759993
2026-09-09T06:41:46Z
Octahedron80
267
/* รากศัพท์ */
5759994
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{bor+|th|sa|विशेष}}; เทียบ{{cog|pi|วิเสส}}; {{doublet|th|วิเศษ}}
{{ศบญ|special|q1=ทั่วไป|adventicious|q4=พฤกษศาสตร์, ป่าไม้|adventitious|super}}
=== การออกเสียง ===
{{th-pron|พิ-เสด}}
=== คำคุณศัพท์ ===
{{th-adj}}
# [[นอกเหนือ]]หรือ[[แตกต่าง]]ไปจาก[[ปรกติ]][[ธรรมดา]] (มักใช้ในทาง[[ดี]])
#: {{ux|th|ในกรณีพิเศษ}}
#: {{ux|th|เขาเป็นคนมีความจำเลิศเป็นพิเศษ}}
# ไม่ใช่ปรกติธรรมดาหรือ[[ประจำ]]
#: {{ux|th|อาจารย์พิเศษ}}
# ที่[[แยก]]เป็นส่วนหนึ่ง[[ต่างหาก]]
#: {{ux|th|คนไข้พิเศษ}}
#: {{ux|th|นักศึกษาพิเศษ}}
# [[ลำดับ]][[ชั้น]]หรือ[[ขั้น]]ของ[[ยศ]]เป็นต้นที่สูงกว่า[[เอก]]
#: {{ux|th|ข้าราชการชั้นพิเศษ}}
#: {{ux|th|พระครูสัญญาบัตรชั้นพิเศษ}}
==== ลูกคำ ====
{{col|th|กรมการพิเศษ|คุณพิเศษ|งานพิเศษ|ชำนัญพิเศษ|ทางพิเศษ|ทางหลวงพิเศษ|บุริมสิทธิพิเศษ|มติพิเศษ|หน้าทับพิเศษ|ความสามารถพิเศษ|เรียนพิเศษ|สอนพิเศษ|สิทธิพิเศษ|ประโยชน์พิเศษ|ผลประโยชน์พิเศษ|อำนาจพิเศษ|เขตพิเศษ|เขตปกครองพิเศษ|เงินพิเศษ|เงินเพิ่มพิเศษ|ลักษณะพิเศษ|เด็กพิเศษ}}
t0kbrih0k3fmy3wky1izju257yi3ifp
5759995
5759994
2026-09-09T06:41:57Z
Octahedron80
267
/* รากศัพท์ */
5759995
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{bor+|th|sa|विशेष}}; เทียบ{{cog|pi|วิเสส}}; {{doublet|th|วิเศษ}}
{{ศบญ|special|q1=ทั่วไป|adventicious|adventitious|super|q4=พฤกษศาสตร์, ป่าไม้}}
=== การออกเสียง ===
{{th-pron|พิ-เสด}}
=== คำคุณศัพท์ ===
{{th-adj}}
# [[นอกเหนือ]]หรือ[[แตกต่าง]]ไปจาก[[ปรกติ]][[ธรรมดา]] (มักใช้ในทาง[[ดี]])
#: {{ux|th|ในกรณีพิเศษ}}
#: {{ux|th|เขาเป็นคนมีความจำเลิศเป็นพิเศษ}}
# ไม่ใช่ปรกติธรรมดาหรือ[[ประจำ]]
#: {{ux|th|อาจารย์พิเศษ}}
# ที่[[แยก]]เป็นส่วนหนึ่ง[[ต่างหาก]]
#: {{ux|th|คนไข้พิเศษ}}
#: {{ux|th|นักศึกษาพิเศษ}}
# [[ลำดับ]][[ชั้น]]หรือ[[ขั้น]]ของ[[ยศ]]เป็นต้นที่สูงกว่า[[เอก]]
#: {{ux|th|ข้าราชการชั้นพิเศษ}}
#: {{ux|th|พระครูสัญญาบัตรชั้นพิเศษ}}
==== ลูกคำ ====
{{col|th|กรมการพิเศษ|คุณพิเศษ|งานพิเศษ|ชำนัญพิเศษ|ทางพิเศษ|ทางหลวงพิเศษ|บุริมสิทธิพิเศษ|มติพิเศษ|หน้าทับพิเศษ|ความสามารถพิเศษ|เรียนพิเศษ|สอนพิเศษ|สิทธิพิเศษ|ประโยชน์พิเศษ|ผลประโยชน์พิเศษ|อำนาจพิเศษ|เขตพิเศษ|เขตปกครองพิเศษ|เงินพิเศษ|เงินเพิ่มพิเศษ|ลักษณะพิเศษ|เด็กพิเศษ}}
095waeyogaunhuatumam7pw74yp9f16
แปล
0
33862
5759984
5733671
2026-09-09T05:54:55Z
Octahedron80
267
/* รากศัพท์ */
5759984
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|sou|แปล๋}}, {{cog|lo|ແປ}}, {{cog|nod|ᨸᩖᩯ}}, {{cog|khb|ᦔᦶᦜ,ᦶᦔ}}; เทียบ{{cog|km|ប្រែ}}
{{ศบญ|translate}}
=== การออกเสียง ===
{{th-pron|แปฺล}}
=== คำกริยา ===
{{th-verb}}
# [[ถ่าย]][[ความหมาย]][[จาก]][[ภาษา]][[หนึ่ง]][[มา]][[เป็น]][[อีก]]ภาษาหนึ่ง
# [[ทำ]][[ให้]][[เข้าใจ]]ความหมาย
==== คำแปลภาษาอื่น ====
{{trans-top|ถ่ายความหมายจากภาษาหนึ่งมาเป็นอีกภาษาหนึ่ง}}
* เขมร: {{t+|km|បកប្រែ}}, {{t+|km|ប្រែ}}
* คำเมือง: {{t+|nod|ᨸᩖᩯ}}
* จีน:
*: จีนกลาง: {{t+|cmn|翻譯}}, {{t+|cmn|翻译|tr=fānyì}}
* ไทลื้อ: {{t+|khb|ᦔᦶᦜ}}, {{t+|khb|ᦶᦔ}}, {{t+|khb|ᦔᦊᦱᧃᧈ}}, {{t+|khb|ᦝᦱᧃᧈ}}
* ไทใหญ่: {{t+|shn|ပိၼ်ႇ}}
* พม่า: {{t+|my|ပြန်}}, {{t+|my|ယောဇနာ}}
* ลาว: {{t+|lo|ແປ}}
* อังกฤษ: {{t+|en|translate|tr=แทรนสเลต}}
* ฮินดี: {{t+|hi|अनुवाद करना}}
{{trans-bottom}}
dhvpnmubiiqgyn314a2sjmcynwehr70
5759985
5759984
2026-09-09T05:56:50Z
Octahedron80
267
/* คำแปลภาษาอื่น */
5759985
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|sou|แปล๋}}, {{cog|lo|ແປ}}, {{cog|nod|ᨸᩖᩯ}}, {{cog|khb|ᦔᦶᦜ,ᦶᦔ}}; เทียบ{{cog|km|ប្រែ}}
{{ศบญ|translate}}
=== การออกเสียง ===
{{th-pron|แปฺล}}
=== คำกริยา ===
{{th-verb}}
# [[ถ่าย]][[ความหมาย]][[จาก]][[ภาษา]][[หนึ่ง]][[มา]][[เป็น]][[อีก]]ภาษาหนึ่ง
# [[ทำ]][[ให้]][[เข้าใจ]]ความหมาย
==== ลูกคำ ====
{{col|th|แปลโดยอรรถ|แปลตามตัว|แปลตามเนื้อความ|แปลตามพยัญชนะ|แปลตามอรรถ|แปลยกศัพท์|แปลร้อย|แปลเอาความ|คำแปล|นักแปล|ผู้แปล|แปลโปรแกรม|แปลภาษาแอสเซมบลี}}
==== คำแปลภาษาอื่น ====
{{trans-top|ถ่ายความหมายจากภาษาหนึ่งมาเป็นอีกภาษาหนึ่ง}}
* เขมร: {{t+|km|បកប្រែ}}, {{t+|km|ប្រែ}}
* คำเมือง: {{t+|nod|ᨸᩖᩯ}}
* จีน:
*: จีนกลาง: {{t+|cmn|翻譯}}, {{t+|cmn|翻译|tr=fānyì}}
* ไทลื้อ: {{t+|khb|ᦔᦶᦜ}}, {{t+|khb|ᦶᦔ}}, {{t+|khb|ᦔᦊᦱᧃᧈ}}, {{t+|khb|ᦝᦱᧃᧈ}}
* ไทใหญ่: {{t+|shn|ပိၼ်ႇ}}
* พม่า: {{t+|my|ပြန်}}, {{t+|my|ယောဇနာ}}
* ลาว: {{t+|lo|ແປ}}
* อังกฤษ: {{t+|en|translate|tr=แทรนสเลต}}
* ฮินดี: {{t+|hi|अनुवाद करना}}
{{trans-bottom}}
kfwtn5pkback1e0mrmnzkolvyy7av1v
5759986
5759985
2026-09-09T05:59:31Z
Octahedron80
267
/* ลูกคำ */
5759986
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|sou|แปล๋}}, {{cog|lo|ແປ}}, {{cog|nod|ᨸᩖᩯ}}, {{cog|khb|ᦔᦶᦜ,ᦶᦔ}}; เทียบ{{cog|km|ប្រែ}}
{{ศบญ|translate}}
=== การออกเสียง ===
{{th-pron|แปฺล}}
=== คำกริยา ===
{{th-verb}}
# [[ถ่าย]][[ความหมาย]][[จาก]][[ภาษา]][[หนึ่ง]][[มา]][[เป็น]][[อีก]]ภาษาหนึ่ง
# [[ทำ]][[ให้]][[เข้าใจ]]ความหมาย
==== ลูกคำ ====
{{col|th|แปลโดยอรรถ|แปลตามตัว|แปลตามเนื้อความ|แปลตามพยัญชนะ|แปลตามอรรถ|แปลยกศัพท์|แปลร้อย|แปลเอาความ|คำแปล|นักแปล|ผู้แปล|แปลโปรแกรม|แปลภาษาแอสเซมบลี|แปลไทยเป็นไทย}}
==== คำแปลภาษาอื่น ====
{{trans-top|ถ่ายความหมายจากภาษาหนึ่งมาเป็นอีกภาษาหนึ่ง}}
* เขมร: {{t+|km|បកប្រែ}}, {{t+|km|ប្រែ}}
* คำเมือง: {{t+|nod|ᨸᩖᩯ}}
* จีน:
*: จีนกลาง: {{t+|cmn|翻譯}}, {{t+|cmn|翻译|tr=fānyì}}
* ไทลื้อ: {{t+|khb|ᦔᦶᦜ}}, {{t+|khb|ᦶᦔ}}, {{t+|khb|ᦔᦊᦱᧃᧈ}}, {{t+|khb|ᦝᦱᧃᧈ}}
* ไทใหญ่: {{t+|shn|ပိၼ်ႇ}}
* พม่า: {{t+|my|ပြန်}}, {{t+|my|ယောဇနာ}}
* ลาว: {{t+|lo|ແປ}}
* อังกฤษ: {{t+|en|translate|tr=แทรนสเลต}}
* ฮินดี: {{t+|hi|अनुवाद करना}}
{{trans-bottom}}
o6btazgzabmce46zrlfougf99hnmpfj
5759987
5759986
2026-09-09T06:00:33Z
Octahedron80
267
/* ลูกคำ */
5759987
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|sou|แปล๋}}, {{cog|lo|ແປ}}, {{cog|nod|ᨸᩖᩯ}}, {{cog|khb|ᦔᦶᦜ,ᦶᦔ}}; เทียบ{{cog|km|ប្រែ}}
{{ศบญ|translate}}
=== การออกเสียง ===
{{th-pron|แปฺล}}
=== คำกริยา ===
{{th-verb}}
# [[ถ่าย]][[ความหมาย]][[จาก]][[ภาษา]][[หนึ่ง]][[มา]][[เป็น]][[อีก]]ภาษาหนึ่ง
# [[ทำ]][[ให้]][[เข้าใจ]]ความหมาย
==== ลูกคำ ====
{{col|th|แปลโดยอรรถ|แปลตามตัว|แปลตามตัวอักษร|แปลตามเนื้อความ|แปลตามพยัญชนะ|แปลตามอรรถ|แปลยกศัพท์|แปลร้อย|แปลเอาความ|คำแปล|นักแปล|ผู้แปล|แปลโปรแกรม|แปลภาษาแอสเซมบลี|แปลไทยเป็นไทย}}
==== คำแปลภาษาอื่น ====
{{trans-top|ถ่ายความหมายจากภาษาหนึ่งมาเป็นอีกภาษาหนึ่ง}}
* เขมร: {{t+|km|បកប្រែ}}, {{t+|km|ប្រែ}}
* คำเมือง: {{t+|nod|ᨸᩖᩯ}}
* จีน:
*: จีนกลาง: {{t+|cmn|翻譯}}, {{t+|cmn|翻译|tr=fānyì}}
* ไทลื้อ: {{t+|khb|ᦔᦶᦜ}}, {{t+|khb|ᦶᦔ}}, {{t+|khb|ᦔᦊᦱᧃᧈ}}, {{t+|khb|ᦝᦱᧃᧈ}}
* ไทใหญ่: {{t+|shn|ပိၼ်ႇ}}
* พม่า: {{t+|my|ပြန်}}, {{t+|my|ယောဇနာ}}
* ลาว: {{t+|lo|ແປ}}
* อังกฤษ: {{t+|en|translate|tr=แทรนสเลต}}
* ฮินดี: {{t+|hi|अनुवाद करना}}
{{trans-bottom}}
b343q3fnprcix3ho1lcymr8yt99ii96
5759988
5759987
2026-09-09T06:02:59Z
Octahedron80
267
/* ลูกคำ */
5759988
wikitext
text/x-wiki
{{also/auto}}
== ภาษาไทย ==
=== รากศัพท์ ===
ร่วมเชื้อสายกับ{{cog|sou|แปล๋}}, {{cog|lo|ແປ}}, {{cog|nod|ᨸᩖᩯ}}, {{cog|khb|ᦔᦶᦜ,ᦶᦔ}}; เทียบ{{cog|km|ប្រែ}}
{{ศบญ|translate}}
=== การออกเสียง ===
{{th-pron|แปฺล}}
=== คำกริยา ===
{{th-verb}}
# [[ถ่าย]][[ความหมาย]][[จาก]][[ภาษา]][[หนึ่ง]][[มา]][[เป็น]][[อีก]]ภาษาหนึ่ง
# [[ทำ]][[ให้]][[เข้าใจ]]ความหมาย
==== ลูกคำ ====
{{col|th|แปลโดยอรรถ|แปลตามตัว|แปลตามตัวอักษร|แปลตามเนื้อความ|แปลตามพยัญชนะ|แปลตามอรรถ|แปลยกศัพท์|แปลร้อย|แปลเอาความ|คำแปล|นักแปล|ผู้แปล|งานแปล|แปลโปรแกรม|แปลภาษาแอสเซมบลี|แปลไทยเป็นไทย}}
==== คำแปลภาษาอื่น ====
{{trans-top|ถ่ายความหมายจากภาษาหนึ่งมาเป็นอีกภาษาหนึ่ง}}
* เขมร: {{t+|km|បកប្រែ}}, {{t+|km|ប្រែ}}
* คำเมือง: {{t+|nod|ᨸᩖᩯ}}
* จีน:
*: จีนกลาง: {{t+|cmn|翻譯}}, {{t+|cmn|翻译|tr=fānyì}}
* ไทลื้อ: {{t+|khb|ᦔᦶᦜ}}, {{t+|khb|ᦶᦔ}}, {{t+|khb|ᦔᦊᦱᧃᧈ}}, {{t+|khb|ᦝᦱᧃᧈ}}
* ไทใหญ่: {{t+|shn|ပိၼ်ႇ}}
* พม่า: {{t+|my|ပြန်}}, {{t+|my|ယောဇနာ}}
* ลาว: {{t+|lo|ແປ}}
* อังกฤษ: {{t+|en|translate|tr=แทรนสเลต}}
* ฮินดี: {{t+|hi|अनुवाद करना}}
{{trans-bottom}}
o48vmxc5vm6v6np6y7e42tlpc4z0c42
มอดูล:etymology languages/data
828
37802
5759998
5753870
2026-09-09T09:47:42Z
Octahedron80
267
5759998
Scribunto
text/plain
local m_langdata = require("Module:languages/data")
-- Loaded on demand, as it may not be needed (depending on the data).
local function u(...)
u = require("Module:string utilities").char
return u(...)
end
local c = m_langdata.chars
local p = m_langdata.puaChars
local s = m_langdata.shared
local m = {}
----------------------------------------------------------------------------------------------------------------------
-- Afroasiatic varieties --
----------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------
-- Berber varieties --
--------------------------------------------------------------------------------------
m["shi-med"] = {
"Medieval Tashelhit",
34152,
"shi",
}
-- Tuareg lects
m["thv"] = {
"Tamahaq",
56703,
"tmh",
}
m["ttq"] = {
"Tawellemmet",
56390,
"tmh",
}
m["taq"] = {
"Tamasheq",
4670066,
"tmh",
}
m["thz"] = {
"Tayert",
56388,
"tmh",
}
m["thv-ght"] = {
"Ghat",
47012900,
"thv",
}
--------------------------------------------------------------------------------------
-- Cushitic varieties --
--------------------------------------------------------------------------------------
-- Oromo varieties
m["hae"] = {
"Harar Oromo",
5330355,
"om",
aliases = {"Eastern Oromo"},
}
m["gax"] = {
"Borana",
2910610,
"om",
aliases = {"Southern Oromo"},
}
m["orc"] = {
"Orma",
2919128,
"om",
}
m["ssn"] = {
"Waata",
3501553,
"om",
}
--------------------------------------------------------------------------------------
-- Egyptian varieties --
--------------------------------------------------------------------------------------
-----------------------------------------------------
-- Ancient Egyptian varieties --
-----------------------------------------------------
m["egy-old"] = {
"อียิปต์เก่า",
447117,
"egy",
aliases = {"Old Egyptian"},
}
m["egy-mid"] = {
"อียิปต์กลาง",
657330,
"egy",
aliases = {"อียิปต์คลาสสิก","Middle Egyptian", "Classical Egyptian"},
}
m["egy-nmi"] = {
"อียิปต์กลางใหม่",
123735278,
"egy",
aliases = {"Neo-Middle Egyptian", "Égyptien de tradition", "Traditional Egyptian"},
}
m["egy-lat"] = {
"อียิปต์ช่วงปลาย",
1852329,
"egy",
aliases = {"Late Egyptian"},
}
-----------------------------------------------------
-- Coptic varieties --
-----------------------------------------------------
m["cop-akh"] = {
"Akhmimic Coptic",
125176464,
"cop",
aliases = {"Akhmimic"},
}
m["cop-boh"] = {
"Bohairic Coptic",
890733,
"cop",
aliases = {"Bohairic", "Memphitic Coptic", "Memphitic"},
}
m["cop-ggg"] = {
"Coptic Dialect G",
nil,
"cop",
aliases = {"Dialect G", "Mansuric Coptic", "Mansuric"},
}
m["cop-jjj"] = {
"Coptic Dialect J",
nil,
"cop",
}
m["cop-kkk"] = {
"Coptic Dialect K",
nil,
"cop",
}
m["cop-ppp"] = {
"Coptic Dialect P",
nil,
"cop",
aliases = {"Proto-Theban Coptic", "Palaeo-Theban Coptic"},
}
m["cop-fay"] = {
"Fayyumic Coptic",
1399115,
"cop",
aliases = {"Fayyumic", "Faiyumic Coptic", "Faiyumic", "Fayumic Coptic", "Fayumic",
"Bashmuric Coptic", "Bashmuric"},
}
m["cop-her"] = {
"Hermopolitan Coptic",
nil,
"cop",
aliases = {"Hermopolitan", "Coptic Dialect H", "Ashmuninic", "Ashmuninic Coptic"},
}
m["cop-lyc"] = {
"Lycopolitan Coptic",
nil,
"cop",
aliases = {
"Lycopolitan",
"Assiutic Coptic", "Asyutic Coptic", "Assiutic", "Asyutic",
"Lyco-Diospolitan Coptic", "Lyco-Diospolitan",
"Subakhmimic Coptic", "Subakhmimic"
},
}
m["cop-old"] = {
"Old Coptic",
115518040,
"cop",
}
m["cop-oxy"] = {
"Oxyrhynchite Coptic",
nil,
"cop",
aliases = {"Oxyrhynchite", "Mesokemic Coptic", "Mesokemic", "Middle Egyptian Coptic"},
}
m["cop-ply"] = {
"Proto-Lycopolitan Coptic",
nil,
"cop",
aliases = {"Coptic Dialect i", "Proto-Lyco-Diospolitan Coptic"},
}
m["cop-sah"] = {
"Sahidic Coptic",
2645851,
"cop",
aliases = {"Sahidic", "Saidic Coptic", "Saidic", "Thebaic Coptic", "Thebaic"},
}
--------------------------------------------------------------------------------------
-- Semitic varieties --
--------------------------------------------------------------------------------------
-----------------------------------------------------
-- Akkadian varieties --
-----------------------------------------------------
m["akk-old"] = {
"แอกแคดเก่า",
nil,
"akk",
aliases = {"Old Akkadian"},
}
m["akk-obb"] = {
"บาบิโลเนียเก่า",
nil,
"akk",
aliases = {"Old Babylonian"},
}
m["akk-oas"] = {
"อัสซีเรียเก่า",
nil,
"akk",
aliases = {"Old Assyrian"},
}
m["akk-mbb"] = {
"บาบิโลเนียกลาง",
nil,
"akk",
aliases = {"Middle Babylonian"},
}
m["akk-mas"] = {
"อัสซีเรียกลาง",
nil,
"akk",
aliases = {"Middle Assyrian"},
}
m["akk-nbb"] = {
"บาบิโลเนียใหม่",
nil,
"akk",
aliases = {"Neo-Babylonian"},
}
m["akk-nas"] = {
"อัสซีเรียใหม่",
nil,
"akk",
aliases = {"Neo-Assyrian"},
}
m["akk-lbb"] = {
"บาบิโลเนียช่วงปลาย",
nil,
"akk",
aliases = {"Late Babylonian"},
}
m["akk-stb"] = {
"บาบิโลเนียมาตรฐาน",
nil,
"akk",
aliases = {"Standard Babylonian"},
}
-----------------------------------------------------
-- Arabic varieties --
-----------------------------------------------------
m["jrb"] = {
"Judeo-Arabic",
37733,
"ar",
pseudo_families = "qfa-jew",
}
m["apc-leb"] = {
"Lebanese North Levantine Arabic",
1516642,
"apc",
aliases = {"Lebanese Arabic"},
}
m["apc-sle"] = {
"South Lebanese North Levantine Arabic",
14206590,
"apc",
aliases = {"South Lebanese Arabic"},
}
m["apc-nle"] = {
"North Lebanese North Levantine Arabic",
nil,
"apc",
aliases = {"North Lebanese Arabic"},
}
m["apc-syr"] = {
"Syrian North Levantine Arabic",
2143071,
"apc",
aliases = {"Syrian Arabic"},
}
m["apc-ale"] = {
"Aleppine North Levantine Arabic",
7056921,
"apc-syr",
aliases = {"Aleppo Arabic", "Aleppine Arabic"},
}
m["apc-dam"] = {
"Damascene North Levantine Arabic",
12237466,
"apc-syr",
aliases = {"Damascus Arabic", "Damascene Arabic"},
}
m["acm-khu"] = {
"Khuzestani Arabic",
1040944,
"acm",
}
-----------------------------------------------------
-- Aramaic varieties --
-----------------------------------------------------
m["arc-bib"] = {
"อารามายาไบเบิล",
843235,
"arc",
family = "sem-are",
aliases = {"Biblical Aramaic"},
}
m["arc-cpa"] = {
"อารามายาแบบคริสต์ปาเลสไตน์",
60790119,
"arc",
family = "sem-arw",
aliases = {"Christian Palestinian Aramaic", "Melkite Aramaic", "Palestinian Syriac", "Syropalestinian Aramaic"},
}
m["arc-imp"] = {
"อารามายาจักรวรรดิ",
7079491,
"arc",
aliases = {"อารามายาทางการ", "Imperial Aramaic", "Official Aramaic"},
}
m["arc-hat"] = {
"อารามายาแบบฮัตรา",
3832926,
"arc",
family = "sem-are",
aliases = {"อารามายาแบบฮาตรา", "Hatran Aramaic"},
}
m["arc-jla"] = {
"Jewish Literary Aramaic",
105952842,
"arc",
pseudo_families = "qfa-jew",
}
m["arc-nab"] = {
"อารามายาแบบแนบาเทีย",
36178,
"arc",
aliases = {"Nabataean Aramaic"},
}
m["arc-old"] = {
"อารามายาเก่า",
3398392,
"arc",
aliases = {"Old Aramaic"},
}
m["arc-pal"] = {
"อารามายาแบบแพลไมรา",
1510113,
"arc",
family = "sem-arw",
aliases = {"Palmyrene Aramaic"},
}
m["tmr"] = {
"อารามายาแบบยิวบาบิโลเนีย",
33407,
"arc",
family = "sem-ase",
aliases = {"Jewish Babylonian Aramaic"},
pseudo_families = "qfa-jew",
}
m["jpa"] = {
"อารามายาแบบยิวปาเลสไตน์",
948909,
"arc",
family = "sem-arw",
aliases = {"Jewish Palestinian Aramaic", "Galilean Aramaic"},
pseudo_families = "qfa-jew",
}
-----------------------------------------------------
-- Hebrew varieties --
-----------------------------------------------------
m["hbo"] = {
"ฮีบรูไบเบิล",
1982248,
"he",
aliases = {"ฮีบรูคลาสสิก", "Biblical Hebrew", "Classical Hebrew"},
}
m["he-mis"] = {
"Mishnaic Hebrew",
1649362,
"he",
ancestors = "hbo",
}
m["he-med"] = {
"ฮีบรูสมัยกลาง",
2712572,
"he",
ancestors = "he-mis",
aliases = {"Medieval Hebrew"},
}
m["he-IL"] = {
"ฮีบรูแบบอิสราเอล",
8141,
"he",
aliases = {"Israeli Hebrew"},
}
----------------------------------------------------------------------------------------------------------------------
-- Ainu varieties --
----------------------------------------------------------------------------------------------------------------------
m["ain-hok"] = {
"ไอนุแบบฮกไกโด",
20968488,
"ain",
aliases = {"Hokkaido Ainu", "Hokkaidō Ainu"},
}
m["ain-kur"] = {
"ไอนุแบบคูริล",
20967012,
"ain",
aliases = {"Kuril Ainu"},
}
m["ain-sak"] = {
"ไอนุแบบซาฮาลิน",
20747371,
"ain",
aliases = {"Sakhalin Ainu"},
}
----------------------------------------------------------------------------------------------------------------------
-- American indigenous varieties --
----------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------
-- Inuit varieties --
-----------------------------------------------------
m["esi"] = {
"North Alaskan Inupiatun",
nil,
"ik"
}
m["esk"] = {
"Northwest Alaskan Inupiatun",
25559714,
"ik"
}
-----------------------------------------------------
-- Iroquoian varieties --
-----------------------------------------------------
m["iro-ohu"] = {
"Old Wendat",
nil,
"wdt",
}
m["iro-omo"] = {
"Old Mohawk",
nil,
"moh",
}
m["iro-oon"] = {
"Old Onondaga",
nil,
"ono",
}
-----------------------------------------------------
-- Tupi-Guarani varieties --
-----------------------------------------------------
-- Old Tupi varieties
m["tpw-lga"] = {
"Língua Geral Amazônica",
18275323,
"tpw",
aliases = {"Língua Geral"},
}
m["tpw-lgp"] = {
"Língua Geral Paulista",
2669239,
"tpw",
}
----------------------------------------------------------------------------------------------------------------------
-- Austroasiatic varieties --
----------------------------------------------------------------------------------------------------------------------
-- Khmer varieties
m["okz-ang"] = {
"เขมรเก่าสมัยอังกอร์", -- ถ้าใช้ พระนคร จะสับสนกับของไทย
nil,
"okz",
aliases = {"Angkorian Old Khmer"},
wikipedia_article = "Khmer language#Historical periods",
}
m["okz-pre"] = {
"เขมรเก่าสมัยก่อนอังกอร์",
nil,
"okz",
aliases = {"Pre-Angkorian Old Khmer"},
wikipedia_article = "Khmer language#Historical periods",
}
-- Central Nicobarese varieties
m["ncb-cam"] = {
"Camorta",
5026908,
"ncb",
aliases = {"Kamorta"},
}
m["ncb-kat"] = {
"Katchal",
17064263,
"ncb",
aliases = {"Tehnu"},
}
m["ncb-nan"] = {
"Nancowry",
6962504,
"ncb",
aliases = {"Nankwari"},
}
----------------------------------------------------------------------------------------------------------------------
-- Austronesian varieties --
----------------------------------------------------------------------------------------------------------------------
-- Malay and related varieties
m["ms-old"] = { -- this has the ISO code 'omy'
"มลายูเก่า",
nil,
"ms",
aliases = {"Old Malay"},
}
m["ms-cla"] = {
"มลายูคลาสสิก",
nil,
"ms",
ancestors = "ms-old",
aliases = {"Classical Malay"},
}
m["pse-bsm"] = {
"Besemah",
nil,
"pse",
}
m["bew-kot"] = {
"Betawi Kota",
nil,
"bew",
aliases = {"Urban Betawi"}, -- in Jakarta
}
-- Philippine varieties
m["xnn"] = {
"Northern Kankanaey",
12953609,
"kne",
aliases = {"Northern Kankanay", "Northern Kankana-ey"},
}
m["tl-old"] = {
"ตากาล็อกเก่า",
12967437,
"tl",
aliases = {"Old Tagalog"},
}
m["tl-cls"] = {
"ตากาล็อกคลาสสิก",
nil,
"tl",
aliases = {"Classical Tagalog"},
}
----------------------------------------------------------------------------------------------------------------------
-- Caucasian varieties --
----------------------------------------------------------------------------------------------------------------------
-- Kartvelian varieties
m["ka-mid"] = {
"จอร์เจียกลาง",
nil,
"ka",
ancestors = "oge",
aliases = {"Middle Georgian"},
}
----------------------------------------------------------------------------------------------------------------------
-- Dravidian varieties --
----------------------------------------------------------------------------------------------------------------------
m["ta-mid"] = {
"ทมิฬกลาง",
20987434,
"ta",
aliases = {"Middle Tamil"},
}
m["kn-hav"] = {
"Havigannada",
24276369,
"kn",
}
m["kn-kun"] = {
"Kundagannada",
6444255,
"kn",
}
----------------------------------------------------------------------------------------------------------------------
-- Indo-European varieties --
----------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------
-- Albanian varieties --
--------------------------------------------------------------------------------------
m["aln"] = {
"Gheg Albanian",
181037,
"sq",
aliases = {"Gheg"},
}
m["aae"] = {
"Arbëresh Albanian",
1075302,
"als",
aliases = {"Arbëreshë", "Arbëresh"},
}
m["aat"] = {
"Arvanitika Albanian",
29347,
"als",
aliases = {"Arvanitika"},
}
m["als"] = {
"Tosk Albanian",
180937,
"sq",
aliases = {"Tosk"},
}
--------------------------------------------------------------------------------------
-- Armenian varieties --
--------------------------------------------------------------------------------------
m["hyw"] = {
"อาร์มีเนียตะวันตก",
180945,
"hy",
aliases = {"Western Armenian"},
}
m["hye"] = {
"อาร์มีเนียตะวันออก",
181059,
"hy",
aliases = {"Western Armenian"},
}
--------------------------------------------------------------------------------------
-- Balto-Slavic varieties --
--------------------------------------------------------------------------------------
-------------------------------------------------------------------------
-- Baltic varieties --
-------------------------------------------------------------------------
m["bat-pro"] = {
"บอลติกดั้งเดิม",
1703347,
"ine-bsl-pro",
aliases = {"Proto-Baltic"},
}
m["bat-dni"] = {
"Dnieper Baltic",
4163178,
"bat-pro",
family = "bat",
aliases = {"Dniepr Baltic", "Dnieper-Oka Baltic", "Dniepr-Oka Baltic"},
}
m["bat-gol"] = {
"Golyad",
4142855,
"bat-dni",
aliases = {"Eastern Galindian", "East Galindian"},
}
-------------------------------------------------------------------------
-- Slavic varieties --
-------------------------------------------------------------------------
-----------------------------------------------------
-- Bulgarian varieties --
-----------------------------------------------------
m["cu-bgm"] = {
"บัลแกเรียกลาง",
12294897,
"cu",
ancestors = "cu",
aliases = {"Middle Bulgarian"},
}
-----------------------------------------------------
-- Church Slavonic varieties --
-----------------------------------------------------
-- Old Moscow Church Slavonic deleted as it seems not distinct enough from Russian (Synodal) Church Slavonic.
m["zls-chs-ru"] = {
"Russian Church Slavonic",
21662400,
"zls-chs",
aliases = {"Synodal Church Slavonic", "New Moscow Church Slavonic", "Novomoskovsk Church Slavonic"},
}
m["zls-chs-uk"] = {
"Ukrainian Church Slavonic",
12153548,
"zls-chs",
aliases = {"Rusyn Church Slavonic", "Belarusian Church Slavonic"},
}
--[=[
-- Not sure about these yet.
m["zls-chs-bg"] = {
"Bulgarian Church Slavonic",
nil,
"zls-chs",
}
m["zls-chs-cs"] = {
"Czech Church Slavonic",
nil,
"zls-chs",
}
m["zls-chs-hr"] = {
"Croatian Church Slavonic",
nil,
"zls-chs",
}
m["zls-chs-mk"] = {
"Macedonian Church Slavonic",
nil,
"zls-chs",
}
m["zls-chs-ro"] = {
"Romanian Church Slavonic",
nil,
"zls-chs",
}
m["zls-chs-sr"] = {
"Serbian Church Slavonic",
nil,
"zls-chs",
}
]=]
-----------------------------------------------------
-- Czech varieties --
-----------------------------------------------------
m["cs-ear"] = {
"เช็กใหม่ช่วงต้น",
nil,
"cs",
ancestors = "zlw-ocs",
aliases = {"Early Modern Czech"},
}
-----------------------------------------------------
-- East Slavic varieties --
-----------------------------------------------------
m["zle-ops"] = {
"Old Pskovian",
4167885,
"zle-ono",
}
m["zle-mru"] = {
"รัสเซียกลาง",
35228,
"ru",
"Cyrs",
ancestors = "orv",
aliases = {"Middle Russian"},
translit = "ru-translit",
strip_diacritics = {
Cyrs = {
remove_diacritics = c.grave .. c.acute .. c.diaer,
},
},
}
m["zle-mbe"] = {
"เบลารุสกลาง",
13211,
"zle-ort",
ancestors = "zle-ort",
aliases = {"Middle Belarusian"},
}
m["zle-muk"] = {
"ยูเครนกลาง",
13211,
"zle-ort",
ancestors = "zle-ort",
aliases = {"Middle Ukrainian"},
}
m["uk-CA"] = {
"ยูเครนแบบแคนาดา",
4161010,
"uk",
aliases = {"Canadian Ukrainian"},
}
m["crp-cpr-kya"] = {
"Kyakhta Chinese Pidgin Russian",
1062960,
"crp-cpr",
}
-----------------------------------------------------
-- Polish varieties --
-----------------------------------------------------
m["zlw-mpl"] = {
"โปแลนด์กลาง",
402878,
"pl",
ancestors = "zlw-opl",
aliases = {"Middle Polish"},
strip_diacritics = {
remove_diacritics = c.acute,
remove_exceptions = {"Ć", "ć", "Ń", "ń", "Ó", "ó", "Ś", "ś", "Ź", "ź"},
},
}
m["pl-gre"] = {
"Greater Polish",
4106789,
"pl",
}
m["pl-les"] = {
"Lesser Polish",
361709,
"pl",
}
m["pl-mas"] = {
"Masovian Polish",
4274559,
"pl",
}
m["pl-gor"] = {
"Goral",
452889,
"pl",
}
-----------------------------------------------------
-- Serbo-Croatian varieties --
-----------------------------------------------------
m["ckm"] = {
"Chakavian Serbo-Croatian",
337565,
"sh",
aliases = {"Čakavian"},
}
m["kjv"] = {
"Kajkavian Serbo-Croatian",
838165,
"sh",
}
m["sh-tor"] = { -- Linguist code srp-tor
"Torlakian Serbo-Croatian",
1078803,
"sh",
aliases = {"Torlak"},
}
--------------------------------------------------------------------------------------
-- Celtic varieties --
--------------------------------------------------------------------------------------
-----------------------------------------------------
-- Brythonic varieties --
-----------------------------------------------------
m["bry-ear"] = {
"บริทอนิกช่วงต้น",
nil,
"cel-bry-pro",
aliases = {"Early Brythonic"},
}
m["bry-lat"] = {
"บริทอนิกช่วงปลาย",
nil,
"cel-bry-pro",
aliases = {"Late Brythonic"},
}
-----------------------------------------------------
-- Gaulish varieties --
-----------------------------------------------------
m["xcg"] = {
"Cisalpine Gaulish",
3832927,
"cel-gau",
}
m["xtg"] = {
"Transalpine Gaulish",
29977,
"cel-gau",
}
-----------------------------------------------------
-- Welsh varieties --
-----------------------------------------------------
m["cy-nor"] = {
"North Wales Welsh",
13127692,
"cy",
aliases = {"North Walian Welsh", "Northern Welsh"},
}
m["cy-sou"] = {
"South Wales Welsh",
13127689,
"cy",
aliases = {"South Walian Welsh", "Southern Welsh"},
}
--------------------------------------------------------------------------------------
-- Germanic varieties --
--------------------------------------------------------------------------------------
-- Proto-West Germanic varieties
m["frk"] = {
"แฟรงก์",
10860505,
"gmw-pro",
family = "gmw-frk",
aliases = {"แฟรงก์เก่า", "Frankish", "Old Frankish"},
}
m["gem-sue"] = {
"Suevic",
134600275,
"gmw-pro",
aliases = {"Suebian"},
}
m["gmw-afr-pro"] = {
"Proto-Anglo-Frisian",
134603379,
"gmw-nsg-pro",
family = "gmw-afr",
}
m["gmw-nsg-pro"] = {
"Proto-North Sea Germanic",
134603374,
"gmw-pro",
family = "gmw-nsg",
aliases = {"Proto-Ingvaeonic"},
}
-----------------------------------------------------
-- Dutch varieties --
-----------------------------------------------------
m["nl-BE"] = {
"ดัตช์แบบเบลเยียม",
34147,
"nl",
aliases = {"ฟลามส์", "เฟลมิช", "ดัตช์ใต้", "Belgian Dutch", "Flemish", "Flemish Dutch", "Southern Dutch"},
}
-----------------------------------------------------
-- English and Scots varieties --
-----------------------------------------------------
-- English varieties
m["en-AU"] = {
"อังกฤษแบบออสเตรเลีย",
44679,
"en",
aliases = {"Australian English"},
}
m["en-GB"] = {
"อังกฤษแบบบริเตน",
7979,
"en",
aliases = {"อังกฤษแบบบริติช", "British English"},
}
m["en-GB-SCT"] = {
"อังกฤษแบบสกอตแลนด์",
1553250,
"en-GB",
aliases = {"Scottish English"},
}
m["en-GB-WLS"] = {
"อังกฤษแบบเวลส์",
2363292,
"en-GB",
aliases = {"Welsh English"},
}
m["en-IM"] = {
"อังกฤษแบบแมงซ์",
6753295,
"en-GB",
aliases = {"Manx English"},
}
m["en-aae"] = {
"Australian Aboriginal English",
783347,
"en-AU",
}
m["en-ear"] = {
"อังกฤษใหม่ช่วงต้น",
1472196,
"en",
ancestors = "enm",
aliases = {"Early Modern English", "Early New English"},
}
m["en-geo"] = {
"Geordie",
653421,
"en",
ancestors = "enm-nor",
}
m["en-IE"] = { -- FIXME: "IE" doesn't cover Northern Ireland
"อังกฤษแบบไอร์แลนด์",
665624,
"en",
aliases = {"Irish English"},
}
m["en-uls"] = {
"Ulster English",
6840826,
"en-IE",
}
m["en-GB-NIR"] = {
"อังกฤษแบบไอร์แลนด์เหนือ",
6840826, -- actually the code for Ulster English
"en-uls",
aliases = {"Northern Irish English"},
}
m["en-NNN"] = { -- NA = Namibia; NNN is NATO 3-letter code for North America
"อังกฤษแบบอเมริกาเหนือ",
7053766,
"en",
aliases = {"Northern American English"},
ietf_subtag = "en-021" -- 021 = UN M49 code for "Northern America" (i.e. North America wihout Central America or the Caribbean)
}
m["en-US"] = {
"อังกฤษแบบอเมริกา",
7976,
"en-NNN",
aliases = {"อังกฤษแบบอเมริกัน","American English"},
}
m["en-NZ"] = {
"อังกฤษแบบนิวซีแลนด์",
44661,
"en",
aliases = {"New Zealand English"},
}
m["en-ZA"] = {
"อังกฤษแบบเซาท์แอฟริกา",
1156228,
"en",
aliases = {"South African English"},
}
m["en-US-CA"] = {
"อังกฤษแบบแคลิฟอร์เนีย",
1026812,
"en-US",
aliases = {"California English"},
}
m["en-CA"] = {
"อังกฤษแบบแคนาดา",
44676,
"en-US",
aliases = {"Canadian English"},
}
m["en-HK"] = {
"อังกฤษแบบฮ่องกง",
1068863,
"en",
aliases = {"Hong Kong English"},
}
m["en-IN"] = {
"อังกฤษแบบอินเดีย",
1348800,
"en",
aliases = {"Indian English"},
}
m["pld"] = {
"Polari",
1359130,
"en",
}
-- Scots varieties
m["sco-ins"] = {
"Insular Scots",
16919205,
"sco",
}
m["sco-uls"] = {
"Ulster Scots",
201966,
"sco",
}
m["sco-nor"] = {
"สกอตเหนือ",
16928150,
"sco",
aliases = {"Northern Scots"},
}
m["sco-sou"] = {
"สกอตใต้",
7570457,
"sco",
aliases = {"Southern Scots", "South Scots", "Borders Scots"},
}
-- Middle English varieties
m["enm-esc"] = { -- Part of Middle English until it developed into Middle Scots.
"Early Scots",
5326738,
"enm",
ancestors = "enm-nor",
aliases = {"Old Scots", "Scottish Middle English"},
}
m["enm-emi"] = {
"East Midland Middle English",
134238810,
"enm",
ancestors = "ang-ang", -- Technically ang-mer, but attested Mercian is mostly WM IIRC
}
m["enm-ken"] = {
"Kentish Middle English",
134238532,
"enm",
ancestors = "ang-ken",
}
m["enm-nor"] = {
"Northern Middle English",
134238541,
"enm",
ancestors = "ang-nor",
}
m["enm-sou"] = {
"Southern Middle English",
134238528,
"enm",
ancestors = "ang-wsx",
}
m["enm-wmi"] = {
"West Midland Middle English",
134238824,
"enm",
ancestors = "ang-mer",
}
-- Old English varieties
-- Includes both Mercian and Northumbrian.
m["ang-ang"] = {
"อังกฤษเก่าแบบแองเกิล",
121142917,
"ang",
aliases = {"Anglian Old English"},
}
m["ang-ken"] = {
"Kentish Old English",
11687485,
"ang",
}
m["ang-mer"] = {
"อังกฤษเก่าแบบเมอร์เซีย",
602072,
"ang-ang",
aliases = {"Mercian Old English"},
}
m["ang-nor"] = {
"อังกฤษเก่าแบบนอร์ทัมเบรีย",
1798915,
"ang-ang",
aliases = {"Northumbrian Old English"},
}
m["ang-wsx"] = {
"อังกฤษเก่าแบบแซกซันตะวันตก",
2658603,
"ang",
aliases = {"West Saxon Old English"},
}
-----------------------------------------------------
-- High German varieties --
-----------------------------------------------------
-- (modern) German varieties
m["de-AT"] = {
"เยอรมันแบบออสเตรีย",
306626,
"de",
aliases = {"Austrian German"},
}
m["de-AT-vie"] = {
"เยอรมันแบบเวียนนา",
56474,
"de-AT",
aliases = {"Viennese German"},
}
m["de-CH"] = {
"เยอรมันแบบสวิตเซอร์แลนด์",
1366643,
"de",
aliases = {"Switzerland German", "Schweizer Hochdeutsch", "Swiss Standard German", "Swiss High German"},
}
m["de-bal"] = {
"Baltic German",
15785413,
"de",
}
m["de-ear"] = {
"Early New High German",
1472199,
"de",
ancestors = "gmh",
aliases = {"Early Modern High German"},
}
m["ksh"] = {
"Kölsch",
4624,
"gmw-cfr",
}
m["pfl"] = {
"เยอรมันแบบปาเลสไตน์",
23014,
"gmw-rfr",
aliases = {"Palatine German", "Pfälzisch", "Pälzisch", "Palatinate German"},
}
m["sli"] = {
"Silesian East Central German",
152965,
"gmw-ecg",
aliases = {"Silesian"},
}
m["sxu"] = {
"Upper Saxon German",
699284,
"gmw-ecg",
}
-- Old High German varieties
m["lng"] = {
"Lombardic",
35972,
"goh",
}
-- Alemannic German varieties
m["gsw-low"] = {
"Low Alemannic German",
503724,
"gsw",
}
m["gsw-FR-als"] = {
"Alsatian Alemannic German",
8786,
"gsw-low",
}
m["gsw-hig"] = {
"High Alemannic German",
503728,
"gsw",
}
m["gsw-hst"] = {
"Highest Alemannic German",
687538,
"gsw",
}
m["wae"] = {
"Walser German",
680517,
"gsw-hst",
}
-----------------------------------------------------
-- Low German varieties --
-----------------------------------------------------
m["nds-de"] = {
"เยอรมันต่ำแบบเยอรนี",
25433,
"nds",
aliases = {"German Low German"},
ietf_subtag = "nds-DE", -- should we make this the actual code?
wikimedia_codes = "nds",
}
m["nds-nl"] = {
"แซกซันต่ำแบบเนเธอร์แลนด์",
516137,
"nds",
aliases = {"Dutch Low Saxon"},
ietf_subtag = "nds-NL", -- should we make this the actual code?
wikimedia_codes = "nds-nl",
}
m["act"] = {
"Achterhoeks",
153627,
"nds-nl",
aliases = {"Achterhoek", "Achterhooks"},
}
m["drt"] = {
"Drents",
2736709,
"nds-nl",
aliases = {"Drèents", "Dreins", "Dreints", "Drints"},
}
m["frs"] = {
"East Frisian Low German",
149208,
"nds-de",
aliases = {"East Frisian", "East Frisian Low Saxon"},
}
m["gos"] = {
"Gronings",
508854,
"nds-nl",
aliases = {"Grunnegs", "Grönnegs"},
}
m["nds-lpr"] = {
"Low Prussian",
33982,
"nds-de",
}
m["sdz"] = {
"Sallands",
3436668,
"nds-nl",
aliases = {"Sallaans", "Sallaands"},
}
m["stl"] = {
"Stellingwerfs",
506010,
"nds-nl",
aliases = {"Stellingwarfs"},
}
m["twd"] = {
"Twents",
497363,
"nds-nl",
aliases = {"Tweants"},
}
m["vel"] = {
"Veluws",
2484810,
"nds-nl",
}
m["wep"] = {
"Westphalian",
505655,
"nds-de",
aliases = {"Westfalish", "Westphalien"},
}
-----------------------------------------------------
-- North Frisian varieties --
-----------------------------------------------------
m["frr-ins"] = {
"Insular North Frisian",
110629610,
"frr",
}
m["frr-fam"] = {
"Föhr-Amrum North Frisian",
110629601,
"frr-ins",
}
m["frr-foh"] = {
"Föhr North Frisian",
28185,
"frr-fam",
aliases = {"Föhr Frisian", "Fering",
"Ferring", -- Glottolog
},
varieties = {"Aasdring", "Weesdring"},
}
m["frr-amr"] = {
"Amrum North Frisian",
28192,
"frr-fam",
aliases = {"Amrum Frisian", "Amrum", "Öömrang"},
}
m["frr-hel"] = {
"Heligoland North Frisian",
28086,
"frr-ins",
aliases = {"Heligoland Frisian", "Halunder", "Heligolandic Frisian", "Heligolandic North Frisian",
"Helgoland Frisian", "Helgoland North Frisian", "Helgoland"},
}
m["frr-syl"] = {
"Sylt North Frisian",
28181,
"frr-ins",
aliases = {"Sylt Frisian", "Söl'ring",
"Sölreng", -- Glottolog
},
}
m["frr-mai"] = {
"Mainland North Frisian",
110629626,
"frr",
}
m["frr-hal"] = {
"Halligen North Frisian",
28177,
"frr-mai",
aliases = {"Halligen Frisian", "Halifreesk", "Hallingen Frisian", "Hallingen North Frisian",
"Hallingen", -- Glottolog
},
}
m["frr-moo"] = {
"Mooring North Frisian",
28187,
"frr-mai",
aliases = {"Bökingharde North Frisian", "Bökingharde Frisian", "Böökinghiirder frasch",
"Mooring", "Moring",
},
varieties = {{"East Mooring", "Ostermooring"}, {"West Mooring", "Westermooring"}},
}
m["frr-kar"] = {
"Karrharde North Frisian",
28191,
"frr-mai",
aliases = {"Karrharde Frisian", "Karrharder",
},
}
m["frr-goe"] = {
-- Technically this refers to three adjacent dialects (Northern, Central and Southern), the latter of which went
-- extinct in 1980-1981. As a result, Glottolog speaks of "Norder-Mittelgoesharde", referring to the remaining two.
"Goesharde North Frisian",
28183,
"frr-mai",
aliases = {"Norder-Mittelgoesharde North Frisian", "Norder-Mittelgoesharde Frisian", "Norder-Mittelgoesharde",
"Goesharde Frisian", "Goesharde", "Gooshiirder",
},
}
m["frr-wie"] = {
"Wiedingharde North Frisian",
28171,
"frr-mai",
aliases = {"Wiedingharde Frisian", "Wiedingharde", "Wiringhiirder freesk",
},
}
-----------------------------------------------------
-- Old Norse varieties --
-----------------------------------------------------
m["non-grn"] = {
"Greenlandic Norse",
855236,
"non-own",
}
m["non-oen"] = {
"Old East Norse",
10498031,
"non",
ancestors = "non",
}
m["non-own"] = {
"Old West Norse",
2377483,
"non",
ancestors = "non",
}
-----------------------------------------------------
-- Old Swedish varieties --
-----------------------------------------------------
m["gmq-osw-lat"] = {
"Late Old Swedish",
10723594,
"gmq-osw",
ancestors = "gmq-osw",
}
--------------------------------------------------------------------------------------
-- Greek varieties --
--------------------------------------------------------------------------------------
m["qsb-grc"] = {
"Pre-Greek",
965052,
"und",
family = "qfa-sub",
}
m["grc-aeo"] = {
"กรีกแบบอีโอลิส",
406373,
"grc",
aliases = {"กรีกแบบอีโอเลีย", "กรีกแบบเลสบอส", "Aeolic Greek", "Lesbic Greek", "Lesbian Greek", "Aeolian Greek"},
}
m["grc-arc"] = {
"กรีกแบบอาร์เคเดีย",
nil,
"grc-arp",
aliases = {"Arcadian Greek"},
}
m["grc-arp"] = {
"กรีกแบบอาร์เคโดไซปรัส",
499602,
"grc",
aliases = {"Arcadocypriot Greek"},
}
m["grc-att"] = {
"กรีกแบบเอเธนส์",
506588,
"grc",
aliases = {"Attic Greek"},
}
m["grc-boi"] = {
"กรีกแบบบีโอเชีย",
406373,
"grc-aeo",
aliases = {"Boeotian Greek"},
}
m["grc-cyp"] = {
"กรีกโบราณแบบไซปรัส", -- to distinguish from Cypriot Greek below
nil,
"grc-arp",
aliases = {"Cypriot Ancient Greek"},
}
m["grc-dor"] = {
"กรีกแบบดอเรียนส์",
285494,
"grc",
aliases = {"Doric Greek"},
}
m["grc-ela"] = {
"กรีกแบบเอลิส",
nil,
"grc",
aliases = {"Elean Greek"},
}
m["grc-epi"] = {
"กรีกมหากาพย์",
990062,
"grc",
aliases = {"กรีกแบบโฮเมอร์", "Epic Greek", "Homeric Greek"},
}
m["grc-ion"] = {
"กรีกแบบไอโอเนีย",
504165,
"grc",
aliases = {"Ionic Greek"},
}
m["grc-koi"] = {
"กรีกแบบคอยนี",
107358,
"grc",
ancestors = "grc-att",
aliases = {"Koine Greek", "Hellenistic Greek"},
}
m["grc-kre"] = {
"กรีกโบราณแบบครีต", -- to distinguish from Cretan Greek below
nil,
"grc-dor",
aliases = {"Cretan Ancient Greek"},
}
m["grc-opl"] = {
"โอพุนเชียนโลคริส",
nil,
"grc",
aliases = {"Opuntian Locrian"},
}
m["grc-ozl"] = {
"โอโซเลียนโลคริส",
nil,
"grc",
aliases = {"Ozolian Locrian"},
}
m["grc-pam"] = {
"กรีกแบบแพมฟิเลีย",
2271793,
"grc",
aliases = {"Pamphylian Greek"},
}
m["grc-ths"] = {
"กรีกแบบเธสซาเลีย",
406373,
"grc-aeo",
aliases = {"Thessalian Greek"},
}
m["gkm"] = {
"กรีกแบบไบแซนไทน์",
36387,
"grc",
ancestors = "grc-koi",
aliases = {"กรีกสมัยกลาง", "Byzantine Greek", "Medieval Greek"},
}
m["el-cyp"] = {
"กรีกแบบไซปรัส",
245899,
"el",
aliases = {"Cypriot Greek", "Cypriotic Greek"},
}
m["el-pap"] = {
"กรีกแบบพาฟอส",
nil,
"el",
aliases = {"Paphian Greek"},
}
m["el-crt"] = {
"กรีกแบบครีต",
588306,
"el",
aliases = {"Cretan Greek"},
}
m["el-kth"] = {
"คาทาเรวูซา",
35961,
"el",
"Polyt",
ancestors = "gkm",
aliases = {"กรีกแบบคาทาเรวูซา", "Katharevousa", "Katharevousa Greek"},
-- Polyt display_text, strip_diacritics, sort_key in [[Module:scripts/data]]
}
m["el-kal"] = {
"Kaliarda",
12878658,
"el",
}
--------------------------------------------------------------------------------------
-- Hittite varieties --
--------------------------------------------------------------------------------------
m["htx"] = {
"Middle Hittite",
12642599,
"hit",
}
m["nei"] = {
"Neo-Hittite",
41499830,
"hit",
aliases = {"New Hittite"},
}
m["oht"] = {
"Old Hittite",
41499994,
"hit",
}
--------------------------------------------------------------------------------------
-- Indo-Iranian varieties --
--------------------------------------------------------------------------------------
-------------------------------------------------------------------------
-- Indo-Aryan varieties --
-------------------------------------------------------------------------
-- reconstructed intermediate stages
m["pra-pro"] = {
"Proto-New Indo-Aryan",
nil,
"pra",
}
m["inc-ash-pro"] = {
"Proto-Middle Indo-Aryan",
nil,
"inc-ash",
}
m["inc-mit"] = {
"Mitanni",
1986700,
"inc-pro",
}
m["bra-old"] = {
"Old Braj",
nil,
"bra",
}
-- Apabhramsas
m["inc-aav"] = {
"Avahattha",
nil,
"inc-apa",
aliases = {"Abahattha"},
}
m["inc-asa"] = {
"Sauraseni Apabhramsa",
nil,
"inc-apa",
}
m["inc-agu"] = {
"Gurjara Apabhramsa",
nil,
"inc-apa",
}
m["inc-aka"] = {
"Kasmiri Apabhramsa",
nil,
"inc-apa",
}
m["inc-ama"] = {
"Maharastri Apabhramsa",
nil,
"inc-apa",
}
m["inc-ata"] = {
"Takka Apabhramsa",
nil,
"inc-apa",
}
m["inc-avr"] = {
"Vracada Apabhramsa",
nil,
"inc-apa",
}
-- Khortha varieties
m["inc-khr-par"] = {
"Parnadiya Khortha",
nil,
"inc-khr",
}
-- Assamese varieties
m["as-bkm"] = {
"Barpetia Kamrupi Assamese",
30642960,
"as",
}
m["as-nkm"] = {
"Nalbaria Kamrupi Assamese",
85787678,
"as",
}
m["as-pkm"] = {
"Palasbaria Kamrupi Assamese",
nil,
"as",
}
-- Bengali varieties
m["bn-dvn"] = {
"Dhakaiya Vaṅga Bengali",
48726851,
"bn", -- Eastern Bengali variety
}
m["bn-nvn"] = {
"Noakhailla Vaṅga Bengali",
107548681,
"bn", -- Eastern Bengali variety
}
-- Dhivehi varieties
m["dv-old"] = {
"Old Dhivehi",
117790875,
"dv",
}
m["dv-mul"] = {
"Mulaku Dhivehi",
nil,
"dv",
aliases = {"Mulaku Divehi", "Mulaku Bas"},
}
m["dv-huv"] = {
"Huvadhu Dhivehi",
nil,
"dv",
aliases = {"Huvadhu Divehi", "Huvadhu Bas"},
}
m["dv-add"] = {
"Addu Dhivehi",
nil,
"dv",
aliases = {"Addu Divehi", "Addu Bas"},
}
-- Gujarati varieties
m["gu-kat"] = {
"Kathiyawadi",
nil,
"gu",
aliases = {"Kathiyawadi Gujarati", "Kathiawadi"},
}
m["gu-lda"] = {
"Lisan ud-Dawat Gujarati",
nil,
"gu",
aliases = {"Lisan ud-Dawat", "LDA"},
}
-- Hindi varieties
m["hi-mum"] = {
"ฮินดีแบบมุมไบ",
3543151,
"hi",
aliases = {"ฮินดีแบบบอมเบย์", "Bombay Hindi", "Mumbai Hindi", "Bambaiyya Hindi"},
}
m["hi-mid"] = {
"ฮินดีกลาง",
nil,
"inc-ohi",
ancestors = "inc-ohi",
aliases = {"Middle Hindi"},
}
-- Konkani varieties
m["kok-mid"] = {
"กงกัณกลาง",
nil,
"kok",
aliases = {"กงกัณสมัยกลาง", "Middle Konkani", "Medieval Konkani"},
}
m["kok-old"] = {
"กงกัณเก่า",
nil,
"kok",
aliases = {"กงกัณช่วงต้น", "Old Konkani", "Early Konkani"},
}
-- Prakrits
m["pra-ard"] = {
"อรรธมคธ",
35217,
"pra",
aliases = {"ปรากฤตแบบอรรธมคธ", "Ardhamagadhi Prakrit", "Ardhamagadhi"},
}
m["pra-hel"] = {
"เอลู",
15080869,
"pra",
aliases = {"ปรากฤตแบบเอลู", "ปรากฤตแบบเฮลู", "เฮลู", "Elu", "Elu Prakrit", "Helu", "Helu Prakrit"},
}
m["pra-kha"] = {
"ขศะ",
nil,
"pra",
aliases = {"ปรากฤตแบบขศะ", "ขษะ", "ขศิระ", "Khasa Prakrit", "Khasa"},
}
m["pra-mag"] = {
"มคธ", -- Not to be confused with Magahi (mag)
2652214,
"pra",
aliases = {"มาคธี", "ปรากฤตแบบมคธ", "ปรากฤตแบบมาคธี", "Magadhi", "Magadhi Prakrit"},
}
m["pra-mah"] = {
"มหาราษฏร์",
2586773,
"pra",
aliases = {"ปรากฤตแบบมหาราษฏร์", "Maharastri Prakrit", "Maharashtri Prakrit", "Maharastri", "Maharashtri"},
}
m["pra-pai"] = {
"ไปศาจ",
2995607,
"pra-sau",
aliases = {"ปรากฤตแบบไปศาจ", "Paisaci Prakrit", "Paisaci", "Paisachi"},
ancestors = "pra-sau",
}
m["pra-sau"] = {
"เศารเสน",
2452885,
"pra",
aliases = {"ปรากฤตแบบเศารเสน", "Sauraseni Prakrit", "Sauraseni", "Shauraseni"},
}
m["pra-ava"] = {
"อาวันต์",
nil,
"pra",
aliases = {"ปรากฤตแบบอาวันต์", "Avanti", "Avanti Prakrit"},
}
m["pra-pra"] = {
"ปราจย์",
nil,
"pra",
aliases = {"ปรากฤตแบบปราจย์", "Pracya", "Pracya Prakrit"},
}
m["pra-bah"] = {
"พาห์ลีกะ",
nil,
"pra",
aliases = {"ปรากฤตแบบพาห์ลีกะ", "Bahliki", "Bahliki Prakrit"},
}
m["pra-dak"] = {
"ทากษิณาตย์",
nil,
"pra",
aliases = {"ปรากฤตแบบทากษิณาตย์", "Daksinatya", "Daksinatya Prakrit"},
}
m["pra-sak"] = {
"ศาการะ",
nil,
"pra",
aliases = {"ปรากฤตแบบศาการะ", "Sakari", "Sakari Prakrit"},
}
m["pra-can"] = {
"จาณฑาล",
nil,
"pra",
aliases = {"ปรากฤตแบบจาณฑาล", "Candali", "Candali Prakrit"},
}
m["pra-sab"] = {
"ศาพระ",
nil,
"pra",
aliases = {"ปรากฤตแบบศาพระ", "Sabari", "Sabari Prakrit"},
}
m["pra-abh"] = {
"อาภีระ",
nil,
"pra",
aliases = {"ปรากฤตแบบอาภีระ", "Abhiri", "Abhiri Prakrit"},
}
m["pra-dra"] = {
"ทรามิล",
nil,
"pra",
aliases = {"ปรากฤตแบบทรามิล", "Dramili", "Dramili Prakrit"},
}
m["pra-odr"] = {
"โอฑระ",
nil,
"pra",
aliases = {"ปรากฤตแบบโอฑระ", "Odri", "Odri Prakrit"},
}
-- Punjabi varieties
m["pnb"] = {
"ปัญจาบตะวันตก",
58635,
"pa",
"Aran",
aliases = {"Western Panjabi"},
}
-- Sanskrit varieties
m["vsn"] = {
"สันสกฤตพระเวท",
36858,
"sa",
aliases = {"Vedic Sanskrit"},
}
m["cls"] = {
"สันสกฤตคลาสสิก",
9333703,
"sa",
aliases = {"Classical Sanskrit"},
}
m["sa-bhs"] = {
"Buddhist Hybrid Sanskrit",
248758,
"sa",
}
m["sa-bra"] = {
"Brahmanic Sanskrit",
139822891,
"vsn",
}
m["sa-epi"] = {
"Epic Sanskrit",
56702805,
"cls",
}
m["sa-neo"] = {
"สันสกฤตใหม่",
nil,
"sa",
aliases = {"New Sanskrit"},
}
m["sa-rig"] = {
"Rigvedic Sanskrit",
139822680,
"vsn",
}
-- Sinhalese varieties
m["si-med"] = {
"สิงหลสมัยกลาง",
nil,
"si",
aliases = {"Medieval Sinhalese", "Medieval Sinhala"},
}
-------------------------------------------------------------------------
-- Iranian varieties --
-------------------------------------------------------------------------
m["qsb-bma"] = {
"the BMAC substrate",
133187435,
"und",
family = "qfa-sub",
aliases = {"the Bactria-Margiana substrate", "the Bactria-Margiana Archaeological Complex substrate"},
}
-- Historical and current Iranian dialects
m["ae-old"] = {
"อเวสตะเก่า",
29572,
"ae",
aliases = {"Old Avestan", "Gathic Avestan"},
}
m["ae-yng"] = {
"Younger Avestan",
29572,
"ae-old",
aliases = {"Young Avestan"},
}
m["bcc"] = {
"บาโลจใต้",
33049,
"bal",
aliases = {"Southern Balochi", "Southern Baluchi"},
}
m["bgp"] = {
"บาโลจตะวันออก",
33049,
"bal",
aliases = {"Eastern Balochi", "Eastern Baluchi"},
}
m["bgn"] = {
"บาโลจตะวันตก",
33049,
"bal",
aliases = {"Western Balochi", "Western Baluchi"},
}
m["bsg-ban"] = {
"Bandari",
nil,
"bsg",
}
m["bsg-hor"] = {
"Hormozi",
nil,
"bsg",
}
m["bsg-min"] = {
"Minabi",
nil,
"bsg",
}
m["kho-old"] = {
"Old Khotanese",
nil,
"kho",
}
m["kho-lat"] = {
"Late Khotanese",
nil,
"kho-old",
}
m["peo-ear"] = {
"เปอร์เซียเก่าช่วงต้น",
nil,
"peo",
aliases = {"Early Old Persian"},
}
m["peo-lat"] = {
"เปอร์เซียเก่าช่วงปลาย",
nil,
"peo",
aliases = {"Late Old Persian"},
}
m["pal-ear"] = {
"เปอร์เซียกลางช่วงต้น",
nil,
"pal",
aliases = {"Early Middle Persian"},
}
m["pal-lat"] = {
"เปอร์เซียกลางช่วงปลาย",
nil,
"pal",
ancestors = "pal-ear",
aliases = {"Late Middle Persian"},
}
m["ps-nwe"] = {
"ปาทานตะวันตกเฉียงเหนือ",
nil,
"ps",
aliases = {"Northwestern Pashto"},
}
m["ps-cgi"] = {
"Central Ghilzay",
nil,
"ps-nwe",
}
m["ps-mah"] = {
"Mahsudi",
nil,
"ps-nwe",
}
m["ps-nea"] = {
"ปาทานตะวันออกเฉียงเหนือ",
nil,
"ps",
aliases = {"Northeastern Pashto"},
}
m["ps-afr"] = {
"Afridi",
nil,
"ps-nea",
}
m["ps-bng"] = {
"Bangash",
nil,
"ps-nea",
}
m["ps-xat"] = {
"Khatak",
nil,
"ps-nea",
}
m["ps-pes"] = {
"Peshawari",
nil,
"ps-nea",
}
m["ps-sea"] = {
"ปาทานตะวันออกเฉียงใต้",
nil,
"ps",
aliases = {"Southeastern Pashto"},
}
m["ps-ban"] = {
"Bannu",
nil,
"ps-sea",
}
m["ps-kak"] = {
"Kakari",
nil,
"ps-sea",
}
m["ps-ser"] = {
"Sher",
nil,
"ps-sea",
}
m["ps-waz"] = {
"Waziri",
12274473,
"ps-sea",
}
m["ps-swe"] = {
"ปาทานตะวันตกเฉียงใต้",
nil,
"ps",
aliases = {"Southwestern Pashto"},
}
m["ps-kan"] = {
"Kandahari",
nil,
"ps-swe",
}
m["ps-jad"] = {
"Jadrani",
nil,
"ps",
ancestors = "ira-pat-pro"
}
m["xme-azr"] = {
"Old Azari",
nil,
"xme-ott",
aliases = {"Old Azeri", "Azari", "Azeri", "Āḏarī", "Adari", "Adhari"},
}
m["xme-ttc-cen"] = {
"Central Tati",
nil,
"xme-ott",
}
m["xme-ttc-eas"] = {
"Eastern Tati",
nil,
"xme-ott",
}
m["xme-ttc-nor"] = {
"Northern Tati",
nil,
"xme-ott",
}
m["xme-ttc-sou"] = {
"Southern Tati",
nil,
"xme-ott",
}
m["xme-ttc-wes"] = {
"Western Tati",
nil,
"xme-ott",
}
m["xmn"] = {
"Manichaean Middle Persian",
nil,
"pal-lat",
}
m["fa-ear"] = {
"เปอร์เซียใหม่ช่วงต้น",
127413796,
"fa",
ancestors = "pal-lat",
aliases = {"Early New Persian"},
--translit = "fa-cls-translit",
}
m["fa-cls"] = {
"เปอร์เซียคลาสสิก",
9168,
"fa",
ancestors = "fa-ear",
aliases = {"Classical Persian"},
--translit = "fa-cls-translit",
}
m["fa-ira"] = {
"เปอร์เซียแบบอิหร่าน",
3513637,
"fa",
aliases = {"เปอร์เซียใหม่", "เปอร์เซียตะวันตก", "Iranian Persian", "Modern Persian", "Western Persian"},
--translit = "fa-ira-translit",
}
m["prs"] = {
"ดารี",
178440,
"fa",
aliases = {"เปอร์เซียแบบดารี", "เปอร์เซียตะวันออก", "Dari", "Dari Persian", "Eastern Persian", "Afghan Persian"},
--translit = "fa-cls-translit",
}
m["haz"] = {
"Hazaragi",
33398,
"prs",
--translit = "fa-cls-translit",
}
m["os-dig"] = {
"Digor Ossetian",
3027861,
"os",
aliases = {"Digoron", "Digor"},
}
m["os-iro"] = {
"Iron Ossetian",
nil,
"os",
aliases = {"Iron"},
}
m["sog-ear"] = {
"Early Sogdian",
nil,
"sog",
}
m["sog-lat"] = {
"Late Sogdian",
nil,
"sog-ear",
}
m["ro-MD"] = {
"Moldovan",
36392,
"ro",
aliases = {"Moldavian"},
}
m["oru-kan"] = {
"Kaniguram",
6363164,
"oru",
}
m["oru-log"] = {
"Logar",
nil,
"oru",
}
m["oos"] = {
"Old Ossetic",
65455882,
"xln",
}
m["oos-ear"] = {
"Early Old Ossetic",
nil,
"oos",
}
m["oos-lat"] = {
"Late Old Ossetic",
nil,
"oos",
}
m["rdb-jir"] = {
"Jirofti",
nil,
"rdb",
}
m["rdb-kah"] = {
"Kahnuji",
nil,
"rdb",
}
-- Southwestern Fars lects
m["fay-bur"] = {
"Burenjani",
nil,
"fay",
}
m["fay-bsh"] = {
"Bushehri",
nil,
"fay",
}
m["fay-dsh"] = {
"Dashtaki",
nil,
"fay",
}
m["fay-dav"] = {
"Davani",
5228140,
"fay",
}
m["fay-eze"] = {
"Emamzada Esmaili",
nil,
"fay",
}
m["fay-gav"] = {
"Gavkoshaki",
nil,
"fay",
}
m["fay-kho"] = {
"Khollari",
nil,
"fay",
}
m["fay-kon"] = {
"Kondazi",
nil,
"fay",
}
m["fay-kzo"] = {
"Old Kazeruni",
nil,
"fay",
}
m["fay-mas"] = {
"Masarami",
nil,
"fay",
}
m["fay-pap"] = {
"Papuni",
nil,
"fay",
}
m["fay-sam"] = {
"Samghani",
nil,
"fay",
}
m["fay-shr"] = {
"Shirazi",
nil,
"fay",
}
m["fay-sho"] = {
"Old Shirazi",
nil,
"fay",
}
m["fay-kar"] = {
"Khargi",
nil,
"fay",
}
m["fay-sor"] = {
"Sorkhi",
nil,
"fay",
}
-- Talysh lects
m["tly-cen"] = {
"Central Talysh",
nil,
"tly",
}
m["tly-asa"] = {
"Asalemi",
nil,
"tly-cen",
}
m["tly-kar"] = {
"Karganrudi",
nil,
"tly-cen",
}
m["tly-tul"] = {
"Tularudi",
nil,
"tly-cen",
}
m["tly-tal"] = {
"Taleshdulabi",
nil,
"tly-cen",
}
m["tly-nor"] = {
"Northern Talysh",
nil,
"tly",
}
m["tly-aze"] = {
"Azerbaijani Talysh",
nil,
"tly-nor",
}
m["tly-anb"] = {
"Anbarani",
nil,
"tly-nor",
}
m["tly-sou"] = {
"Southern Talysh",
nil,
"tly",
}
m["tly-fum"] = {
"Fumani",
nil,
"tly-sou",
}
m["tly-msu"] = {
"Masulei",
nil,
"tly-sou",
}
m["tly-msa"] = {
"Masali",
nil,
"tly-sou",
}
m["tly-san"] = {
"Shandarmani",
nil,
"tly-sou",
}
-- Tafreshi lects
m["xme-amo"] = {
"Amorehi",
nil,
"xme-taf",
}
m["atn"] = {
"Ashtiani",
3436590,
"xme-taf",
}
m["xme-bor"] = {
"Borujerdi",
nil,
"xme-taf",
}
m["xme-ham"] = {
"Hamadani",
6302426,
"xme-taf",
}
m["xme-kah"] = {
"Kahaki",
nil,
"xme-taf",
}
m["vaf"] = {
"Vafsi",
32611,
"xme-taf",
}
-- Kermanic lects
m["kfm"] = {
"Khunsari",
6403030,
"xme-ker",
}
m["xme-mah"] = {
"Mahallati",
nil,
"xme-ker",
}
m["xme-von"] = {
"Vonishuni",
nil,
"xme-ker",
}
m["xme-bdr"] = {
"Badrudi",
nil,
"xme-ker",
}
m["xme-del"] = {
"Delijani",
nil,
"xme-ker",
}
m["xme-kas"] = {
"Kashani",
nil,
"xme-ker",
}
m["xme-kes"] = {
"Kesehi",
nil,
"xme-ker",
}
m["xme-mey"] = {
"Meymehi",
nil,
"xme-ker",
}
m["ntz"] = {
"Natanzi",
6968399,
"xme-ker",
}
m["xme-abz"] = {
"Abuzeydabadi",
nil,
"xme-ker",
}
m["xme-aby"] = {
"Abyanehi",
nil,
"xme-ker",
}
m["xme-far"] = {
"Farizandi",
nil,
"xme-ker",
}
m["xme-jow"] = {
"Jowshaqani",
nil,
"xme-ker",
}
m["xme-nas"] = {
"Nashalji",
nil,
"xme-ker",
}
m["xme-qoh"] = {
"Qohrudi",
nil,
"xme-ker",
}
m["xme-yar"] = {
"Yarandi",
nil,
"xme-ker",
}
m["soj"] = {
"Soi",
7930463,
"xme-ker",
aliases = {"Sohi"},
}
m["xme-tar"] = {
"Tari",
nil,
"xme-ker",
}
m["gzi"] = {
"Gazi",
5529130,
"xme-ker",
}
m["xme-sed"] = {
"Sedehi",
nil,
"xme-ker",
}
m["xme-ard"] = {
"Ardestani",
nil,
"xme-ker",
}
m["xme-zef"] = {
"Zefrehi",
nil,
"xme-ker",
}
m["xme-isf"] = {
"Isfahani",
nil,
"xme-ker",
}
m["xme-kaf"] = {
"Kafroni",
nil,
"xme-ker",
}
m["xme-vrz"] = {
"Varzenehi",
nil,
"xme-ker",
}
m["xme-xur"] = {
"Khuri",
nil,
"xme-ker",
}
m["nyq"] = {
"Nayini",
6983146,
"xme-ker",
}
m["xme-ana"] = {
"Anaraki",
nil,
"xme-ker",
}
m["gbz"] = {
"Zoroastrian Dari",
32389,
"xme-ker",
aliases = {"Behdināni", "Gabri", "Gavrŭni", "Gabrōni"},
}
m["xme-krm"] = {
"Kermani",
nil,
"xme-ker",
}
m["xme-yaz"] = {
"Yazdi",
nil,
"xme-ker",
}
m["xme-bid"] = {
"Bidhandi",
nil,
"xme-ker",
}
m["xme-bij"] = {
"Bijagani",
nil,
"xme-ker",
}
m["xme-cim"] = {
"Chimehi",
nil,
"xme-ker",
}
m["xme-han"] = {
"Hanjani",
nil,
"xme-ker",
}
m["xme-kom"] = {
"Komjani",
nil,
"xme-ker",
}
m["xme-nar"] = {
"Naraqi",
nil,
"xme-ker",
}
m["xme-nus"] = {
"Nushabadi",
nil,
"xme-ker",
}
m["xme-qal"] = {
"Qalhari",
nil,
"xme-ker",
}
m["xme-trh"] = {
"Tarehi",
nil,
"xme-ker",
}
m["xme-val"] = {
"Valujerdi",
nil,
"xme-ker",
}
m["xme-var"] = {
"Varani",
nil,
"xme-ker",
}
m["xme-zor"] = {
"Zori",
nil,
"xme-ker",
}
-- Ramandi lects
m["tks-ebr"] = {
"Ebrahimabadi",
nil,
"tks",
}
m["tks-sag"] = {
"Sagzabadi",
nil,
"tks",
}
m["tks-esf"] = {
"Esfarvarini",
nil,
"tks",
}
m["tks-tak"] = {
"Takestani",
nil,
"tks",
}
m["tks-cal"] = {
"Chali Tati",
nil,
"tks",
aliases = {"Chāli"},
}
m["tks-dan"] = {
"Danesfani",
nil,
"tks",
}
m["tks-xia"] = {
"Khiaraji",
nil,
"tks",
}
m["tks-xoz"] = {
"Khoznini",
nil,
"tks",
}
-- Shughni dialects
m["sgh-bro"] = {
"Bartangi-Oroshori",
nil,
"sgh",
}
m["sgh-bar"] = {
"Bartangi",
nil,
"sgh-bro",
}
m["sgh-oro"] = {
"Oroshori",
nil,
"sgh-bro",
aliases = {"Roshorvi"},
}
m["sgh-rsx"] = {
"Roshani-Khufi",
nil,
"sgh",
}
m["sgh-xuf"] = {
"Khufi",
2562249,
"sgh-rsx",
aliases = {"Xufi", "Xūfī"},
}
m["sgh-ros"] = {
"Roshani",
2597566,
"sgh-rsx",
aliases = {"Rushani", "Rōšāni"},
}
m["sgh-xgb"] = {
"Khughni-Bajui",
nil,
"sgh",
}
m["sgh-xug"] = {
"Khughni",
nil,
"sgh-xgb",
}
m["sgh-baj"] = {
"Bajui",
nil,
"sgh-xgb",
}
-------------------------------------------------------------------------
-- Nuristani varieties --
-------------------------------------------------------------------------
m["bsh-kat"] = {
"Kativiri",
2605045,
"bsh",
aliases = {"Katə́viri"},
}
m["xvi"] = {
"Kamviri",
1193495,
"bsh",
aliases = {"Kamvíri"},
}
m["bsh-mum"] = {
"Mumviri",
nil,
"bsh",
aliases = {"Mumvíri"},
}
--------------------------------------------------------------------------------------
-- Italic varieties --
--------------------------------------------------------------------------------------
-------------------------------------------------------------------------
-- Latin varieties --
-------------------------------------------------------------------------
-- Latin varieties by period
m["itc-ala"] = {
"ละตินโบราณ",
nil,
"la",
"Latn, Ital",
aliases = {"Archaic Latin"},
translit = {
Ital = "Ital-translit",
},
}
m["itc-ola"] = {
"ละตินเก่า",
12289,
"la",
"Latn",
aliases = {"Old Latin"},
ancestors = "itc-ala",
}
m["itc-lan"] = {
"Lanuvian",
16890829,
"la",
aliases = {"Lanuvine"},
}
m["itc-pra"] = {
"Praenestine",
16889772,
"la",
aliases = {"Praenestinian"},
}
m["la-cla"] = {
"ละตินคลาสสิก",
253854,
"la",
aliases = {"Classical Latin"},
}
m["la-vul"] = {
"ละตินตลาด", --vulgar = ภาษาตลาด
37560,
"la-cla",
aliases = {"Vulgar Latin"},
}
m["la-afr"] = {
"African Romance",
162064,
"roa-pro",
}
m["la-lat"] = {
"ละตินช่วงปลาย",
1503113,
"la",
ancestors = "la-cla",
aliases = {"Late Latin"},
}
m["la-med"] = {
"ละตินสมัยกลาง",
1163234,
"la",
ancestors = "la-lat",
aliases = {"Medieval Latin"},
}
m["la-eme"] = {
"ละตินสมัยกลางช่วงต้น",
nil,
"la-med",
aliases = {"Early Medieval Latin"},
}
m["la-ecc"] = {
"ละตินคริสตจักร",
1247932,
"la",
aliases = {"Ecclesiastical Latin", "Church Latin", "Liturgical Latin"},
ancestors = "la-lat",
}
m["la-ren"] = {
"ละตินสมัยเรอแนซ็องส์",
499083,
"la",
ancestors = "la-med",
aliases = {"Renaissance Latin"},
}
m["la-new"] = {
"ละตินใหม่",
1248221,
"la",
aliases = {"New Latin", "Modern Latin"},
ancestors = "la-ren",
}
m["la-con"] = {
"ละตินร่วมสมัย",
1246397,
"la-new",
aliases = {"Contemporary Latin"},
}
-------------------------------------------------------------------------
-- Miscellaneous Italic varieties --
-------------------------------------------------------------------------
m["xfa-cap"] = {
"Capenate",
133182969,
"xfa",
}
m["osc-luc"] = {
"Lucanian",
3265025,
"osc",
}
m["osc-sam"] = {
"Samnite",
133184287,
"osc",
}
-------------------------------------------------------------------------
-- Romance varieties --
-------------------------------------------------------------------------
m["roa-pro"] = {
"Proto-Romance",
3408029,
"la-lat",
ancestors = "la-vul",
}
-----------------------------------------------------
-- Catalan varieties --
-----------------------------------------------------
m["ca-val"] = {
"Valencian",
32641,
"ca",
}
-----------------------------------------------------
-- Franco-Provençal varieties --
-----------------------------------------------------
m["frp-old"] = {
"Old Franco-Provençal",
nil,
"frp",
}
-----------------------------------------------------
-- French and derived creole varieties --
-----------------------------------------------------
m["fro-nor"] = {
"ฝรั่งเศสเหนือเก่า",
2044917,
"fro",
aliases = {"นอร์มังเก่า", "Old Northern French", "Old Norman", "Old Norman French"},
}
m["fro-pic"] = {
"Picard Old French",
nil,
"fro",
}
m["xno"] = {
"แองโกล-นอร์มัง",
35214,
"fro-nor",
aliases = {"Anglo-Norman"},
}
m["xno-law"] = {
"Law French",
2044323,
"xno",
}
m["zrp"] = {
"Zarphatic",
36994,
"fro",
aliases = {"Judeo-French"},
pseudo_families = "qfa-jew",
}
m["fr-CA"] = {
"ฝรั่งเศสแบบแคนาดา",
1450506,
"fr",
aliases = {"Canadian French"},
}
m["fr-CH"] = {
"ฝรั่งเศสแบบสวิตเซอร์แลนด์",
1480152,
"fr",
aliases = {"Switzerland French"},
}
m["fr-aca"] = {
"ฝรั่งเศสแบบอะคาเดีย",
415109,
"fr",
aliases = {"Acadian French"},
}
m["fr-lou"] = {
"Louisiana French",
3083213,
"fr",
}
m["fr-mis"] = {
"Missouri French",
3083210,
"fr",
}
m["frc"] = {
"ฝรั่งเศสแบบเคเจิน",
880301,
"fr-lou",
aliases = {"ฝรั่งเศสแบบลุยเซียนา", "Cajun French", "Louisiana French"},
}
m["ht-sdm"] = {
"Saint Dominican Creole French",
nil,
"ht",
ancestors = "fr",
}
-- Norman varieties
m["nrf-grn"] = {
"Guernsey Norman",
56428,
"nrf",
aliases = {"Guernsey"},
}
m["nrf-jer"] = {
"Jersey Norman",
56430,
"nrf",
aliases = {"Jersey"},
}
-----------------------------------------------------
-- Gallo-Italic varieties --
-----------------------------------------------------
m["egl-old"] = {
"Old Emilian",
nil,
"egl",
}
m["lij-old"] = {
"Old Ligurian",
nil,
"lij",
aliases = {"Old Genoese"},
}
m["lmo-old"] = {
"Old Lombard",
97165320,
"lmo",
}
m["pms-old"] = {
"Old Piedmontese",
nil,
"pms",
aliases = {"Old Piemontese"},
}
m["vec-old"] = {
"Old Venetan",
nil,
"vec",
aliases = {"Old Venetian"},
}
m["rgn-old"] = {
"Old Romagnol",
nil,
"rgn",
}
-----------------------------------------------------
-- Italo-Romance varieties --
-----------------------------------------------------
-- Italian varieties
m["roa-oit"] = {
"อิตาลีเก่า",
nil,
"it",
aliases = {"Old Italian"},
}
m["it-CH"] = {
"อิตาลีแบบสวิตเซอร์แลนด์",
672147,
"it",
aliases = {"Switzerland Italian"},
}
-- Other Italo-Romance varieties
m["nap-old"] = {
"Old Neapolitan",
nil,
"nap",
}
m["scn-old"] = {
"Old Sicilian",
nil,
"scn",
}
-----------------------------------------------------
-- Occitan varieties --
-----------------------------------------------------
m["oc-auv"] = {
"Auvergnat",
35359,
"oc",
aliases = {"Auvernhat", "Auvergnese"},
}
m["oc-gas"] = {
"Gascon",
35735,
"oc",
}
-- standardized dialect of Gascon
m["oc-ara"] = {
"Aranese",
10196,
"oc-gas",
}
m["oc-lan"] = {
"Languedocien",
942602,
"oc",
aliases = {"Lengadocian"},
}
m["oc-lim"] = {
"Limousin",
427614,
"oc",
}
m["oc-pro"] = {
"พรอว็องส์",
241243,
"oc",
aliases = {"Provençal", "Provencal"},
}
m["oc-pro-old"] = {
"พรอว็องส์เก่า",
2779185,
"pro",
aliases = {"Old Provençal"},
}
m["oc-viv"] = {
"Vivaro-Alpine",
1649613,
"oc",
}
m["oc-jud"] = {
"Shuadit",
56472,
"oc",
aliases = {
"Chouhadite", "Chouhadit", "Chouadite", "Chouadit", "Shuhadit",
"Judeo-Occitan", "Judæo-Occitan", "Judaeo-Occitan",
"Judeo-Provençal", "Judæo-Provençal", "Judaeo-Provençal",
"Judeo-Provencal", "Judaeo-Provencal",
"Judeo-Comtadin", "Judæo-Comtadin", "Judaeo-Comtadin",
},
pseudo_families = "qfa-jew",
}
-----------------------------------------------------
-- Portuguese and derived creole varieties --
-----------------------------------------------------
-- Portuguese
m["pt-BR"] = {
"โปรตุเกสแบบบราซิล",
750553,
"pt",
aliases = {"Brazilian Portuguese"},
}
m["pt-PT"] = {
"โปรตุเกสแบบยุโรป",
922399,
"pt",
aliases = {"European Portuguese"},
}
-- Kabuverdianu (Cape Verde Creole, Cape Verdean Creole)
m["kea-bar"] = {
"Barlavento Kabuverdianu",
2217638,
"kea",
aliases = {"Barlavento", "Barlavento Creole", "Sampadjudu"},
}
m["kea-bvi"] = {
"Boa Vista Kabuverdianu",
16501837,
"kea-bar",
aliases = {"Boa Vista Creole"},
}
m["kea-sal"] = {
"Sal Kabuverdianu",
18707467,
"kea-bar",
aliases = {"Sal Creole"},
}
m["kea-saa"] = {
"Santo Antão Kabuverdianu",
18707472,
"kea-bar",
aliases = {"Santo Antão Creole"},
}
m["kea-sni"] = {
"São Nicolau Kabuverdianu",
18707549,
"kea-bar",
aliases = {"São Nicolau Creole"},
}
m["kea-svi"] = {
"São Vicente Kabuverdianu",
18707550,
"kea-bar",
aliases = {"São Vicente Creole"},
}
m["kea-sot"] = {
"Sotavento Kabuverdianu",
10261559,
"kea",
aliases = {"Sotavento", "Sotavento Creole", "Badiu"},
}
m["kea-bra"] = {
"Brava Kabuverdianu",
18670181,
"kea-sot",
aliases = {"Brava Creole"},
}
m["kea-fog"] = {
"Fogo Kabuverdianu",
18706861,
"kea-sot",
aliases = {"Fogo Creole"},
}
m["kea-mai"] = {
"Maio Kabuverdianu",
18707286,
"kea-sot",
aliases = {"Maio Creole"},
}
m["kea-san"] = {
"Santiago Kabuverdianu",
35117,
"kea-sot",
aliases = {"Santiago Creole"},
}
m["kea-alu"] = {
"ALUPEC Kabuverdianu",
375704,
"kea",
aliases = {"ALUPEC", "Alfabeto Unificado para a Escrita do Cabo-Verdiano"},
}
-----------------------------------------------------
-- Rhaeto-Romance varieties --
-----------------------------------------------------
-- Friulian varieties
m["fur-old"] = {
"Old Friulian",
nil,
"fur",
}
-- Ladin varieties
m["lld-amp"] = {
"Ampezan Ladin",
25617466,
"lld",
aliases = {"Anpezan", "Ampezan", "Ampezzan", "Ampezzano"},
}
m["lld-bad"] = {
"Badiot Ladin",
3706562,
"lld",
aliases = {"Badiot", "Badioto", "Badiotto"},
}
m["lld-cad"] = {
"Cadorino Ladin",
3706570,
"lld",
aliases = {"Cadorino"},
}
m["lld-fas"] = {
"Fascian Ladin",
742627,
"lld",
aliases = {"Fascian", "Fassano"},
}
m["lld-fod"] = {
"Fodom Ladin",
3706605,
"lld",
aliases = {"Fodom", "Livinallese"},
}
m["lld-for"] = {
"Fornes Ladin",
5470374,
"lld",
aliases = {"Fornes"},
}
m["lld-ghe"] = {
"Gherdëina Ladin",
3706597,
"lld",
aliases = {"Gherdëina", "Gardenese", "Val Gardena"},
}
m["lld-non"] = {
"Nones Ladin",
1055027,
"lld",
aliases = {"Nones", "Noneso"},
}
-- Romansh varieties
m["rm-old"] = {
"Old Romansh",
nil,
"rm",
}
m["rm-put"] = {
"Puter Romansh",
688309,
"rm",
aliases = {"Puter", "Putèr", "Upper Engadine", "rm-puter"},
}
m["rm-srm"] = {
"Surmiran Romansh",
690216,
"rm",
aliases = {"Surmiran", "rm-surmiran",
"Surmiran-Albula", -- Glottolog
},
}
m["rm-srs"] = {
"Sursilvan Romansh",
688348,
"rm",
aliases = {"Sursilvan", "rm-sursilv"},
}
m["rm-sut"] = {
"Sutsilvan Romansh",
688272,
"rm",
aliases = {"Sutsilvan", "rm-sutsilv"},
varieties = {"Scharans Sutsilvan"}, -- per Glottolog
}
m["rm-val"] = {
"Vallader Romansh",
690226,
"rm",
aliases = {"Vallader", "Putèr", "Lower Engadine", "rm-vallader"},
}
m["rm-gri"] = {
"Rumantsch Grischun",
688873,
"rm",
aliases = {"rm-rumgr"},
}
-----------------------------------------------------
-- Sardinian varieties --
-----------------------------------------------------
m["sc-old"] = {
"Old Sardinian",
nil,
"sc",
}
m["sc-src"] = {
"Logudorese",
777974,
"sc",
aliases = {"Logudorese Sardinian"},
}
m["sc-nuo"] = {
"Nuorese",
nil,
"sc-src",
aliases = {"Nuorese Sardinian"},
}
m["sc-sro"] = {
"Campidanese",
35348,
"sc",
aliases = {"Campidanese Sardinian"},
}
-----------------------------------------------------
-- Spanish varieties --
-----------------------------------------------------
m["es-ear"] = {
"Early Modern Spanish",
5364419,
"es",
}
m["es-AR"] = {
"Rioplatense Spanish",
509780,
"es",
}
m["es-BO"] = {
"Bolivian Spanish",
510730,
"es",
}
m["es-CL"] = {
"Chilean Spanish",
857295,
"es",
}
m["es-CO"] = {
"Colombian Spanish",
1115875,
"es",
}
m["es-CU"] = {
"Cuban Spanish",
824909,
"es",
}
m["es-MX"] = {
"Mexican Spanish",
616620,
"es",
}
m["es-PE"] = {
"Peruvian Spanish",
736236,
"es",
}
m["es-PH"] = {
"Philippine Spanish",
22091406,
"es",
}
m["es-US"] = {
"United States Spanish",
2301077,
"es",
aliases = {"US Spanish"},
}
--use label "US Spanish" to put Spanish terms in this category
m["es-PR"] = {
"Puerto Rican Spanish",
7258609,
"es",
}
m["es-VE"] = {
"Venezuelan Spanish",
840017,
"es",
}
m["es-lun"] = {
"Lunfardo",
1401612,
"es",
}
----------------------------------------------------------------------------------------------------------------------
-- Japonic varieties --
----------------------------------------------------------------------------------------------------------------------
-- Japanese varieties
m["ja-mid"] = {
"ญี่ปุ่นกลาง",
6841474,
"ojp",
ancestors = "ojp",
aliases = {"Middle Japanese"},
}
m["ja-mid-ear"] = {
"ญี่ปุ่นกลางช่วงต้น",
182695,
"ja-mid",
aliases = {"Early Middle Japanese"},
}
m["ja-mid-lat"] = {
"ญี่ปุ่นกลางช่วงปลาย",
1816184,
"ja-mid",
ancestors = "ja-mid-ear",
aliases = {"Late Middle Japanese"},
}
m["ja-ear"] = {
"ญี่ปุ่นใหม่ช่วงต้น",
5326692,
"ja",
ancestors = "ja-mid-lat",
aliases = {"Early Modern Japanese"},
}
m["ojp-eas"] = {
"ญี่ปุ่นเก่าตะวันออก",
65247957,
"ojp",
aliases = {"Eastern Old Japanese"},
}
m["ja-cla"] = {
"ญี่ปุ่นคลาสสิก",
1332057,
"ja",
aliases = {"Classical Japanese"},
-- FIXME: This is redundant because Classical Japanese is considered a child of (Modern) Japanese, which has ja-mid-ear
-- (as well as ja-mid-lat) as ancestors. However, the intent here is that the *direct* ancestor of ja-cla is ja-mid-ear
-- and ja-mid-lat is not an ancestor. Need to rethink ancestor handling.
-- ancestors = "ja-mid-ear",
}
----------------------------------------------------------------------------------------------------------------------
-- Koreanic varieties --
----------------------------------------------------------------------------------------------------------------------
-- Korean varieties
m["ko-KR"] = {
"เกาหลีใต้มาตรฐาน",
18795,
"ko",
aliases = {"South Korean standard","South Korean","Pyojuneo","P'yojunŏ"},
}
m["ko-KP"] = {
"เกาหลีเหนือมาตรฐาน",
18784,
"ko",
aliases = {"North Korean standard","North Korean","Munhwa'eo","Munhwa'ŏ"},
}
m["oko-lat"] = {
"เกาหลีเก่าช่วงปลาย",
nil,
"oko",
aliases = {"Late Old Korean"},
}
m["okm-ear"] = {
"เกาหลีกลางช่วงต้น",
nil,
"okm",
aliases = {"Early Middle Korean"},
}
m["ko-cen"] = {
"เกาหลีตอนกลาง",
nil,
"ko",
aliases = {"Central Korean"},
}
m["ko-gyg"] = {
"Gyeonggi Korean",
485492,
"ko-cen",
aliases = {"Seoul Korean"},
}
m["ko-chu"] = {
"Chungcheong Korean",
625800,
"ko-cen",
aliases = {"Hoseo Korean"},
}
m["ko-hwa"] = {
"Hwanghae Korean",
16183706,
"ko-cen",
}
m["ko-gan"] = {
"Gangwon Korean",
11260444,
"ko-cen",
aliases = {"Yeongdong Korean"},
}
m["ko-gys"] = {
"Gyeongsang Korean",
488002,
"ko",
aliases = {"Southeastern Korean"},
}
m["ko-jeo"] = {
"Jeolla Korean",
11250166,
"ko",
aliases = {"Southwestern Korean"},
}
m["ko-pyo"] = {
"Pyongan Korean",
7263142,
"ko",
aliases = {"Northwestern Korean"},
}
m["ko-ham"] = {
"Hamgyong Korean",
860702,
"ko",
aliases = {"Northeastern Korean"},
}
m["ko-yuk"] = {
"Yukjin Korean",
16171275,
"ko",
aliases = {"Yukchin Korean", "Ryukjin Korean", "Ryukchin Korean"},
}
----------------------------------------------------------------------------------------------------------------------
-- Mongolic varieties --
----------------------------------------------------------------------------------------------------------------------
m["xng-ear"] = {
"Early Middle Mongol",
nil,
"xng",
}
m["xng-lat"] = {
"Late Middle Mongol",
nil,
"xng",
ancestors = "xng-ear",
}
m["mn-kha"] = {
"Khalkha Mongolian",
6399808,
"mn",
aliases = {"Khalkha"},
}
m["mn-ord"] = {
"Ordos Mongolian",
716904,
"mn",
aliases = {"Ordos"},
}
m["mn-cha"] = {
"Chakhar Mongolian",
907425,
"mn",
aliases = {"Chakhar"},
}
m["mn-khr"] = {
"Khorchin Mongolian",
3196210,
"mn",
aliases = {"Khorchin"},
}
----------------------------------------------------------------------------------------------------------------------
-- Niger-Congo varieties --
----------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------
-- Akan varieties --
-----------------------------------------------------
m["tw"] = {
"Twi Akan",
36850,
"ak",
aliases = {"Twi"},
}
m["abr"] = {
"Abron",
34831,
"tw",
aliases = {"Brong", "Bono", "Bono Twi"},
}
m["tw-asa"] = {
"Asante Twi",
19261685,
"tw",
aliases = {"Asante", "Ashanti", "Ashante"},
}
m["tw-aku"] = {
"Akuapem Twi",
31150449,
"tw",
aliases = {"Akuapem", "Akuapim", "Akwapem Twi", "Akwapi"},
}
m["fat"] = {
"Fante Akan",
35570,
"ak",
aliases = {"Fante", "Fanti", "Fantse", "Mfantse"},
}
m["wss"] = {
"Wasa",
36914,
"ak",
}
-- creole
m["alv-kro"] = {
"Kromanti",
1093206,
"crp-mar",
}
-----------------------------------------------------
-- Bantu varieties --
-----------------------------------------------------
m["bnt-cmn"] = {
"Common Bantu",
nil,
"bnt-pro",
}
m["xh-bha"] = {
"Bhaca",
4900493,
"xh",
aliases = {"isiBhaca", "IsiBhaca"},
}
-- Rwanda-Rundi varieties
m["rw-kin"] = {
"Kinyarwanda",
33573,
"rw",
aliases = {"Rwanda"},
}
m["rw-run"] = {
"Kirundi",
33583,
"rw",
aliases = {"Rundi"},
}
-----------------------------------------------------
-- Fula varieties --
-----------------------------------------------------
m["fuc"] = {
"Pulaar",
1420205,
"ff",
}
m["fuf"] = {
"Pular",
3915357,
"ff",
}
m["ffm"] = {
"Maasina Fulfulde",
3915322,
"ff",
}
m["fue"] = {
-- no enwiki entry as of yet but frwiki and pmswiki have one
"Borgu Fulfulde",
12952426,
"ff",
}
m["fuh"] = {
-- no enwiki entry as of yet but frwiki and pmswiki have one
"Western Niger Fulfulde",
12952430,
"ff",
}
m["fuq"] = {
-- no enwiki entry as of yet but frwiki, hrwiki and pmswiki have one
"Central-Eastern Niger Fulfulde",
12628799,
"ff",
}
m["fuv"] = {
-- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki and swwiki have one
"Nigerian Fulfulde",
36129,
"ff",
}
m["fub"] = {
-- no enwiki entry as of yet but dewiki, frwiki, hrwiki, pmswiki, ptwiki, swwiki and yowiki have one
"Adamawa Fulfulde",
34776,
"ff",
}
m["fui"] = {
-- no enwiki entry as of yet but pmswiki and swwiki have one
"Bagirmi Fulfulde",
11003859,
"ff",
}
----------------------------------------------------------------------------------------------------------------------
-- Papuan varieties --
----------------------------------------------------------------------------------------------------------------------
m["kze"] = {
"Kosena",
12952663,
"auy",
}
m["ont"] = {
"Ontenu",
3352827,
"gaj",
aliases = {"Ontena"},
}
----------------------------------------------------------------------------------------------------------------------
-- Salishan varieties --
----------------------------------------------------------------------------------------------------------------------
m["lut-nor"] = {
"Northern Lushootseed",
nil,
"lut",
aliases = {"Northern Puget Sound Salish"},
}
m["slh"] = {
"Southern Lushootseed",
7997684,
"lut",
aliases = {"Southern Puget Sound Salish", "Twulshootseed", "Whulshootseed"},
}
m["ska"] = {
"Skagit",
12642471,
"lut-nor",
}
m["sno"] = {
"Snohomish",
25559662,
"lut-nor",
}
----------------------------------------------------------------------------------------------------------------------
-- Sino-Tibetan varieties --
----------------------------------------------------------------------------------------------------------------------
m["tbq-pro"] = {
"ทิเบโต-เบอร์มันดั้งเดิม",
7251864,
"sit-pro",
aliases = {"ทิเบต-พม่าดั้งเดิม", "Proto-Tibeto-Burman"},
}
-----------------------------------------------------
-- Chinese varieties --
-----------------------------------------------------
------------- Old Chinese, Middle Chinese -------------
m["och-ear"] = {
"จีนเก่าช่วงต้น",
nil,
"och",
aliases = {"Early Old Chinese"},
}
m["och-lat"] = {
"จีนเก่าช่วงปลาย",
nil,
"och",
aliases = {"Late Old Chinese"},
}
m["ltc-ear"] = {
"จีนยุคกลางช่วงต้น",
nil,
"ltc",
aliases = {"Early Middle Chinese"},
}
m["ltc-lat"] = {
"จีนยุคกลางช่วงปลาย",
nil,
"ltc",
aliases = {"Late Middle Chinese"},
}
------------- Classical/Literary varieties -------------
-- FIXME: Temporary.
m["lzh-shi"] = {
"Traditional Chinese poetry",
1759242,
"lzh",
}
-- FIXME: Temporary.
m["lzh-cii"] = {
"Ci",
1091366,
"lzh",
}
-- FIXME: Temporary.
m["lzh-yue"] = {
"Classical Cantonese",
nil,
"lzh",
}
-- FIXME: Temporary.
m["lzh-cmn"] = {
"Classical Mandarin",
nil,
"lzh",
}
-- FIXME: Temporary.
m["lzh-tai"] = {
"Classical Taishanese",
nil,
"lzh",
}
-- FIXME: Temporary.
m["lzh-cmn-TW"] = {
"Classical Taiwanese Mandarin",
nil,
"lzh-cmn",
}
-- FIXME: Temporary.
m["lzh-VI"] = {
"Vietnamese Classical Chinese",
17034227,
"lzh",
}
-- FIXME: Temporary.
m["lzh-KO"] = {
"Korean Classical Chinese",
10496257,
"lzh",
ietf_subtag = "lzh-KR" -- KR = South Korea, as there is no code for Korea as a whole
}
-- FIXME: Temporary.
m["lzh-lit"] = {
"Literary Chinese",
nil,
"lzh",
}
-- FIXME: Temporary. FIXME: Do we need this? How does it differ from Old Chinese?
m["lzh-pre"] = {
"Pre-Classical Chinese",
nil,
"lzh",
}
------------- Written Vernacular varieties -------------
-- FIXME: Temporary.
m["cmn-wvc"] = {
"Written vernacular Mandarin",
783605,
"cmn",
}
-- FIXME: Temporary. FIXME: How does this differ from "Literary Cantonese"?
m["yue-wvc"] = {
"Written vernacular Cantonese",
nil,
"yue",
}
-- FIXME: Temporary.
m["zhx-tai-wvc"] = {
"Written vernacular Taishanese",
nil,
"zhx-tai",
}
------------- Mandarin varieties -------------
-- FIXME: Temporary. NOTE: The Linguist List assigns the "w:Beijing dialect" (Wikidata 1147606) the code "cmn-bej" and
-- the larger "w:Beijing Mandarin (division of Mandarin)" dialect group (Wikidata 2169652; what we call "Beijingic
-- Mandarin", after Glottolog) the code "cmn-bei".
m["cmn-bei"] = {
"Beijing Mandarin",
1147606,
"cmn-bec",
}
-- FIXME: Temporary.
m["cmn-bec"] = {
"Beijingic Mandarin",
2169652,
"cmn",
}
-- FIXME: Temporary. NOTE: The Linguist List uses the code cmn-zho.
m["cmn-cep"] = {
"Central Plains Mandarin",
3048775,
"cmn",
aliases = {"Zhongyuan Mandarin"},
}
m["cmn-ear"] = {
"จีนกลางช่วงต้น",
837169,
"cmn",
ancestors = "ltc",
aliases = {"Early Mandarin"},
}
-- FIXME: Temporary.
m["cmn-gua"] = {
"Guanzhong Mandarin",
3431648,
"cmn-cep",
}
-- FIXME: Temporary. Appears to be a subdialect of Guiliu Mandarin, which in turn is a subdialect of Southwestern Mandarin.
m["cmn-gui"] = {
"Guilin Mandarin",
11111636,
"cmn-sow",
}
m["cmn-jhu"] = {
"Jianghuai Mandarin",
2128953,
"cmn",
aliases = {"Lower Yangtze Mandarin"},
}
-- FIXME: Temporary.
m["cmn-lan"] = {
"Lanyin Mandarin",
662754,
"cmn",
}
-- FIXME: Temporary.
m["cmn-MY"] = {
"Malaysian Mandarin",
13646143,
"cmn",
}
-- FIXME: Temporary.
m["cmn-nan"] = {
"Nanjing Mandarin",
2681098,
"cmn-jhu",
}
-- FIXME: Temporary.
m["cmn-noe"] = {
"Northeastern Mandarin",
1064504,
"cmn",
}
-- FIXME: Temporary.
m["cmn-PH"] = {
"Philippine Mandarin",
7185155,
"cmn",
}
-- FIXME: Temporary.
m["cmn-SG"] = {
"Singapore Mandarin",
1048980,
"cmn",
}
-- FIXME: Temporary.
m["cmn-sow"] = {
"Southwestern Mandarin",
2609239,
"cmn",
}
-- FIXME: Temporary. Appears to be a subdialect of Jilu Mandarin.
m["cmn-tia"] = {
"Tianjin Mandarin",
7800220,
"cmn",
}
-- FIXME: Temporary. NOTE: Wikidata also has Q4380827 "Taiwanese Mandarin", defined as "rare dialect of Standard Chinese
-- (Mandarin) used in Taiwan, which is strongly influenced by Taiwanese Hokkien; mostly used by elderlies" and having no
-- English Wikipedia article (but see w:zh:臺灣國語).
m["cmn-TW"] = {
"Taiwanese Mandarin",
262828,
"cmn",
}
-- FIXME: Temporary. Appears to be a subdialect of Wu-Tian Mandarin, in turn a subdialect of Southwestern Mandarin.
-- Given the code cmn-xwu in the Linguist List.
m["cmn-wuh"] = {
"Wuhan Mandarin",
11124731,
"cmn-sow",
aliases = {"Wuhanese"},
}
-- FIXME: Temporary. Appears to be a subdialect of Lanyin Mandarin.
m["cmn-xin"] = {
"Xining Mandarin",
nil,
"cmn-lan",
}
-- FIXME: Temporary.
m["cmn-yan"] = {
"Yangzhou Mandarin",
nil,
"cmn-jhu",
}
------------- Cantonese varieties -------------
-- FIXME: Temporary.
m["yue-gua"] = {
"Guangzhou Cantonese",
nil,
"yue",
}
-- FIXME: Temporary. Given the codes yue-yue or yue-can in the Linguist List.
m["yue-HK"] = {
"Hong Kong Cantonese",
5894342,
"yue",
}
-- FIXME: Temporary. FIXME: How does this differ from "Written vernacular Cantonese"?
m["yue-lit"] = {
"Literary Cantonese",
2472605,
"yue",
}
------------- Wu varieties -------------
m["wuu-han"] = {
"Hangzhounese",
5648144,
"wuu",
}
m["wuu-nin"] = {
"Ningbonese",
3972199,
"wuu",
}
-- FIXME: Temporary.
m["wuu-nor"] = {
"Northern Wu",
7675988,
"wuu",
aliases = {"Taihu Wu"},
}
-- FIXME: Temporary? Subvariety of Taihu Wu. NOTE: "chm" stands for Chongming, the main dialect, to avoid a conflict
-- with Shanghainese.
m["wuu-chm"] = {
"Shadi Wu",
6112340,
"wuu-nor",
}
m["wuu-sha"] = {
"เซี่ยงไฮ้",
36718,
"wuu-nor",
aliases = {"ซ่างไห่", "Shanghainese"},
}
m["wuu-suz"] = {
"Suzhounese",
831744,
"wuu-nor",
}
-- FIXME: Temporary. May be converted into a full language and/or split.
m["wuu-wen"] = {
"Wenzhounese",
710218,
"wuu",
}
------------- Xiang varieties -------------
m["hsn-lou"] = {
"Loudi Xiang",
10943823,
"hsn-old",
}
m["hsn-hya"] = {
"Hengyang Xiang",
20689035,
"hsn-hzh",
}
m["hsn-hzh"] = {
"Hengzhou Xiang",
nil,
"hsn",
}
m["hsn-new"] = {
"New Xiang",
7012696,
"hsn",
aliases = {"Chang-Yi"},
}
m["hsn-old"] = {
"เซียงเก่า",
7085453,
"hsn",
aliases = {"Old Xiang", "Lou-Shao"},
}
------------- Hakka varieties -------------
-- FIXME: Temporary.
m["hak-dab"] = {
"Dabu Hakka",
19855566,
"hak", -- formerly hak-TW but seems to be spoken primary in Dabu County in Guangdong
}
-- FIXME: Temporary.
m["hak-eam"] = {
"Early Modern Hakka",
nil,
"hak",
}
-- FIXME: Temporary.
m["hak-hai"] = {
"Hailu Hakka",
17038519,
"hak", -- often considered a Taiwanese lect but also spoken in [[Shanwei]], [[Guangdong]]
}
-- FIXME: Temporary.
m["hak-HK"] = {
"Hong Kong Hakka",
2675834,
"hak",
}
-- FIXME: Temporary.
m["hak-hui"] = {
"Huiyang Hakka",
16873881,
"hak",
}
-- FIXME: Temporary.
m["hak-hui-MY"] = {
"Malaysian Huiyang Hakka",
nil,
"hak-hui",
}
-- FIXME: Temporary. Similar to and possibly the parent of Sixian Hakka in Taiwan.
m["hak-mei"] = {
"Meixian Hakka",
839295,
"hak",
aliases = {"Moiyan Hakka", "Meizhou Hakka"},
}
-- FIXME: Temporary.
m["hak-six"] = {
"Sixian Hakka",
9668261,
"hak-TW",
}
-- FIXME: Temporary.
m["hak-TW"] = {
"Taiwanese Hakka",
2391532,
"hak",
}
-- FIXME: Temporary.
m["hak-zha"] = {
"Zhao'an Hakka",
6703311,
"hak",
aliases = {"Zhangzhou Hakka"},
}
-- Southern Min varieties --
m["nan-anx"] = {
"Anxi Hokkien",
97064149,
"nan-qua",
}
m["nan-cha"] = {
"Changtai Hokkien",
nil,
"nan-zha",
}
m["nan-hou"] = {
"Houlu Min",
19855492,
"nan-dat",
}
m["nan-hui"] = {
"Hui'an Hokkien",
16241797,
"nan-qua",
}
m["nan-jin"] = {
"ฮกเกี้ยนแบบจิ้นเจียง",
11089375,
"nan-qua",
aliases = {"Jinjiang Hokkien"},
}
m["nan-kin"] = {
"Kinmenese Hokkien",
56278342,
"nan-xia",
aliases = {"Kinmen Hokkien"},
}
m["nan-med"] = {
"Medan Hokkien",
6805114,
"nan-zha",
}
m["nan-pen"] = {
"ฮกเกี้ยนแบบปีนัง",
11120689,
"nan-zha",
aliases = {"Penang Hokkien"},
}
m["nan-hbl-PH"] = {
"ฮกเกี้ยนแบบฟิลิปปินส์",
3236692,
"nan-qua",
aliases = {"Philippine Hokkien"},
}
m["nan-qia"] = {
"Qianlu Min",
19842517,
"nan-dat",
}
m["nan-qua"] = {
"ฮกเกี้ยนแบบเฉวียนโจว",
2251677,
"nan-hbl",
aliases = {"Quanzhou Hokkien", "Chinchew", "Choanchew"},
}
-- FIXME: Temporary? Derived from both Quanzhou and Zhangzhou Hokkien.
m["nan-hbl-SG"] = {
"ฮกเกี้ยนแบบสิงคโปร์",
3846528,
"nan-hbl",
aliases = {"Singapore Hokkien"},
}
m["nan-spm"] = {
"Southern Malaysian Hokkien",
7570322,
"nan-qua",
aliases = {"Southern Malaysia Hokkien", "Southern Peninsular Malaysian Hokkien", "Southern Peninsular Malaysia Hokkien"}
}
m["nan-hbl-TW"] = {
"ฮกเกี้ยนแบบไต้หวัน",
36778,
"nan-hbl",
aliases = {"Taiwanese Hokkien"},
}
m["nan-ton"] = {
"Tong'an Hokkien",
nil,
"nan-xia",
}
m["nan-xia"] = {
"ฮกเกี้ยนแบบเซี่ยเหมิน",
68744,
"nan-hbl",
aliases = {"เอ้หมึง", "อามอย", "เซี่ยเหมิน", "Amoy", "Amoyese", "Amoynese", "Xiamenese"},
}
m["nan-yon"] = {
"Yongchun Hokkien",
65118728,
"nan-qua",
}
m["nan-zha"] = {
"ฮกเกี้ยนแบบจางโจว",
8070492,
"nan-hbl",
aliases = {"Zhangzhou Hokkien", "Changchew", "Chiangchew", "Changchow"},
}
m["nan-zho"] = {
"Zhao'an Hokkien",
65118728,
"nan-zha",
aliases = {"Zhao'an", "Chawan", "Chawan Hokkien"},
}
m["nan-zhp"] = {
"Zhangping Hokkien",
15937822,
"nan-zha",
}
------------- Other Min varieties -------------
-- FIXME: Temporary. Affiliation within Min uncertain; some combination of Eastern and Southern.
m["zhx-zho"] = {
"Zhongshan Min",
8070958,
"zh",
}
------------- Other Chinese varieties -------------
-- FIXME: Temporary. Affiliation within Chinese uncertain; possibly Yue.
m["zhx-dan"] = {
"Danzhou Chinese",
2578935,
"zh",
}
------------- Chinese romanization varieties -------------
-- [[Wiktionary:Information desk/2022/June#Etymology Coding Issue]]
-- [[Wiktionary:Grease pit/2022/June#Transliteration Systems in Etymologies 2]]
m["cmn-pinyin"] = {
"Hanyu Pinyin",
42222,
"cmn",
aliases = {"Pinyin"},
}
m["cmn-tongyong"] = {
"Tongyong Pinyin",
700739,
"cmn",
}
m["cmn-wadegiles"] = {
"Wade–Giles",
208442,
"cmn",
aliases = {"Wade-Giles", "Wade Giles"},
}
m["zh-postal"] = {
"Postal Romanization",
151868,
"zh",
}
-- Chinese cyrillization
m["cmn-palladius"] = {
"Palladius",
1234239,
"cmn",
aliases = {"Palladius system"},
}
-----------------------------------------------------
-- Tibetic varieties --
-----------------------------------------------------
m["adx"] = {
"Amdo Tibetan",
56509,
"bo",
}
m["kbg"] = {
"Khamba",
12952626,
"bo",
}
m["khg"] = {
"Khams Tibetan",
56601,
"bo",
}
m["tsk"] = {
"Tseku",
11159532,
"bo",
}
----------------------------------------------------------------------------------------------------------------------
-- Tai-Kadai varieties --
----------------------------------------------------------------------------------------------------------------------
m["th-old"] = {
"ไทยเก่า",
nil,
"tai-swe-pro",
aliases = {"Old Thai"},
wikipedia_article = "Thai language#Old Thai",
}
m["th-suk"] = {
"ไทยเก่าสมัยสุโขทัย", -- 1238-1438. Cannot use "Sukhothai Thai" as Sukhothai is the current city and "Sukhothai Thai" is a lect.
nil,
"th-old",
aliases = {"สยามสมัยสุโขทัย", "Sukhothai Old Thai", "Sukhothai Siamese"},
wikipedia_article = "Thai language#Old Thai",
}
m["th-ayu"] = {
"ไทยเก่าสมัยอยุธยา", -- 1351-1767. Cannot use "Ayutthaya Thai" as Ayutthaya is the current city.
nil,
"th-old",
aliases = {"สยามสมัยอยุธยา", "Ayutthaya Old Thai", "Ayutthaya Siamese"},
wikipedia_article = "Thai language#Old Thai",
}
--[[
m["th-new"] = {
"Hacked Thai", -- temporary for testing new translit/display methods
nil,
"th",
translit = "User:Benwing2/th-scraping-translit",
display_text = "User:Benwing2/th-scraping-translit",
strip_diacritics = "User:Benwing2/th-scraping-translit",
preprocess_links = "User:Benwing2/th-scraping-translit",
}
]]
m["tai-shz"] = {
"Shangsi Zhuang",
13216,
"za",
}
----------------------------------------------------------------------------------------------------------------------
-- Turkic varieties --
----------------------------------------------------------------------------------------------------------------------
m["trk-cmn-pro"] = {
"เตอร์กิกสามัญดั้งเดิม",
1126028,
"trk-pro",
aliases = {"Proto-Common Turkic"},
}
m["trk-ogr-pro"] = {
"Proto-Oghur",
1422731,
"trk-pro",
family = "trk-ogr",
}
m["trk-bul-pro"] = {
"Proto-Bulgar",
nil,
"trk-ogr-pro",
}
m["trk-ogz-pro"] = {
"โอคุซดั้งเดิม",
494600,
"trk-pro",
family = "trk-ogz",
aliases = {"เตอร์กิกสามัญตะวันตกเฉียงใต้", "Proto-Oghuz", "Southwestern Common Turkic"},
}
m["crh-dbj"] = {
"Dobrujan Tatar",
12811566,
"crh",
aliases = {"Romanian Tatar"},
}
m["cv-ana"] = {
"Anatri Chuvash",
nil,
"cv",
aliases = {"Anatri", "Lower Chuvash"},
}
m["cv-mid"] = {
"Middle Chuvash",
nil,
"cv",
ancestors = "cv-old",
}
m["cv-old"] = {
"Old Chuvash",
nil,
"cv",
ancestors = "xbo-vol",
}
m["cv-vir"] = {
"Viryal Chuvash",
4278332,
"cv",
aliases = {"Viryal", "Upper Chuvash"},
}
m["kjh-fyu"] = {
"Fuyu Kyrgyz",
2598963,
"kjh",
aliases = {"Fuyu Kirgiz", "Fuyu Kirghiz", "Manchurian Kyrgyz", "Manchurian Kirgiz", "Manchurian Kirghiz"},
}
m["klj-arg"] = {
"Arghu",
33455,
"klj",
ancestors = "trk-cmn-pro",
}
m["otk-kir"] = {
"คีร์กีซเก่า",
83142,
"otk",
aliases = {"Old Kirghiz", "Yenisei Turkic", "Yenisei Kyrgyz"},
}
m["otk-ork"] = {
"Orkhon Turkic",
31295480,
"otk",
}
m["qwm-cum"] = {
"Cuman",
1075050,
"qwm",
aliases = {"Kuman", "Polovtsian", "Polovcian"},
}
m["qwm-arm"] = {
"Armeno-Kipchak",
2027503,
"qwm",
ancestors = "qwm-cum",
aliases = {"Xıpçaχ tili", "Tatarça"},
}
m["qwm-mam"] = {
"Mamluk-Kipchak",
4279942,
"qwm",
aliases = {"Mameluk-Kipchak"},
}
m["az-cls"] = {
"อาเซอร์ไบจานคลาสสิก",
nil,
"az",
aliases = {"Classical Azerbaijani", "Classical Azeri"},
}
m["qxq"] = {
"Qashqai",
13192,
"az",
aliases = {"Qaşqay", "Qashqayi", "Kashkai", "Kashkay"},
}
m["tr-CY"] = {
"ตุรกีแบบไซปรัส",
7917392,
"tr",
aliases = {"Cypriot Turkish"},
}
m["uz-afg"] = {
-- NOTE: has ISO 639-3 code uzs assigned to it.
"Afghan Uzbek",
1066787,
"uz",
aliases = {"Southern Uzbek"},
translit = "uz-afg-translit",
}
m["xbo-dan"] = {
"Danube Bulgar",
nil,
"xbo",
}
m["xbo-vol"] = {
"Volga Bulgar",
nil,
"xbo",
}
----------------------------------------------------------------------------------------------------------------------
-- Uralic varieties --
----------------------------------------------------------------------------------------------------------------------
m["fiu-pro"] = {
"ฟินโน-ยูกริกดั้งเดิม",
79890,
"urj-pro",
aliases = {"Proto-Finno-Ugric"},
}
m["urj-fpr-pro"] = {
"ฟินโน-เปอร์มิกดั้งเดิม",
nil,
"urj-pro",
aliases = {"Proto-Finno-Permic"},
}
m["krl-nor"] = {
"North Karelian",
125501196,
"krl",
}
m["krl-sou"] = {
"South Karelian",
129812730,
"krl",
}
m["mns-eas"] = {
"Eastern Mansi",
30311755,
"mns-cen",
}
m["mns-wes"] = {
"Western Mansi",
30311756,
"mns-cen",
}
----------------------------------------------------------------------------------------------------------------------
-- Yeneseian varieties --
----------------------------------------------------------------------------------------------------------------------
m["qfa-yke-pro"] = {
"Proto-Ketic",
nil,
"qfa-yen-pro",
family = "qfa-yke",
}
m["qfa-yko-pro"] = {
"Proto-Kottic",
nil,
"qfa-yen-pro",
family = "qfa-yko",
}
m["qfa-yrn-pro"] = {
"Proto-Arinic",
nil,
"qfa-yen-pro",
family = "qfa-yrn",
}
m["qfa-ypm-pro"] = {
"Proto-Pumpokolic",
nil,
"qfa-yen-pro",
family = "qfa-ypm",
}
----------------------------------------------------------------------------------------------------------------------
-- Miscellaneous varieties --
----------------------------------------------------------------------------------------------------------------------
m["mul-tax"] = {
"taxonomic name",
522190,
"mul",
}
-----------------------------------------------------
-- Elamite varieties --
-----------------------------------------------------
m["elx-old"] = {
"Old Elamite",
nil,
"elx",
}
m["elx-mid"] = {
"Middle Elamite",
nil,
"elx",
}
m["elx-neo"] = {
"Neo-Elamite",
nil,
"elx",
}
m["elx-ach"] = {
"Achaemenid Elamite",
nil,
"elx",
}
-----------------------------------------------------
-- Substrates --
-----------------------------------------------------
-- Pre-Roman substrates
m["qsb-ibe"] = {
"Paleo-Hispanic",
246801,
"und",
family = "qfa-sub",
aliases = {"Palaeo-Hispanic", "Paleohispanic", "Palaeohispanic", "Paleo-Iberian", "Palaeo-Iberian"},
}
m["qsb-bal"] = {
"Paleo-Balkan",
1815070,
"und",
family = "qfa-sub",
aliases = {"Palaeo-Balkan", "Paleobalkan", "Palaeobalkan"},
}
m["xaq"] = {
"Aquitanian",
500522,
"euq-pro",
family = "euq",
}
return require("Module:languages").finalizeData(m, "language", true)
ge292t4f68shdpioxam5njyzp589998
มอดูล:vi-translit
828
51063
5759967
2766037
2026-09-08T13:30:57Z
Octahedron80
267
5759967
Scribunto
text/plain
local export = {}
local gsub = mw.ustring.gsub
local gmatch = mw.ustring.gmatch
local match = mw.ustring.match
local u = mw.ustring.char
local initialConsonants = {
-- native words
["b"] = {"บ","บ่","บ๋","บ๊"}, ["c"] = {"ก","ก่","ก๋","ก๊"}, ["ch"] = {"จ","จ่","จ๋","จ๊"},
["d"] = {"ซฺ","สฺ่","สฺ","ซฺ้"}, ["đ"] = {"ด","ด่","ด๋","ด๊"},
["g"] = {"กฺ","กฺ่","กฺ๋","กฺ๊"}, ["gh"] = {"กฺ","กฺ่","กฺ๋","กฺ๊"}, ["gi"] = {"ซฺ","สฺ่","สฺ","ซฺ้"}, ["gy"] = {"ซฺ","สฺ่","สฺ","ซฺ้"},
["h"] = {"ฮ","ห่","ห","ฮ้"}, ["k"] = {"ก","ก่","ก๋","ก๊"}, ["kh"] = {"ค","ข่","ข","ค้"},
["l"] = {"ล","หล่","หล","ล้"}, ["m"] = {"ม","หม่","หม","ม้"}, ["n"] = {"น","หน่","หน","น้"},
["ng"] = {"ง","หง่","หง","ง้"}, ["ngh"] = {"ง","หง่","หง","ง้"}, ["nh"] = {"ญ","หญ่","หญ","ญ้"},
["ph"] = {"ฟ","ฝ่","ฝ","ฟ้"}, ["q"] = {"ก","ก่","ก๋","ก๊"}, ["qu"] = {"ก๎ว","ก๎ว่","ก๎ว๋","ก๎ว๊"},
["r"] = {"ซฺ","สฺ่","สฺ","ซฺ้"}, ["ŕ"] = {"ร","หร่","หร","ร้"}, ["s"] = {"ซ","ส่","ส","ซ้"},
["t"] = {"ต","ต่","ต๋","ต๊"}, ["th"] = {"ท","ถ่","ถ","ท้"}, ["tr"] = {"จ","จ่","จ๋","จ๊"},
["v"] = {"ว","หว่","หว","ว้"}, ["x"] = {"ซ","ส่","ส","ซ้"}, ["z"] = {"ซฺ","สฺ่","สฺ","ซฺ้"},
["_"] = {"อ","อ่","อ๋","อ๊"}, ["ꞗ"] = {"บฺ","บฺ่","บฺ๋","บฺ๊"},
-- borrowed words
["p"] = {"ป","ป่","ป๋","ป๊"}, ["br"] = {"บ๎ร","บ๎ร่","บ๎ร๋","บ๎ร๊"}, ["cr"] = {"ก๎ร","ก๎ร่","ก๎ร๋","ก๎ร๊"},
["gr"] = {"ก๎ร","ก๎ร่","ก๎ร๋","ก๎ร๊"}, ["xt"] = {"ซต","สต่","สต๋","ซต๊"},
}
local finalConsonants = {
["c"] = "ก", ["ch"] = "ก", ["k"] = "ก", ["m"] = "ม", ["n"] = "น",
["ng"] = "ง", ["nh"] = "ญ", ["p"] = "ป", ["t"] = "ต", ["_"] = "",
}
local vowels = {
["ă"] = "%1ั%2", ["â"] = "เ%1ิ%2", ["e"] = "แ%1%2", ["ơ"] = "เ%1%2อ",
["ai"] = "%1%2าย", ["ao"] = "%1%2าว", ["au"] = "เ%1%2า", ["âu"] = "เ%1ิ%2ว", ["ay"] = "%1ั%2ย", ["ây"] = "เ%1็%2ย",
["eo"] = "แ%1%2ว", ["êu"] = "เ%1%2ว", ["ia"] = "เ%1ี%2ย", ["iê"] = "เ%1ี%2ย", ["iu"] = "%1ี%2ว", ["iêu"] = "เ%1ี%2ยว",
["oa"] = "%1๎ว%2า", ["oă"] = "%1๎วั%2", ["oe"] = "แ%1๎ว%2", ["oi"] = "%1%2อย", ["ôi"] = "โ%1%2ย", ["ơi"] = "เ%1%2ย",
["oai"] = "%1๎ว%2าย", ["oao"] = "%1๎ว%2าว", ["oay"] = "%1๎วั%2ย",
["ua"] = "%1ั%2ว", ["ưa"] = "เ%1ื%2อ", ["uâ"] = "%1%2ว", ["uê"] = "เ%1๎ว%2", ["ui"] = "%1ู%2ย", ["ưi"] = "%1ื%2ย",
["uô"] = "%1%2ว", ["uơ"] = "%1ั%2ว", ["ươ"] = "เ%1ื%2อ", ["ưu"] = "%1ื%2ว", ["uy"] = "%1๎วี%2",
["uây"] = "เ%1๎ว็%2ย", ["uôi"] = "%1%2วย", ["uya"] = "เ%1๎วี%2ย", ["uyê"] = "เ%1๎วี%2ย", ["uyu"] = "%1๎วี%2ว", ["ươi"] = "เ%1ื%2อย", ["ươu"] = "เ%1ื%2อว",
["yê"] = "เ%1ี%2ย", ["yêu"] = "เ%1ี%2ยว",
["oo"] = "%1%2อ", ["ôô"] = "โ%1%2",
}
local vowels2 = {
["a"] = {"%1%2า","%1ั%2"}, ["ê"] = {"เ%1%2", "เ%1็%2"}, ["i"] = {"%1ี%2", "%1ิ%2"}, ["y"] = {"%1ี%2", "%1ิ%2"},
["o"] = {"%1%2อ", "%1็%2อ"}, ["ô"] = {"โ%1%2", "%1%2"}, ["u"] = {"%1ู%2", "%1ุ%2"}, ["ư"] = {"%1ื%2อ", "%1ึ%2"},
}
local toneMarks = {
[u(0x0300)] = 2, [u(0x0303)] = 3, [u(0x0309)] = 4, [u(0x0301)] = 5, [u(0x0323)] = 6,
}
local toneClass = "["..u(0x0300)..u(0x0303)..u(0x0309)..u(0x0301)..u(0x0323).."]"
local vowelClass = "["..u(0x0306)..u(0x0302)..u(0x031B).."aeiouy]+"
local function isempty(s)
return s == nil or s == ""
end
local function spell(lex)
local tlex = "�"
if initialConsonants[lex.init] ~= nil then
if lex.tone == 2 or lex.tone == 6 then
tlex = initialConsonants[lex.init][2] or "�"
elseif lex.tone == 3 or lex.tone == 4 then
tlex = initialConsonants[lex.init][3] or "�"
elseif lex.tone == 5 then
tlex = initialConsonants[lex.init][4] or "�"
else
tlex = initialConsonants[lex.init][1] or "�"
end
end
local vowel = "�"
local final = finalConsonants[lex.final] or "�"
if not isempty(lex.vowel) then
if vowels[lex.vowel] ~= nil then
vowel = vowels[lex.vowel]
elseif vowels2[lex.vowel] ~= nil then
if match(final, "[กงญ]") then -- c, ch, k, ng, nh
vowel = vowels2[lex.vowel][2] or "�"
else
vowel = vowels2[lex.vowel][1] or "�"
end
end
end
tlex = gsub(tlex, "^([^"..u(0x0E48).."-"..u(0x0E4B).."]+)(["..u(0x0E48).."-"..u(0x0E4B).."]?)$", vowel) .. final
-- if some words can"t spell, fall back
if match(tlex, "�") then
tlex = nil
end
return tlex
end
function export.tr(text, lang, sc, debug_mode)
if type(text) == "table" then -- called directly from a template
text = text.args[1]
end
if sc == "Hani" then
return nil
end
text = mw.ustring.toNFD(mw.ustring.lower(text))
local syllables = mw.text.split(text, "[ %-]", false)
local temp, punc1, punc2
local lex = {}
for k,v in ipairs(syllables) do
if match(v, "^%p*[a-zđ"..u(0x0300)..u(0x0303)..u(0x0309)..u(0x0301)..u(0x0323)..u(0x0306)..u(0x0302)..u(0x031B).."]-%p*$") then
-- remember punctuations
punc1 = match(v, "^%p*")
v = gsub(v, "^%p*", "")
punc2 = match(v, "%p*$")
v = gsub(v, "%p*$", "")
-- get tone and cut it off
lex.tone = toneMarks[match(v, toneClass)] or 1
v = gsub(v, toneClass, "")
-- "gi" exception
if v == "gi" then
v = "giy"
end
-- get vowel
lex.vowel = match(v, vowelClass)
-- get initial and final consonants
temp = mw.text.split(v, lex.vowel, true)
lex.init = (isempty(temp[1]) and "_" or temp[1])
lex.final = (isempty(temp[2]) and "_" or temp[2])
lex.vowel = mw.ustring.toNFC(lex.vowel)
if lex.init == "q" and match(lex.vowel, "^u") then
lex.init = "qu"
lex.vowel = mw.ustring.sub(lex.vowel, 2)
end
if lex.init == "g" and match(lex.vowel, "^i") then
lex.init = "gi"
lex.vowel = mw.ustring.sub(lex.vowel, 2)
end
syllables[k] = punc1 .. (spell(lex) or v) .. punc2
end
end
return table.concat(syllables, " ")
end
return export
k6q72xtu4hw8xkzktu2k3xdve7u4eum
มอดูล:vi-pron
828
51203
5759965
1570791
2026-09-08T13:15:10Z
Octahedron80
267
5759965
Scribunto
text/plain
local export = {}
local m_str_utils = require("Module:string utilities")
local IPA_module = "Module:IPA"
local parse_utilities_module = "Module:parse utilities"
local lang = require("Module:languages").getByCode("vi")
local ugcodepoint = m_str_utils.gcodepoint
local rsubn = m_str_utils.gsub
local rsplit = m_str_utils.split
local ulen = m_str_utils.len
local ulower = m_str_utils.lower
local rmatch = m_str_utils.match
local usub = m_str_utils.sub
local toNFC = mw.ustring.toNFC
local toNFD = mw.ustring.toNFD
local u = m_str_utils.char
local function rsub(str, from, to)
return (rsubn(str, from, to))
end
local function track(page)
require("Module:debug/track")("vi-pron/" .. page)
return true
end
local function split_on_comma(term)
if not term then
return nil
end
if term:find(",%s") then
return require(parse_utilities_module).split_on_comma(term)
elseif term:find(",") then
return rsplit(term, ",")
else
return {term}
end
end
--àằầèềìòồờùừỳ áắấéếíóốớúứý ảẳẩẻểỉỏổởủửỷ ãẵẫẽễĩõỗỡũữỹ ạặậẹệịọộợụựỵ
local tone_diacritics = {
[u(0x0300)] = 2, -- grave accent = ◌̀
[u(0x0301)] = 3, -- acute accent = ◌́
[u(0x0309)] = 4, -- hook above = ◌̉
[u(0x0303)] = 5, -- tilde = ◌̃
[u(0x0323)] = 6, -- dot under = ◌̣
}
local tone_contour = {
["hn"] = { [1] = "˧˧", [2] = "˨˩", ["3a"] = "˧˦", [3] = "˧˦", [4] = "˧˩", [5] = "˦ˀ˥", [6] = "˧˨ʔ" },
["hue"] = { [1] = "˧˧", [2] = "˦˩", ["3a"] = "˦˧˥", [3] = "˨˩˦", [4] = "˧˨", [5] = "˧˨", [6] = "˨˩ʔ" },
["hcmc"] = { [1] = "˧˧", [2] = "˨˩", ["3a"] = "˦˥", [3] = "˦˥", [4] = "˨˩˦", [5] = "˨˩˦", [6] = "˨˩˨" },
}
local initial_ipa = {
["b"] = { "ʔɓ", "ʔɓ", "ʔɓ" },
["c"] = { "k", "k", "k" },
["ch"] = { "t͡ɕ", "t͡ɕ", "c" },
["d"] = { "z", "j", "j" },
["đ"] = { "ʔɗ", "ʔɗ", "ʔɗ" },
["g"] = { "ɣ", "ɣ", "ɣ" },
["gh"] = { "ɣ", "ɣ", "ɣ" },
["gi"] = { "z", "j", "j" },
["gy"] = { "z", "j", "j" },
["h"] = { "h", "h", "h" },
["k"] = { "k", "k", "k" },
["kh"] = { "x", "kʰ", "kʰ" },
["l"] = { "l", "l", "l" },
["m"] = { "m", "m", "m" },
["n"] = { "n", "n", "n" },
["ng"] = { "ŋ", "ŋ", "ŋ" },
["ngh"] = { "ŋ", "ŋ", "ŋ" },
["nh"] = { "ɲ", "ɲ", "ɲ" },
["p"] = { "p", "p", "p" }, -- foreign
["ph"] = { "f", "f", "f" },
["q"] = { "k", "k", "k" },
["qu"] = { "kw", "kw", "w" },
["r"] = { "z", "ʐ", "ɹ" },
["ŕ"] = { "ɹ", "ɹ", "ɹ" },
["s"] = { "s", "ʂ", "ʂ" },
["t"] = { "t", "t", "t" },
["th"] = { "tʰ", "tʰ", "tʰ" },
["tr"] = { "t͡ɕ", "ʈ", "ʈ" },
["v"] = { "v", "v", "v" },
["x"] = { "s", "s", "s" },
["z"] = { "z", "z", "z" },
[""] = { "ʔ", "ʔ", "ʔ" },
["-"] = { "", "", "" },
}
local mvi_initial_ipa = {
["ꞗ"] = "β", ["Ꞗ"] = "β",
["b"] = "ɓ",
["c"] = "k", ["ch"] = "c",
["d"] = "ð", ["đ"] = "ɗ",
["g"] = "ɣ", ["gh"] = "ɣ", ["gi"] = "ʝ",
["h"] = "h",
["k"] = "k", ["kh"] = "kʰ",
["l"] = "l",
["m"] = "m",
["n"] = "n", ["ng"] = "ŋ", ["ngh"] = "ŋ", ["nh"] = "ɲ",
["p"] = "p", ["ph"] = "pʰ",
["r"] = "ɹ",
["s"] = "ʂ",
["t"] = "t", ["th"] = "tʰ", ["tr"] = "ʈ",
["v"] = "w",
["x"] = "ɕ",
}
local final_ipa = {
["a"] = { "aː", "aː", "aː" },
["ac"] = { "aːk̚", "aːk̚", "aːk̚" },
["ach"] = { "ajk̟̚", "at̚", "at̚" },
["ai"] = { "aːj", "aːj", "aːj" },
["am"] = { "aːm", "aːm", "aːm" },
["an"] = { "aːn", "aːŋ", "aːŋ" },
["ań"] = { "aːn", "aːn", "aːn" },
["ang"] = { "aːŋ", "aːŋ", "aːŋ" },
["anh"] = { "ajŋ̟", "ɛɲ", "an" },
["ao"] = { "aːw", "aːw", "aːw" },
["ao᷄"] = { "awŋ͡m", "", "" },
["ap"] = { "aːp̚", "aːp̚", "aːp̚" },
["at"] = { "aːt̚", "aːk̚", "aːk̚" },
["au"] = { "aw", "aw", "a(ː)w" },
["ay"] = { "aj", "aj", "a(ː)j" },
["ăc"] = { "ak̚", "ak̚", "ak̚" },
["ăm"] = { "am", "am", "am" },
["ăn"] = { "an", "aŋ", "aŋ" },
["ăng"] = { "aŋ", "aŋ", "aŋ" },
["ăp"] = { "ap̚", "ap̚", "ap̚" },
["ăt"] = { "at̚", "ak̚", "ak̚" },
["â"] = { "ə", "ə", "ə" },
["âc"] = { "ək̚", "ək̚", "ək̚" },
["âm"] = { "əm", "əm", "əm" },
["ân"] = { "ən", "əŋ", "əŋ" },
["âng"] = { "əŋ", "əŋ", "əŋ" },
["âp"] = { "əp̚", "əp̚", "əp̚" },
["ât"] = { "ət̚", "ək̚", "ək̚" },
["âu"] = { "əw", "əw", "əw" },
["ây"] = { "əj", "əj", "əj" },
["e"] = { "ɛ", "ɛ", "ɛ" },
["ec"] = { "ɛk̚", "ɛk̚", "ɛk̚" },
["em"] = { "ɛm", "ɛm", "ɛm" },
["en"] = { "ɛn", "ɛŋ", "ɛŋ" },
["eń"] = { "ɛn", "ɛn", "ɛn" },
["eng"] = { "ɛŋ", "ɛŋ", "ɛŋ" },
["eo"] = { "ɛw", "ɛw", "ɛw" },
["ep"] = { "ɛp̚", "ɛp̚", "ɛp̚" },
["et"] = { "ɛt̚", "ɛt̚", "ɛk̚" },
["ê"] = { "e", "ej", "ej" },
["êc"] = { "ek̚", "ek̚", "ek̚" },
["êch"] = { "əjk̟̚", "et̚", "əːt̚" },
["êm"] = { "em", "em", "em" },
["ên"] = { "en", "en", "əːn" },
["êng"] = { "eŋ", "eŋ", "eŋ" },
["ênh"] = { "əjŋ̟", "en", "əːn" },
["êp"] = { "ep̚", "ep̚", "ep̚" },
["êt"] = { "et̚", "et̚", "əːt̚" },
["êu"] = { "ew", "ew", "ew" },
["i"] = { "i", "ɪj", "ɪj" },
["ia"] = { "iə", "iə", "iə" },
["ic"] = { "ïk̟̚", "ïk̟̚", "ïk̟̚" },
["ich"] = { "ïk̟̚", "ɨt̚", "ɨt̚" },
["iêc"] = { "iək̚", "iək̚", "iək̚" },
["iêm"] = { "iəm", "iəm", "im" },
["iên"] = { "iən", "iəŋ", "iəŋ" },
["iêng"] = { "iəŋ", "iəŋ", "iəŋ" },
["iêp"] = { "iəp̚", "iəp̚", "ip̚" },
["iêt"] = { "iət̚", "iək̚", "iək̚" },
["iêu"] = { "iəw", "iw", "iw" },
["im"] = { "im", "im", "im" },
["in"] = { "in", "in", "ɨn" },
["inh"] = { "ïŋ", "ɨn", "ɨn" },
["ip"] = { "ip̚", "ip̚", "ip̚" },
["it"] = { "it̚", "it̚", "ɨt̚" },
["iu"] = { "iw", "iw", "iw" },
["o"] = { "ɔ", "ɔ", "ɔ" },
["oa"] = { "waː", "waː", "waː" },
["oac"] = { "waːk̚", "waːk̚", "waːk̚" },
["oach"] = { "wajk̟̚", "wat̚", "wat̚" },
["oai"] = { "waːj", "waːj", "waːj" },
["oam"] = { "waːm", "waːm", "waːm" },
["oan"] = { "waːn", "waːŋ", "waːŋ" },
["oang"] = { "waːŋ", "waːŋ", "waːŋ" },
["oanh"] = { "wajŋ̟", "wɛɲ", "wan" },
["oao"] = { "waːw", "waːw", "waːw" },
["oap"] = { "waːp̚", "waːp̚", "waːp̚" },
["oat"] = { "waːt̚", "waːk̚", "waːk̚" },
["oay"] = { "waj", "waj", "waj" },
["oă"] = { "wa", "wa", "wa" },
["oăc"] = { "wak̚", "wak̚", "wak̚" },
["oăm"] = { "wam", "wam", "wam" },
["oăn"] = { "wan", "waŋ", "waŋ" },
["oăng"] = { "waŋ", "waŋ", "waŋ" },
["oăt"] = { "wat̚", "wak̚", "wak̚" },
["oc"] = { "awk͡p̚", "awk͡p̚", "awk͡p̚" },
["oe"] = { "wɛ", "wɛ", "wɛ" },
["oem"] = { "wɛm", "wɛm", "wɛm" },
["oen"] = { "wɛn", "wɛŋ", "wɛŋ" },
["oeo"] = { "wɛw", "wɛw", "wɛw" },
["oet"] = { "wɛt̚", "wɛk̚", "wɛk̚" },
["oi"] = { "ɔj", "ɔj", "ɔj" },
["om"] = { "ɔm", "ɔm", "ɔm" },
["on"] = { "ɔn", "ɔŋ", "ɔŋ" },
["ong"] = { "awŋ͡m", "awŋ͡m", "awŋ͡m" },
["ooc"] = { "ɔk̚", "ɔk̚", "ɔk̚" },
["oong"] = { "ɔŋ", "ɔŋ͡m", "ɔŋ" },
["op"] = { "ɔp̚", "ɔp̚", "ɔp̚" },
["ot"] = { "ɔt̚", "ɔk̚", "ɔk̚" },
["ô"] = { "o", "ow", "ow" },
["ôc"] = { "əwk͡p̚", "əwk͡p̚", "əwk͡p̚" },
["ôi"] = { "oj", "oj", "oj" },
["ôm"] = { "om", "om", "om" },
["ôn"] = { "on", "oŋ", "oŋ" },
["ôń"] = { "on", "on", "on" },
["ông"] = { "əwŋ͡m", "əwŋ͡m", "əwŋ͡m" },
["ôôc"] = { "ok̚", "ok̚", "ok̚" },
["ôông"] = { "oŋ", "oŋ", "oŋ" },
["ôp"] = { "op̚", "op̚", "op̚" },
["ôt"] = { "ot̚", "ok̚", "ok̚" },
["ơ"] = { "əː", "əː", "əː" },
["ơi"] = { "əːj", "əːj", "əːj" },
["ơm"] = { "əːm", "əːm", "əːm" },
["ơn"] = { "əːn", "əːŋ", "əːŋ" },
["ơng"] = { "əːŋ", "əːŋ", "əːŋ" },
["ơp"] = { "əːp̚", "əːp̚", "əːp̚" },
["ơt"] = { "əːt̚", "əːk̚", "əːk̚" },
["u"] = { "u", "ʊw", "ʊw" },
["ua"] = { "uə", "uə", "uə" },
["uac"] = { "waːk̚", "waːk̚", "waːk̚" },
["uach"] = { "wajk̟̚", "wat̚", "wat̚" },
["uai"] = { "waːj", "waːj", "waːj" },
["uan"] = { "waːn", "waːŋ", "waːŋ" },
["uang"] = { "waːŋ", "waːŋ", "waːŋ" },
["uanh"] = { "wajŋ̟", "wɛɲ", "wan" },
["uao"] = { "waːw", "waːw", "waːw" },
["uap"] = { "waːp̚", "waːp̚", "waːp̚" },
["uat"] = { "waːt̚", "waːk̚", "waːk̚" },
["uau"] = { "waw", "waw", "wa(ː)w" },
["uay"] = { "waj", "waj", "waj" },
["uă"] = { "wa", "wa", "wa" },
["uăc"] = { "wak̚", "wak̚", "wak̚" },
["uăm"] = { "wam", "wam", "wam" },
["uăn"] = { "wan", "waŋ", "waŋ" },
["uăng"] = { "waŋ", "waŋ", "waŋ" },
["uăp"] = { "wap̚", "wap̚", "wap̚" },
["uăt"] = { "wat̚", "wak̚", "wak̚" },
["uâ"] = { "wə", "wə", "wə" },
["uâc"] = { "wək̚", "wək̚", "wək̚" },
["uân"] = { "wən", "wəŋ", "wəŋ" },
["uâng"] = { "wəŋ", "wəŋ", "wəŋ" },
["uât"] = { "wət̚", "wək̚", "wək̚" },
["uây"] = { "wəj", "wəj", "wəj" },
["uc"] = { "ʊwk͡p̚", "ʊwk͡p̚", "ʊwk͡p̚" },
["ue"] = { "wɛ", "wɛ", "wɛ" },
["uen"] = { "wɛn", "wɛŋ", "wɛŋ" },
["ueo"] = { "wɛw", "wɛw", "wɛw" },
["uep"] = { "wɛp̚", "wɛp̚", "wɛp̚" },
["uet"] = { "wɛt̚", "wɛt̚", "wɛt̚" },
["uê"] = { "we", "wej", "wej" },
["uêch"] = { "wəjk̟̚", "wet̚", "wəːt̚" },
["uên"] = { "wen", "wen", "wəːn" },
["uênh"] = { "wəjŋ̟", "wen", "wəːn" },
["uêt"] = { "wet̚", "wet̚", "wəːt̚" },
["uêu"] = { "weu", "weu", "wew" },
["ui"] = { "uj", "uj", "uj" },
["uin"] = { "win", "win", "wɨn" },
["uit"] = { "wit̚", "wit̚", "wit̚" },
["um"] = { "um", "um", "ʊm" },
["un"] = { "un", "un", "ʊwŋ͡m" },
["ung"] = { "ʊwŋ͡m", "ʊwŋ͡m", "ʊwŋ͡m" },
["unh"] = { "ujŋ̟", "un", "uwn" },
["uo"] = { "wɔ", "wɔ", "wɔ" },
["uô"] = { "uə", "uə", "uə" },
["uôc"] = { "uək̚", "uək̚", "uək̚" },
["uôi"] = { "uəj", "uj", "uj" },
["uôm"] = { "uəm", "uəm", "uəm" },
["uôn"] = { "uən", "uəŋ", "uəŋ" },
["uông"] = { "uəŋ", "uəŋ", "uəŋ" },
["uôt"] = { "uət̚", "uək̚", "uək̚" },
["uơ"] = { "wəː", "wəː", "wəː" },
["uơi"] = { "wəːj", "wəːj", "wəːj" },
["uơn"] = { "wəːn", "wəːŋ", "wəːŋ" },
["uơt"] = { "wəːt̚", "wəːk̚", "wəːk̚" },
["up"] = { "up̚", "up̚", "ʊp̚" },
["ut"] = { "ut̚", "ʊk̚", "ʊk͡p̚" },
["uy"] = { "wi", "wɪj", "wɪj" },
["uya"] = { "wiə", "wiə", "wiə" },
["uych"] = { "wïk̟̚", "wɨk̟̚", "wɨt̚" },
["uyn"] = { "win", "win", "wɨn" },
["uich"] = { "wïk̟̚", "wɨk̟̚", "wɨt̚" },
["uyê"] = { "wiə", "wiə", "wiə" },
["uyên"] = { "wiən", "wiəŋ", "wiəŋ" },
["uyênh"] = { "wiəŋ̟", "wiən", "wən" },
["uyêt"] = { "wiət̚", "wiək̚", "wiək̚" },
["uynh"] = { "wïŋ̟", "wɨn", "wɨn" },
["uyp"] = { "wip̚", "wip̚", "wip̚" },
["uyt"] = { "wit̚", "wɨt̚", "wɨt̚" },
["uyu"] = { "wiw", "wiw", "wiw" },
["ư"] = { "ɨ", "ɨ", "ɨ" },
["ưa"] = { "ɨə", "ɨə", "ɨə" },
["ưc"] = { "ɨk̚", "ɨk̚", "ɨk̚" },
["ưi"] = { "ɨj", "ɨj", "ɨj" },
["ưm"] = { "ɨm", "ɨm", "ɨm" },
["ưn"] = { "ɨn", "ɨŋ", "ɨŋ" },
["ưng"] = { "ɨŋ", "ɨŋ", "ɨŋ" },
["ươc"] = { "ɨək̚", "ɨək̚", "ɨək̚" },
["ươi"] = { "ɨəj", "ɨj", "ɨj" },
["ươm"] = { "ɨəm", "ɨəm", "ɨəm" },
["ươn"] = { "ɨən", "ɨəŋ", "ɨəŋ" },
["ương"] = { "ɨəŋ", "ɨəŋ", "ɨəŋ" },
["ươp"] = { "ɨəp̚", "ɨəp̚", "ɨəp̚" },
["ươt"] = { "ɨət̚", "ɨək̚", "ɨək̚" },
["ươu"] = { "iəw", "ɨəw", "ɨəw" },
["ưt"] = { "ɨt̚", "ɨk̚", "ɨk̚" },
["ưu"] = { "iw", "ɨw", "ɨw" },
["y"] = { "i", "ɪj", "ɪj" },
["yêc"] = { "iək̚", "iək̚", "iək̚" },
["yêm"] = { "iəm", "iəm", "iəm" },
["yên"] = { "iən", "iəŋ", "iəŋ" },
["yêng"] = { "iəŋ", "iəŋ", "iəŋ" },
["yêp"] = { "iəp̚", "iəp̚", "iəp̚" },
["yêt"] = { "iət̚", "iək̚", "iək̚" },
["yêu"] = { "iəw", "iw", "iw" },
}
local varieties = {
["hn"] = { "ฮานอย", 1 },
["hue"] = { "เว้", 2 },
["hcmc"] = { "นครโฮจิมินห์", 3 },
}
local hcmc_opt_w = {
["ch"] = true,
["d"] = true,
["l"] = true,
["s"] = true,
["t"] = true, ["th"] = true, ["tr"] = true,
["x"] = true,
}
local variations = {
["hn"] = { { "^ɹ", "z" }, { " ɹ", " z" } },
["hue"] = { { "z", "j" }, { "ʂ", "s" }, { "awŋ͡m", "ɔŋ" } },
["hcmc"] = { { "ʂ", "s" }, { "v", "j" }, { "z", "j" } },
}
function export.ipa(frame)
local respellings = {}
local variety_respellings = {}
local output = {}
for variety, _ in pairs(varieties) do
output[variety] = {}
end
local output_text = {}
local iparams = {
["mvi"] = {type = "boolean"},
}
local iargs = require("Module:parameters").process(frame.args, iparams)
local params = {
[1] = {list = true},
["hn"] = {},
["hue"] = {},
["hcmc"] = {},
["pagename"] = {}, -- for testing or documentation
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local pagename = args.pagename or mw.loadData("Module:headword/data").pagename
local function canonicalize_respelling(respelling)
if respelling:find("^raw:") then
return {raw = (respelling:gsub("^raw:", ""))}
else
if respelling == "+" then
respelling = pagename
end
return {respelling = rsub(rsub(ulower(respelling), "%-", " "), ",", "")}
end
end
local mvi = iargs.mvi
local raw_respellings = args[1]
if not raw_respellings[1] then
raw_respellings = {"+"}
end
for _, raw_respelling in ipairs(raw_respellings) do
table.insert(respellings, canonicalize_respelling(raw_respelling))
end
for variety, _ in pairs(varieties) do
if args[variety] == "-" or (mvi and (variety == "hue" or variety == "hcmc")) then
variety_respellings[variety] = false
elseif args[variety] then
local variety_raw_respellings = split_on_comma(args[variety])
variety_respellings[variety] = {}
for _, raw_respelling in ipairs(variety_raw_respellings) do
table.insert(variety_respellings[variety], canonicalize_respelling(raw_respelling))
end
end
end
for variety, location in pairs(varieties) do
if variety_respellings[variety] == false then
-- skip variety
output[variety] = false
else
local var_respellings = variety_respellings[variety] or respellings
for i, spec in ipairs(var_respellings) do
local pronunciation = {}
if spec.raw then
table.insert(output[variety], spec.raw)
else
for syllable in mw.text.gsplit(spec.respelling, " ", true) do
local ipa = {}
local initial, final, tone = nil, nil, nil
tone = 1
syllable = toNFD(syllable)
syllable = rsub(syllable, "([nr]́)", toNFC)
for diac_pattern, tone_num in pairs(tone_diacritics) do
if rmatch(syllable, diac_pattern) then
tone = tone_num
break
end
end
syllable = toNFC(rsub(syllable, "[̣̀́̉̃]", ""))
if syllable == "gi" or syllable == "gin" then
syllable = rsub(syllable, "gi", "gii")
end
initial = rmatch(syllable, "^g[ꞗꞖbcdđgklmnpqrŕstvx]+") or rmatch(syllable, "^(g[hiy])[^cmnpt]")
or rmatch(syllable, "^g") or rmatch(syllable, "^[ꞗꞖbcdđghklmnpqrŕstvxz]+") or ""
initial = (rmatch(syllable, "^giê.") and syllable ~= "giên") and "d" or initial
initial = rmatch(syllable, "qu$") and "qu" or initial
final = usub(syllable, ulen(initial) + 1, -1)
local ipa, seq, detoned = {}, location[2], ""
if mvi then
if mvi_initial_ipa[initial] then
table.insert(ipa, mvi_initial_ipa[initial])
else
local initial_cluster = ""
for cc in ugcodepoint(initial) do
local ch = u(cc)
initial_cluster = initial_cluster .. mvi_initial_ipa[ch]
end
table.insert(ipa, initial_cluster)
end
elseif initial_ipa[initial] then
table.insert(ipa, initial_ipa[initial][seq])
else
local initial_cluster = ""
initial = rsub(initial, "r$", "ŕ")
for cc in ugcodepoint(initial) do
local ch = u(cc)
initial_cluster = initial_cluster .. initial_ipa[ch][seq]
end
initial_cluster = rsub(initial_cluster, "([cgknpt]h)", function(digraph)
return initial_ipa[digraph][seq] end)
table.insert(ipa, initial_cluster)
end
if final_ipa[final] then
detoned = rsub(final_ipa[final][seq], "^([wu].+)", function(nucleus)
if initial .. final == "qua" then
nucleus = final_ipa["oa"][seq]
elseif initial .. final == "qui" then
nucleus = final_ipa["uy"][seq]
end
if variety == "hcmc" then
if initial == "q" then
nucleus = rsub(nucleus, "^u", "w")
end
if hcmc_opt_w[initial] then
nucleus = rsub(nucleus, "^w", "⁽ʷ⁾")
end
end
return nucleus end)
table.insert(ipa, detoned)
else
error(("Unrecognised final: \"%s\""):format(final))
end
if tone == 3 and rmatch(final, "[chmngpt]") then
tone = "3a"
end
table.insert(ipa, tone_contour[variety][tone])
table.insert(pronunciation, table.concat(ipa, ""))
end
table.insert(output[variety], "[" .. table.concat(pronunciation, " ") .. "]")
end
end
end
end
for variety, location in pairs(varieties) do
if mvi and variety == "hn" then
location[1] = "Đông Kinh"
end
if output[variety] ~= false then
local ipa_items = {}
for i, out in ipairs(output[variety]) do
if variety == "hcmc" then
-- FIXME: Move this up to the pronunciation-computing loop.
out = rsub(out, "[hk]w", "w")
out = rsub(out, "ʔw", "(ʔ)w")
end
table.insert(ipa_items, {pron = out, separator = i == 1 and "" or ", "})
local alternative = out
for _, variation in ipairs(variations[variety]) do
alternative = rsub(alternative, variation[1], variation[2])
end
if alternative ~= out then
table.insert(ipa_items, {pron = alternative, separator = " ~ "})
end
end
table.insert(output_text, location[2], "\n* " .. require("Module:IPA").format_IPA_full {
lang = lang,
a = {location[1]},
items = ipa_items,
separator = "",
})
else
table.insert(output_text, location[2], "")
end
end
local saw_raw = false
local actual_respellings = {}
for _, spec in ipairs(respellings) do
if spec.raw then
saw_raw = true
break
else
table.insert(actual_respellings, spec.respelling)
end
end
if not saw_raw and table.concat(actual_respellings, "") ~= ulower(pagename) then
table.insert(output_text, #output_text + 1, "\n* ''รูปสะกดออกเสียง'': " .. rsub(table.concat(actual_respellings, ", "), "ŕ", "R"))
end
return rsub(table.concat(output_text, ""), "^\n(.)", "%1")
end
return export
47oeyda9pjsxae13nxzcnczo7616pei
แม่แบบ:vi-IPA
10
51206
5759964
1765383
2026-09-08T13:12:28Z
Octahedron80
267
5759964
wikitext
text/x-wiki
<includeonly>{{#invoke:vi-pron|ipa}}{{cln|vi|ศัพท์ที่มีการออกเสียงไอพีเอ}}</includeonly><noinclude>{{documentation}}</noinclude>
i72oskn32s7fc38ixbfo6bu6iv0u85h
赤
0
106763
5760006
1849887
2026-09-09T10:20:14Z
Octahedron80
267
/* การออกเสียง */ เก็บกวาด
5760006
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
{{zh-forms}}
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
1gsug6dv9sp7dc43dcltk40spsjyjlx
5760007
5760006
2026-09-09T10:21:30Z
Octahedron80
267
/* ภาษาจีน */
5760007
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
fltuwx4t34ikn70x3bhiigkr7b7zvhq
5760008
5760007
2026-09-09T10:21:51Z
Octahedron80
267
/* รากศัพท์ 3 */ เก็บกวาด
5760008
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
otpnic0jq37vdk2j4p50pxyy3x36r5k
5760009
5760008
2026-09-09T10:24:00Z
Octahedron80
267
/* รากศัพท์ 1 */ เก็บกวาด
5760009
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|ภาษาหนังสือ|หรือ|กวี}} สี[[แดง]], สี[[แดงชาด]]
#: {{zh-x|赤字|การขาดดุล|lit=ตัวเลขสี'''แดง'''}}
#: {{zh-x|赤色 的 晚霞|แสงสายัณห์สี'''แดง'''}}
#* {{zh-x|莫 赤 匪 狐,莫 黑 匪 烏。|ไม่มีสิ่งใดเป็นสี'''แดง'''นอกจากสุนัขจิ้งจอก<br/>ไม่มีสิ่งใดเป็นสีดำนอกจากอีกา|ref=Shijing}}
# {{lb|zh|แต้จิ๋ว}} สี[[น้ำตาล]]
# [[ภักดี]], [[ซื่อสัตย์]]; [[จริงใจ]]
#: {{zh-x|赤忱|จริงใจอย่างยิ่ง}}
# [[ว่างเปล่า]]; [[โล่ง]], [[เปล่า]]
#: {{zh-x|赤貧|ยากจนข้นแค้นอย่างยิ่ง}}
#: {{zh-x|赤手空拳|ด้วยมือ'''เปล่า'''และหมัดเปล่า}}
# [[เปลือย]], [[เปลือยกาย]]
#: {{zh-x|赤腳|เท้าเปล่า}}
# {{lb|zh|การเมือง}} เชิง[[ปฏิวัติ]]; เชิง[[คอมมิวนิสต์]]; แดง
#: {{zh-x|赤化|ทำให้กลายเป็นคอมมิวนิสต์; กลายเป็นฝ่ายแดง}}
# [[ทองคำ]][[บริสุทธิ์]]
# {{lb|zh|ฮกเกี้ยน}} [[ไม่ติดมัน]] {{gl|เนื้อสัตว์}}
# {{lb|zh|ฮกเกี้ยน}} เจียวหรือทอดจนเป็นสีน้ำตาล {{gl|ทำอาหารจนสุกเกรียมเป็นสีน้ำตาล}}
# {{lb|zh|ฮกเกี้ยน}} [[ดุร้าย]]และ[[ไร้เหตุผล]]; [[ดุดัน]]และ[[พูดไม่รู้เรื่อง]] {{gl|โดยเฉพาะผู้หญิง}}
# {{lb|zh|จีนแผ่นดินใหญ่|_|ฮกเกี้ยน}} [[ยากจน]]; [[ขัดสน]]
===== คำพ้องความ =====
* {{s|สีแดง}}
{{zh-dial|紅}}
* {{s|ยากจน}}
{{syn-saurus|zh|貧窮}}
{{zh-dial|貧窮}}
==== ลูกคำ ====
{{col3|zh|赤白痢|赤背|赤膊|赤膊上陣|赤潮|赤忱|赤誠|赤帶|赤膽忠心|赤道|赤道幾尼亞|赤地|赤光光|赤紅|赤狐|赤腳|赤腳醫生|赤金|赤佬|赤老|赤痢|赤練蛇|赤磷|赤露|赤裸|赤裸裸|赤黴素|赤貧|赤熱|赤日|赤色|赤芍|赤身|赤身裸體|赤手|赤手空拳|努爾哈赤|赤松|赤條精光|赤條條|赤鐵礦|赤銅礦|赤縣|赤小豆|赤心|赤揚|赤子|赤字|赤足|博爾赤|一寸赤心|小赤老|急赤白臉|忠心赤膽|噴赤河|後赤壁賦|兀剌赤|光赤|一片赤心|保兀赤|寶兒赤|月書赤繩|白兔赤烏|打赤腳|神州赤縣|白眉赤眼|打赤膊|眉間赤|母哈赤|火裡赤|赤蛙|赤道洋流|赤口白舌|赤縣神州|赤銜|耳紅面赤|赤色中國|赤帝子|赤崁樓|葉赤鐵路|赤石脂|赤眼卵蜂|赤棒|臉紅耳赤|赤兔|赤楊|赤經|赤血鹽|赤緊的|赤瑕|赤腳大仙|貿易赤字|赤心忠膽|赤貧如洗|赤繩繫足|赤血丹心|赤松子|裸身赤體|面紅耳赤|精赤條條|赤土陶器|赤緯|赤化|赤壁鏖兵|赤鉛礦|赤道儀|赤翡翠|赤鯶公|赤衛軍|赤膽忠肝|赤子之心|赤眉|金融赤字|赤箭|赤卒|赤豆|赤赤哈哈|赤體|赤手起家|赤巴巴|赤城|赤電|貝赤|赤留出律|赤腳漢|赤雅|赤嵌樓|赤地千里|赤衣使者|赤口毒舌|鏖兵赤壁|站赤|赤舌燒城|赤色國際|赤字預算|赤伏符|達魯花赤|赤軍旅|赤資資|赤道面|赤力力|赤壁賦|赤族|赤銅|赤道非洲|赤道群島|赤身露體|赤衣|赤繩綰足|赤米|赤禍|赤津津|赤幘|赤帝|赤尻|赤字財政|赤壁懷古|赤壁之戰|赤壁|赤墀|赤塔|赤俄|赤仄|赤道雨林|赤立|面紅面赤|赤膽|赤狗日|赤面|赤土|赤石|赤溪河|赤馬港|赤崁|小赤|赤山|赤才|赤星}}
==== คำสืบทอด ====
{{CJKV||せき|적|xích}}
* {{desc|hmx-mie-pro|*sekᴰ|t=red|bor=1}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
rdmn590irifqdnfgpmbdpasnethkgkc
5760010
5760009
2026-09-09T10:25:16Z
Octahedron80
267
/* รากศัพท์ 2 */ เก็บกวาด
5760010
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|ภาษาหนังสือ|หรือ|กวี}} สี[[แดง]], สี[[แดงชาด]]
#: {{zh-x|赤字|การขาดดุล|lit=ตัวเลขสี'''แดง'''}}
#: {{zh-x|赤色 的 晚霞|แสงสายัณห์สี'''แดง'''}}
#* {{zh-x|莫 赤 匪 狐,莫 黑 匪 烏。|ไม่มีสิ่งใดเป็นสี'''แดง'''นอกจากสุนัขจิ้งจอก<br/>ไม่มีสิ่งใดเป็นสีดำนอกจากอีกา|ref=Shijing}}
# {{lb|zh|แต้จิ๋ว}} สี[[น้ำตาล]]
# [[ภักดี]], [[ซื่อสัตย์]]; [[จริงใจ]]
#: {{zh-x|赤忱|จริงใจอย่างยิ่ง}}
# [[ว่างเปล่า]]; [[โล่ง]], [[เปล่า]]
#: {{zh-x|赤貧|ยากจนข้นแค้นอย่างยิ่ง}}
#: {{zh-x|赤手空拳|ด้วยมือ'''เปล่า'''และหมัดเปล่า}}
# [[เปลือย]], [[เปลือยกาย]]
#: {{zh-x|赤腳|เท้าเปล่า}}
# {{lb|zh|การเมือง}} เชิง[[ปฏิวัติ]]; เชิง[[คอมมิวนิสต์]]; แดง
#: {{zh-x|赤化|ทำให้กลายเป็นคอมมิวนิสต์; กลายเป็นฝ่ายแดง}}
# [[ทองคำ]][[บริสุทธิ์]]
# {{lb|zh|ฮกเกี้ยน}} [[ไม่ติดมัน]] {{gl|เนื้อสัตว์}}
# {{lb|zh|ฮกเกี้ยน}} เจียวหรือทอดจนเป็นสีน้ำตาล {{gl|ทำอาหารจนสุกเกรียมเป็นสีน้ำตาล}}
# {{lb|zh|ฮกเกี้ยน}} [[ดุร้าย]]และ[[ไร้เหตุผล]]; [[ดุดัน]]และ[[พูดไม่รู้เรื่อง]] {{gl|โดยเฉพาะผู้หญิง}}
# {{lb|zh|จีนแผ่นดินใหญ่|_|ฮกเกี้ยน}} [[ยากจน]]; [[ขัดสน]]
===== คำพ้องความ =====
* {{s|สีแดง}}
{{zh-dial|紅}}
* {{s|ยากจน}}
{{syn-saurus|zh|貧窮}}
{{zh-dial|貧窮}}
==== ลูกคำ ====
{{col3|zh|赤白痢|赤背|赤膊|赤膊上陣|赤潮|赤忱|赤誠|赤帶|赤膽忠心|赤道|赤道幾尼亞|赤地|赤光光|赤紅|赤狐|赤腳|赤腳醫生|赤金|赤佬|赤老|赤痢|赤練蛇|赤磷|赤露|赤裸|赤裸裸|赤黴素|赤貧|赤熱|赤日|赤色|赤芍|赤身|赤身裸體|赤手|赤手空拳|努爾哈赤|赤松|赤條精光|赤條條|赤鐵礦|赤銅礦|赤縣|赤小豆|赤心|赤揚|赤子|赤字|赤足|博爾赤|一寸赤心|小赤老|急赤白臉|忠心赤膽|噴赤河|後赤壁賦|兀剌赤|光赤|一片赤心|保兀赤|寶兒赤|月書赤繩|白兔赤烏|打赤腳|神州赤縣|白眉赤眼|打赤膊|眉間赤|母哈赤|火裡赤|赤蛙|赤道洋流|赤口白舌|赤縣神州|赤銜|耳紅面赤|赤色中國|赤帝子|赤崁樓|葉赤鐵路|赤石脂|赤眼卵蜂|赤棒|臉紅耳赤|赤兔|赤楊|赤經|赤血鹽|赤緊的|赤瑕|赤腳大仙|貿易赤字|赤心忠膽|赤貧如洗|赤繩繫足|赤血丹心|赤松子|裸身赤體|面紅耳赤|精赤條條|赤土陶器|赤緯|赤化|赤壁鏖兵|赤鉛礦|赤道儀|赤翡翠|赤鯶公|赤衛軍|赤膽忠肝|赤子之心|赤眉|金融赤字|赤箭|赤卒|赤豆|赤赤哈哈|赤體|赤手起家|赤巴巴|赤城|赤電|貝赤|赤留出律|赤腳漢|赤雅|赤嵌樓|赤地千里|赤衣使者|赤口毒舌|鏖兵赤壁|站赤|赤舌燒城|赤色國際|赤字預算|赤伏符|達魯花赤|赤軍旅|赤資資|赤道面|赤力力|赤壁賦|赤族|赤銅|赤道非洲|赤道群島|赤身露體|赤衣|赤繩綰足|赤米|赤禍|赤津津|赤幘|赤帝|赤尻|赤字財政|赤壁懷古|赤壁之戰|赤壁|赤墀|赤塔|赤俄|赤仄|赤道雨林|赤立|面紅面赤|赤膽|赤狗日|赤面|赤土|赤石|赤溪河|赤馬港|赤崁|小赤|赤山|赤才|赤星}}
==== คำสืบทอด ====
{{CJKV||せき|적|xích}}
* {{desc|hmx-mie-pro|*sekᴰ|t=red|bor=1}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|กวางตุ้ง}} [[เจ็บปวด]]; [[ปวด]]
#: {{zh-x|頭赤|'''ปวด'''ศีรษะ|C}}
===== คำพ้องความ =====
{{zh-dial|疼}}
==== ลูกคำ ====
{{col3|zh|頭赤|頭赤赤|赤痛|赤赤痛|肉赤|骨赤|骨罅赤|頸赤}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
b67z5aufkoz8mbxwdmkv707emonvzvi
5760011
5760010
2026-09-09T10:27:35Z
Octahedron80
267
/* รากศัพท์ 1 */
5760011
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
เป็นไปได้ว่าสืบทอดจาก{{inh|zh|sit-pro|*qrak||เลือด; แดง}}, ซึ่งเป็นรากของ{{cog|bo|ཁྲག||เลือด}} (STEDT; {{zh-ref|Schuessler, 2007}}); เกี่ยวข้องกับ{{och-l|赫|แดงสด}} และอาจเกี่ยวข้องกับ{{och-l|奭|สง่างาม; แดง}} ด้วย
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|ภาษาหนังสือ|หรือ|กวี}} สี[[แดง]], สี[[แดงชาด]]
#: {{zh-x|赤字|การขาดดุล|lit=ตัวเลขสี'''แดง'''}}
#: {{zh-x|赤色 的 晚霞|แสงสายัณห์สี'''แดง'''}}
#* {{zh-x|莫 赤 匪 狐,莫 黑 匪 烏。|ไม่มีสิ่งใดเป็นสี'''แดง'''นอกจากสุนัขจิ้งจอก<br/>ไม่มีสิ่งใดเป็นสีดำนอกจากอีกา|ref=Shijing}}
# {{lb|zh|แต้จิ๋ว}} สี[[น้ำตาล]]
# [[ภักดี]], [[ซื่อสัตย์]]; [[จริงใจ]]
#: {{zh-x|赤忱|จริงใจอย่างยิ่ง}}
# [[ว่างเปล่า]]; [[โล่ง]], [[เปล่า]]
#: {{zh-x|赤貧|ยากจนข้นแค้นอย่างยิ่ง}}
#: {{zh-x|赤手空拳|ด้วยมือ'''เปล่า'''และหมัดเปล่า}}
# [[เปลือย]], [[เปลือยกาย]]
#: {{zh-x|赤腳|เท้าเปล่า}}
# {{lb|zh|การเมือง}} เชิง[[ปฏิวัติ]]; เชิง[[คอมมิวนิสต์]]; แดง
#: {{zh-x|赤化|ทำให้กลายเป็นคอมมิวนิสต์; กลายเป็นฝ่ายแดง}}
# [[ทองคำ]][[บริสุทธิ์]]
# {{lb|zh|ฮกเกี้ยน}} [[ไม่ติดมัน]] {{gl|เนื้อสัตว์}}
# {{lb|zh|ฮกเกี้ยน}} เจียวหรือทอดจนเป็นสีน้ำตาล {{gl|ทำอาหารจนสุกเกรียมเป็นสีน้ำตาล}}
# {{lb|zh|ฮกเกี้ยน}} [[ดุร้าย]]และ[[ไร้เหตุผล]]; [[ดุดัน]]และ[[พูดไม่รู้เรื่อง]] {{gl|โดยเฉพาะผู้หญิง}}
# {{lb|zh|จีนแผ่นดินใหญ่|_|ฮกเกี้ยน}} [[ยากจน]]; [[ขัดสน]]
===== คำพ้องความ =====
* {{s|สีแดง}}
{{zh-dial|紅}}
* {{s|ยากจน}}
{{syn-saurus|zh|貧窮}}
{{zh-dial|貧窮}}
==== ลูกคำ ====
{{col3|zh|赤白痢|赤背|赤膊|赤膊上陣|赤潮|赤忱|赤誠|赤帶|赤膽忠心|赤道|赤道幾尼亞|赤地|赤光光|赤紅|赤狐|赤腳|赤腳醫生|赤金|赤佬|赤老|赤痢|赤練蛇|赤磷|赤露|赤裸|赤裸裸|赤黴素|赤貧|赤熱|赤日|赤色|赤芍|赤身|赤身裸體|赤手|赤手空拳|努爾哈赤|赤松|赤條精光|赤條條|赤鐵礦|赤銅礦|赤縣|赤小豆|赤心|赤揚|赤子|赤字|赤足|博爾赤|一寸赤心|小赤老|急赤白臉|忠心赤膽|噴赤河|後赤壁賦|兀剌赤|光赤|一片赤心|保兀赤|寶兒赤|月書赤繩|白兔赤烏|打赤腳|神州赤縣|白眉赤眼|打赤膊|眉間赤|母哈赤|火裡赤|赤蛙|赤道洋流|赤口白舌|赤縣神州|赤銜|耳紅面赤|赤色中國|赤帝子|赤崁樓|葉赤鐵路|赤石脂|赤眼卵蜂|赤棒|臉紅耳赤|赤兔|赤楊|赤經|赤血鹽|赤緊的|赤瑕|赤腳大仙|貿易赤字|赤心忠膽|赤貧如洗|赤繩繫足|赤血丹心|赤松子|裸身赤體|面紅耳赤|精赤條條|赤土陶器|赤緯|赤化|赤壁鏖兵|赤鉛礦|赤道儀|赤翡翠|赤鯶公|赤衛軍|赤膽忠肝|赤子之心|赤眉|金融赤字|赤箭|赤卒|赤豆|赤赤哈哈|赤體|赤手起家|赤巴巴|赤城|赤電|貝赤|赤留出律|赤腳漢|赤雅|赤嵌樓|赤地千里|赤衣使者|赤口毒舌|鏖兵赤壁|站赤|赤舌燒城|赤色國際|赤字預算|赤伏符|達魯花赤|赤軍旅|赤資資|赤道面|赤力力|赤壁賦|赤族|赤銅|赤道非洲|赤道群島|赤身露體|赤衣|赤繩綰足|赤米|赤禍|赤津津|赤幘|赤帝|赤尻|赤字財政|赤壁懷古|赤壁之戰|赤壁|赤墀|赤塔|赤俄|赤仄|赤道雨林|赤立|面紅面赤|赤膽|赤狗日|赤面|赤土|赤石|赤溪河|赤馬港|赤崁|小赤|赤山|赤才|赤星}}
==== คำสืบทอด ====
{{CJKV||せき|적|xích}}
* {{desc|hmx-mie-pro|*sekᴰ|t=red|bor=1}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|กวางตุ้ง}} [[เจ็บปวด]]; [[ปวด]]
#: {{zh-x|頭赤|'''ปวด'''ศีรษะ|C}}
===== คำพ้องความ =====
{{zh-dial|疼}}
==== ลูกคำ ====
{{col3|zh|頭赤|頭赤赤|赤痛|赤赤痛|肉赤|骨赤|骨罅赤|頸赤}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
5yzkboijfcf0p81d2fsovqkz5hpqxmm
5760012
5760011
2026-09-09T10:27:58Z
Octahedron80
267
/* รากศัพท์ 1 */
5760012
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
เป็นไปได้ว่าสืบทอดจาก{{inh|zh|sit-pro|*qrak||เลือด; แดง}}, ซึ่งเป็นรากของ{{cog|bo|ཁྲག||เลือด}} (STEDT; {{zh-ref|Schuessler, 2007}}); เกี่ยวข้องกับ {{och-l|赫|แดงสด}} และอาจเกี่ยวข้องกับ {{och-l|奭|สง่างาม; แดง}} ด้วย
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|ภาษาหนังสือ|หรือ|กวี}} สี[[แดง]], สี[[แดงชาด]]
#: {{zh-x|赤字|การขาดดุล|lit=ตัวเลขสี'''แดง'''}}
#: {{zh-x|赤色 的 晚霞|แสงสายัณห์สี'''แดง'''}}
#* {{zh-x|莫 赤 匪 狐,莫 黑 匪 烏。|ไม่มีสิ่งใดเป็นสี'''แดง'''นอกจากสุนัขจิ้งจอก<br/>ไม่มีสิ่งใดเป็นสีดำนอกจากอีกา|ref=Shijing}}
# {{lb|zh|แต้จิ๋ว}} สี[[น้ำตาล]]
# [[ภักดี]], [[ซื่อสัตย์]]; [[จริงใจ]]
#: {{zh-x|赤忱|จริงใจอย่างยิ่ง}}
# [[ว่างเปล่า]]; [[โล่ง]], [[เปล่า]]
#: {{zh-x|赤貧|ยากจนข้นแค้นอย่างยิ่ง}}
#: {{zh-x|赤手空拳|ด้วยมือ'''เปล่า'''และหมัดเปล่า}}
# [[เปลือย]], [[เปลือยกาย]]
#: {{zh-x|赤腳|เท้าเปล่า}}
# {{lb|zh|การเมือง}} เชิง[[ปฏิวัติ]]; เชิง[[คอมมิวนิสต์]]; แดง
#: {{zh-x|赤化|ทำให้กลายเป็นคอมมิวนิสต์; กลายเป็นฝ่ายแดง}}
# [[ทองคำ]][[บริสุทธิ์]]
# {{lb|zh|ฮกเกี้ยน}} [[ไม่ติดมัน]] {{gl|เนื้อสัตว์}}
# {{lb|zh|ฮกเกี้ยน}} เจียวหรือทอดจนเป็นสีน้ำตาล {{gl|ทำอาหารจนสุกเกรียมเป็นสีน้ำตาล}}
# {{lb|zh|ฮกเกี้ยน}} [[ดุร้าย]]และ[[ไร้เหตุผล]]; [[ดุดัน]]และ[[พูดไม่รู้เรื่อง]] {{gl|โดยเฉพาะผู้หญิง}}
# {{lb|zh|จีนแผ่นดินใหญ่|_|ฮกเกี้ยน}} [[ยากจน]]; [[ขัดสน]]
===== คำพ้องความ =====
* {{s|สีแดง}}
{{zh-dial|紅}}
* {{s|ยากจน}}
{{syn-saurus|zh|貧窮}}
{{zh-dial|貧窮}}
==== ลูกคำ ====
{{col3|zh|赤白痢|赤背|赤膊|赤膊上陣|赤潮|赤忱|赤誠|赤帶|赤膽忠心|赤道|赤道幾尼亞|赤地|赤光光|赤紅|赤狐|赤腳|赤腳醫生|赤金|赤佬|赤老|赤痢|赤練蛇|赤磷|赤露|赤裸|赤裸裸|赤黴素|赤貧|赤熱|赤日|赤色|赤芍|赤身|赤身裸體|赤手|赤手空拳|努爾哈赤|赤松|赤條精光|赤條條|赤鐵礦|赤銅礦|赤縣|赤小豆|赤心|赤揚|赤子|赤字|赤足|博爾赤|一寸赤心|小赤老|急赤白臉|忠心赤膽|噴赤河|後赤壁賦|兀剌赤|光赤|一片赤心|保兀赤|寶兒赤|月書赤繩|白兔赤烏|打赤腳|神州赤縣|白眉赤眼|打赤膊|眉間赤|母哈赤|火裡赤|赤蛙|赤道洋流|赤口白舌|赤縣神州|赤銜|耳紅面赤|赤色中國|赤帝子|赤崁樓|葉赤鐵路|赤石脂|赤眼卵蜂|赤棒|臉紅耳赤|赤兔|赤楊|赤經|赤血鹽|赤緊的|赤瑕|赤腳大仙|貿易赤字|赤心忠膽|赤貧如洗|赤繩繫足|赤血丹心|赤松子|裸身赤體|面紅耳赤|精赤條條|赤土陶器|赤緯|赤化|赤壁鏖兵|赤鉛礦|赤道儀|赤翡翠|赤鯶公|赤衛軍|赤膽忠肝|赤子之心|赤眉|金融赤字|赤箭|赤卒|赤豆|赤赤哈哈|赤體|赤手起家|赤巴巴|赤城|赤電|貝赤|赤留出律|赤腳漢|赤雅|赤嵌樓|赤地千里|赤衣使者|赤口毒舌|鏖兵赤壁|站赤|赤舌燒城|赤色國際|赤字預算|赤伏符|達魯花赤|赤軍旅|赤資資|赤道面|赤力力|赤壁賦|赤族|赤銅|赤道非洲|赤道群島|赤身露體|赤衣|赤繩綰足|赤米|赤禍|赤津津|赤幘|赤帝|赤尻|赤字財政|赤壁懷古|赤壁之戰|赤壁|赤墀|赤塔|赤俄|赤仄|赤道雨林|赤立|面紅面赤|赤膽|赤狗日|赤面|赤土|赤石|赤溪河|赤馬港|赤崁|小赤|赤山|赤才|赤星}}
==== คำสืบทอด ====
{{CJKV||せき|적|xích}}
* {{desc|hmx-mie-pro|*sekᴰ|t=red|bor=1}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|กวางตุ้ง}} [[เจ็บปวด]]; [[ปวด]]
#: {{zh-x|頭赤|'''ปวด'''ศีรษะ|C}}
===== คำพ้องความ =====
{{zh-dial|疼}}
==== ลูกคำ ====
{{col3|zh|頭赤|頭赤赤|赤痛|赤赤痛|肉赤|骨赤|骨罅赤|頸赤}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
j14eyz5le6onw5h498aq5nutpsopqdm
5760013
5760012
2026-09-09T10:30:19Z
Octahedron80
267
/* ภาษาจีน */
5760013
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== ต้นกำเนิดอักขระ ===
{{Han etyl}}
{{Han compound|大|t1=person, big|火|t2=fire|ls=ic}} – the color of fire (a person by a fire). The original version is [[𤆍]].
The man on top is simplified as 土 as in [[去]] and [[走]] (< [[𧺆]]). The fire is stylized as well, but an intermediate and obsolete variant is [[灻]].
{{Han compound|大|t1=คน, ใหญ่|火|t2=ไฟ|ls=ic}} – สีของไฟ (คนข้างกองไฟ); รูปแบบดั้งเดิมคือ [[𤆍]]
รูปคนด้านบนถูกลดรูปเป็น 土 เช่นเดียวกับใน [[去]] และ [[走]] (< [[𧺆]]) ส่วนไฟก็ถูกปรับเปลี่ยนรูปแบบเช่นกัน แต่มีรูปแปรโบราณในยุคเปลี่ยนผ่านคือ [[灻]]
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
เป็นไปได้ว่าสืบทอดจาก{{inh|zh|sit-pro|*qrak||เลือด; แดง}}, ซึ่งเป็นรากของ{{cog|bo|ཁྲག||เลือด}} (STEDT; {{zh-ref|Schuessler, 2007}}); เกี่ยวข้องกับ {{och-l|赫|แดงสด}} และอาจเกี่ยวข้องกับ {{och-l|奭|สง่างาม; แดง}} ด้วย
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|ภาษาหนังสือ|หรือ|กวี}} สี[[แดง]], สี[[แดงชาด]]
#: {{zh-x|赤字|การขาดดุล|lit=ตัวเลขสี'''แดง'''}}
#: {{zh-x|赤色 的 晚霞|แสงสายัณห์สี'''แดง'''}}
#* {{zh-x|莫 赤 匪 狐,莫 黑 匪 烏。|ไม่มีสิ่งใดเป็นสี'''แดง'''นอกจากสุนัขจิ้งจอก<br/>ไม่มีสิ่งใดเป็นสีดำนอกจากอีกา|ref=Shijing}}
# {{lb|zh|แต้จิ๋ว}} สี[[น้ำตาล]]
# [[ภักดี]], [[ซื่อสัตย์]]; [[จริงใจ]]
#: {{zh-x|赤忱|จริงใจอย่างยิ่ง}}
# [[ว่างเปล่า]]; [[โล่ง]], [[เปล่า]]
#: {{zh-x|赤貧|ยากจนข้นแค้นอย่างยิ่ง}}
#: {{zh-x|赤手空拳|ด้วยมือ'''เปล่า'''และหมัดเปล่า}}
# [[เปลือย]], [[เปลือยกาย]]
#: {{zh-x|赤腳|เท้าเปล่า}}
# {{lb|zh|การเมือง}} เชิง[[ปฏิวัติ]]; เชิง[[คอมมิวนิสต์]]; แดง
#: {{zh-x|赤化|ทำให้กลายเป็นคอมมิวนิสต์; กลายเป็นฝ่ายแดง}}
# [[ทองคำ]][[บริสุทธิ์]]
# {{lb|zh|ฮกเกี้ยน}} [[ไม่ติดมัน]] {{gl|เนื้อสัตว์}}
# {{lb|zh|ฮกเกี้ยน}} เจียวหรือทอดจนเป็นสีน้ำตาล {{gl|ทำอาหารจนสุกเกรียมเป็นสีน้ำตาล}}
# {{lb|zh|ฮกเกี้ยน}} [[ดุร้าย]]และ[[ไร้เหตุผล]]; [[ดุดัน]]และ[[พูดไม่รู้เรื่อง]] {{gl|โดยเฉพาะผู้หญิง}}
# {{lb|zh|จีนแผ่นดินใหญ่|_|ฮกเกี้ยน}} [[ยากจน]]; [[ขัดสน]]
===== คำพ้องความ =====
* {{s|สีแดง}}
{{zh-dial|紅}}
* {{s|ยากจน}}
{{syn-saurus|zh|貧窮}}
{{zh-dial|貧窮}}
==== ลูกคำ ====
{{col3|zh|赤白痢|赤背|赤膊|赤膊上陣|赤潮|赤忱|赤誠|赤帶|赤膽忠心|赤道|赤道幾尼亞|赤地|赤光光|赤紅|赤狐|赤腳|赤腳醫生|赤金|赤佬|赤老|赤痢|赤練蛇|赤磷|赤露|赤裸|赤裸裸|赤黴素|赤貧|赤熱|赤日|赤色|赤芍|赤身|赤身裸體|赤手|赤手空拳|努爾哈赤|赤松|赤條精光|赤條條|赤鐵礦|赤銅礦|赤縣|赤小豆|赤心|赤揚|赤子|赤字|赤足|博爾赤|一寸赤心|小赤老|急赤白臉|忠心赤膽|噴赤河|後赤壁賦|兀剌赤|光赤|一片赤心|保兀赤|寶兒赤|月書赤繩|白兔赤烏|打赤腳|神州赤縣|白眉赤眼|打赤膊|眉間赤|母哈赤|火裡赤|赤蛙|赤道洋流|赤口白舌|赤縣神州|赤銜|耳紅面赤|赤色中國|赤帝子|赤崁樓|葉赤鐵路|赤石脂|赤眼卵蜂|赤棒|臉紅耳赤|赤兔|赤楊|赤經|赤血鹽|赤緊的|赤瑕|赤腳大仙|貿易赤字|赤心忠膽|赤貧如洗|赤繩繫足|赤血丹心|赤松子|裸身赤體|面紅耳赤|精赤條條|赤土陶器|赤緯|赤化|赤壁鏖兵|赤鉛礦|赤道儀|赤翡翠|赤鯶公|赤衛軍|赤膽忠肝|赤子之心|赤眉|金融赤字|赤箭|赤卒|赤豆|赤赤哈哈|赤體|赤手起家|赤巴巴|赤城|赤電|貝赤|赤留出律|赤腳漢|赤雅|赤嵌樓|赤地千里|赤衣使者|赤口毒舌|鏖兵赤壁|站赤|赤舌燒城|赤色國際|赤字預算|赤伏符|達魯花赤|赤軍旅|赤資資|赤道面|赤力力|赤壁賦|赤族|赤銅|赤道非洲|赤道群島|赤身露體|赤衣|赤繩綰足|赤米|赤禍|赤津津|赤幘|赤帝|赤尻|赤字財政|赤壁懷古|赤壁之戰|赤壁|赤墀|赤塔|赤俄|赤仄|赤道雨林|赤立|面紅面赤|赤膽|赤狗日|赤面|赤土|赤石|赤溪河|赤馬港|赤崁|小赤|赤山|赤才|赤星}}
==== คำสืบทอด ====
{{CJKV||せき|적|xích}}
* {{desc|hmx-mie-pro|*sekᴰ|t=red|bor=1}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|กวางตุ้ง}} [[เจ็บปวด]]; [[ปวด]]
#: {{zh-x|頭赤|'''ปวด'''ศีรษะ|C}}
===== คำพ้องความ =====
{{zh-dial|疼}}
==== ลูกคำ ====
{{col3|zh|頭赤|頭赤赤|赤痛|赤赤痛|肉赤|骨赤|骨罅赤|頸赤}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
9txmyztihxyjsroa79oafctclp3eqgt
5760014
5760013
2026-09-09T10:30:34Z
Octahedron80
267
/* ต้นกำเนิดอักขระ */
5760014
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=0|sn=7|four=4033.1|canj=GLNC|ids=⿱土&CDP-8CB5;}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== ต้นกำเนิดอักขระ ===
{{Han etyl}}
{{Han compound|大|t1=คน, ใหญ่|火|t2=ไฟ|ls=ic}} – สีของไฟ (คนข้างกองไฟ); รูปแบบดั้งเดิมคือ [[𤆍]]
รูปคนด้านบนถูกลดรูปเป็น 土 เช่นเดียวกับใน [[去]] และ [[走]] (< [[𧺆]]) ส่วนไฟก็ถูกปรับเปลี่ยนรูปแบบเช่นกัน แต่มีรูปแปรโบราณในยุคเปลี่ยนผ่านคือ [[灻]]
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
เป็นไปได้ว่าสืบทอดจาก{{inh|zh|sit-pro|*qrak||เลือด; แดง}}, ซึ่งเป็นรากของ{{cog|bo|ཁྲག||เลือด}} (STEDT; {{zh-ref|Schuessler, 2007}}); เกี่ยวข้องกับ {{och-l|赫|แดงสด}} และอาจเกี่ยวข้องกับ {{och-l|奭|สง่างาม; แดง}} ด้วย
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|ภาษาหนังสือ|หรือ|กวี}} สี[[แดง]], สี[[แดงชาด]]
#: {{zh-x|赤字|การขาดดุล|lit=ตัวเลขสี'''แดง'''}}
#: {{zh-x|赤色 的 晚霞|แสงสายัณห์สี'''แดง'''}}
#* {{zh-x|莫 赤 匪 狐,莫 黑 匪 烏。|ไม่มีสิ่งใดเป็นสี'''แดง'''นอกจากสุนัขจิ้งจอก<br/>ไม่มีสิ่งใดเป็นสีดำนอกจากอีกา|ref=Shijing}}
# {{lb|zh|แต้จิ๋ว}} สี[[น้ำตาล]]
# [[ภักดี]], [[ซื่อสัตย์]]; [[จริงใจ]]
#: {{zh-x|赤忱|จริงใจอย่างยิ่ง}}
# [[ว่างเปล่า]]; [[โล่ง]], [[เปล่า]]
#: {{zh-x|赤貧|ยากจนข้นแค้นอย่างยิ่ง}}
#: {{zh-x|赤手空拳|ด้วยมือ'''เปล่า'''และหมัดเปล่า}}
# [[เปลือย]], [[เปลือยกาย]]
#: {{zh-x|赤腳|เท้าเปล่า}}
# {{lb|zh|การเมือง}} เชิง[[ปฏิวัติ]]; เชิง[[คอมมิวนิสต์]]; แดง
#: {{zh-x|赤化|ทำให้กลายเป็นคอมมิวนิสต์; กลายเป็นฝ่ายแดง}}
# [[ทองคำ]][[บริสุทธิ์]]
# {{lb|zh|ฮกเกี้ยน}} [[ไม่ติดมัน]] {{gl|เนื้อสัตว์}}
# {{lb|zh|ฮกเกี้ยน}} เจียวหรือทอดจนเป็นสีน้ำตาล {{gl|ทำอาหารจนสุกเกรียมเป็นสีน้ำตาล}}
# {{lb|zh|ฮกเกี้ยน}} [[ดุร้าย]]และ[[ไร้เหตุผล]]; [[ดุดัน]]และ[[พูดไม่รู้เรื่อง]] {{gl|โดยเฉพาะผู้หญิง}}
# {{lb|zh|จีนแผ่นดินใหญ่|_|ฮกเกี้ยน}} [[ยากจน]]; [[ขัดสน]]
===== คำพ้องความ =====
* {{s|สีแดง}}
{{zh-dial|紅}}
* {{s|ยากจน}}
{{syn-saurus|zh|貧窮}}
{{zh-dial|貧窮}}
==== ลูกคำ ====
{{col3|zh|赤白痢|赤背|赤膊|赤膊上陣|赤潮|赤忱|赤誠|赤帶|赤膽忠心|赤道|赤道幾尼亞|赤地|赤光光|赤紅|赤狐|赤腳|赤腳醫生|赤金|赤佬|赤老|赤痢|赤練蛇|赤磷|赤露|赤裸|赤裸裸|赤黴素|赤貧|赤熱|赤日|赤色|赤芍|赤身|赤身裸體|赤手|赤手空拳|努爾哈赤|赤松|赤條精光|赤條條|赤鐵礦|赤銅礦|赤縣|赤小豆|赤心|赤揚|赤子|赤字|赤足|博爾赤|一寸赤心|小赤老|急赤白臉|忠心赤膽|噴赤河|後赤壁賦|兀剌赤|光赤|一片赤心|保兀赤|寶兒赤|月書赤繩|白兔赤烏|打赤腳|神州赤縣|白眉赤眼|打赤膊|眉間赤|母哈赤|火裡赤|赤蛙|赤道洋流|赤口白舌|赤縣神州|赤銜|耳紅面赤|赤色中國|赤帝子|赤崁樓|葉赤鐵路|赤石脂|赤眼卵蜂|赤棒|臉紅耳赤|赤兔|赤楊|赤經|赤血鹽|赤緊的|赤瑕|赤腳大仙|貿易赤字|赤心忠膽|赤貧如洗|赤繩繫足|赤血丹心|赤松子|裸身赤體|面紅耳赤|精赤條條|赤土陶器|赤緯|赤化|赤壁鏖兵|赤鉛礦|赤道儀|赤翡翠|赤鯶公|赤衛軍|赤膽忠肝|赤子之心|赤眉|金融赤字|赤箭|赤卒|赤豆|赤赤哈哈|赤體|赤手起家|赤巴巴|赤城|赤電|貝赤|赤留出律|赤腳漢|赤雅|赤嵌樓|赤地千里|赤衣使者|赤口毒舌|鏖兵赤壁|站赤|赤舌燒城|赤色國際|赤字預算|赤伏符|達魯花赤|赤軍旅|赤資資|赤道面|赤力力|赤壁賦|赤族|赤銅|赤道非洲|赤道群島|赤身露體|赤衣|赤繩綰足|赤米|赤禍|赤津津|赤幘|赤帝|赤尻|赤字財政|赤壁懷古|赤壁之戰|赤壁|赤墀|赤塔|赤俄|赤仄|赤道雨林|赤立|面紅面赤|赤膽|赤狗日|赤面|赤土|赤石|赤溪河|赤馬港|赤崁|小赤|赤山|赤才|赤星}}
==== คำสืบทอด ====
{{CJKV||せき|적|xích}}
* {{desc|hmx-mie-pro|*sekᴰ|t=red|bor=1}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|กวางตุ้ง}} [[เจ็บปวด]]; [[ปวด]]
#: {{zh-x|頭赤|'''ปวด'''ศีรษะ|C}}
===== คำพ้องความ =====
{{zh-dial|疼}}
==== ลูกคำ ====
{{col3|zh|頭赤|頭赤赤|赤痛|赤赤痛|肉赤|骨赤|骨罅赤|頸赤}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
mfrolxr3w021ipy10yv298vko3wrvl1
5760015
5760014
2026-09-09T10:33:53Z
Octahedron80
267
/* อักษรจีน */
5760015
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=00|sn=7|canj=GLNC|four=40331|ids=⿱土⿻小丿(GTJKV),⿱土⿰𬼀𰍨(GTJKV),⿱土⿻小丨(H)}}
# red
# communist, 'red'
# bare
{{ต้องการแปล}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== ต้นกำเนิดอักขระ ===
{{Han etyl}}
{{Han compound|大|t1=คน, ใหญ่|火|t2=ไฟ|ls=ic}} – สีของไฟ (คนข้างกองไฟ); รูปแบบดั้งเดิมคือ [[𤆍]]
รูปคนด้านบนถูกลดรูปเป็น 土 เช่นเดียวกับใน [[去]] และ [[走]] (< [[𧺆]]) ส่วนไฟก็ถูกปรับเปลี่ยนรูปแบบเช่นกัน แต่มีรูปแปรโบราณในยุคเปลี่ยนผ่านคือ [[灻]]
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
เป็นไปได้ว่าสืบทอดจาก{{inh|zh|sit-pro|*qrak||เลือด; แดง}}, ซึ่งเป็นรากของ{{cog|bo|ཁྲག||เลือด}} (STEDT; {{zh-ref|Schuessler, 2007}}); เกี่ยวข้องกับ {{och-l|赫|แดงสด}} และอาจเกี่ยวข้องกับ {{och-l|奭|สง่างาม; แดง}} ด้วย
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|ภาษาหนังสือ|หรือ|กวี}} สี[[แดง]], สี[[แดงชาด]]
#: {{zh-x|赤字|การขาดดุล|lit=ตัวเลขสี'''แดง'''}}
#: {{zh-x|赤色 的 晚霞|แสงสายัณห์สี'''แดง'''}}
#* {{zh-x|莫 赤 匪 狐,莫 黑 匪 烏。|ไม่มีสิ่งใดเป็นสี'''แดง'''นอกจากสุนัขจิ้งจอก<br/>ไม่มีสิ่งใดเป็นสีดำนอกจากอีกา|ref=Shijing}}
# {{lb|zh|แต้จิ๋ว}} สี[[น้ำตาล]]
# [[ภักดี]], [[ซื่อสัตย์]]; [[จริงใจ]]
#: {{zh-x|赤忱|จริงใจอย่างยิ่ง}}
# [[ว่างเปล่า]]; [[โล่ง]], [[เปล่า]]
#: {{zh-x|赤貧|ยากจนข้นแค้นอย่างยิ่ง}}
#: {{zh-x|赤手空拳|ด้วยมือ'''เปล่า'''และหมัดเปล่า}}
# [[เปลือย]], [[เปลือยกาย]]
#: {{zh-x|赤腳|เท้าเปล่า}}
# {{lb|zh|การเมือง}} เชิง[[ปฏิวัติ]]; เชิง[[คอมมิวนิสต์]]; แดง
#: {{zh-x|赤化|ทำให้กลายเป็นคอมมิวนิสต์; กลายเป็นฝ่ายแดง}}
# [[ทองคำ]][[บริสุทธิ์]]
# {{lb|zh|ฮกเกี้ยน}} [[ไม่ติดมัน]] {{gl|เนื้อสัตว์}}
# {{lb|zh|ฮกเกี้ยน}} เจียวหรือทอดจนเป็นสีน้ำตาล {{gl|ทำอาหารจนสุกเกรียมเป็นสีน้ำตาล}}
# {{lb|zh|ฮกเกี้ยน}} [[ดุร้าย]]และ[[ไร้เหตุผล]]; [[ดุดัน]]และ[[พูดไม่รู้เรื่อง]] {{gl|โดยเฉพาะผู้หญิง}}
# {{lb|zh|จีนแผ่นดินใหญ่|_|ฮกเกี้ยน}} [[ยากจน]]; [[ขัดสน]]
===== คำพ้องความ =====
* {{s|สีแดง}}
{{zh-dial|紅}}
* {{s|ยากจน}}
{{syn-saurus|zh|貧窮}}
{{zh-dial|貧窮}}
==== ลูกคำ ====
{{col3|zh|赤白痢|赤背|赤膊|赤膊上陣|赤潮|赤忱|赤誠|赤帶|赤膽忠心|赤道|赤道幾尼亞|赤地|赤光光|赤紅|赤狐|赤腳|赤腳醫生|赤金|赤佬|赤老|赤痢|赤練蛇|赤磷|赤露|赤裸|赤裸裸|赤黴素|赤貧|赤熱|赤日|赤色|赤芍|赤身|赤身裸體|赤手|赤手空拳|努爾哈赤|赤松|赤條精光|赤條條|赤鐵礦|赤銅礦|赤縣|赤小豆|赤心|赤揚|赤子|赤字|赤足|博爾赤|一寸赤心|小赤老|急赤白臉|忠心赤膽|噴赤河|後赤壁賦|兀剌赤|光赤|一片赤心|保兀赤|寶兒赤|月書赤繩|白兔赤烏|打赤腳|神州赤縣|白眉赤眼|打赤膊|眉間赤|母哈赤|火裡赤|赤蛙|赤道洋流|赤口白舌|赤縣神州|赤銜|耳紅面赤|赤色中國|赤帝子|赤崁樓|葉赤鐵路|赤石脂|赤眼卵蜂|赤棒|臉紅耳赤|赤兔|赤楊|赤經|赤血鹽|赤緊的|赤瑕|赤腳大仙|貿易赤字|赤心忠膽|赤貧如洗|赤繩繫足|赤血丹心|赤松子|裸身赤體|面紅耳赤|精赤條條|赤土陶器|赤緯|赤化|赤壁鏖兵|赤鉛礦|赤道儀|赤翡翠|赤鯶公|赤衛軍|赤膽忠肝|赤子之心|赤眉|金融赤字|赤箭|赤卒|赤豆|赤赤哈哈|赤體|赤手起家|赤巴巴|赤城|赤電|貝赤|赤留出律|赤腳漢|赤雅|赤嵌樓|赤地千里|赤衣使者|赤口毒舌|鏖兵赤壁|站赤|赤舌燒城|赤色國際|赤字預算|赤伏符|達魯花赤|赤軍旅|赤資資|赤道面|赤力力|赤壁賦|赤族|赤銅|赤道非洲|赤道群島|赤身露體|赤衣|赤繩綰足|赤米|赤禍|赤津津|赤幘|赤帝|赤尻|赤字財政|赤壁懷古|赤壁之戰|赤壁|赤墀|赤塔|赤俄|赤仄|赤道雨林|赤立|面紅面赤|赤膽|赤狗日|赤面|赤土|赤石|赤溪河|赤馬港|赤崁|小赤|赤山|赤才|赤星}}
==== คำสืบทอด ====
{{CJKV||せき|적|xích}}
* {{desc|hmx-mie-pro|*sekᴰ|t=red|bor=1}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|กวางตุ้ง}} [[เจ็บปวด]]; [[ปวด]]
#: {{zh-x|頭赤|'''ปวด'''ศีรษะ|C}}
===== คำพ้องความ =====
{{zh-dial|疼}}
==== ลูกคำ ====
{{col3|zh|頭赤|頭赤赤|赤痛|赤赤痛|肉赤|骨赤|骨罅赤|頸赤}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
3ewxect8bmuewqqsmstjy47ovgv77b1
5760016
5760015
2026-09-09T10:34:30Z
Octahedron80
267
/* อักษรจีน */
5760016
wikitext
text/x-wiki
{{character info}}
{{character info|⾚}}
== ภาษาร่วม ==
=== อักษรจีน ===
{{Han char|rn=155|rad=赤|as=00|sn=7|canj=GLNC|four=40331|ids=⿱土⿻小丿(GTJKV),⿱土⿰𬼀𰍨(GTJKV),⿱土⿻小丨(H)}}
==== อ้างอิง ====
* {{Han ref|kx=1213.220|dkj=36993|dj=1680.120|hdz=53506.010|uh=8D64}}
== ภาษาจีน ==
=== ต้นกำเนิดอักขระ ===
{{Han etyl}}
{{Han compound|大|t1=คน, ใหญ่|火|t2=ไฟ|ls=ic}} – สีของไฟ (คนข้างกองไฟ); รูปแบบดั้งเดิมคือ [[𤆍]]
รูปคนด้านบนถูกลดรูปเป็น 土 เช่นเดียวกับใน [[去]] และ [[走]] (< [[𧺆]]) ส่วนไฟก็ถูกปรับเปลี่ยนรูปแบบเช่นกัน แต่มีรูปแปรโบราณในยุคเปลี่ยนผ่านคือ [[灻]]
=== รากศัพท์ 1 ===
{{zh-forms|alt=灻,𤆍,烾-ancient,刺-Hokkien}}
เป็นไปได้ว่าสืบทอดจาก{{inh|zh|sit-pro|*qrak||เลือด; แดง}}, ซึ่งเป็นรากของ{{cog|bo|ཁྲག||เลือด}} (STEDT; {{zh-ref|Schuessler, 2007}}); เกี่ยวข้องกับ {{och-l|赫|แดงสด}} และอาจเกี่ยวข้องกับ {{och-l|奭|สง่างาม; แดง}} ด้วย
==== การออกเสียง ====
{{zh-pron
|m=chì
|m-s=
|c=cek3,cik3
|c_note=cik3 - literary
|c-dg=ceak7
|c-t=cet2,ciak1
|c-t_note=ciak1 - in {{zh-l|赤坎|tr=-}}
|g=ciit6/cah6
|g_note=ciit6 - literary; cah6 - vernacular
|h=pfs=chhak;hrs=h:chag;gd=cag5
|j=ceh4
|mb=chiă
|md=chiáh/chék
|md_note=chiáh - vernacular (“red and bright” (of gold)); chék - literary
|mn=ml,tw,sg:chhiah/xm,zz,dh,tw:chhek/qz:chhiak
|mn_note=chhiah - vernacular (“red; to be naked; lean; to brown; fierce and unreasonable; poor”); chhek/chhiak - literary
|mn-t=ciah4
|mn-l=qia7/qig4
|mn-l_note=qia7 - vernacular; qig4 - literary
|px=pt,nr,dh,xy,yy,ft:cia6/jk:cie6/pt,jk,nr,dh,xy,yy,ft:cih6
|px_note=cia6/cie6 - vernacular; cih6 - literary
|sp=cik2
|w=sh,jd,sj,cm,sz,jx,nb:7tshaq;cm,sz,cz,jx,hz,sx:7tsheq;sj,sx:7tsheoq;nb,zs:7chiq
|w-j=7chiq,7tsheq
|w_note=Northern: 7tshaq - vernacular; 7tsheq/7tsheoq/7chiq - literary
|x=chr6
|mc=y
|oc=y
|cat=a,n
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|ภาษาหนังสือ|หรือ|กวี}} สี[[แดง]], สี[[แดงชาด]]
#: {{zh-x|赤字|การขาดดุล|lit=ตัวเลขสี'''แดง'''}}
#: {{zh-x|赤色 的 晚霞|แสงสายัณห์สี'''แดง'''}}
#* {{zh-x|莫 赤 匪 狐,莫 黑 匪 烏。|ไม่มีสิ่งใดเป็นสี'''แดง'''นอกจากสุนัขจิ้งจอก<br/>ไม่มีสิ่งใดเป็นสีดำนอกจากอีกา|ref=Shijing}}
# {{lb|zh|แต้จิ๋ว}} สี[[น้ำตาล]]
# [[ภักดี]], [[ซื่อสัตย์]]; [[จริงใจ]]
#: {{zh-x|赤忱|จริงใจอย่างยิ่ง}}
# [[ว่างเปล่า]]; [[โล่ง]], [[เปล่า]]
#: {{zh-x|赤貧|ยากจนข้นแค้นอย่างยิ่ง}}
#: {{zh-x|赤手空拳|ด้วยมือ'''เปล่า'''และหมัดเปล่า}}
# [[เปลือย]], [[เปลือยกาย]]
#: {{zh-x|赤腳|เท้าเปล่า}}
# {{lb|zh|การเมือง}} เชิง[[ปฏิวัติ]]; เชิง[[คอมมิวนิสต์]]; แดง
#: {{zh-x|赤化|ทำให้กลายเป็นคอมมิวนิสต์; กลายเป็นฝ่ายแดง}}
# [[ทองคำ]][[บริสุทธิ์]]
# {{lb|zh|ฮกเกี้ยน}} [[ไม่ติดมัน]] {{gl|เนื้อสัตว์}}
# {{lb|zh|ฮกเกี้ยน}} เจียวหรือทอดจนเป็นสีน้ำตาล {{gl|ทำอาหารจนสุกเกรียมเป็นสีน้ำตาล}}
# {{lb|zh|ฮกเกี้ยน}} [[ดุร้าย]]และ[[ไร้เหตุผล]]; [[ดุดัน]]และ[[พูดไม่รู้เรื่อง]] {{gl|โดยเฉพาะผู้หญิง}}
# {{lb|zh|จีนแผ่นดินใหญ่|_|ฮกเกี้ยน}} [[ยากจน]]; [[ขัดสน]]
===== คำพ้องความ =====
* {{s|สีแดง}}
{{zh-dial|紅}}
* {{s|ยากจน}}
{{syn-saurus|zh|貧窮}}
{{zh-dial|貧窮}}
==== ลูกคำ ====
{{col3|zh|赤白痢|赤背|赤膊|赤膊上陣|赤潮|赤忱|赤誠|赤帶|赤膽忠心|赤道|赤道幾尼亞|赤地|赤光光|赤紅|赤狐|赤腳|赤腳醫生|赤金|赤佬|赤老|赤痢|赤練蛇|赤磷|赤露|赤裸|赤裸裸|赤黴素|赤貧|赤熱|赤日|赤色|赤芍|赤身|赤身裸體|赤手|赤手空拳|努爾哈赤|赤松|赤條精光|赤條條|赤鐵礦|赤銅礦|赤縣|赤小豆|赤心|赤揚|赤子|赤字|赤足|博爾赤|一寸赤心|小赤老|急赤白臉|忠心赤膽|噴赤河|後赤壁賦|兀剌赤|光赤|一片赤心|保兀赤|寶兒赤|月書赤繩|白兔赤烏|打赤腳|神州赤縣|白眉赤眼|打赤膊|眉間赤|母哈赤|火裡赤|赤蛙|赤道洋流|赤口白舌|赤縣神州|赤銜|耳紅面赤|赤色中國|赤帝子|赤崁樓|葉赤鐵路|赤石脂|赤眼卵蜂|赤棒|臉紅耳赤|赤兔|赤楊|赤經|赤血鹽|赤緊的|赤瑕|赤腳大仙|貿易赤字|赤心忠膽|赤貧如洗|赤繩繫足|赤血丹心|赤松子|裸身赤體|面紅耳赤|精赤條條|赤土陶器|赤緯|赤化|赤壁鏖兵|赤鉛礦|赤道儀|赤翡翠|赤鯶公|赤衛軍|赤膽忠肝|赤子之心|赤眉|金融赤字|赤箭|赤卒|赤豆|赤赤哈哈|赤體|赤手起家|赤巴巴|赤城|赤電|貝赤|赤留出律|赤腳漢|赤雅|赤嵌樓|赤地千里|赤衣使者|赤口毒舌|鏖兵赤壁|站赤|赤舌燒城|赤色國際|赤字預算|赤伏符|達魯花赤|赤軍旅|赤資資|赤道面|赤力力|赤壁賦|赤族|赤銅|赤道非洲|赤道群島|赤身露體|赤衣|赤繩綰足|赤米|赤禍|赤津津|赤幘|赤帝|赤尻|赤字財政|赤壁懷古|赤壁之戰|赤壁|赤墀|赤塔|赤俄|赤仄|赤道雨林|赤立|面紅面赤|赤膽|赤狗日|赤面|赤土|赤石|赤溪河|赤馬港|赤崁|小赤|赤山|赤才|赤星}}
==== คำสืบทอด ====
{{CJKV||せき|적|xích}}
* {{desc|hmx-mie-pro|*sekᴰ|t=red|bor=1}}
=== รากศัพท์ 2 ===
{{zh-forms|alt=𣤩}}
{{rfe|zh|From {{zh-l|*刺}}?}}
==== การออกเสียง ====
{{zh-pron
|c=cek3
|c-t=tiak1
|cat=a
}}
==== ความหมาย ====
{{head|zh|ฮั่นจื้อ}}
# {{lb|zh|กวางตุ้ง}} [[เจ็บปวด]]; [[ปวด]]
#: {{zh-x|頭赤|'''ปวด'''ศีรษะ|C}}
===== คำพ้องความ =====
{{zh-dial|疼}}
==== ลูกคำ ====
{{col3|zh|頭赤|頭赤赤|赤痛|赤赤痛|肉赤|骨赤|骨罅赤|頸赤}}
=== รากศัพท์ 3 ===
{{zh-see|刺}}
=== อ้างอิง ===
* {{R:yue:Hanzi}}
* {{R:yue:jyut.net}}
* {{R:cpx:PHDB|entry=赤|pp=272}}
{{C|zh|Colors of the rainbow|สีแดง}}
2j4ftftnkqdcwq67atbv60vmf36bbgy
มอดูล:IPA
828
137524
5759940
3139133
2026-09-08T12:28:23Z
Octahedron80
267
5759940
Scribunto
text/plain
local export = {}
local force_cat = false -- for testing
local pages_module = "Module:pages"
local pron_qualifier_module = "Module:pron qualifier"
local qualifier_module = "Module:qualifier"
local references_module = "Module:references"
local string_utilities_module = "Module:string utilities"
local syllables_module = "Module:syllables"
local utilities_module = "Module:utilities"
local m_data = mw.loadData("Module:IPA/data")
local m_str_utils = require(string_utilities_module)
local m_syllables -- [[Module:syllables]]; loaded below if needed
local m_symbols = mw.loadData("Module:IPA/data/symbols")
local concat = table.concat
local decode_entities = m_str_utils.decode_entities
local find = string.find
local gmatch = m_str_utils.gmatch
local gsub = string.gsub
local insert = table.insert
local is_preview = require(pages_module).is_preview
local len = m_str_utils.len
local listToText = mw.text.listToText
local match = string.match
local pattern_escape = m_str_utils.pattern_escape
local sub = string.sub
local u = m_str_utils.char
local ugsub = m_str_utils.gsub
local umatch = m_str_utils.match
local usub = m_str_utils.sub
local namespace = mw.title.getCurrentTitle().namespace
local is_content_page = namespace == 0 or namespace == 118
local function track(page)
require("Module:debug/track")("IPA/" .. page)
return true
end
local function process_maybe_split_categories(split_output, categories, prontext, lang, errtext)
if split_output ~= "raw" then
if categories[1] then
categories = require(utilities_module).format_categories(categories, lang, nil, nil, force_cat)
else
categories = ""
end
end
if split_output then -- for use of IPA in links, etc.
if errtext then
return prontext, categories, errtext
else
return prontext, categories
end
else
return prontext .. (errtext or "") .. categories
end
end
--[==[
Format a line of one or more IPA pronunciations as {{tl|IPA}} would do it, i.e. with a preceding {"IPA:"} followed by
the word {"key"} linking to an Appendix page describing the language's phonology, and with an added category
{{cd|<var>lang</var> terms with IPA pronunciation}}. Other than the extra preceding text and category, this is identical
to {format_IPA_multiple()}, and the considerations described there in the documentation apply here as well. There is a
single parameter `data`, an object with the following fields:
* `lang`: Object representing the language of the pronunciations, which is used when adding cleanup categories for
pronunciations with invalid phonemes; for determining how many syllables the pronunciations have in them, in order to
add a category such as [[:Category:Italian 2-syllable words]] (for certain languages only); for adding a category
{{cd|<var>lang</var> terms with IPA pronunciation}}; and for determining the proper sort keys for categories. Unlike
for {format_IPA_multiple()}, `lang` may not be {nil}.
* `items`: List of pronunciations, in exactly the same format as for {format_IPA_multiple()}.
* `err`: If not {nil}, a string containing an error message to use in place of the link to the language's phonology.
* `separator`: The default separator to use when separating formatted items. Defaults to {", "}. Does not apply to the
first item, where the default separator is always the empty string. Overridden by the per-item `separator` field in
`items`.
* `sort_key`: Explicit sort key used for categories.
* `no_count`: Suppress adding a {#-syllable words} category such as [[:Category:Italian 2-syllable words]]. Note that
only certain languages add such categories to begin with, because it depends on knowing how to count syllables in a
given language, which depends on the phonology of the language. Also, this does not suppress the addition of cleanup
or other categories. If you need them suppressed, use `split_output` to return the categories separately and ignore
them.
* `split_output`: If not given, the return value is a concatenation of the formatted pronunciation and formatted
categories. Otherwise, two values are returned: the formatted pronunciation and the categories. If `split_output` is
the value {"raw"}, the categories are returned in list form, where the list elements are a combination of category
strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]]. If
`split_output` is any other value besides {nil}, the categories are returned as a pre-formatted concatenated string.
* `include_langname`: If specified, prefix the result with the language name, followed by a colon.
* `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display at the beginning, before the formatted
pronunciations and preceding {"IPA:"}.
* `qq`: {nil} or a list of right qualifiers to display after all formatted pronunciations.
* `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display at the beginning, before the formatted
pronunciations and preceding {"IPA:"}.
* `aa`: {nil} or a list of right accent qualifiers to display after all formatted pronunciations.
]==]
function export.format_IPA_full(data)
if type(data) ~= "table" or data.getCode then
error("Must now supply a table of arguments to format_IPA_full(); first argument should be that table, not a language object")
end
local lang = data.lang
local items = data.items
local err = data.err
local separator = data.separator
local sort_key = data.sort_key
local no_count = data.no_count
local split_output = data.split_output
local q = data.q
local qq = data.qq
local a = data.a
local aa = data.aa
local include_langname = data.include_langname
local hasKey = m_data.langs_with_infopages
if not lang or not lang.getCode then
error("Must specify language to format_IPA_full()")
end
local langname = lang:getFullName()
local langcat = lang:getCategoryName() --th
local prefix_text
if err then
prefix_text = '<span class="error">' .. err .. '</span>'
else
if hasKey[lang:getCode()] then
prefix_text = "ภาคผนวก:การออกเสียง" .. langcat
else
prefix_text = "วิกิพีเดีย:ระบบเสียง" .. langcat
end
prefix_text = "[[" .. prefix_text .. "|คำอธิบาย]]"
end
local prefix = "[[วิกิพจนานุกรม:สัทอักษรสากล|สัทอักษรสากล]]<sup>(" .. prefix_text .. ")</sup>: "
local IPAs, categories = export.format_IPA_multiple(lang, items, separator, no_count, "raw")
if is_content_page then
insert(categories, {
cat = "ศัพท์" .. langcat .. "ที่มีการออกเสียงไอพีเอ",
sort_key = sort_key
})
end
local prontext = prefix .. IPAs
if q and q[1] or qq and qq[1] or a and a[1] or aa and aa[1] then
prontext = require(pron_qualifier_module).format_qualifiers {
lang = lang,
text = prontext,
q = q,
qq = qq,
a = a,
aa = aa,
}
end
if include_langname then
prontext = langname .. ": " .. prontext
end
return process_maybe_split_categories(split_output, categories, prontext, lang)
end
local function split_phonemic_phonetic(pron)
local reconstructed, phonemic, phonetic = match(pron, "^(%*?)(/.-/)%s+(%[.-%])$")
if reconstructed then
return reconstructed .. phonemic, reconstructed .. phonetic
else
return pron, nil
end
end
local function determine_repr(pron)
local reconstructed
-- remove initial asterisk before representation marks, used on some Reconstruction pages
if sub(pron, 1, 1) == "*" then
reconstructed = true
pron = sub(pron, 2)
end
local opening = match(pron, "^.[\128-\191]*")
local data = m_data.representation_types[opening]
if data then
local closing = data[2]
if data and match(pron, pattern_escape(closing) .. "$", #opening + 1) then
return data[1], opening, closing, reconstructed
end
end
return nil, "", "", reconstructed
end
local function hasInvalidSeparators(transcription)
-- Escape certain characters as well as pauses, which have the format "(...)" (with any number of dots), to avoid false-positives.
transcription = transcription:gsub(".[\128-\191]*", m_symbols.separator_escapes)
:gsub("%(%.+%)", "\3")
:gsub("[()]+", "")
return (
transcription:find("..", nil, true) or
transcription:match("%.%f[%z \1\2\3,:;]") or
transcription:match("\1%f[%z \2\3,:;]") or
transcription:match("\2%f[%z \1\3,:;]") or
transcription:match("\3[:;]") or
transcription:match("%f[^%z \1\2\3,]%.")
) and true or false
end
--[==[
Format a line of one or more bare IPA pronunciations (i.e. without any preceding {"IPA:"} and without adding to a
category {{cd|<var>lang</var> terms with IPA pronunciation}}). Individual pronunciations are formatted using
{format_IPA()} and are combined with separators, qualifiers, pre-text, post-text, etc. to form a line of pronunciations.
Parameters accepted are:
* `lang` is an object representing the language of the pronunciations, which is used when adding cleanup categories for
pronunciations with invalid phonemes; for determining how many syllables the pronunciations have in them, in order to
add a category such as [[:Category:Italian 2-syllable words]] (for certain languages only); and for computing the
proper sort keys for categories. `lang` may be {nil}.
* `items` is a list of pronunciations, each of which is an object with the following properties:
** `pron`: the pronunciation, in the same format as is accepted by {format_IPA()}, i.e. it should be either phonemic
(surrounded by {/.../}), phonetic (surrounded by {[...]}), orthographic (surrounded by {⟨...⟩}) or a rhyme
(beginning with a hyphen);
** `pretext`: text to display directly before the formatted pronunciation, inside of any qualifiers or accent
qualifiers;
** `posttext`: text to display directly after the formatted pronunciation, inside of any qualifiers or accent
qualifiers;
** `q` or `qualifiers`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display before the formatted
pronunciation; note that `qualifiers` is deprecated;
** `qq`: {nil} or a list of right qualifiers to display after the formatted pronunciation;
** `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display before the formatted pronunciation;
** `aa`: {nil} or a list of right accent qualifiers to after before the formatted pronunciation;
** `refs`: {nil} or a list of references or reference specs to add after the pronunciation and any posttext and
qualifiers; the value of a list item is either a string containing the reference text (typically a call to a
citation template such as {{tl|cite-book}}, or a template wrapping such a call), or an object with fields `text`
(the reference text), `name` (the name of the reference, as in {{cd|<nowiki><ref name="foo">...</ref></nowiki>}}
or {{cd|<nowiki><ref name="foo" /></nowiki>}}) and/or `group` (the group of the reference, as in
{{cd|<nowiki><ref name="foo" group="bar">...</ref></nowiki>}} or
{{cd|<nowiki><ref name="foo" group="bar"/></nowiki>}}); this uses a parser function to format the reference
appropriately and insert a footnote number that hyperlinks to the actual reference, located in the
{{cd|<nowiki><references /></nowiki>}} section;
** `gloss`: {nil} or a gloss (definition) for this item, if different definitions have different pronunciations;
** `pos`: {nil} or a part of speech for this item, if different parts of speech have different pronunciations;
** `separator`: the separator text to insert directly before the formatted pronunciation and all qualifiers, accent
qualifiers and pre-text; defaults to the outer `separator` parameter.
* `separator`: The default separator to use when separating formatted items. Defaults to {", "}. Does not apply to the
first item, where the default separator is always the empty string. Overridden by the per-item `separator` field in
`items`.
* `no_count`: Suppress adding a {#-syllable words} category such as [[:Category:Italian 2-syllable words]]. Note that
only certain languages add such categories to begin with, because it depends on knowing how to count syllables in a
given language, which depends on the phonology of the language. Also, this does not suppress the addition of cleanup
categories. If you need them suppressed, use `split_output` to return the categories separately and ignore them.
* `split_output`: If not given, the return value is a concatenation of the formatted pronunciation and formatted
categories. Otherwise, two values are returned: the formatted pronunciation and the categories. If `split_output` is
the value {"raw"}, the categories are returned in list form, where the list elements are a combination of category
strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]]. If
`split_output` is any other value besides {nil}, the categories are returned as a pre-formatted concatenated string.
]==]
function export.format_IPA_multiple(lang, items, separator, no_count, split_output)
local categories = {}
separator = separator or ", "
if not lang then
track("format-multiple-nolang")
end
-- Format
if not items[1] then
if namespace == 10 then -- Template
insert(items, {pron = "/aɪ piː ˈeɪ/"})
else
insert(categories, "Pronunciation templates without a pronunciation")
end
end
local bits = {}
for i, item in ipairs(items) do
local bit
-- If the pronunciation is entirely empty, allow this and don't do anything, so that e.g. the pretext and/or
-- posttext can be specified to force something like ''unknown'' to appear in place of the pronunciation
-- (as happens e.g. when ? is used as a respelling in [[Module:ca-IPA]]; see [[guèiser]] for an example).
if item.pron == "" then
bit = ""
else
local item_categories, errtext
bit, item_categories, errtext = export.format_IPA(lang, item.pron, "raw")
bit = bit .. errtext
for _, cat in ipairs(item_categories) do
insert(categories, cat)
end
end
if item.pretext then
bit = item.pretext .. bit
end
if item.posttext then
bit = bit .. item.posttext
end
local has_qualifiers = item.q and item.q[1] or item.qq and item.qq[1] or item.qualifiers and item.qualifiers[1]
or item.a and item.a[1] or item.aa and item.aa[1]
local has_gloss_or_pos = item.gloss or item.pos
if has_qualifiers or has_gloss_or_pos then
-- FIXME: Currently we tack the gloss and POS (in that order) onto the end of the regular left qualifiers.
-- Should we do something different?
local q = item.q
if has_gloss_or_pos then
q = mw.clone(item.q) or {}
if item.gloss then
local m_qualifier = require(qualifier_module)
insert(q, m_qualifier.wrap_qualifier_css("“", "quote") .. item.gloss ..
m_qualifier.wrap_qualifier_css("”", "quote"))
end
if item.pos then
-- FIXME: Consider expanding aliases as found in [[Module:headword/data]] or similar.
insert(q, item.pos)
end
end
bit = require("Module:pron qualifier").format_qualifiers {
lang = lang,
text = bit,
q = q,
qq = item.qq,
qualifiers = item.qualifiers,
a = item.a,
aa = item.aa,
}
end
if item.note then
-- Support removed on 2024-06-15.
error("Support for `.note` has been removed; switch to `.refs` (which must be a list)")
end
if item.refs then
local refspecs = item.refs
if #refspecs > 0 then
bit = bit .. require(references_module).format_references(refspecs)
end
end
bit = (item.separator or (i == 1 and "" or separator)) .. bit
insert(bits, bit)
--[=[ [[Special:WhatLinksHere/Wiktionary:Tracking/IPA/syntax-error]]
The length or gemination symbol should not appear after a syllable break or stress symbol. ]=]
-- The nature of the following pattern match is such that we don't have to split a combined '/.../ [...]' spec
-- into its parts in order to process.
if match(item.pron, "[.\203][\136\140]?\203[\144\145]") then -- [.ˈˌ][ːˑ]
track("syntax-error")
end
if lang then
-- Add syllable count if the language's diphthongs are listed in [[Module:syllables]].
-- Don't do this if the term has spaces, a liaison mark (‿) or isn't in mainspace.
if not no_count and namespace == 0 then
m_syllables = m_syllables or require(syllables_module)
local langcode = lang:getCode()
if m_data.langs_to_generate_syllable_count_categories[langcode] then
local phonemic, phonetic, use_it = split_phonemic_phonetic(item.pron)
local repr = determine_repr(phonemic)
if not phonetic then -- not a '/.../ [...]' combined pronunciation
if m_data.langs_to_use_phonetic_notation[langcode] then
use_it = repr == "phonetic" and phonemic or nil
else
use_it = repr == "phonemic" and phonemic or nil
end
elseif repr == "phonetic" then
use_it = phonetic
elseif repr == "phonemic" then
use_it = phonemic
end
-- Note: two uses of find with plain patterns is much faster than umatch with [ ‿].
if use_it and not (find(use_it, " ") or find(use_it, "‿")) then
local syllable_count = m_syllables.getVowels(use_it, lang)
if syllable_count then
insert(categories, "ศัพท์" .. lang:getCategoryName() .. "ที่มี " .. syllable_count ..
" พยางค์")
end
end
end
end
end
end
return process_maybe_split_categories(split_output, categories, concat(bits), lang)
end
--[=[
Format a single IPA pronunciation, which cannot be a combined spec (such as {/.../ [...]}). This has been extracted from
{format_IPA()} to allow the latter to handle such combined specs. This works like {format_IPA()} but requires that
pre-created {err} (for error messages) and {categories} lists be passed in, and adds any generated error messages and
categories to those lists. A single value is returned, the pronunciation, which is usually the same as passed in, but
may have HTML added surrounding invalid characters so they appear in red.
]=]
local function format_one_IPA(lang, pron, err, categories)
-- Disallow wikilinks.
if match(pron, "%[%[.-%]%]") then
error("IPA input must not contain wikilinks.")
end
pron = decode_entities(pron)
-- Detect the type of transcription.
local repr, opening, closing, reconstructed = determine_repr(pron)
-- Strip any reconstruction asterisk and representation marks.
pron = sub(pron, #opening + 1 + (reconstructed and 1 or 0), -#closing - 1)
if not repr then
insert(categories, "IPA pronunciations with invalid representation marks")
-- insert(err, "invalid representation marks")
-- Removed because it's annoying when previewing pronunciation pages.
end
if repr ~= "orthographic" and lang and lang:getCode() == "en" and hasInvalidSeparators(pron) then
insert(categories, "English IPA pronunciations with invalid separators")
end
if pron == "" then
insert(categories, "IPA pronunciations with no pronunciation present")
end
-- Check for obsolete and nonstandard symbols
for _, symbol in ipairs(m_data.nonstandard) do
local result
for nonstandard in gmatch(pron, symbol) do
if not result then
result = {}
end
insert(result, nonstandard)
insert(categories,
{cat = "IPA pronunciations with obsolete or nonstandard characters", sort_key = nonstandard}
)
end
if result then
insert(err, "obsolete or nonstandard characters (" .. concat(result) .. ")")
break
end
end
--[[ Check for invalid symbols after removing the following:
1. wikilinks (handled above)
2. paired HTML tags
3. bolding
4. italics
5. asterisk at beginning of transcription
6. comma followed by spacing characters
7. superscripts enclosed in superscript parentheses ]]
local found_HTML
local result = gsub(pron, "<(%a+)[^>]*>([^<]+)</%1>",
function(tagName, content)
found_HTML = true
return content
end)
result = gsub(result, "'''([^']*)'''", "%1")
result = gsub(result, "''([^']*)''", "%1")
result = gsub(result, "^%*", "")
result = ugsub(result, ",%s+", "")
-- VS15
local vs15_class = "[" .. m_symbols.add_vs15 .. "]"
if umatch(pron, vs15_class) then
local vs15 = u(0xFE0E)
if find(result, vs15) then
result = gsub(result, vs15, "")
pron = gsub(pron, vs15, "")
end
pron = ugsub(pron, vs15_class, "%0" .. vs15)
end
if result ~= "" then
if lang then
-- Get the per_lang_valid data, and convert any per-language valid sequences to spaces.
local per_lang_valid = m_symbols.per_lang_valid[lang:getCode()]
if per_lang_valid then
if type(per_lang_valid) == "table" then
for _, pattern in pairs(per_lang_valid) do
result = ugsub(result, pattern, " ")
end
else -- Should be a string.
result = ugsub(result, per_lang_valid, " ")
end
end
end
local suggestions
-- Check for any invalid sequences, excluding anything in the per-language lookup table.
for k, v in pairs(m_symbols.invalid) do
if find(result, k, nil, true) then
if not suggestions then
suggestions = {}
end
insert(suggestions, k .. " with " .. v)
end
end
if suggestions and suggestions[1] then
suggestions = listToText(suggestions)
if is_content_page then
error("Invalid IPA: replace " .. suggestions)
end
insert(err, "replace " .. suggestions)
end
-- Convert any valid character sequences to spaces
for _, pattern in pairs(m_symbols.valid) do
result = ugsub(result, pattern, " ")
end
if not match(result, "^ *$") then
local category = "IPA pronunciations with invalid IPA characters"
if not is_content_page then
category = category .. "/non_mainspace"
end
insert(categories, category)
insert(err, "invalid IPA characters (" .. result .. ")")
end
end
if found_HTML then
insert(categories, "IPA pronunciations with paired HTML tags")
end
if (repr == "phonemic" or repr == "rhyme") and lang and m_data.phonemes[lang:getCode()] then
local valid_phonemes = m_data.phonemes[lang:getCode()]
local rest = pron
local phonemes = {}
while #rest > 0 do
local longestmatch, longestmatch_len = "", 0
local rest_init = sub(rest, 1, 1)
if rest_init == "(" or rest_init == ")" then
longestmatch = rest_init
longestmatch_len = 1
else
for _, phoneme in ipairs(valid_phonemes) do
local phoneme_len = len(phoneme)
if phoneme_len > longestmatch_len and usub(rest, 1, phoneme_len) == phoneme then
longestmatch = phoneme
longestmatch_len = len(longestmatch)
end
end
end
if longestmatch_len > 0 then
insert(phonemes, longestmatch)
rest = usub(rest, longestmatch_len + 1)
else
local phoneme = usub(rest, 1, 1)
insert(phonemes, "<span style=\"color: red\">" .. phoneme .. "</span>")
rest = usub(rest, 2)
insert(categories, "IPA pronunciations with invalid phonemes/" .. lang:getCode())
track("invalid phonemes/" .. phoneme)
end
end
pron = concat(phonemes)
end
return (reconstructed and "*" or "") .. opening .. pron .. closing
end
--[==[
Format an IPA pronunciation. This wraps the pronunciation in appropriate CSS classes and adds cleanup categories and
error messages as needed. The pronunciation `pron` should be either phonemic (surrounded by {/.../}), phonetic
(surrounded by {[...]}), orthographic (surrounded by {⟨...⟩}), a rhyme (beginning with a hyphen) or a combined
phonemic/phonetic spec (of the form {/.../ [...]}). `lang` indicates the language of the pronunciation and can be {nil}.
If not {nil}, and the specified language has data in [[Module:IPA/data]] indicating the allowed phonemes, then the page
will be added to a cleanup category and an error message displayed next to the outputted pronunciation. Note that {lang}
also determines sort key processing in the added cleanup categories. If `split_output` is not given, the return value is
a concatenation of the formatted pronunciation, error messages and formatted cleanup categories. Otherwise, three values
are returned: the formatted pronunciation, the cleanup categories and the concatenated error messages. If `split_output`
is the value {"raw"}, the cleanup categories are returned in list form, where the list elements are a combination of
category strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]].
If `split_output` is any other value besides {nil}, the cleanup categories are returned as a pre-formatted concatenated
string.
]==]
function export.format_IPA(lang, pron, split_output)
local err = {}
local categories = {}
-- `pron` shouldn't contain ref tags.
if match(pron, "\127'\"`UNIQ%-%-ref%-[%dA-F]+%-QINU`\"'\127") then
error("<ref> tags found inside pronunciation parameter.")
end
if not lang then
track("format-nolang")
end
local phonemic, phonetic = split_phonemic_phonetic(pron)
pron = format_one_IPA(lang, phonemic, err, categories)
if phonetic then
track("phonemic-phonetic") -- There's no benefit to supporting the "/.../ [...]" format within one parameter.
phonetic = format_one_IPA(lang, phonetic, err, categories)
pron = pron .. " " .. phonetic
end
if err[1] and is_preview() then
err = '<span class="error" style="font-size: small;> ' .. concat(err, ", ") .. "</span>"
else
err = ""
end
return process_maybe_split_categories(split_output, categories, '<span class="IPA">' .. pron .. "</span>", lang,
err)
end
--[==[
Format a line of one or more enPR pronunciations as {{tl|enPR}} would do it, i.e. with a preceding {"enPR:"} (linked to
[[Appendix:English pronunciation]]) followed by one or more formatted, comma-separated enPR pronunciations. The
pronunciations are formatted by wrapping them in the {{cd|AHD}} and {{cd|enPR}} CSS classes and adding any left and
right regular and accent qualifiers. In addition, the overall result is wrapped in any overall left and right regular
and accent qualifiers. There is a single parameter `data`, an object with the following fields:
* `items` is a list of enPR pronunciations, each of which is an object with the following properties:
** `pron`: the enPR pronunciation;
** `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display before the formatted pronunciation;
** `qq`: {nil} or a list of right qualifiers to display after the formatted pronunciation;
** `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display before the formatted pronunciation;
** `aa`: {nil} or a list of right accent qualifiers to after before the formatted pronunciation.
* `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display at the beginning, before the formatted
pronunciations and preceding {"enPR:"}.
* `qq`: {nil} or a list of right qualifiers to display after all formatted pronunciations.
* `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display at the beginning, before the formatted
pronunciations and preceding {"enPR:"}.
* `aa`: {nil} or a list of right accent qualifiers to display after all formatted pronunciations.
]==]
function export.format_enPR_full(data)
local prefix = "[[ภาคผนวก:การออกเสียงภาษาอังกฤษ|enPR]]: "
local lang = require("Module:languages").getByCode("en")
local parts = {}
for _, item in ipairs(data.items) do
local part = '<span class="AHD enPR">' .. item.pron .. "</span>"
if item.q and item.q[1] or item.qq and item.qq[1] or item.a and item.a[1] or item.aa and item.aa[1] then
part = require("Module:pron qualifier").format_qualifiers {
lang = lang,
text = part,
q = item.q,
qq = item.qq,
a = item.a,
aa = item.aa,
}
end
insert(parts, part)
end
local prontext = prefix .. concat(parts, ", ")
if data.q and data.q[1] or data.qq and data.qq[1] or data.a and data.a[1] or data.aa and data.aa[1] then
prontext = require(pron_qualifier_module).format_qualifiers {
lang = lang,
text = prontext,
q = data.q,
qq = data.qq,
a = data.a,
aa = data.aa,
}
end
return prontext
end
return export
1fw6ugf7wijino1z4oetm7o3gdcrh8p
5759941
5759940
2026-09-08T12:31:54Z
Octahedron80
267
5759941
Scribunto
text/plain
local export = {}
local force_cat = false -- for testing
local pages_module = "Module:pages"
local pron_qualifier_module = "Module:pron qualifier"
local qualifier_module = "Module:qualifier"
local references_module = "Module:references"
local string_utilities_module = "Module:string utilities"
local syllables_module = "Module:syllables"
local utilities_module = "Module:utilities"
local m_data = mw.loadData("Module:IPA/data")
local m_str_utils = require(string_utilities_module)
local m_syllables -- [[Module:syllables]]; loaded below if needed
local m_symbols = mw.loadData("Module:IPA/data/symbols")
local concat = table.concat
local decode_entities = m_str_utils.decode_entities
local find = string.find
local gcodepoint = m_str_utils.gcodepoint
local gmatch = m_str_utils.gmatch
local gsub = string.gsub
local insert = table.insert
local is_preview = require(pages_module).is_preview
local len = m_str_utils.len
local listToText = mw.text.listToText
local match = string.match
local pattern_escape = m_str_utils.pattern_escape
local sub = string.sub
local u = m_str_utils.char
local ugsub = m_str_utils.gsub
local umatch = m_str_utils.match
local usub = m_str_utils.sub
local function with_codepoints(s)
if find(s, "%S%s") then
local parts = {}
for ch in gmatch(s, "%S") do
parts[#parts + 1] = with_codepoints(ch)
end
return concat(parts, ", ")
end
local cps = {}
for cp in gcodepoint(s) do
cps[#cps + 1] = ("U+%04X"):format(cp)
end
return s .. " [" .. concat(cps, " ") .. "]"
end
local namespace = mw.title.getCurrentTitle().nsText
local function is_content_page(lang, namespace)
return namespace == "" or namespace == "Reconstruction" or
lang and lang:hasType("appendix-constructed") and namespace == "Appendix"
end
-- Etymology-only languages are not L2 entry languages; IPA should use the parent full language.
local function assert_not_etymology_only_lang(lang)
if lang and lang.hasType and lang:hasType("language", "etymology-only") then
local parent_code = lang.getParentCode and lang:getParentCode() or nil
error(("Cannot use IPA with the etymology-only language %q; use the parent full language %q instead."):format(lang:getCode(), parent_code))
end
end
local function track(page)
require("Module:debug/track")("IPA/" .. page)
return true
end
local function process_maybe_split_categories(split_output, categories, prontext, lang, errtext)
if split_output ~= "raw" then
if categories[1] then
categories = require(utilities_module).format_categories(categories, lang, nil, nil, force_cat)
else
categories = ""
end
end
if split_output then -- for use of IPA in links, etc.
if errtext then
return prontext, categories, errtext
else
return prontext, categories
end
else
return prontext .. (errtext or "") .. categories
end
end
--[==[
Format a line of one or more IPA pronunciations as {{tl|IPA}} would do it, i.e. with a preceding {"IPA:"} followed by
the word {"key"} linking to an Appendix page describing the language's phonology, and with an added category
` ``lang`` terms with IPA pronunciation`. Other than the extra preceding text and category, this is identical
to {format_IPA_multiple()}, and the considerations described there in the documentation apply here as well. There is a
single parameter `data`, an object with the following fields:
* `lang`: Object representing the language of the pronunciations, which is used when adding cleanup categories for
pronunciations with invalid phonemes; for determining how many syllables the pronunciations have in them, in order to
add a category such as [[:Category:Italian 2-syllable words]] (for certain languages only); for adding a category
` ``lang`` terms with IPA pronunciation`; and for determining the proper sort keys for categories. Unlike
for {format_IPA_multiple()}, `lang` may not be {nil}.
* `items`: List of pronunciations, in exactly the same format as for {format_IPA_multiple()}.
* `err`: If not {nil}, a string containing an error message to use in place of the link to the language's phonology.
* `separator`: The default separator to use when separating formatted items. Defaults to {", "}. Does not apply to the
first item, where the default separator is always the empty string. Overridden by the per-item `separator` field in
`items`.
* `sort_key`: Explicit sort key used for categories.
* `no_count`: Suppress adding a {#-syllable words} category such as [[:Category:Italian 2-syllable words]]. Note that
only certain languages add such categories to begin with, because it depends on knowing how to count syllables in a
given language, which depends on the phonology of the language. Also, this does not suppress the addition of cleanup
or other categories. If you need them suppressed, use `split_output` to return the categories separately and ignore
them.
* `split_output`: If not given, the return value is a concatenation of the formatted pronunciation and formatted
categories. Otherwise, two values are returned: the formatted pronunciation and the categories. If `split_output` is
the value {"raw"}, the categories are returned in list form, where the list elements are a combination of category
strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]]. If
`split_output` is any other value besides {nil}, the categories are returned as a pre-formatted concatenated string.
* `include_langname`: If specified, prefix the result with the language name, followed by a colon.
* `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display at the beginning, before the formatted
pronunciations and preceding {"IPA:"}.
* `qq`: {nil} or a list of right qualifiers to display after all formatted pronunciations.
* `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display at the beginning, before the formatted
pronunciations and preceding {"IPA:"}.
* `aa`: {nil} or a list of right accent qualifiers to display after all formatted pronunciations.
]==]
function export.format_IPA_full(data)
if type(data) ~= "table" or data.getCode then
error("Must now supply a table of arguments to format_IPA_full(); first argument should be that table, not a language object")
end
local lang = data.lang
local items = data.items
local err = data.err
local separator = data.separator
local sort_key = data.sort_key
local no_count = data.no_count
local split_output = data.split_output
local q = data.q
local qq = data.qq
local a = data.a
local aa = data.aa
local include_langname = data.include_langname
local hasKey = m_data.langs_with_infopages
if not lang or not lang.getCode then
error("Must specify language to format_IPA_full()")
end
assert_not_etymology_only_lang(lang)
local langname = lang:getCanonicalName()
local langcat = lang:getCategoryName() --th
local prefix_text
if err then
prefix_text = '<span class="error">' .. err .. '</span>'
else
if hasKey[lang:getCode()] then
prefix_text = "ภาคผนวก:การออกเสียง" .. langcat
else
prefix_text = "วิกิพีเดีย:ระบบเสียง" .. langcat
end
prefix_text = "[[" .. prefix_text .. "|คำอธิบาย]]"
end
local prefix = "[[วิกิพจนานุกรม:สัทอักษรสากล|ไอพีเอ]]<sup>(" .. prefix_text .. ")</sup>: "
local IPAs, categories = export.format_IPA_multiple(lang, items, separator, no_count, "raw")
if is_content_page(lang, namespace) then
insert(categories, {
cat = "ศัพท์" .. langcat .. "ที่มีการออกเสียงไอพีเอ",
sort_key = sort_key
})
end
local prontext = prefix .. IPAs
if q and q[1] or qq and qq[1] or a and a[1] or aa and aa[1] then
prontext = require(pron_qualifier_module).format_qualifiers {
lang = lang,
text = prontext,
q = q,
qq = qq,
a = a,
aa = aa,
}
end
if include_langname then
prontext = langname .. ": " .. prontext
end
return process_maybe_split_categories(split_output, categories, prontext, lang)
end
local function split_phonemic_phonetic(pron)
local reconstructed, phonemic, phonetic = match(pron, "^(%*?)(/.-/)%s+(%[.-%])$")
if reconstructed then
return reconstructed .. phonemic, reconstructed .. phonetic
else
return pron, nil
end
end
local function determine_repr(pron)
local reconstructed
-- Temporarily remove any initial asterisk before representation marks,
-- which avoids having to account for it in the data, but set the
-- `reconstructed` flag.
if sub(pron, 1, 1) == "*" then
reconstructed = true
pron = sub(pron, 2)
end
-- Some representation types have aliases for convenience (e.g. "// //" is
-- an alias for "⫽ ⫽"). and these need to be substituted in before checking
-- for other data.
local opening, n = match(pron, "^.[\128-\191]*")
local subs_data = m_data.representation_subs[opening]
if subs_data then
pron, n = ugsub(pron, subs_data[1], subs_data[2])
-- If the substitution was made, `opening` needs to be changed to the
-- new opening character.
if n ~= 0 then
opening = subs_data[3]
end
end
-- Get the type data based on the opening character (if any), and set the
-- representation type if the closing character matches.
local type_data, repr, closing = m_data.representation_types[opening]
if type_data then
closing = type_data[2]
if type_data and match(pron, pattern_escape(closing) .. "$", #opening + 1) then
repr = type_data[1]
end
end
-- Default to the empty string.
if not repr then
opening, closing = "", ""
end
-- Reattach the asterisk if reconstructed.
if reconstructed then
pron = "*" .. pron
end
return pron, repr, opening, closing, reconstructed
end
local function hasInvalidSeparators(transcription)
-- Escape certain characters as well as pauses, which have the format "(...)" (with any number of dots), to avoid false-positives.
transcription = transcription:gsub(".[\128-\191]*", m_symbols.separator_escapes)
:gsub("%(%.+%)", "\3")
:gsub("[()]+", "")
return (
transcription:find("..", nil, true) or
transcription:match("%.%f[%z \1\2\3,:;]") or
transcription:match("\1%f[%z \2\3,:;]") or
transcription:match("\2%f[%z \1\3,:;]") or
transcription:match("\3[:;]") or
transcription:match("%f[^%z \1\2\3,]%.")
) and true or false
end
--[==[
Format a line of one or more bare IPA pronunciations (i.e. without any preceding {"IPA:"} and without adding to a
category ` ``lang`` terms with IPA pronunciation`). Individual pronunciations are formatted using
{format_IPA()} and are combined with separators, qualifiers, pre-text, post-text, etc. to form a line of pronunciations.
Parameters accepted are:
* `lang` is an object representing the language of the pronunciations, which is used when adding cleanup categories for
pronunciations with invalid phonemes; for determining how many syllables the pronunciations have in them, in order to
add a category such as [[:Category:Italian 2-syllable words]] (for certain languages only); and for computing the
proper sort keys for categories. `lang` may be {nil}.
* `items` is a list of pronunciations, each of which is an object with the following properties:
** `pron`: the pronunciation, in the same format as is accepted by {format_IPA()}, i.e. it should be either phonemic
(surrounded by {/.../}), phonetic (surrounded by {[...]}), orthographic (surrounded by {⟨...⟩}) or a rhyme
(beginning with a hyphen);
** `pretext`: text to display directly before the formatted pronunciation, inside of any qualifiers or accent
qualifiers;
** `posttext`: text to display directly after the formatted pronunciation, inside of any qualifiers or accent
qualifiers;
** `q` or `qualifiers`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display before the formatted
pronunciation; note that `qualifiers` is deprecated;
** `qq`: {nil} or a list of right qualifiers to display after the formatted pronunciation;
** `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display before the formatted pronunciation;
** `aa`: {nil} or a list of right accent qualifiers to after before the formatted pronunciation;
** `refs`: {nil} or a list of references or reference specs to add after the pronunciation and any posttext and
qualifiers; the value of a list item is either a string containing the reference text (typically a call to a
citation template such as {{tl|cite-book}}, or a template wrapping such a call), or an object with fields `text`
(the reference text), `name` (the name of the reference, as in {{cd|<nowiki><ref name="foo">...</ref></nowiki>}}
or {{cd|<nowiki><ref name="foo" /></nowiki>}}) and/or `group` (the group of the reference, as in
{{cd|<nowiki><ref name="foo" group="bar">...</ref></nowiki>}} or
{{cd|<nowiki><ref name="foo" group="bar"/></nowiki>}}); this uses a parser function to format the reference
appropriately and insert a footnote number that hyperlinks to the actual reference, located in the
{{cd|<nowiki><references /></nowiki>}} section;
** `gloss`: {nil} or a gloss (definition) for this item, if different definitions have different pronunciations;
** `pos`: {nil} or a part of speech for this item, if different parts of speech have different pronunciations;
** `separator`: the separator text to insert directly before the formatted pronunciation and all qualifiers, accent
qualifiers and pre-text; defaults to the outer `separator` parameter.
* `separator`: The default separator to use when separating formatted items. Defaults to {", "}. Does not apply to the
first item, where the default separator is always the empty string. Overridden by the per-item `separator` field in
`items`.
* `no_count`: Suppress adding a {#-syllable words} category such as [[:Category:Italian 2-syllable words]]. Note that
only certain languages add such categories to begin with, because it depends on knowing how to count syllables in a
given language, which depends on the phonology of the language. Also, this does not suppress the addition of cleanup
categories. If you need them suppressed, use `split_output` to return the categories separately and ignore them.
* `split_output`: If not given, the return value is a concatenation of the formatted pronunciation and formatted
categories. Otherwise, two values are returned: the formatted pronunciation and the categories. If `split_output` is
the value {"raw"}, the categories are returned in list form, where the list elements are a combination of category
strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]]. If
`split_output` is any other value besides {nil}, the categories are returned as a pre-formatted concatenated string.
]==]
function export.format_IPA_multiple(lang, items, separator, no_count, split_output)
local categories = {}
separator = separator or ", "
if not lang then
track("format-multiple-nolang")
else
assert_not_etymology_only_lang(lang)
end
-- Format
if not items[1] then
if namespace == "แม่แบบ" then
insert(items, {pron = "/aɪ piː ˈeɪ/"})
else
insert(categories, "Pronunciation templates without a pronunciation")
end
end
local bits = {}
for i, item in ipairs(items) do
local bit
-- If the pronunciation is entirely empty, allow this and don't do anything, so that e.g. the pretext and/or
-- posttext can be specified to force something like ''unknown'' to appear in place of the pronunciation
-- (as happens e.g. when ? is used as a respelling in [[Module:ca-IPA]]; see [[guèiser]] for an example).
if item.pron == "" then
bit = ""
else
local item_categories, errtext
bit, item_categories, errtext = export.format_IPA(lang, item.pron, "raw")
bit = bit .. errtext
for _, cat in ipairs(item_categories) do
insert(categories, cat)
end
end
if item.pretext then
bit = item.pretext .. bit
end
if item.posttext then
bit = bit .. item.posttext
end
local has_qualifiers = item.q and item.q[1] or item.qq and item.qq[1] or item.qualifiers and item.qualifiers[1]
or item.a and item.a[1] or item.aa and item.aa[1]
local has_gloss_or_pos = item.gloss or item.pos
if has_qualifiers or has_gloss_or_pos then
-- FIXME: Currently we tack the gloss and POS (in that order) onto the end of the regular left qualifiers.
-- Should we do something different?
local q = item.q
if has_gloss_or_pos then
q = mw.clone(item.q) or {}
if item.gloss then
local m_qualifier = require(qualifier_module)
insert(q, m_qualifier.wrap_qualifier_css("“", "quote") .. item.gloss ..
m_qualifier.wrap_qualifier_css("”", "quote"))
end
if item.pos then
-- FIXME: Consider expanding aliases as found in [[Module:headword/data]] or similar.
insert(q, item.pos)
end
end
bit = require("Module:pron qualifier").format_qualifiers {
lang = lang,
text = bit,
q = q,
qq = item.qq,
qualifiers = item.qualifiers,
a = item.a,
aa = item.aa,
}
end
if item.note then
-- Support removed on 2024-06-15.
error("Support for `.note` has been removed; switch to `.refs` (which must be a list)")
end
if item.refs then
local refspecs = item.refs
if #refspecs > 0 then
bit = bit .. require(references_module).format_references(refspecs)
end
end
bit = (item.separator or (i == 1 and "" or separator)) .. bit
insert(bits, bit)
--[=[ [[Special:WhatLinksHere/Wiktionary:Tracking/IPA/syntax-error]]
The length or gemination symbol should not appear after a syllable break or stress symbol. ]=]
-- The nature of the following pattern match is such that we don't have to split a combined '/.../ [...]' spec
-- into its parts in order to process.
if match(item.pron, "[.\203][\136\140]?\203[\144\145]") then -- [.ˈˌ][ːˑ]
track("syntax-error")
end
if lang then
-- Add syllable count if the language's diphthongs are listed in [[Module:syllables]].
-- Don't do this if the term has spaces, a liaison mark (‿) or isn't in mainspace.
if not no_count and namespace == "" then
m_syllables = m_syllables or require(syllables_module)
local langcode = lang:getCode()
if m_data.langs_to_generate_syllable_count_categories[langcode] then
local raw_phonemic, phonetic, use_it = split_phonemic_phonetic(item.pron)
local phonemic, repr = determine_repr(raw_phonemic)
if not phonetic then -- not a '/.../ [...]' combined pronunciation
if m_data.langs_to_use_phonetic_or_phonemic_notation[langcode] then
use_it = phonemic
elseif m_data.langs_to_use_phonetic_notation[langcode] then
use_it = repr == "phonetic" and phonemic or nil
else
use_it = repr == "phonemic" and phonemic or nil
end
elseif repr == "phonetic" then
use_it = phonetic
elseif repr == "phonemic" then
use_it = phonemic
end
-- Note: two uses of find with plain patterns is much faster than umatch with [ ‿].
if use_it and not (find(use_it, " ") or find(use_it, "‿")) then
local syllable_count = m_syllables.getVowels(use_it, lang)
if syllable_count then
insert(categories, "ศัพท์" .. lang:getCategoryName() .. "ที่มี " .. syllable_count ..
" พยางค์")
end
end
end
end
end
end
return process_maybe_split_categories(split_output, categories, concat(bits), lang)
end
--[=[
Format a single IPA pronunciation, which cannot be a combined spec (such as {/.../ [...]}). This has been extracted from
{format_IPA()} to allow the latter to handle such combined specs. This works like {format_IPA()} but requires that
pre-created {err} (for error messages) and {categories} lists be passed in, and adds any generated error messages and
categories to those lists. A single value is returned, the pronunciation, which is usually the same as passed in, but
may have HTML added surrounding invalid characters so they appear in red.
]=]
local function format_one_IPA(lang, raw_pron, err, categories)
-- Disallow wikilinks.
if match(raw_pron, "%[%[.-%]%]") then
error("IPA input must not contain wikilinks.")
end
raw_pron = decode_entities(raw_pron)
-- Detect the type of transcription.
local pron, repr, opening, closing, reconstructed = determine_repr(raw_pron)
-- Strip any reconstruction asterisk and representation marks.
pron = sub(pron, #opening + 1 + (reconstructed and 1 or 0), -#closing - 1)
if not repr then
insert(categories, "IPA pronunciations with invalid representation marks")
-- insert(err, "invalid representation marks")
-- Removed because it's annoying when previewing pronunciation pages.
end
if repr ~= "orthographic" and lang and lang:getCode() == "en" and hasInvalidSeparators(pron) then
insert(categories, "English IPA pronunciations with invalid separators")
end
if pron == "" then
insert(categories, "IPA pronunciations with no pronunciation present")
end
-- Check for obsolete and nonstandard symbols
for _, symbol in ipairs(m_data.nonstandard) do
local result
for nonstandard in gmatch(pron, symbol) do
if not result then
result = {}
end
insert(result, nonstandard)
insert(categories,
{cat = "IPA pronunciations with obsolete or nonstandard characters", sort_key = nonstandard}
)
end
if result then
insert(err, "obsolete or nonstandard characters (" .. concat(result) .. ")")
break
end
end
--[[ Check for invalid symbols after removing the following:
1. wikilinks (handled above)
2. paired HTML tags
3. bolding
4. italics
5. asterisk at beginning of transcription
6. comma followed by spacing characters
7. superscripts enclosed in superscript parentheses ]]
local found_HTML
local result = gsub(pron, "<(%a+)[^>]*>([^<]+)</%1>",
function(tagName, content)
found_HTML = true
return content
end)
result = gsub(result, "'''([^']*)'''", "%1")
result = gsub(result, "''([^']*)''", "%1")
result = gsub(result, "^%*", "")
result = ugsub(result, ",%s+", "")
-- VS15
local vs15_class = "[" .. m_symbols.add_vs15 .. "]"
if umatch(pron, vs15_class) then
local vs15 = u(0xFE0E)
if find(result, vs15) then
result = gsub(result, vs15, "")
pron = gsub(pron, vs15, "")
end
pron = ugsub(pron, vs15_class, "%0" .. vs15)
end
if result ~= "" then
local content_page = is_content_page(lang, namespace)
if lang then
-- Get the per_lang_valid data, and convert any per-language valid sequences to spaces.
local per_lang_valid = m_symbols.per_lang_valid[lang:getCode()]
if per_lang_valid then
if type(per_lang_valid) == "table" then
for _, pattern in pairs(per_lang_valid) do
result = ugsub(result, pattern, " ")
end
else -- Should be a string.
result = ugsub(result, per_lang_valid, " ")
end
end
end
local suggestions = {}
-- Check for any invalid sequences, excluding anything in the per-language lookup table.
for k, v in pairs(m_symbols.invalid) do
if find(result, k, nil, true) then
insert(suggestions, with_codepoints(k) .. " with " .. with_codepoints(v))
end
end
if suggestions[1] then
local replacements = "replace " .. listToText(suggestions)
if content_page then
error("Invalid IPA: " .. replacements)
end
insert(err, replacements)
end
-- Convert any valid character sequences to spaces
for _, pattern in pairs(m_symbols.valid) do
result = ugsub(result, pattern, " ")
end
if not match(result, "^ *$") then
local category = "IPA pronunciations with invalid IPA characters"
if not content_page then
category = category .. "/non_mainspace"
end
insert(categories, category)
insert(err, "invalid IPA characters: " .. with_codepoints(result))
end
end
if found_HTML then
insert(categories, "IPA pronunciations with paired HTML tags")
end
if (repr == "phonemic" or repr == "rhyme") and lang and m_data.phonemes[lang:getCode()] then
local valid_phonemes = m_data.phonemes[lang:getCode()]
local rest = pron
local phonemes = {}
while #rest > 0 do
local longestmatch, longestmatch_len = "", 0
local rest_init = sub(rest, 1, 1)
if rest_init == "(" or rest_init == ")" then
longestmatch = rest_init
longestmatch_len = 1
else
for _, phoneme in ipairs(valid_phonemes) do
local phoneme_len = len(phoneme)
if phoneme_len > longestmatch_len and usub(rest, 1, phoneme_len) == phoneme then
longestmatch = phoneme
longestmatch_len = len(longestmatch)
end
end
end
if longestmatch_len > 0 then
insert(phonemes, longestmatch)
rest = usub(rest, longestmatch_len + 1)
else
local phoneme = usub(rest, 1, 1)
insert(phonemes, "<span style=\"color: var(--wikt-palette-red,red)\">" .. phoneme .. "</span>")
rest = usub(rest, 2)
insert(categories, "IPA pronunciations with invalid phonemes/" .. lang:getCode())
track("invalid phonemes/" .. phoneme)
end
end
pron = concat(phonemes)
end
return (reconstructed and "*" or "") .. opening .. pron .. closing
end
--[==[
Format an IPA pronunciation. This wraps the pronunciation in appropriate CSS classes and adds cleanup categories and
error messages as needed. The pronunciation `pron` should be either phonemic (surrounded by {/.../}), phonetic
(surrounded by {[...]}), orthographic (surrounded by {⟨...⟩}), a rhyme (beginning with a hyphen) or a combined
phonemic/phonetic spec (of the form {/.../ [...]}). `lang` indicates the language of the pronunciation and can be {nil}.
If not {nil}, and the specified language has data in [[Module:IPA/data]] indicating the allowed phonemes, then the page
will be added to a cleanup category and an error message displayed next to the outputted pronunciation. Note that {lang}
also determines sort key processing in the added cleanup categories. If `split_output` is not given, the return value is
a concatenation of the formatted pronunciation, error messages and formatted cleanup categories. Otherwise, three values
are returned: the formatted pronunciation, the cleanup categories and the concatenated error messages. If `split_output`
is the value {"raw"}, the cleanup categories are returned in list form, where the list elements are a combination of
category strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]].
If `split_output` is any other value besides {nil}, the cleanup categories are returned as a pre-formatted concatenated
string.
]==]
function export.format_IPA(lang, pron, split_output)
local err = {}
local categories = {}
-- `pron` shouldn't contain ref tags.
if match(pron, "\127'\"`UNIQ%-%-ref%-[%dA-F]+%-QINU`\"'\127") then
error("<ref> tags found inside pronunciation parameter.")
end
if not lang then
track("format-nolang")
else
assert_not_etymology_only_lang(lang)
end
local phonemic, phonetic = split_phonemic_phonetic(pron)
pron = format_one_IPA(lang, phonemic, err, categories)
if phonetic then
track("phonemic-phonetic") -- There's no benefit to supporting the "/.../ [...]" format within one parameter.
phonetic = format_one_IPA(lang, phonetic, err, categories)
pron = pron .. " " .. phonetic
end
if err[1] and is_preview() then
err = '<span class="error" style="font-size: small;> ' .. concat(err, ", ") .. "</span>"
else
err = ""
end
return process_maybe_split_categories(split_output, categories, '<span class="IPA nowrap">' .. pron .. "</span>", lang,
err)
end
--[==[
Format a line of one or more enPR pronunciations as {{tl|enPR}} would do it, i.e. with a preceding {"enPR:"} (linked to
[[Appendix:English pronunciation]]) followed by one or more formatted, comma-separated enPR pronunciations. The
pronunciations are formatted by wrapping them in the `AHD` and `enPR` CSS classes and adding any left and
right regular and accent qualifiers. In addition, the overall result is wrapped in any overall left and right regular
and accent qualifiers. There is a single parameter `data`, an object with the following fields:
* `items` is a list of enPR pronunciations, each of which is an object with the following properties:
** `pron`: the enPR pronunciation;
** `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display before the formatted pronunciation;
** `qq`: {nil} or a list of right qualifiers to display after the formatted pronunciation;
** `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display before the formatted pronunciation;
** `aa`: {nil} or a list of right accent qualifiers to after before the formatted pronunciation.
* `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display at the beginning, before the formatted
pronunciations and preceding {"enPR:"}.
* `qq`: {nil} or a list of right qualifiers to display after all formatted pronunciations.
* `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display at the beginning, before the formatted
pronunciations and preceding {"enPR:"}.
* `aa`: {nil} or a list of right accent qualifiers to display after all formatted pronunciations.
]==]
function export.format_enPR_full(data)
local prefix = "[[ภาคผนวก:การออกเสียงภาษาอังกฤษ|enPR]]: "
local lang = require("Module:languages").getByCode("en")
local parts = {}
for _, item in ipairs(data.items) do
local part = '<span class="AHD enPR">' .. item.pron .. "</span>"
if item.q and item.q[1] or item.qq and item.qq[1] or item.a and item.a[1] or item.aa and item.aa[1] then
part = require("Module:pron qualifier").format_qualifiers {
lang = lang,
text = part,
q = item.q,
qq = item.qq,
a = item.a,
aa = item.aa,
}
end
insert(parts, part)
end
local prontext = prefix .. concat(parts, ", ")
if data.q and data.q[1] or data.qq and data.qq[1] or data.a and data.a[1] or data.aa and data.aa[1] then
prontext = require(pron_qualifier_module).format_qualifiers {
lang = lang,
text = prontext,
q = data.q,
qq = data.qq,
a = data.a,
aa = data.aa,
}
end
return prontext
end
return export
nd3v65ku8v3bb4cfe6tjhwo4ykznsyt
5759942
5759941
2026-09-08T12:34:48Z
Octahedron80
267
5759942
Scribunto
text/plain
local export = {}
local force_cat = false -- for testing
local pages_module = "Module:pages"
local pron_qualifier_module = "Module:pron qualifier"
local qualifier_module = "Module:qualifier"
local references_module = "Module:references"
local string_utilities_module = "Module:string utilities"
local syllables_module = "Module:syllables"
local utilities_module = "Module:utilities"
local m_data = mw.loadData("Module:IPA/data")
local m_str_utils = require(string_utilities_module)
local m_syllables -- [[Module:syllables]]; loaded below if needed
local m_symbols = mw.loadData("Module:IPA/data/symbols")
local concat = table.concat
local decode_entities = m_str_utils.decode_entities
local find = string.find
local gcodepoint = m_str_utils.gcodepoint
local gmatch = m_str_utils.gmatch
local gsub = string.gsub
local insert = table.insert
local is_preview = require(pages_module).is_preview
local len = m_str_utils.len
local listToText = mw.text.listToText
local match = string.match
local pattern_escape = m_str_utils.pattern_escape
local sub = string.sub
local u = m_str_utils.char
local ugsub = m_str_utils.gsub
local umatch = m_str_utils.match
local usub = m_str_utils.sub
local function with_codepoints(s)
if find(s, "%S%s") then
local parts = {}
for ch in gmatch(s, "%S") do
parts[#parts + 1] = with_codepoints(ch)
end
return concat(parts, ", ")
end
local cps = {}
for cp in gcodepoint(s) do
cps[#cps + 1] = ("U+%04X"):format(cp)
end
return s .. " [" .. concat(cps, " ") .. "]"
end
local namespace = mw.title.getCurrentTitle().nsText
local function is_content_page(lang, namespace)
return namespace == "" or namespace == "การสืบสร้าง" or
lang and lang:hasType("appendix-constructed") and namespace == "ภาคผนวก"
end
-- Etymology-only languages are not L2 entry languages; IPA should use the parent full language.
local function assert_not_etymology_only_lang(lang)
if lang and lang.hasType and lang:hasType("language", "etymology-only") then
local parent_code = lang.getParentCode and lang:getParentCode() or nil
error(("Cannot use IPA with the etymology-only language %q; use the parent full language %q instead."):format(lang:getCode(), parent_code))
end
end
local function track(page)
require("Module:debug/track")("IPA/" .. page)
return true
end
local function process_maybe_split_categories(split_output, categories, prontext, lang, errtext)
if split_output ~= "raw" then
if categories[1] then
categories = require(utilities_module).format_categories(categories, lang, nil, nil, force_cat)
else
categories = ""
end
end
if split_output then -- for use of IPA in links, etc.
if errtext then
return prontext, categories, errtext
else
return prontext, categories
end
else
return prontext .. (errtext or "") .. categories
end
end
--[==[
Format a line of one or more IPA pronunciations as {{tl|IPA}} would do it, i.e. with a preceding {"IPA:"} followed by
the word {"key"} linking to an Appendix page describing the language's phonology, and with an added category
` ``lang`` terms with IPA pronunciation`. Other than the extra preceding text and category, this is identical
to {format_IPA_multiple()}, and the considerations described there in the documentation apply here as well. There is a
single parameter `data`, an object with the following fields:
* `lang`: Object representing the language of the pronunciations, which is used when adding cleanup categories for
pronunciations with invalid phonemes; for determining how many syllables the pronunciations have in them, in order to
add a category such as [[:Category:Italian 2-syllable words]] (for certain languages only); for adding a category
` ``lang`` terms with IPA pronunciation`; and for determining the proper sort keys for categories. Unlike
for {format_IPA_multiple()}, `lang` may not be {nil}.
* `items`: List of pronunciations, in exactly the same format as for {format_IPA_multiple()}.
* `err`: If not {nil}, a string containing an error message to use in place of the link to the language's phonology.
* `separator`: The default separator to use when separating formatted items. Defaults to {", "}. Does not apply to the
first item, where the default separator is always the empty string. Overridden by the per-item `separator` field in
`items`.
* `sort_key`: Explicit sort key used for categories.
* `no_count`: Suppress adding a {#-syllable words} category such as [[:Category:Italian 2-syllable words]]. Note that
only certain languages add such categories to begin with, because it depends on knowing how to count syllables in a
given language, which depends on the phonology of the language. Also, this does not suppress the addition of cleanup
or other categories. If you need them suppressed, use `split_output` to return the categories separately and ignore
them.
* `split_output`: If not given, the return value is a concatenation of the formatted pronunciation and formatted
categories. Otherwise, two values are returned: the formatted pronunciation and the categories. If `split_output` is
the value {"raw"}, the categories are returned in list form, where the list elements are a combination of category
strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]]. If
`split_output` is any other value besides {nil}, the categories are returned as a pre-formatted concatenated string.
* `include_langname`: If specified, prefix the result with the language name, followed by a colon.
* `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display at the beginning, before the formatted
pronunciations and preceding {"IPA:"}.
* `qq`: {nil} or a list of right qualifiers to display after all formatted pronunciations.
* `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display at the beginning, before the formatted
pronunciations and preceding {"IPA:"}.
* `aa`: {nil} or a list of right accent qualifiers to display after all formatted pronunciations.
]==]
function export.format_IPA_full(data)
if type(data) ~= "table" or data.getCode then
error("Must now supply a table of arguments to format_IPA_full(); first argument should be that table, not a language object")
end
local lang = data.lang
local items = data.items
local err = data.err
local separator = data.separator
local sort_key = data.sort_key
local no_count = data.no_count
local split_output = data.split_output
local q = data.q
local qq = data.qq
local a = data.a
local aa = data.aa
local include_langname = data.include_langname
local hasKey = m_data.langs_with_infopages
if not lang or not lang.getCode then
error("Must specify language to format_IPA_full()")
end
assert_not_etymology_only_lang(lang)
local langname = lang:getCanonicalName()
local langcat = lang:getCategoryName() --th
local prefix_text
if err then
prefix_text = '<span class="error">' .. err .. '</span>'
else
if hasKey[lang:getCode()] then
prefix_text = "ภาคผนวก:การออกเสียง" .. langcat
else
prefix_text = "วิกิพีเดีย:ระบบเสียง" .. langcat
end
prefix_text = "[[" .. prefix_text .. "|คำอธิบาย]]"
end
local prefix = "[[วิกิพจนานุกรม:สัทอักษรสากล|ไอพีเอ]]<sup>(" .. prefix_text .. ")</sup>: "
local IPAs, categories = export.format_IPA_multiple(lang, items, separator, no_count, "raw")
if is_content_page(lang, namespace) then
insert(categories, {
cat = "ศัพท์" .. langcat .. "ที่มีการออกเสียงไอพีเอ",
sort_key = sort_key
})
end
local prontext = prefix .. IPAs
if q and q[1] or qq and qq[1] or a and a[1] or aa and aa[1] then
prontext = require(pron_qualifier_module).format_qualifiers {
lang = lang,
text = prontext,
q = q,
qq = qq,
a = a,
aa = aa,
}
end
if include_langname then
prontext = langname .. ": " .. prontext
end
return process_maybe_split_categories(split_output, categories, prontext, lang)
end
local function split_phonemic_phonetic(pron)
local reconstructed, phonemic, phonetic = match(pron, "^(%*?)(/.-/)%s+(%[.-%])$")
if reconstructed then
return reconstructed .. phonemic, reconstructed .. phonetic
else
return pron, nil
end
end
local function determine_repr(pron)
local reconstructed
-- Temporarily remove any initial asterisk before representation marks,
-- which avoids having to account for it in the data, but set the
-- `reconstructed` flag.
if sub(pron, 1, 1) == "*" then
reconstructed = true
pron = sub(pron, 2)
end
-- Some representation types have aliases for convenience (e.g. "// //" is
-- an alias for "⫽ ⫽"). and these need to be substituted in before checking
-- for other data.
local opening, n = match(pron, "^.[\128-\191]*")
local subs_data = m_data.representation_subs[opening]
if subs_data then
pron, n = ugsub(pron, subs_data[1], subs_data[2])
-- If the substitution was made, `opening` needs to be changed to the
-- new opening character.
if n ~= 0 then
opening = subs_data[3]
end
end
-- Get the type data based on the opening character (if any), and set the
-- representation type if the closing character matches.
local type_data, repr, closing = m_data.representation_types[opening]
if type_data then
closing = type_data[2]
if type_data and match(pron, pattern_escape(closing) .. "$", #opening + 1) then
repr = type_data[1]
end
end
-- Default to the empty string.
if not repr then
opening, closing = "", ""
end
-- Reattach the asterisk if reconstructed.
if reconstructed then
pron = "*" .. pron
end
return pron, repr, opening, closing, reconstructed
end
local function hasInvalidSeparators(transcription)
-- Escape certain characters as well as pauses, which have the format "(...)" (with any number of dots), to avoid false-positives.
transcription = transcription:gsub(".[\128-\191]*", m_symbols.separator_escapes)
:gsub("%(%.+%)", "\3")
:gsub("[()]+", "")
return (
transcription:find("..", nil, true) or
transcription:match("%.%f[%z \1\2\3,:;]") or
transcription:match("\1%f[%z \2\3,:;]") or
transcription:match("\2%f[%z \1\3,:;]") or
transcription:match("\3[:;]") or
transcription:match("%f[^%z \1\2\3,]%.")
) and true or false
end
--[==[
Format a line of one or more bare IPA pronunciations (i.e. without any preceding {"IPA:"} and without adding to a
category ` ``lang`` terms with IPA pronunciation`). Individual pronunciations are formatted using
{format_IPA()} and are combined with separators, qualifiers, pre-text, post-text, etc. to form a line of pronunciations.
Parameters accepted are:
* `lang` is an object representing the language of the pronunciations, which is used when adding cleanup categories for
pronunciations with invalid phonemes; for determining how many syllables the pronunciations have in them, in order to
add a category such as [[:Category:Italian 2-syllable words]] (for certain languages only); and for computing the
proper sort keys for categories. `lang` may be {nil}.
* `items` is a list of pronunciations, each of which is an object with the following properties:
** `pron`: the pronunciation, in the same format as is accepted by {format_IPA()}, i.e. it should be either phonemic
(surrounded by {/.../}), phonetic (surrounded by {[...]}), orthographic (surrounded by {⟨...⟩}) or a rhyme
(beginning with a hyphen);
** `pretext`: text to display directly before the formatted pronunciation, inside of any qualifiers or accent
qualifiers;
** `posttext`: text to display directly after the formatted pronunciation, inside of any qualifiers or accent
qualifiers;
** `q` or `qualifiers`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display before the formatted
pronunciation; note that `qualifiers` is deprecated;
** `qq`: {nil} or a list of right qualifiers to display after the formatted pronunciation;
** `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display before the formatted pronunciation;
** `aa`: {nil} or a list of right accent qualifiers to after before the formatted pronunciation;
** `refs`: {nil} or a list of references or reference specs to add after the pronunciation and any posttext and
qualifiers; the value of a list item is either a string containing the reference text (typically a call to a
citation template such as {{tl|cite-book}}, or a template wrapping such a call), or an object with fields `text`
(the reference text), `name` (the name of the reference, as in {{cd|<nowiki><ref name="foo">...</ref></nowiki>}}
or {{cd|<nowiki><ref name="foo" /></nowiki>}}) and/or `group` (the group of the reference, as in
{{cd|<nowiki><ref name="foo" group="bar">...</ref></nowiki>}} or
{{cd|<nowiki><ref name="foo" group="bar"/></nowiki>}}); this uses a parser function to format the reference
appropriately and insert a footnote number that hyperlinks to the actual reference, located in the
{{cd|<nowiki><references /></nowiki>}} section;
** `gloss`: {nil} or a gloss (definition) for this item, if different definitions have different pronunciations;
** `pos`: {nil} or a part of speech for this item, if different parts of speech have different pronunciations;
** `separator`: the separator text to insert directly before the formatted pronunciation and all qualifiers, accent
qualifiers and pre-text; defaults to the outer `separator` parameter.
* `separator`: The default separator to use when separating formatted items. Defaults to {", "}. Does not apply to the
first item, where the default separator is always the empty string. Overridden by the per-item `separator` field in
`items`.
* `no_count`: Suppress adding a {#-syllable words} category such as [[:Category:Italian 2-syllable words]]. Note that
only certain languages add such categories to begin with, because it depends on knowing how to count syllables in a
given language, which depends on the phonology of the language. Also, this does not suppress the addition of cleanup
categories. If you need them suppressed, use `split_output` to return the categories separately and ignore them.
* `split_output`: If not given, the return value is a concatenation of the formatted pronunciation and formatted
categories. Otherwise, two values are returned: the formatted pronunciation and the categories. If `split_output` is
the value {"raw"}, the categories are returned in list form, where the list elements are a combination of category
strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]]. If
`split_output` is any other value besides {nil}, the categories are returned as a pre-formatted concatenated string.
]==]
function export.format_IPA_multiple(lang, items, separator, no_count, split_output)
local categories = {}
separator = separator or ", "
if not lang then
track("format-multiple-nolang")
else
assert_not_etymology_only_lang(lang)
end
-- Format
if not items[1] then
if namespace == "แม่แบบ" then
insert(items, {pron = "/aɪ piː ˈeɪ/"})
else
insert(categories, "Pronunciation templates without a pronunciation")
end
end
local bits = {}
for i, item in ipairs(items) do
local bit
-- If the pronunciation is entirely empty, allow this and don't do anything, so that e.g. the pretext and/or
-- posttext can be specified to force something like ''unknown'' to appear in place of the pronunciation
-- (as happens e.g. when ? is used as a respelling in [[Module:ca-IPA]]; see [[guèiser]] for an example).
if item.pron == "" then
bit = ""
else
local item_categories, errtext
bit, item_categories, errtext = export.format_IPA(lang, item.pron, "raw")
bit = bit .. errtext
for _, cat in ipairs(item_categories) do
insert(categories, cat)
end
end
if item.pretext then
bit = item.pretext .. bit
end
if item.posttext then
bit = bit .. item.posttext
end
local has_qualifiers = item.q and item.q[1] or item.qq and item.qq[1] or item.qualifiers and item.qualifiers[1]
or item.a and item.a[1] or item.aa and item.aa[1]
local has_gloss_or_pos = item.gloss or item.pos
if has_qualifiers or has_gloss_or_pos then
-- FIXME: Currently we tack the gloss and POS (in that order) onto the end of the regular left qualifiers.
-- Should we do something different?
local q = item.q
if has_gloss_or_pos then
q = mw.clone(item.q) or {}
if item.gloss then
local m_qualifier = require(qualifier_module)
insert(q, m_qualifier.wrap_qualifier_css("“", "quote") .. item.gloss ..
m_qualifier.wrap_qualifier_css("”", "quote"))
end
if item.pos then
-- FIXME: Consider expanding aliases as found in [[Module:headword/data]] or similar.
insert(q, item.pos)
end
end
bit = require("Module:pron qualifier").format_qualifiers {
lang = lang,
text = bit,
q = q,
qq = item.qq,
qualifiers = item.qualifiers,
a = item.a,
aa = item.aa,
}
end
if item.note then
-- Support removed on 2024-06-15.
error("Support for `.note` has been removed; switch to `.refs` (which must be a list)")
end
if item.refs then
local refspecs = item.refs
if #refspecs > 0 then
bit = bit .. require(references_module).format_references(refspecs)
end
end
bit = (item.separator or (i == 1 and "" or separator)) .. bit
insert(bits, bit)
--[=[ [[Special:WhatLinksHere/Wiktionary:Tracking/IPA/syntax-error]]
The length or gemination symbol should not appear after a syllable break or stress symbol. ]=]
-- The nature of the following pattern match is such that we don't have to split a combined '/.../ [...]' spec
-- into its parts in order to process.
if match(item.pron, "[.\203][\136\140]?\203[\144\145]") then -- [.ˈˌ][ːˑ]
track("syntax-error")
end
if lang then
-- Add syllable count if the language's diphthongs are listed in [[Module:syllables]].
-- Don't do this if the term has spaces, a liaison mark (‿) or isn't in mainspace.
if not no_count and namespace == "" then
m_syllables = m_syllables or require(syllables_module)
local langcode = lang:getCode()
if m_data.langs_to_generate_syllable_count_categories[langcode] then
local raw_phonemic, phonetic, use_it = split_phonemic_phonetic(item.pron)
local phonemic, repr = determine_repr(raw_phonemic)
if not phonetic then -- not a '/.../ [...]' combined pronunciation
if m_data.langs_to_use_phonetic_or_phonemic_notation[langcode] then
use_it = phonemic
elseif m_data.langs_to_use_phonetic_notation[langcode] then
use_it = repr == "phonetic" and phonemic or nil
else
use_it = repr == "phonemic" and phonemic or nil
end
elseif repr == "phonetic" then
use_it = phonetic
elseif repr == "phonemic" then
use_it = phonemic
end
-- Note: two uses of find with plain patterns is much faster than umatch with [ ‿].
if use_it and not (find(use_it, " ") or find(use_it, "‿")) then
local syllable_count = m_syllables.getVowels(use_it, lang)
if syllable_count then
insert(categories, "ศัพท์" .. lang:getCategoryName() .. "ที่มี " .. syllable_count ..
" พยางค์")
end
end
end
end
end
end
return process_maybe_split_categories(split_output, categories, concat(bits), lang)
end
--[=[
Format a single IPA pronunciation, which cannot be a combined spec (such as {/.../ [...]}). This has been extracted from
{format_IPA()} to allow the latter to handle such combined specs. This works like {format_IPA()} but requires that
pre-created {err} (for error messages) and {categories} lists be passed in, and adds any generated error messages and
categories to those lists. A single value is returned, the pronunciation, which is usually the same as passed in, but
may have HTML added surrounding invalid characters so they appear in red.
]=]
local function format_one_IPA(lang, raw_pron, err, categories)
-- Disallow wikilinks.
if match(raw_pron, "%[%[.-%]%]") then
error("IPA input must not contain wikilinks.")
end
raw_pron = decode_entities(raw_pron)
-- Detect the type of transcription.
local pron, repr, opening, closing, reconstructed = determine_repr(raw_pron)
-- Strip any reconstruction asterisk and representation marks.
pron = sub(pron, #opening + 1 + (reconstructed and 1 or 0), -#closing - 1)
if not repr then
insert(categories, "IPA pronunciations with invalid representation marks")
-- insert(err, "invalid representation marks")
-- Removed because it's annoying when previewing pronunciation pages.
end
if repr ~= "orthographic" and lang and lang:getCode() == "en" and hasInvalidSeparators(pron) then
insert(categories, "English IPA pronunciations with invalid separators")
end
if pron == "" then
insert(categories, "IPA pronunciations with no pronunciation present")
end
-- Check for obsolete and nonstandard symbols
for _, symbol in ipairs(m_data.nonstandard) do
local result
for nonstandard in gmatch(pron, symbol) do
if not result then
result = {}
end
insert(result, nonstandard)
insert(categories,
{cat = "IPA pronunciations with obsolete or nonstandard characters", sort_key = nonstandard}
)
end
if result then
insert(err, "obsolete or nonstandard characters (" .. concat(result) .. ")")
break
end
end
--[[ Check for invalid symbols after removing the following:
1. wikilinks (handled above)
2. paired HTML tags
3. bolding
4. italics
5. asterisk at beginning of transcription
6. comma followed by spacing characters
7. superscripts enclosed in superscript parentheses ]]
local found_HTML
local result = gsub(pron, "<(%a+)[^>]*>([^<]+)</%1>",
function(tagName, content)
found_HTML = true
return content
end)
result = gsub(result, "'''([^']*)'''", "%1")
result = gsub(result, "''([^']*)''", "%1")
result = gsub(result, "^%*", "")
result = ugsub(result, ",%s+", "")
-- VS15
local vs15_class = "[" .. m_symbols.add_vs15 .. "]"
if umatch(pron, vs15_class) then
local vs15 = u(0xFE0E)
if find(result, vs15) then
result = gsub(result, vs15, "")
pron = gsub(pron, vs15, "")
end
pron = ugsub(pron, vs15_class, "%0" .. vs15)
end
if result ~= "" then
local content_page = is_content_page(lang, namespace)
if lang then
-- Get the per_lang_valid data, and convert any per-language valid sequences to spaces.
local per_lang_valid = m_symbols.per_lang_valid[lang:getCode()]
if per_lang_valid then
if type(per_lang_valid) == "table" then
for _, pattern in pairs(per_lang_valid) do
result = ugsub(result, pattern, " ")
end
else -- Should be a string.
result = ugsub(result, per_lang_valid, " ")
end
end
end
local suggestions = {}
-- Check for any invalid sequences, excluding anything in the per-language lookup table.
for k, v in pairs(m_symbols.invalid) do
if find(result, k, nil, true) then
insert(suggestions, with_codepoints(k) .. " with " .. with_codepoints(v))
end
end
if suggestions[1] then
local replacements = "replace " .. listToText(suggestions)
if content_page then
error("Invalid IPA: " .. replacements)
end
insert(err, replacements)
end
-- Convert any valid character sequences to spaces
for _, pattern in pairs(m_symbols.valid) do
result = ugsub(result, pattern, " ")
end
if not match(result, "^ *$") then
local category = "IPA pronunciations with invalid IPA characters"
if not content_page then
category = category .. "/non_mainspace"
end
insert(categories, category)
insert(err, "invalid IPA characters: " .. with_codepoints(result))
end
end
if found_HTML then
insert(categories, "IPA pronunciations with paired HTML tags")
end
if (repr == "phonemic" or repr == "rhyme") and lang and m_data.phonemes[lang:getCode()] then
local valid_phonemes = m_data.phonemes[lang:getCode()]
local rest = pron
local phonemes = {}
while #rest > 0 do
local longestmatch, longestmatch_len = "", 0
local rest_init = sub(rest, 1, 1)
if rest_init == "(" or rest_init == ")" then
longestmatch = rest_init
longestmatch_len = 1
else
for _, phoneme in ipairs(valid_phonemes) do
local phoneme_len = len(phoneme)
if phoneme_len > longestmatch_len and usub(rest, 1, phoneme_len) == phoneme then
longestmatch = phoneme
longestmatch_len = len(longestmatch)
end
end
end
if longestmatch_len > 0 then
insert(phonemes, longestmatch)
rest = usub(rest, longestmatch_len + 1)
else
local phoneme = usub(rest, 1, 1)
insert(phonemes, "<span style=\"color: var(--wikt-palette-red,red)\">" .. phoneme .. "</span>")
rest = usub(rest, 2)
insert(categories, "IPA pronunciations with invalid phonemes/" .. lang:getCode())
track("invalid phonemes/" .. phoneme)
end
end
pron = concat(phonemes)
end
return (reconstructed and "*" or "") .. opening .. pron .. closing
end
--[==[
Format an IPA pronunciation. This wraps the pronunciation in appropriate CSS classes and adds cleanup categories and
error messages as needed. The pronunciation `pron` should be either phonemic (surrounded by {/.../}), phonetic
(surrounded by {[...]}), orthographic (surrounded by {⟨...⟩}), a rhyme (beginning with a hyphen) or a combined
phonemic/phonetic spec (of the form {/.../ [...]}). `lang` indicates the language of the pronunciation and can be {nil}.
If not {nil}, and the specified language has data in [[Module:IPA/data]] indicating the allowed phonemes, then the page
will be added to a cleanup category and an error message displayed next to the outputted pronunciation. Note that {lang}
also determines sort key processing in the added cleanup categories. If `split_output` is not given, the return value is
a concatenation of the formatted pronunciation, error messages and formatted cleanup categories. Otherwise, three values
are returned: the formatted pronunciation, the cleanup categories and the concatenated error messages. If `split_output`
is the value {"raw"}, the cleanup categories are returned in list form, where the list elements are a combination of
category strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]].
If `split_output` is any other value besides {nil}, the cleanup categories are returned as a pre-formatted concatenated
string.
]==]
function export.format_IPA(lang, pron, split_output)
local err = {}
local categories = {}
-- `pron` shouldn't contain ref tags.
if match(pron, "\127'\"`UNIQ%-%-ref%-[%dA-F]+%-QINU`\"'\127") then
error("<ref> tags found inside pronunciation parameter.")
end
if not lang then
track("format-nolang")
else
assert_not_etymology_only_lang(lang)
end
local phonemic, phonetic = split_phonemic_phonetic(pron)
pron = format_one_IPA(lang, phonemic, err, categories)
if phonetic then
track("phonemic-phonetic") -- There's no benefit to supporting the "/.../ [...]" format within one parameter.
phonetic = format_one_IPA(lang, phonetic, err, categories)
pron = pron .. " " .. phonetic
end
if err[1] and is_preview() then
err = '<span class="error" style="font-size: small;> ' .. concat(err, ", ") .. "</span>"
else
err = ""
end
return process_maybe_split_categories(split_output, categories, '<span class="IPA nowrap">' .. pron .. "</span>", lang,
err)
end
--[==[
Format a line of one or more enPR pronunciations as {{tl|enPR}} would do it, i.e. with a preceding {"enPR:"} (linked to
[[Appendix:English pronunciation]]) followed by one or more formatted, comma-separated enPR pronunciations. The
pronunciations are formatted by wrapping them in the `AHD` and `enPR` CSS classes and adding any left and
right regular and accent qualifiers. In addition, the overall result is wrapped in any overall left and right regular
and accent qualifiers. There is a single parameter `data`, an object with the following fields:
* `items` is a list of enPR pronunciations, each of which is an object with the following properties:
** `pron`: the enPR pronunciation;
** `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display before the formatted pronunciation;
** `qq`: {nil} or a list of right qualifiers to display after the formatted pronunciation;
** `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display before the formatted pronunciation;
** `aa`: {nil} or a list of right accent qualifiers to after before the formatted pronunciation.
* `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display at the beginning, before the formatted
pronunciations and preceding {"enPR:"}.
* `qq`: {nil} or a list of right qualifiers to display after all formatted pronunciations.
* `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display at the beginning, before the formatted
pronunciations and preceding {"enPR:"}.
* `aa`: {nil} or a list of right accent qualifiers to display after all formatted pronunciations.
]==]
function export.format_enPR_full(data)
local prefix = "[[ภาคผนวก:การออกเสียงภาษาอังกฤษ|enPR]]: "
local lang = require("Module:languages").getByCode("en")
local parts = {}
for _, item in ipairs(data.items) do
local part = '<span class="AHD enPR">' .. item.pron .. "</span>"
if item.q and item.q[1] or item.qq and item.qq[1] or item.a and item.a[1] or item.aa and item.aa[1] then
part = require("Module:pron qualifier").format_qualifiers {
lang = lang,
text = part,
q = item.q,
qq = item.qq,
a = item.a,
aa = item.aa,
}
end
insert(parts, part)
end
local prontext = prefix .. concat(parts, ", ")
if data.q and data.q[1] or data.qq and data.qq[1] or data.a and data.a[1] or data.aa and data.aa[1] then
prontext = require(pron_qualifier_module).format_qualifiers {
lang = lang,
text = prontext,
q = data.q,
qq = data.qq,
a = data.a,
aa = data.aa,
}
end
return prontext
end
return export
4t496g1o4f04pwopuegk0wjh53cfpn8
5759944
5759942
2026-09-08T12:39:07Z
Octahedron80
267
5759944
Scribunto
text/plain
local export = {}
local force_cat = false -- for testing
local pages_module = "Module:pages"
local pron_qualifier_module = "Module:pron qualifier"
local qualifier_module = "Module:qualifier"
local references_module = "Module:references"
local string_utilities_module = "Module:string utilities"
local syllables_module = "Module:syllables"
local utilities_module = "Module:utilities"
local m_data = mw.loadData("Module:IPA/data")
local m_str_utils = require(string_utilities_module)
local m_syllables -- [[Module:syllables]]; loaded below if needed
local m_symbols = mw.loadData("Module:IPA/data/symbols")
local concat = table.concat
local decode_entities = m_str_utils.decode_entities
local find = string.find
local gcodepoint = m_str_utils.gcodepoint
local gmatch = m_str_utils.gmatch
local gsub = string.gsub
local insert = table.insert
local is_preview = require(pages_module).is_preview
local len = m_str_utils.len
local listToText = mw.text.listToText
local match = string.match
local pattern_escape = m_str_utils.pattern_escape
local sub = string.sub
local u = m_str_utils.char
local ugsub = m_str_utils.gsub
local umatch = m_str_utils.match
local usub = m_str_utils.sub
local function with_codepoints(s)
if find(s, "%S%s") then
local parts = {}
for ch in gmatch(s, "%S") do
parts[#parts + 1] = with_codepoints(ch)
end
return concat(parts, ", ")
end
local cps = {}
for cp in gcodepoint(s) do
cps[#cps + 1] = ("U+%04X"):format(cp)
end
return s .. " [" .. concat(cps, " ") .. "]"
end
local namespace = mw.title.getCurrentTitle().nsText
local function is_content_page(lang, namespace)
return namespace == "" or namespace == "การสืบสร้าง" or
lang and lang:hasType("appendix-constructed") and namespace == "ภาคผนวก"
end
-- Etymology-only languages are not L2 entry languages; IPA should use the parent full language.
local function assert_not_etymology_only_lang(lang)
if lang and lang.hasType and lang:hasType("language", "etymology-only") then
local parent_code = lang.getParentCode and lang:getParentCode() or nil
error(("Cannot use IPA with the etymology-only language %q; use the parent full language %q instead."):format(lang:getCode(), parent_code))
end
end
local function track(page)
require("Module:debug/track")("IPA/" .. page)
return true
end
local function process_maybe_split_categories(split_output, categories, prontext, lang, errtext)
if split_output ~= "raw" then
if categories[1] then
categories = require(utilities_module).format_categories(categories, lang, nil, nil, force_cat)
else
categories = ""
end
end
if split_output then -- for use of IPA in links, etc.
if errtext then
return prontext, categories, errtext
else
return prontext, categories
end
else
return prontext .. (errtext or "") .. categories
end
end
--[==[
Format a line of one or more IPA pronunciations as {{tl|IPA}} would do it, i.e. with a preceding {"IPA:"} followed by
the word {"key"} linking to an Appendix page describing the language's phonology, and with an added category
` ``lang`` terms with IPA pronunciation`. Other than the extra preceding text and category, this is identical
to {format_IPA_multiple()}, and the considerations described there in the documentation apply here as well. There is a
single parameter `data`, an object with the following fields:
* `lang`: Object representing the language of the pronunciations, which is used when adding cleanup categories for
pronunciations with invalid phonemes; for determining how many syllables the pronunciations have in them, in order to
add a category such as [[:Category:Italian 2-syllable words]] (for certain languages only); for adding a category
` ``lang`` terms with IPA pronunciation`; and for determining the proper sort keys for categories. Unlike
for {format_IPA_multiple()}, `lang` may not be {nil}.
* `items`: List of pronunciations, in exactly the same format as for {format_IPA_multiple()}.
* `err`: If not {nil}, a string containing an error message to use in place of the link to the language's phonology.
* `separator`: The default separator to use when separating formatted items. Defaults to {", "}. Does not apply to the
first item, where the default separator is always the empty string. Overridden by the per-item `separator` field in
`items`.
* `sort_key`: Explicit sort key used for categories.
* `no_count`: Suppress adding a {#-syllable words} category such as [[:Category:Italian 2-syllable words]]. Note that
only certain languages add such categories to begin with, because it depends on knowing how to count syllables in a
given language, which depends on the phonology of the language. Also, this does not suppress the addition of cleanup
or other categories. If you need them suppressed, use `split_output` to return the categories separately and ignore
them.
* `split_output`: If not given, the return value is a concatenation of the formatted pronunciation and formatted
categories. Otherwise, two values are returned: the formatted pronunciation and the categories. If `split_output` is
the value {"raw"}, the categories are returned in list form, where the list elements are a combination of category
strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]]. If
`split_output` is any other value besides {nil}, the categories are returned as a pre-formatted concatenated string.
* `include_langname`: If specified, prefix the result with the language name, followed by a colon.
* `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display at the beginning, before the formatted
pronunciations and preceding {"IPA:"}.
* `qq`: {nil} or a list of right qualifiers to display after all formatted pronunciations.
* `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display at the beginning, before the formatted
pronunciations and preceding {"IPA:"}.
* `aa`: {nil} or a list of right accent qualifiers to display after all formatted pronunciations.
]==]
function export.format_IPA_full(data)
if type(data) ~= "table" or data.getCode then
error("Must now supply a table of arguments to format_IPA_full(); first argument should be that table, not a language object")
end
local lang = data.lang
local items = data.items
local err = data.err
local separator = data.separator
local sort_key = data.sort_key
local no_count = data.no_count
local split_output = data.split_output
local q = data.q
local qq = data.qq
local a = data.a
local aa = data.aa
local include_langname = data.include_langname
local hasKey = m_data.langs_with_infopages
if not lang or not lang.getCode then
error("Must specify language to format_IPA_full()")
end
assert_not_etymology_only_lang(lang)
local langname = lang:getCanonicalName()
local langcat = lang:getCategoryName() --th
local prefix_text
if err then
prefix_text = '<span class="error">' .. err .. '</span>'
else
if hasKey[lang:getCode()] then
prefix_text = "ภาคผนวก:การออกเสียง" .. langcat
else
prefix_text = "วิกิพีเดีย:ระบบเสียง" .. langcat
end
prefix_text = "[[" .. prefix_text .. "|อธิบาย]]"
end
local prefix = "[[วิกิพจนานุกรม:สัทอักษรสากล|ไอพีเอ]]<sup>(" .. prefix_text .. ")</sup>: "
local IPAs, categories = export.format_IPA_multiple(lang, items, separator, no_count, "raw")
if is_content_page(lang, namespace) then
insert(categories, {
cat = "ศัพท์" .. langcat .. "ที่มีการออกเสียงไอพีเอ",
sort_key = sort_key
})
end
local prontext = prefix .. IPAs
if q and q[1] or qq and qq[1] or a and a[1] or aa and aa[1] then
prontext = require(pron_qualifier_module).format_qualifiers {
lang = lang,
text = prontext,
q = q,
qq = qq,
a = a,
aa = aa,
}
end
if include_langname then
prontext = langname .. ": " .. prontext
end
return process_maybe_split_categories(split_output, categories, prontext, lang)
end
local function split_phonemic_phonetic(pron)
local reconstructed, phonemic, phonetic = match(pron, "^(%*?)(/.-/)%s+(%[.-%])$")
if reconstructed then
return reconstructed .. phonemic, reconstructed .. phonetic
else
return pron, nil
end
end
local function determine_repr(pron)
local reconstructed
-- Temporarily remove any initial asterisk before representation marks,
-- which avoids having to account for it in the data, but set the
-- `reconstructed` flag.
if sub(pron, 1, 1) == "*" then
reconstructed = true
pron = sub(pron, 2)
end
-- Some representation types have aliases for convenience (e.g. "// //" is
-- an alias for "⫽ ⫽"). and these need to be substituted in before checking
-- for other data.
local opening, n = match(pron, "^.[\128-\191]*")
local subs_data = m_data.representation_subs[opening]
if subs_data then
pron, n = ugsub(pron, subs_data[1], subs_data[2])
-- If the substitution was made, `opening` needs to be changed to the
-- new opening character.
if n ~= 0 then
opening = subs_data[3]
end
end
-- Get the type data based on the opening character (if any), and set the
-- representation type if the closing character matches.
local type_data, repr, closing = m_data.representation_types[opening]
if type_data then
closing = type_data[2]
if type_data and match(pron, pattern_escape(closing) .. "$", #opening + 1) then
repr = type_data[1]
end
end
-- Default to the empty string.
if not repr then
opening, closing = "", ""
end
-- Reattach the asterisk if reconstructed.
if reconstructed then
pron = "*" .. pron
end
return pron, repr, opening, closing, reconstructed
end
local function hasInvalidSeparators(transcription)
-- Escape certain characters as well as pauses, which have the format "(...)" (with any number of dots), to avoid false-positives.
transcription = transcription:gsub(".[\128-\191]*", m_symbols.separator_escapes)
:gsub("%(%.+%)", "\3")
:gsub("[()]+", "")
return (
transcription:find("..", nil, true) or
transcription:match("%.%f[%z \1\2\3,:;]") or
transcription:match("\1%f[%z \2\3,:;]") or
transcription:match("\2%f[%z \1\3,:;]") or
transcription:match("\3[:;]") or
transcription:match("%f[^%z \1\2\3,]%.")
) and true or false
end
--[==[
Format a line of one or more bare IPA pronunciations (i.e. without any preceding {"IPA:"} and without adding to a
category ` ``lang`` terms with IPA pronunciation`). Individual pronunciations are formatted using
{format_IPA()} and are combined with separators, qualifiers, pre-text, post-text, etc. to form a line of pronunciations.
Parameters accepted are:
* `lang` is an object representing the language of the pronunciations, which is used when adding cleanup categories for
pronunciations with invalid phonemes; for determining how many syllables the pronunciations have in them, in order to
add a category such as [[:Category:Italian 2-syllable words]] (for certain languages only); and for computing the
proper sort keys for categories. `lang` may be {nil}.
* `items` is a list of pronunciations, each of which is an object with the following properties:
** `pron`: the pronunciation, in the same format as is accepted by {format_IPA()}, i.e. it should be either phonemic
(surrounded by {/.../}), phonetic (surrounded by {[...]}), orthographic (surrounded by {⟨...⟩}) or a rhyme
(beginning with a hyphen);
** `pretext`: text to display directly before the formatted pronunciation, inside of any qualifiers or accent
qualifiers;
** `posttext`: text to display directly after the formatted pronunciation, inside of any qualifiers or accent
qualifiers;
** `q` or `qualifiers`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display before the formatted
pronunciation; note that `qualifiers` is deprecated;
** `qq`: {nil} or a list of right qualifiers to display after the formatted pronunciation;
** `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display before the formatted pronunciation;
** `aa`: {nil} or a list of right accent qualifiers to after before the formatted pronunciation;
** `refs`: {nil} or a list of references or reference specs to add after the pronunciation and any posttext and
qualifiers; the value of a list item is either a string containing the reference text (typically a call to a
citation template such as {{tl|cite-book}}, or a template wrapping such a call), or an object with fields `text`
(the reference text), `name` (the name of the reference, as in {{cd|<nowiki><ref name="foo">...</ref></nowiki>}}
or {{cd|<nowiki><ref name="foo" /></nowiki>}}) and/or `group` (the group of the reference, as in
{{cd|<nowiki><ref name="foo" group="bar">...</ref></nowiki>}} or
{{cd|<nowiki><ref name="foo" group="bar"/></nowiki>}}); this uses a parser function to format the reference
appropriately and insert a footnote number that hyperlinks to the actual reference, located in the
{{cd|<nowiki><references /></nowiki>}} section;
** `gloss`: {nil} or a gloss (definition) for this item, if different definitions have different pronunciations;
** `pos`: {nil} or a part of speech for this item, if different parts of speech have different pronunciations;
** `separator`: the separator text to insert directly before the formatted pronunciation and all qualifiers, accent
qualifiers and pre-text; defaults to the outer `separator` parameter.
* `separator`: The default separator to use when separating formatted items. Defaults to {", "}. Does not apply to the
first item, where the default separator is always the empty string. Overridden by the per-item `separator` field in
`items`.
* `no_count`: Suppress adding a {#-syllable words} category such as [[:Category:Italian 2-syllable words]]. Note that
only certain languages add such categories to begin with, because it depends on knowing how to count syllables in a
given language, which depends on the phonology of the language. Also, this does not suppress the addition of cleanup
categories. If you need them suppressed, use `split_output` to return the categories separately and ignore them.
* `split_output`: If not given, the return value is a concatenation of the formatted pronunciation and formatted
categories. Otherwise, two values are returned: the formatted pronunciation and the categories. If `split_output` is
the value {"raw"}, the categories are returned in list form, where the list elements are a combination of category
strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]]. If
`split_output` is any other value besides {nil}, the categories are returned as a pre-formatted concatenated string.
]==]
function export.format_IPA_multiple(lang, items, separator, no_count, split_output)
local categories = {}
separator = separator or ", "
if not lang then
track("format-multiple-nolang")
else
assert_not_etymology_only_lang(lang)
end
-- Format
if not items[1] then
if namespace == "แม่แบบ" then
insert(items, {pron = "/aɪ piː ˈeɪ/"})
else
insert(categories, "Pronunciation templates without a pronunciation")
end
end
local bits = {}
for i, item in ipairs(items) do
local bit
-- If the pronunciation is entirely empty, allow this and don't do anything, so that e.g. the pretext and/or
-- posttext can be specified to force something like ''unknown'' to appear in place of the pronunciation
-- (as happens e.g. when ? is used as a respelling in [[Module:ca-IPA]]; see [[guèiser]] for an example).
if item.pron == "" then
bit = ""
else
local item_categories, errtext
bit, item_categories, errtext = export.format_IPA(lang, item.pron, "raw")
bit = bit .. errtext
for _, cat in ipairs(item_categories) do
insert(categories, cat)
end
end
if item.pretext then
bit = item.pretext .. bit
end
if item.posttext then
bit = bit .. item.posttext
end
local has_qualifiers = item.q and item.q[1] or item.qq and item.qq[1] or item.qualifiers and item.qualifiers[1]
or item.a and item.a[1] or item.aa and item.aa[1]
local has_gloss_or_pos = item.gloss or item.pos
if has_qualifiers or has_gloss_or_pos then
-- FIXME: Currently we tack the gloss and POS (in that order) onto the end of the regular left qualifiers.
-- Should we do something different?
local q = item.q
if has_gloss_or_pos then
q = mw.clone(item.q) or {}
if item.gloss then
local m_qualifier = require(qualifier_module)
insert(q, m_qualifier.wrap_qualifier_css("“", "quote") .. item.gloss ..
m_qualifier.wrap_qualifier_css("”", "quote"))
end
if item.pos then
-- FIXME: Consider expanding aliases as found in [[Module:headword/data]] or similar.
insert(q, item.pos)
end
end
bit = require("Module:pron qualifier").format_qualifiers {
lang = lang,
text = bit,
q = q,
qq = item.qq,
qualifiers = item.qualifiers,
a = item.a,
aa = item.aa,
}
end
if item.note then
-- Support removed on 2024-06-15.
error("Support for `.note` has been removed; switch to `.refs` (which must be a list)")
end
if item.refs then
local refspecs = item.refs
if #refspecs > 0 then
bit = bit .. require(references_module).format_references(refspecs)
end
end
bit = (item.separator or (i == 1 and "" or separator)) .. bit
insert(bits, bit)
--[=[ [[Special:WhatLinksHere/Wiktionary:Tracking/IPA/syntax-error]]
The length or gemination symbol should not appear after a syllable break or stress symbol. ]=]
-- The nature of the following pattern match is such that we don't have to split a combined '/.../ [...]' spec
-- into its parts in order to process.
if match(item.pron, "[.\203][\136\140]?\203[\144\145]") then -- [.ˈˌ][ːˑ]
track("syntax-error")
end
if lang then
-- Add syllable count if the language's diphthongs are listed in [[Module:syllables]].
-- Don't do this if the term has spaces, a liaison mark (‿) or isn't in mainspace.
if not no_count and namespace == "" then
m_syllables = m_syllables or require(syllables_module)
local langcode = lang:getCode()
if m_data.langs_to_generate_syllable_count_categories[langcode] then
local raw_phonemic, phonetic, use_it = split_phonemic_phonetic(item.pron)
local phonemic, repr = determine_repr(raw_phonemic)
if not phonetic then -- not a '/.../ [...]' combined pronunciation
if m_data.langs_to_use_phonetic_or_phonemic_notation[langcode] then
use_it = phonemic
elseif m_data.langs_to_use_phonetic_notation[langcode] then
use_it = repr == "phonetic" and phonemic or nil
else
use_it = repr == "phonemic" and phonemic or nil
end
elseif repr == "phonetic" then
use_it = phonetic
elseif repr == "phonemic" then
use_it = phonemic
end
-- Note: two uses of find with plain patterns is much faster than umatch with [ ‿].
if use_it and not (find(use_it, " ") or find(use_it, "‿")) then
local syllable_count = m_syllables.getVowels(use_it, lang)
if syllable_count then
insert(categories, "ศัพท์" .. lang:getCategoryName() .. "ที่มี " .. syllable_count ..
" พยางค์")
end
end
end
end
end
end
return process_maybe_split_categories(split_output, categories, concat(bits), lang)
end
--[=[
Format a single IPA pronunciation, which cannot be a combined spec (such as {/.../ [...]}). This has been extracted from
{format_IPA()} to allow the latter to handle such combined specs. This works like {format_IPA()} but requires that
pre-created {err} (for error messages) and {categories} lists be passed in, and adds any generated error messages and
categories to those lists. A single value is returned, the pronunciation, which is usually the same as passed in, but
may have HTML added surrounding invalid characters so they appear in red.
]=]
local function format_one_IPA(lang, raw_pron, err, categories)
-- Disallow wikilinks.
if match(raw_pron, "%[%[.-%]%]") then
error("IPA input must not contain wikilinks.")
end
raw_pron = decode_entities(raw_pron)
-- Detect the type of transcription.
local pron, repr, opening, closing, reconstructed = determine_repr(raw_pron)
-- Strip any reconstruction asterisk and representation marks.
pron = sub(pron, #opening + 1 + (reconstructed and 1 or 0), -#closing - 1)
if not repr then
insert(categories, "IPA pronunciations with invalid representation marks")
-- insert(err, "invalid representation marks")
-- Removed because it's annoying when previewing pronunciation pages.
end
if repr ~= "orthographic" and lang and lang:getCode() == "en" and hasInvalidSeparators(pron) then
insert(categories, "English IPA pronunciations with invalid separators")
end
if pron == "" then
insert(categories, "IPA pronunciations with no pronunciation present")
end
-- Check for obsolete and nonstandard symbols
for _, symbol in ipairs(m_data.nonstandard) do
local result
for nonstandard in gmatch(pron, symbol) do
if not result then
result = {}
end
insert(result, nonstandard)
insert(categories,
{cat = "IPA pronunciations with obsolete or nonstandard characters", sort_key = nonstandard}
)
end
if result then
insert(err, "obsolete or nonstandard characters (" .. concat(result) .. ")")
break
end
end
--[[ Check for invalid symbols after removing the following:
1. wikilinks (handled above)
2. paired HTML tags
3. bolding
4. italics
5. asterisk at beginning of transcription
6. comma followed by spacing characters
7. superscripts enclosed in superscript parentheses ]]
local found_HTML
local result = gsub(pron, "<(%a+)[^>]*>([^<]+)</%1>",
function(tagName, content)
found_HTML = true
return content
end)
result = gsub(result, "'''([^']*)'''", "%1")
result = gsub(result, "''([^']*)''", "%1")
result = gsub(result, "^%*", "")
result = ugsub(result, ",%s+", "")
-- VS15
local vs15_class = "[" .. m_symbols.add_vs15 .. "]"
if umatch(pron, vs15_class) then
local vs15 = u(0xFE0E)
if find(result, vs15) then
result = gsub(result, vs15, "")
pron = gsub(pron, vs15, "")
end
pron = ugsub(pron, vs15_class, "%0" .. vs15)
end
if result ~= "" then
local content_page = is_content_page(lang, namespace)
if lang then
-- Get the per_lang_valid data, and convert any per-language valid sequences to spaces.
local per_lang_valid = m_symbols.per_lang_valid[lang:getCode()]
if per_lang_valid then
if type(per_lang_valid) == "table" then
for _, pattern in pairs(per_lang_valid) do
result = ugsub(result, pattern, " ")
end
else -- Should be a string.
result = ugsub(result, per_lang_valid, " ")
end
end
end
local suggestions = {}
-- Check for any invalid sequences, excluding anything in the per-language lookup table.
for k, v in pairs(m_symbols.invalid) do
if find(result, k, nil, true) then
insert(suggestions, with_codepoints(k) .. " with " .. with_codepoints(v))
end
end
if suggestions[1] then
local replacements = "replace " .. listToText(suggestions)
if content_page then
error("Invalid IPA: " .. replacements)
end
insert(err, replacements)
end
-- Convert any valid character sequences to spaces
for _, pattern in pairs(m_symbols.valid) do
result = ugsub(result, pattern, " ")
end
if not match(result, "^ *$") then
local category = "IPA pronunciations with invalid IPA characters"
if not content_page then
category = category .. "/non_mainspace"
end
insert(categories, category)
insert(err, "invalid IPA characters: " .. with_codepoints(result))
end
end
if found_HTML then
insert(categories, "IPA pronunciations with paired HTML tags")
end
if (repr == "phonemic" or repr == "rhyme") and lang and m_data.phonemes[lang:getCode()] then
local valid_phonemes = m_data.phonemes[lang:getCode()]
local rest = pron
local phonemes = {}
while #rest > 0 do
local longestmatch, longestmatch_len = "", 0
local rest_init = sub(rest, 1, 1)
if rest_init == "(" or rest_init == ")" then
longestmatch = rest_init
longestmatch_len = 1
else
for _, phoneme in ipairs(valid_phonemes) do
local phoneme_len = len(phoneme)
if phoneme_len > longestmatch_len and usub(rest, 1, phoneme_len) == phoneme then
longestmatch = phoneme
longestmatch_len = len(longestmatch)
end
end
end
if longestmatch_len > 0 then
insert(phonemes, longestmatch)
rest = usub(rest, longestmatch_len + 1)
else
local phoneme = usub(rest, 1, 1)
insert(phonemes, "<span style=\"color: var(--wikt-palette-red,red)\">" .. phoneme .. "</span>")
rest = usub(rest, 2)
insert(categories, "IPA pronunciations with invalid phonemes/" .. lang:getCode())
track("invalid phonemes/" .. phoneme)
end
end
pron = concat(phonemes)
end
return (reconstructed and "*" or "") .. opening .. pron .. closing
end
--[==[
Format an IPA pronunciation. This wraps the pronunciation in appropriate CSS classes and adds cleanup categories and
error messages as needed. The pronunciation `pron` should be either phonemic (surrounded by {/.../}), phonetic
(surrounded by {[...]}), orthographic (surrounded by {⟨...⟩}), a rhyme (beginning with a hyphen) or a combined
phonemic/phonetic spec (of the form {/.../ [...]}). `lang` indicates the language of the pronunciation and can be {nil}.
If not {nil}, and the specified language has data in [[Module:IPA/data]] indicating the allowed phonemes, then the page
will be added to a cleanup category and an error message displayed next to the outputted pronunciation. Note that {lang}
also determines sort key processing in the added cleanup categories. If `split_output` is not given, the return value is
a concatenation of the formatted pronunciation, error messages and formatted cleanup categories. Otherwise, three values
are returned: the formatted pronunciation, the cleanup categories and the concatenated error messages. If `split_output`
is the value {"raw"}, the cleanup categories are returned in list form, where the list elements are a combination of
category strings and category objects of the form suitable for passing to {format_categories()} in [[Module:utilities]].
If `split_output` is any other value besides {nil}, the cleanup categories are returned as a pre-formatted concatenated
string.
]==]
function export.format_IPA(lang, pron, split_output)
local err = {}
local categories = {}
-- `pron` shouldn't contain ref tags.
if match(pron, "\127'\"`UNIQ%-%-ref%-[%dA-F]+%-QINU`\"'\127") then
error("<ref> tags found inside pronunciation parameter.")
end
if not lang then
track("format-nolang")
else
assert_not_etymology_only_lang(lang)
end
local phonemic, phonetic = split_phonemic_phonetic(pron)
pron = format_one_IPA(lang, phonemic, err, categories)
if phonetic then
track("phonemic-phonetic") -- There's no benefit to supporting the "/.../ [...]" format within one parameter.
phonetic = format_one_IPA(lang, phonetic, err, categories)
pron = pron .. " " .. phonetic
end
if err[1] and is_preview() then
err = '<span class="error" style="font-size: small;> ' .. concat(err, ", ") .. "</span>"
else
err = ""
end
return process_maybe_split_categories(split_output, categories, '<span class="IPA nowrap">' .. pron .. "</span>", lang,
err)
end
--[==[
Format a line of one or more enPR pronunciations as {{tl|enPR}} would do it, i.e. with a preceding {"enPR:"} (linked to
[[Appendix:English pronunciation]]) followed by one or more formatted, comma-separated enPR pronunciations. The
pronunciations are formatted by wrapping them in the `AHD` and `enPR` CSS classes and adding any left and
right regular and accent qualifiers. In addition, the overall result is wrapped in any overall left and right regular
and accent qualifiers. There is a single parameter `data`, an object with the following fields:
* `items` is a list of enPR pronunciations, each of which is an object with the following properties:
** `pron`: the enPR pronunciation;
** `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display before the formatted pronunciation;
** `qq`: {nil} or a list of right qualifiers to display after the formatted pronunciation;
** `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display before the formatted pronunciation;
** `aa`: {nil} or a list of right accent qualifiers to after before the formatted pronunciation.
* `q`: {nil} or a list of left qualifiers (as in {{tl|q}}) to display at the beginning, before the formatted
pronunciations and preceding {"enPR:"}.
* `qq`: {nil} or a list of right qualifiers to display after all formatted pronunciations.
* `a`: {nil} or a list of left accent qualifiers (as in {{tl|a}}) to display at the beginning, before the formatted
pronunciations and preceding {"enPR:"}.
* `aa`: {nil} or a list of right accent qualifiers to display after all formatted pronunciations.
]==]
function export.format_enPR_full(data)
local prefix = "[[ภาคผนวก:การออกเสียงภาษาอังกฤษ|enPR]]: "
local lang = require("Module:languages").getByCode("en")
local parts = {}
for _, item in ipairs(data.items) do
local part = '<span class="AHD enPR">' .. item.pron .. "</span>"
if item.q and item.q[1] or item.qq and item.qq[1] or item.a and item.a[1] or item.aa and item.aa[1] then
part = require("Module:pron qualifier").format_qualifiers {
lang = lang,
text = part,
q = item.q,
qq = item.qq,
a = item.a,
aa = item.aa,
}
end
insert(parts, part)
end
local prontext = prefix .. concat(parts, ", ")
if data.q and data.q[1] or data.qq and data.qq[1] or data.a and data.a[1] or data.aa and data.aa[1] then
prontext = require(pron_qualifier_module).format_qualifiers {
lang = lang,
text = prontext,
q = data.q,
qq = data.qq,
a = data.a,
aa = data.aa,
}
end
return prontext
end
return export
io5ltpp4ypjtoglp0qqqbdnibccdtw7
มอดูล:IPA/data
828
137525
5759943
5690263
2026-09-08T12:37:34Z
Octahedron80
267
5759943
Scribunto
text/plain
local list_to_set = require("Module:table").listToSet
local data = {}
--[=[
A list of representation types (e.g. /foo/ for phonemic and [bar] for phonetic),
given as a table. The key is the opening character, the first value the
representation type, and the second value the closing symbol.]=]
data.representation_types = {
["/"] = {"phonemic", "/"},
["["] = {"phonetic", "]"},
["⫽"] = {"morphophonemic", "⫽"},
["⟨"] = {"orthographic", "⟩"},
["-"] = {"rhyme", ""},
}
--[=[
A list of convenience inputs for certain representation types. The key is the
opening character, and the table is a three-item array consisting of (1) an
mw.ustring.gsub pattern which is anchored to the start and end of the string,
with a single capture group that excludes the characters to be substituted,
(2) a corresponding replacement pattern to be used with the pattern, and (3) the
replacement opening character.]=]
data.representation_subs = {
["<"] = {"^<(.*)>$", "⟨%1⟩", "⟨"},
["/"] = {"^//(.*)//$", "⫽%1⫽", "⫽"},
}
--[=[
This should list the language codes of all languages that have a pronunciation
page in the appendix of the form ''Appendix:LANG pronunciation'', e.g.
[[Appendix:Russian pronunciation]]. For these languages, the text "key" next to
the generated pronunciation links to such pages; for other languages, it links
to the "LANG phonology" page in Wikipedia (which may or may not exist).
[[Module:IPA]] is responsible for this linking; see format_IPA_full().]=]
data.langs_with_infopages = list_to_set{
"acw",
"ady",
"ang",
"arc",
"ba",
"bg",
"bo",
"ca",
"cho",
"cmn",
"cs",
"cv",
"cy",
"da",
"de",
"dsb",
"dz",
"egl",
"egy",
"el",
"en",
"enm",
"eo",
"es",
"fa",
"fi",
"fo",
"fr",
"fy",
"ga",
"gd",
"ghc",
"gmh",
"gmw-msc",
"got",
"he",
"hi",
"hrx",
"hu",
"hy",
"id",
"ii",
"is",
"it",
"iu",
"ja",
"jbo",
"ka",
"kls",
"ko",
"kw",
"la",
"lb",
"liv",
"lt",
"lv",
"mdf",
"mfe",
"mic",
"mk",
"mns-nor",
"ms",
"mt",
"mul",
"my",
"nan",
"nci",
"nl",
"nn",
"no",
"nov",
"nv",
"pjt",
"pl",
"ps",
"pt",
"ro",
"ru",
"scn",
"sco",
"sga",
"sh",
"sl",
"sq",
"sv",
"sw",
"syc",
"szl",
"tg",
"th",
"tl",
"tpw",
"tr",
"tyv",
"ug",
"uk",
"vi",
"vo",
"wlm",
"yi",
"yrl",
"yue",
"zlw-mas"
}
--[=[
This should list the diphthongs of a language (in the form of Lua patterns),
provided they do *NOT* contain semivowel symbols such as /j w ɰ ɥ/ or vowels
with nonsyllabic diacritics such as /i̯ u̯/. For example, list /au/ or /aʊ/,
but do not list /aw/ or /au̯/. The data in this table is used to count the
number of syllables in a word. [[Module:syllables]] automatically knows how
to correctly handle semivowel symbols and nonsyllabic diacritics.
Any language listed here will automatically have categories of the form
"LANG #-syllable words" generated. In addition, any language listed below under
`langs_to_generate_syllable_count_categories` will also have such categories
generated.
NOTE: There are some additional languages that have these categories.
For example:
* Thai words have these categories added by [[Module:th-pron]].]=]
data.diphthongs = {
["cs"] = { -- [[w:Czech phonology#Diphthongs]]
"[aeo]u",
},
["de"] = {
"a[ɪʊ]",
"ɔ[ʏɪ]",
},
["en"] = { -- from [[Appendix:English pronunciation]] mostly, but /ʌɪ/ is from the OED
"[aɑæeɛoɔʌ][ɪi]",
"[ɑɒæo]e",
"[əɐ]ʉ",
"[aɒəoɔæ]ʊ",
"æo",
"[ɛeɪiɔʊʉ]ə", -- /iə/ is a diphthong in NZE, but a disyllabic sequence in GA.
-- /ɪə/ is both a disyllabic sequence and a diphthong in old-fashioned RP.
"[aʌ][ʊɪ]ə", -- May be a disyllabic sequence in some or all dialects?
},
["grc"] = {
"[aeyo]i",
"[ae]u",
"[ɛɔa]ː[iu]",
},
["hrx"] = {
"aɪ̯",
"aʊ̯",
"oɪ̯",
"eʊ̯",
},
["is"] = { -- [[w:Icelandic phonology#Vowels]]
"[aeɔœʏ]i", -- diphthongs as the module generates them
"[ao]u", -- diphthongs as the module generates them
"ø[iɪy]", -- additional forms that may occur; Wikipedia is oddly specific about the second element: ei and ai, but øɪ.
},
["it"] = {
"[aeɛoɔu]i",
"[aeɛioɔ]u",
},
["lb"] = {
"[iu]ə",
"[ɜoæɑ]ɪ",
"[əæɑ]ʊ",
},
["lt"] = {
"ɐɪ", "ɒʊ", "ɛɪ", "ɛʊ", "ʊɪ", "ɔɪ", "ɔʊ", -- Simple diphthongs (unstressed forms)
"iɛ", "uɔ", -- Complex diphthongs
"ɑˑɪ", "ɑˑʊ", "æˑɪ", "æˑʊ", "oˑɪ", -- Falling tone (acute)
"ɐɪˑ", "ɒʊˑ", "ɛɪˑ", "ɛʊˑ", "ʊɪˑ", -- Rising tone (tilde) - lengthened second element
-- Note: Mixed diphthongs (e.g., ɐlˑ, æˑn, ʊl, etc.) are omitted since they are inherently monosyllabic
},
}
--[=[
This should list any languages for which categories of the form
"LANG #-syllable words", e.g. [[:Category:Russian 3-syllable words]], should be
generated. Do not list languages here if they have an entry above under
`data.diphthongs`; such languages are automatically added to this list.]=]
local langs_to_generate_syllable_count_categories = list_to_set{
"ar", -- Arabic has diphthongs, but they are transcribed
-- with semivowel symbols.
"ary", -- Moroccan Arabic has diphthongs, but they are transcribed
-- with semivowel symbols.
"bg", -- Bulgarian has diphthongs with /j/ and marginally with /w/,
-- but these are semivowels.
"ca", -- Catalan has diphthongs, but they are generally transcribed using
-- /w/ and /j/, so do not need to be listed (see [[w:Catalan language#Diphthongs and triphthongs]].
"eo",
"es", -- Spanish has diphthongs, but they are transcribed with i̯ etc.
"eu", -- Basque has dipthongs, but they are transcribed with i̯ and u̯.
"fi", -- Finnish has diphthongs, but they are now automatically transcribed with
-- the nonsyllabic diacritic
"fr", -- French has diphthongs, but they are transcribed
-- with semivowel symbols: [[w:French phonology#Glides and diphthongs]].
"hnn",
"id", -- Indonesian has diphthongs, but they are transcribed with i̯ or /j/ etc.
"ka",
"kne",
"kmr",
"ku",
"la", -- All diphthongs transcribed with e̯ or /j/ etc.
"mk",
"ms", -- Malay has diphthongs, but they are transcribed with i̯ or /j/ etc.
"mt", -- Maltese has diphthongs, but they are transcribed
-- with semivowel symbols.
"pl", -- No diphthongs, properly speaking; sequences of a vowel and /w/ or /j/ though.
"pt", -- Portuguese has diphthongs, but they are transcribed with i̯ or /j/ etc.
"rsk", -- No diphthongs but there are sequences of vowel and /j/ or /w/.
"ru", -- No diphthongs, properly speaking; sequences of a vowel and /j/ though.
"sk", -- Slovak has rising diphthongs, /i̯e, i̯a, i̯u, u̯o/, which are probably always spelled with the nonsyllabic diacritic, so do not need to be listed.
"sl", -- No diphthongs, properly speaking; sequences of a vowel, /j/ and /w/ though
"sq", -- [[w:Albanian language#Vowels]] doesn't mention anything about diphthongs.
"szy", -- All diphthongs are transcribed with /j/ or /w/
"tl", -- Tagalog has diphthongs, but they are transcribed with i̯ or /j/ etc
"tsg",
"ug", -- No diphthongs.
}
-- Also add languages listed under `data.diphthongs`.
for langcode, _ in pairs(data.diphthongs) do
langs_to_generate_syllable_count_categories[langcode] = true
end
data.langs_to_generate_syllable_count_categories = langs_to_generate_syllable_count_categories
-- Languages to use the phonetic not phonemic notation to compute syllable counts.
data.langs_to_use_phonetic_notation = list_to_set{
"bg",
"es",
"id",
"la",
"lt",
"mk",
"ms",
"rsk",
"ru",
}
-- Languages to use the phonetic or phonemic notation to compute syllable counts, whichever is available.
data.langs_to_use_phonetic_or_phonemic_notation = list_to_set{
-- [[Module:is-IPA]] generates [...] but many manual pronuns use /.../.
"is",
}
-- Non-standard or obsolete IPA symbols.
data.nonstandard = {
--[[ The following symbols consist of more than one character,
so we can't put them in the line below. ]]
"ɑ̢", "ɔ̗", "ɔ̖",
"[?ƍσƺƪƞƛłščžǰǧǯẋⱻʚω∅ØȣᴀᴇⱻQKPT]"
}
-- See valid IPA characters at [[Module:IPA/data/symbols]].
data.phonemes = {}
data.phonemes["dz"] = {
"m", "n", "ŋ",
"p", "t", "ʈ", "k",
"pʰ", "tʰ", "ʈʰ", "kʰ",
"t͡s", "t͡ɕ",
"t͡sʰ", "t͡ɕʰ",
"w", "s", "z", "ɬ", "l", "r", "ɕ", "ʑ", "j", "h",
"ɑ", "e", "i", "o", "u",
"ɑː", "eː", "ɛː", "iː", "oː", "øː", "uː", "yː",
"ɑ˥", "e˥", "i˥", "o˥", "u˥",
"ɑː˥", "eː˥", "ɛː˥", "iː˥", "oː˥", "øː˥", "uː˥", "yː˥",
"m˥", "n˥", "ŋ˥", "p˥", "k˥", "k̚˥", "w˥", "l˥", "r˥", "ɕ˥", "j˥", ")˥",
"ɑ˩", "e˩", "i˩", "o˩", "u˩",
"ɑː˩", "eː˩", "ɛː˩", "iː˩", "oː˩", "øː˩", "uː˩", "yː˩",
"m˩", "n˩", "ŋ˩", "p˩", "k˩", "k̚˩", "w˩", "l˩", "r˩", "ɕ˩", "j˩", ")˩",
".", ",", "-",
}
data.phonemes["eo"] = {
"a", "b", "d", "d͡ʒ", "d͡z", "e", "f", "h", "i", "j", "k",
"l", "m", "n", "o", "p", "r", "s", "t", "t͡s", "t͡ʃ",
"u", "u̯", "v", "w", "x", "z", "ɡ", "ʃ", "ʒ",
"ˈ", ".", " ", "-", "u̯", "i̯"
}
data.phonemes["hy"] = {
"ɑ", "b", "ɡ", "d", "e", "z", "ə", "tʰ", "ʒ", "i", "l", "χ", "t͡s",
"k", "h", "d͡z", "ʁ", "t͡ʃ", "m", "j", "n", "ʃ", "ɔ", "t͡ʃʰ", "p", "d͡ʒ",
"r", "s", "v", "t", "ɾ", "t͡sʰ", "v", "pʰ", "kʰ", "o", "f", "ŋɡ", "ŋk",
"ŋχ", "u", "œ", "ʏ", "ˈ", "ˌ", ".", " ", "ː",
}
data.phonemes["nl"] = {
"m", "n", "ŋ",
"p", "b", "t", "d", "k", "ɡ",
"f", "v", "s", "z", "ʃ", "ʒ", "x", "ɣ", "ɦ",
"ʋ", "l", "j", "r",
"ɪ", "ʏ", "ɛ", "ə", "ɔ", "ɑ",
"i", "iː", "y", "yː", "u", "uː", "eː", "øː", "oː", "ɛː", "œː", "ɔː", "aː",
"ɛi̯", "œy̯", "ɔi̯", "ɑu̯", "ɑi̯",
"iu̯", "yu̯", "ui̯", "eːu̯", "oːi̯", "aːi̯",
"ˈ", "ˌ", ".", " ", "-",
}
data.phonemes["mt"] = {
"m", "n",
"p", "t", "k", "ʔ",
"b", "d", "ɡ",
"t͡s", "t͡ʃ",
"d͡z", "d͡ʒ",
"f", "s", "ʃ", "ħ",
"v", "z", "ʒ", "ɣ",
"l", "j", "w",
"r",
"ɪ", "ɛ", "ɔ", "a", "u",
"ɛˤ", "ɔˤ", "aˤ", "əˤ",
"ɛˤː", "ɔˤː", "aˤː", "əˤː", "ɪˤː",
"iː", "ɪː", "ɛː", "ɔː", "aː", "uː",
"ˈ", "ˌ", ".", " ", "‿", "-"
}
return data
9j3yfr5dzmr70htnh6pfy97jzb11aph
การแปล
0
147283
5759983
5386792
2026-09-09T05:54:28Z
Octahedron80
267
/* รากศัพท์ */
5759983
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{prefix|th|การ|แปล}}
{{ศบญ|translation}}
=== การออกเสียง ===
{{th-pron|กาน-แปฺล}}
=== คำนาม ===
{{th-noun}}
# {{abstract noun of|th|แปล}}
h15zz3llpbhgchw0sfn0hma57wjw226
เด็กพิเศษ
0
148432
5759992
1388370
2026-09-09T06:37:44Z
Octahedron80
267
/* คำนาม */
5759992
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{คำประสม|th|เด็ก|พิเศษ}}
=== การออกเสียง ===
{{th-pron|เด็ก-พิ-เสด}}
=== คำนาม ===
{{th-noun}}
# {{lb|th|ปาก}} [[เด็ก]][[ที่]][[มี]][[ความผิด]][[ปกติ]][[ทาง]][[ร่างกาย]][[หรือ]][[จิตใจ]] [[ซึ่ง]][[จำเป็น]][[ต้อง]][[ดูแล]][[และ]][[ช่วยเหลือ]][[เป็น]][[พิเศษ]]
fqy6fhu2d5w4h0ub87mkiepqj3lr9fd
แม่แบบ:taxlink
10
152937
5759931
770450
2026-09-08T12:05:58Z
Octahedron80
267
แทนที่เนื้อหาด้วย "<includeonly>{{#invoke:taxlink|taxlink}}</includeonly><noinclude> {{documentation}}</noinclude>"
5759931
wikitext
text/x-wiki
<includeonly>{{#invoke:taxlink|taxlink}}</includeonly><noinclude>
{{documentation}}</noinclude>
e0f8mqdzitzifghxo1d7tq4dvg5gikr
แม่แบบ:taxoninfl
10
243766
5759961
1047860
2026-09-08T13:04:46Z
Octahedron80
267
5759961
wikitext
text/x-wiki
{{#invoke:checkparams|warn}}<!-- Validate template parameters
--><includeonly><!--
-->{{head|mul|คำวิสามานยนาม|head={{#if:{{{i|}}}|''{{{head|{{pagename}}}}}''}}|g={{{g|}}}|g2={{{g2|}}}|nogendercat=1|{{#if:{{{pl|}}}|พหูพจน์}}|{{#if:{{{pl|}}}|{{#if:{{{i|}}}|''}}{{{pl|}}}{{#if:{{{i|}}}|''}}}}}}<!--
--></includeonly><noinclude>{{documentation}}{{tcat|hw|lang=mul}}</noinclude>
qtq75cxpjoa63jv52eg6ly6jpd5h6rz
แปลเอาความ
0
243776
5759974
1391370
2026-09-09T05:46:33Z
Octahedron80
267
/* คำกริยา */
5759974
wikitext
text/x-wiki
==ภาษาไทย==
===การออกเสียง===
{{th-pron|แปฺล-เอา-คฺวาม}}
=== คำกริยา ===
{{th-verb}}
# [[แปล]][[ภาษา]][[หนึ่ง]][[เป็น]][[อีก]]ภาษาหนึ่ง [[โดย]][[ยึด]][[เอา]][[ความ]][[หมาย]]เป็น[[หลัก]]
#: {{syn|th|แปลตามเนื้อความ|แปลตามอรรถ|แปลโดยอรรถ}}
7wmni7aixovwunqrmj8k032a5kz3n3z
5759979
5759974
2026-09-09T05:49:49Z
Octahedron80
267
/* ภาษาไทย */ เก็บกวาด
5759979
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{com+|th|แปล|เอา|ความ}}
=== การออกเสียง ===
{{th-pron|แปฺล-เอา-คฺวาม}}
=== คำกริยา ===
{{th-verb}}
# [[แปล]][[ภาษา]][[หนึ่ง]][[เป็น]][[อีก]]ภาษาหนึ่ง [[โดย]][[ยึด]][[เอา]][[ความ]][[หมาย]]เป็น[[หลัก]]
#: {{syn|th|แปลตามเนื้อความ|แปลตามอรรถ|แปลโดยอรรถ}}
ntcvn4kyi4twj9a3rmctqcfphg3xt3d
วิกิพจนานุกรม:แจ้งผู้ดูแลระบบ
4
283125
5759996
5759702
2026-09-09T09:05:39Z
Taweetham
798
/* add new section & reply ไม่ทำงาน */ ตอบกลับ
5759996
wikitext
text/x-wiki
{{/ส่วนหัว}}
== คำขอแก้ไข ==
ผมสร้างคำขอใหม่ที่[[คุยเรื่องมอดูล:mul-letter]] แต่ติดตัวกรองผู้ใช้ใหม่ โปรดพิจารณาด้วยครับขอบคุณครับ --[[ผู้ใช้:Patsagorn Y.|Patsagorn Y.]] ([[คุยกับผู้ใช้:Patsagorn Y.|คุย]]) 12:06, 2 กันยายน 2563 (+07)
== deprecated global wg varibles on HotCat ==
เนื่องจากมีเดียวิกิได้มี[[phab:T72470|การอัพเดตซอฟต์แวร์]]ทำให้การแปลภาษาไทยของ HotCat ในหน้า [[มีเดียวิกิ:Gadget-HotCat.js/local_defaults]] ใช้การไม่ได้ ซึ่งมีกระทบทำให้อุปกรณ์เสริมนี้ใช้ไม่ได้ มีวิธีแก้ไขโดยใส่
<pre>var wgArticleId = mw.config.get('wgArticleId');</pre>
เข้าไประหว่างบรรทัดที่ 47 - 48
สามารถดูการแก้ไขที่แก้ไขแล้วประกอบที่ [[w:Special:Diff/9337615]] ด้วยครับ --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 13:35, 29 เมษายน 2564 (+07)
:{{done}} ทำแล้ว ไม่รู้ดีขึ้นหรือเปล่า --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:53, 30 เมษายน 2564 (+07)
:: เท่าที่ดูก็ดีขึ้นแล้วนะครับ กลับมาใช้งานได้แล้ว --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 21:08, 30 เมษายน 2564 (+07)
== แก้ไขตอนลบไม่แสดงจำนวนหน้าย่อย (ต้องใช้สิทธิ์ IA) ==
เนื่องจากเวลาจะลบหน้าแล้วระบบไม่แสดงจำนวนหน้าย่อย เนื่องจากความผิดพลาดในโค้ดอินเตอร์เฟซ จึงมาแจ้งเพื่อให้ปรับปรุงโค้ดในหน้า [[มีเดียวิกิ:Deleting-subpages-warning]] ดังนี้
<source lang=diff>
- <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $ หน้า|51=มากกว่า 50 หน้า}}]]
+ <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $1 หน้า|51=มากกว่า 50 หน้า}}]]
</source>
ขอบคุณครับ (และขอขอบคุณ [[ผู้ใช้:นคเรศ]] ที่ช่วยหาหน้าอินเตอร์เฟซให้ครับ) --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 03:34, 13 พฤษภาคม 2564 (+07)
::{{done}} --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 04:36, 13 พฤษภาคม 2564 (+07)
== ติดตามกลุ่มหุ่นเชิด ==
อยากให้ผู้ดูแลระบบวิกิพจนานุกรมทุกท่านช่วยติดตามกลุ่มหุ่นเชิด [[w:วิกิพีเดีย:การก่อกวนต่อเนื่องยาวนาน/Phanuruch8555|Ph8555]] เนื่องจากมีการก่อกวนข้ามโครงการ มีการสร้างหน้านโยบายที่ไม่ผ่านความคิดเห็นของชุมชน [[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 21:18, 13 พฤษภาคม 2566 (+07)
== บล็อก ==
รบกวนผู้ดูแลระบบพิจารณาบล็อก [[ผู้ใช้:อีหน้าห*]] เนื่องจากเป็นหุ่นเชิดของ ph8555 และมีพฤติกรรมไม่เหมาะสม และบล็อกช่วงไอพี 2001:FB1:154:0:0:0:0:0/46 ซึ่งเป็นช่วงไอพีหลักที่ผู้ก่อกวนใช้ --[[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 14:24, 17 พฤษภาคม 2566 (+07)
::{{done}} เฉพาะผู้ใช้ดังกล่าว --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 18 มิถุนายน 2566 (+07)
:::{{ping|Octahedron80}} บัญชีถูก [[Special:CentralAuth/อีหน้าห*|globally locked]] แล้วครับ
== Report concerning 2403:6200:8850:2402:89C1:8EB3:2BB7:20C0 ==
* [[Special:Contribs/2403:6200:8850:2402:89C1:8EB3:2BB7:20C0]]
* Removing content from pages. Sorry for not knowing your language.
[[ผู้ใช้:Yahya|Yahya]] ([[คุยกับผู้ใช้:Yahya|คุย]]) 00:54, 12 กรกฎาคม 2566 (+07)
== translatewiki.net ==
{{ping|Octahedron80|Ponpan|B20180|Alifshinobi|NNNEIFU}}
ขอเชิญชวน[[:w:วิกิพีเดีย:สภากาแฟ/อภิปราย/translatewiki.net|ร่วมกันแปล]] translatewiki.net คิดว่าในบรรดาโครงการพี่น้อง ที่วิกิพจนานุกรมจะมีความสำคัญในการดำเนินการส่วนนี้มากที่สุดครับ [[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 07:36, 20 มกราคม 2567 (+07)
== Report concerning 49.237.38.62 ==
*[[Special:Contribs/49.237.38.62]] - Reason: Vandalism.
[[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
: {{ping|Octahedron80}} [[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
Sorry for not online. A global-op already took it down. --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:46, 8 กุมภาพันธ์ 2567 (+07)
== เพิ่มข้อความในประกาศ ==
ขอให้ผู้ดูแลพิจารณาเพิ่มข้อความต่อไปนี้ในแม่แบบประกาศด้วยครับ
<code>* 17 ก.พ. - [[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|อภิปราย]]มาตรการห้ามเขียนบทความตระกูลรังสิตพลในโครงการวิกิมีเดียภาษาไทย</code> [[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 20:06, 17 กุมภาพันธ์ 2567 (+07)
==บังคับใช้มาตรการห้ามเขียนเนื้อหาของตระกูลรังสิตพล==
ตามที่ประชาคมวิกิมีเดียประเทศไทยได้ออกเสียงรับรองมาตรการ[[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|ห้ามเขียนเนื้อหาของตระกูลรังสิตพล]] จึงขอแจ้งให้ผู้ดูแลระบบทราบถึงมาตรการดังกล่าว ดังต่อไปนี้
# '''ห้ามมิให้'''ผู้ใช้ (ไม่ว่าจะเป็นผู้ใช้ลงทะเบียนหรือไม่ก็ตาม) '''เพิ่มเติมเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลและบุคคลในตระกูลเป็นจำนวนเจ็ด (7) ชั้นสายลำดับ''' ทั้งนี้ ให้ตีความอย่างกว้าง ในโครงการที่อยู่ในความดูแลของชุมชนวิกิมีเดียประเทศไทยทุกโครงการ (กล่าวคือ โครงการที่มีโดเมน <code>th.wik*</code> ทั้งหมด และโครงการใน Wikimedia Incubator ที่ใช้ภาษาไทย) ยกเว้นกรณีจะเป็นไปตามข้อยกเว้นที่กำหนด
#* คำว่า "เจ็ดชั้นสายลำดับ" ให้นับสุขวิช รังสิตพล และคู่สมรสเป็นชั้นลำดับที่ 0 และให้หมายถึงลำดับชั้นสุขวิช รังสิตพล และคู่สมรส ลำดับชั้นของบรรพบุรุษของสุขวิช รังสิตพล นับขึ้นไปสาม (3) ชั้นสายลำดับ และลำดับชั้นของผู้สืบสันดานของสุขวิช รังสิตพล และคู่สมรส นับถัดลงมาสาม (3) ชั้นสายลำดับ
#* คำว่า "ตีความอย่างกว้าง" ให้หมายความรวมถึงการแก้ไขบทความในเรื่องใด ๆ ก็ตามเพื่อเพิ่มเติมเนื้อหาที่เกี่ยวกับบุคคลในตระกูลรังสิตพล หรือเนื้อหาที่เกี่ยวข้องกับผลงานของบุคคลในตระกูลรังสิตพล ซึ่งรวมถึง (แต่ไม่จำกัดเพียง) การปฏิรูปการศึกษา กระเทย มหาวิทยาลัยราชภัฏ พรรคประชาธิปัตย์ หรือบทความใด ๆ ที่บุคคลในตระกูลรังสิตพลมีส่วนเกี่ยวข้อง
#* กรณีที่มีเนื้อหาของบุคคลในตระกูลรังสิตพลอยู่ในหน้าใด ให้'''นำออก'''หรือ'''ลบหน้า'''ดังกล่าวทิ้ง (ทั้งนี้ ไม่จำเป็นต้องใช้กระบวนการ Revision Delete เพื่อนำเนื้อหาดังกล่าวออกจากประวัติเดิมของหน้า)
# '''อนุญาต'''ให้มีเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลได้เฉพาะกรณีที่เป็นข้อเท็จจริงที่ไม่อาจโต้แย้งเป็นอย่างอื่นได้ และมีเอกสารราชการรองรับ เช่น การดำรงตำแหน่งในคณะรัฐมนตรีหรือหน่วยงานราชการ การลงสมัครผู้ว่ากรุงเทพมหานคร ทั้งนี้ จะต้องไม่เป็นการกล่าวถึงผลงานของบุคคลดังกล่าว
# '''อนุญาต'''ให้ใช้กลไกของระบบมีเดียวิกิ เช่น Abuse Filter, Title Blacklist หรือกลไกอื่นใดเพื่อดำเนินการตามมาตรการดังกล่าวได้ และ'''อนุญาต'''ให้ผู้ดูแลระบบดำเนินมาตรการตามที่เห็นสมควรกับผู้ใช้ที่พยายามกระทำการหลีกเลี่ยงการบังคับใช้มาตรการนี้ รวมถึงการบล็อกผู้ใช้หรือไอพีหากจำเป็นได้
# มาตรการนี้มีผลบังคับใช้เมื่อชุมชนวิกิมีเดียประเทศไทยให้ความเห็นชอบ และให้บังคับใช้โดย'''ไม่มีกำหนดระยะเวลา''' (indefinite) จนกว่าชุมชนจะได้ทบทวนมาตรการดังกล่าวในภายหลัง โดยคำนึงถึงภัยคุกคามที่อาจเกิดขึ้นในการมีบทความของบุคคลในตระกูลรังสิตพลในขณะนั้น ทั้งนี้ ให้มีการทบทวนนโยบายดังกล่าวอย่างน้อยหนึ่งครั้งทุก ๆ ระยะเวลาห้า (5) ปีที่เริ่มบังคับใช้มาตรการ หรือต่ออายุมาตรการครั้งหลังสุด
เพื่อการนี้ ขอให้ผู้ดูแลระบบหรือผู้ใช้ดำเนินการตามความเหมาะสมเพื่อนำออก และ/หรือคงเนื้อหาที่เกี่ยวข้องไว้โดยไม่เป็นการขัดต่อนโยบายนี้ จึงเรียนมาเพื่อทราบและดำเนินการต่อไป (ทั้งนี้ เนื่องจากเสร็จสิ้นการอภิปรายแล้ว สามารถนำประกาศในเรื่องนี้ออกได้) --[[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 15:26, 15 มีนาคม 2567 (+07)
== แจ้งลบประวัติหน้า ==
ขอให้ผู้ดูแลระบบลบประวัติหน้ารุ่นการแก้ไขนี้ [[Special:Permalink/2765044]] เนื่องจากมีการเปิดเผยสารสนเทศส่วนบุคคลครับ [[User:Ekminarin|Rin]] <sup>[ [[User talk:Ekminarin|T]] · [[Special:Contributions/Ekminarin|C]] ]</sup> 12:28, 11 มีนาคม 2568 (+07)
:ซ่อนประวัติหน้าแล้ว--[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 16:39, 12 มีนาคม 2568 (+07)
== WikiLove extension ==
ที่วิกิพีเดียภาษาไทยเริ่มใช้งานแล้วตั้งแต่ 7 สิงหาคม พ.ศ. 2568 หากท่านสนใจโปรดดำเนินการตามวิกิพีเดียภาษาไทยที่เป็นตัวอย่างให้แล้วได้เลย --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 00:57, 8 สิงหาคม 2568 (+07)
== temporary account ==
FYI. https://wikimedia.eventyay.com/talk/wikimania2025/talk/KFEFVG/ บัญชีชั่วคราวกำลังจะมาในระยะเวลาอันสั้น (1-3 เดือน ข้างหน้านี้) ทำให้ผู้ใช้ไม่ลงทะเบียนที่เป็นไอพีเปลี่ยนแปลงไป --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 22:18, 9 สิงหาคม 2568 (+07)
:: รวมกันไปอภิปรายที่เดียวก็ได้ครับ [[:w:th:วิกิพีเดีย:สภากาแฟ/อภิปราย/temporary accounts announcement]] --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 08:53, 30 สิงหาคม 2568 (+07)
== ขอสิทธิ์แก้ไข ==
สวัสดีครับ ตอนนี้ผมเขียนเพิ่มเนื้อหาของพจนานุกรมในส่วนที่เป็นภาษาญี่ปุ่น เนื่องจากผมเป็นผู้ใช้ใหม่ อีกทั้งยังติดตัวกรองสแปมของทางวิกิ ก็เลยยังไม่สามารถเขียนได้ในทั้งส่วนของคำนิยามเองก็ดี หรือแม่แบบที่เกี่ยวข้องกับภาษาญี่ปุ่นที่ไม่ค่อยครบก็ดี จงเรียนมาเพื่อโปรดพิจารณาให้ปลดแบนผมด้วย --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 18:39, 16 มิถุนายน 2569 (+07)
:เรื่องนี้มีอยู่สองประเด็น ประเด็นแรก คุณเป็นผู้ใช้ใหม่ยังไม่คุ้นเคยกับระบบวิกิ เพื่อป้องกันความเสียหายที่จะเกิดขึ้นจากการเขียนเล่น การก่อกวน หรือการทำให้เสียหายในวงกว้าง เราจึงไม่ให้ผู้ใช้ใหม่แก้ไขในส่วนที่เป็นโค้ดระดับกลางถึงสูง ซึ่งแม่แบบก็เป็นหนึ่งในนั้น ประเด็นที่สอง รูปแบบการเขียนของเนื้อหาที่คุณใส่เข้ามา มันน่าจะผิดปกติมากจน global filter ทำงาน ซึ่ง global filter ทำงานอยู่บนทุก ๆ วิกิ ดังนั้นไม่ว่าเขียนที่ไหนก็ขึ้นเนื้อหาไม่ได้ สิ่งที่คุณทำได้คือศึกษารูปแบบและวิธีการเขียนที่ถูกต้อง โดยดูตัวอย่างจากรายการคำอื่น ๆ ที่มีอยู่แล้ว แก้ไขนิยามในรายการที่ยังขาดหรือผิดอยู่ได้ เมื่อแก้ไขถึงระยะหนึ่ง คุณจะพ้นจากสถานะผู้ใช้ใหม่เอง ส่วนแม่แบบหรือโค้ดอื่น ๆ ที่ยังไม่มี เราจะไปคัดลอกมาแล้วดัดแปลงให้เข้ากับโครงการภาษาไทย (การคัดลอกเพียงอย่างเดียวอาจให้ผลลัพธ์ไม่ถูกต้อง) อนึ่งเราไม่ได้แบน เพราะถ้าแบน คุณคงจะคุยกับเราที่นี่ไม่ได้ครับ --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 21:41, 16 มิถุนายน 2569 (+07)
::รับทราบและขอบคุณสำหรับคำแนะนำครับ --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 6:33, 17 มิถุนายน 2569 (+07)
== [[คุยเรื่องภาคผนวก:รายชื่อคำในภาษาไทยที่มักเขียนผิด]] ==
ผมผ่านมาเห็นอีกทีก็ย้ายมาสองโครงการแล้ว อยากขอความคิดเห็นด้วยครับ เพราะเป็นหน้าที่ใช้ประโยชน์ได้มาก แต่หากอยู่กระจัดกระจายและขาดการเชื่อมโยงก็จะไม่ได้ใช้งานให้คุ้มค่าที่รวบรวมมาครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
=== add new section & reply ไม่ทำงาน ===
:: ป.ล. ผมไม่สามารถกดเพิ่มหัวข้อใหม่ (add a topic) ณ ที่นี้ได้ ต้องกดแก้ไขจากหัวข้อล่างสุด หากทราบวิธีการแก้ไขโปรดแนะนำด้วย
:: --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
::: ผมก็กดไม่ได้เหมือนกันครับ สคริปต์เป็นของสกินวิกิมีเดียที่เพิ่มเข้ามา แต่อาจจะใช้กับหน้าอื่นนอกจาก talk page ไม่ได้ ไม่มีที่ไหนจะแก้ไขได้ ก็ไม่ทราบเหมือนกัน 😅 --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 09:56, 5 กันยายน 2569 (+07)
:::: กลัวว่าเราจะช่วนกันรักษาเว็บเอาไว้ไม่อยู่นะครับถ้าแก้ไขปัญหาทางเทคนิคกันเองได้ล่าช้า / เดี๋ยวผมลองถามต่างประเทศให้นะครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:51, 6 กันยายน 2569 (+07)
::::: สอบถาม/แจ้งขอความช่วยเหลือให้แล้วครับ +ปุ่ม reply ก็ไม่ทำงานด้วยนะครับ TT --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 15:07, 6 กันยายน 2569 (+07)
:::: เราก็ไม่รู้มาก่อนนะครับว่ามันใช้บนหน้านี้ไม่ได้ หรือว่ามันเพิ่งจะเป็นก็ไม่ทราบ เพราะว่าก็ไม่มีใครติดต่อเลย แต่สำหรับ talk page อื่น ๆ น่ะใช้งานได้ --[[พิเศษ:เรื่องที่เขียน/~2026-48312-26|~2026-48312-26]] ([[คุยกับผู้ใช้:~2026-48312-26|คุย]]) 22:23, 6 กันยายน 2569 (+07)
:::::ดูที่ [[:w:en:user talk:Chlod]] นะครับ (ในหน้า edit source ตำแหน่ง cursor ไม่ตรงกับข้อความที่พิมพ์ด้วย ไม่ทราบว่าพอมีแนวทางแก้ไขไหมครับ) --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 16:05, 9 กันยายน 2569 (+07)
== ESEAP monthly call & survey for extended right users ==
วันนี้ผมได้เห็นผลการสำรวจ admin วิกิพีเดียและโครงการพี่น้องจากทั่วทั้งภูมิภาค ESEAP ใน [[:m:Event:ESEAP_Community_Call_61_(6_September_2026)]] ปรากฎว่าไม่มีผลการสำรวจจากประเทศไทยเลย ผลการสำรวจได้ข้อสรุปว่าจะจัดให้มี online conference call เพื่อเชื่อมโยงกันและปรึกษาหารือกันในปลายเดือนนี้ ผมคิดว่าเป็นโอกาสอันดียิ่งที่จะได้แลกเปลี่ยนเรียนรู้ปัญหากับ admin ท่านอื่นในโครงการพี่น้องภาษาอื่นนะครับ อยากเชิญชวนเข้าไปฟังกัน ติดต่อผ่านผู้ประสานได้ที่ [[:m:User:IKristiani-WMF]] คนที่ไม่ใช่ admin ถ้าคิดว่าเป็นประโยชน์ก็เข้าฟังได้ --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:46, 6 กันยายน 2569 (+07)
9wquezz216oyy5k7d0zxlw0w2n9war1
5760001
5759996
2026-09-09T10:08:38Z
Octahedron80
267
/* add new section & reply ไม่ทำงาน */ ตอบกลับ
5760001
wikitext
text/x-wiki
{{/ส่วนหัว}}
== คำขอแก้ไข ==
ผมสร้างคำขอใหม่ที่[[คุยเรื่องมอดูล:mul-letter]] แต่ติดตัวกรองผู้ใช้ใหม่ โปรดพิจารณาด้วยครับขอบคุณครับ --[[ผู้ใช้:Patsagorn Y.|Patsagorn Y.]] ([[คุยกับผู้ใช้:Patsagorn Y.|คุย]]) 12:06, 2 กันยายน 2563 (+07)
== deprecated global wg varibles on HotCat ==
เนื่องจากมีเดียวิกิได้มี[[phab:T72470|การอัพเดตซอฟต์แวร์]]ทำให้การแปลภาษาไทยของ HotCat ในหน้า [[มีเดียวิกิ:Gadget-HotCat.js/local_defaults]] ใช้การไม่ได้ ซึ่งมีกระทบทำให้อุปกรณ์เสริมนี้ใช้ไม่ได้ มีวิธีแก้ไขโดยใส่
<pre>var wgArticleId = mw.config.get('wgArticleId');</pre>
เข้าไประหว่างบรรทัดที่ 47 - 48
สามารถดูการแก้ไขที่แก้ไขแล้วประกอบที่ [[w:Special:Diff/9337615]] ด้วยครับ --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 13:35, 29 เมษายน 2564 (+07)
:{{done}} ทำแล้ว ไม่รู้ดีขึ้นหรือเปล่า --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:53, 30 เมษายน 2564 (+07)
:: เท่าที่ดูก็ดีขึ้นแล้วนะครับ กลับมาใช้งานได้แล้ว --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 21:08, 30 เมษายน 2564 (+07)
== แก้ไขตอนลบไม่แสดงจำนวนหน้าย่อย (ต้องใช้สิทธิ์ IA) ==
เนื่องจากเวลาจะลบหน้าแล้วระบบไม่แสดงจำนวนหน้าย่อย เนื่องจากความผิดพลาดในโค้ดอินเตอร์เฟซ จึงมาแจ้งเพื่อให้ปรับปรุงโค้ดในหน้า [[มีเดียวิกิ:Deleting-subpages-warning]] ดังนี้
<source lang=diff>
- <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $ หน้า|51=มากกว่า 50 หน้า}}]]
+ <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $1 หน้า|51=มากกว่า 50 หน้า}}]]
</source>
ขอบคุณครับ (และขอขอบคุณ [[ผู้ใช้:นคเรศ]] ที่ช่วยหาหน้าอินเตอร์เฟซให้ครับ) --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 03:34, 13 พฤษภาคม 2564 (+07)
::{{done}} --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 04:36, 13 พฤษภาคม 2564 (+07)
== ติดตามกลุ่มหุ่นเชิด ==
อยากให้ผู้ดูแลระบบวิกิพจนานุกรมทุกท่านช่วยติดตามกลุ่มหุ่นเชิด [[w:วิกิพีเดีย:การก่อกวนต่อเนื่องยาวนาน/Phanuruch8555|Ph8555]] เนื่องจากมีการก่อกวนข้ามโครงการ มีการสร้างหน้านโยบายที่ไม่ผ่านความคิดเห็นของชุมชน [[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 21:18, 13 พฤษภาคม 2566 (+07)
== บล็อก ==
รบกวนผู้ดูแลระบบพิจารณาบล็อก [[ผู้ใช้:อีหน้าห*]] เนื่องจากเป็นหุ่นเชิดของ ph8555 และมีพฤติกรรมไม่เหมาะสม และบล็อกช่วงไอพี 2001:FB1:154:0:0:0:0:0/46 ซึ่งเป็นช่วงไอพีหลักที่ผู้ก่อกวนใช้ --[[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 14:24, 17 พฤษภาคม 2566 (+07)
::{{done}} เฉพาะผู้ใช้ดังกล่าว --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 18 มิถุนายน 2566 (+07)
:::{{ping|Octahedron80}} บัญชีถูก [[Special:CentralAuth/อีหน้าห*|globally locked]] แล้วครับ
== Report concerning 2403:6200:8850:2402:89C1:8EB3:2BB7:20C0 ==
* [[Special:Contribs/2403:6200:8850:2402:89C1:8EB3:2BB7:20C0]]
* Removing content from pages. Sorry for not knowing your language.
[[ผู้ใช้:Yahya|Yahya]] ([[คุยกับผู้ใช้:Yahya|คุย]]) 00:54, 12 กรกฎาคม 2566 (+07)
== translatewiki.net ==
{{ping|Octahedron80|Ponpan|B20180|Alifshinobi|NNNEIFU}}
ขอเชิญชวน[[:w:วิกิพีเดีย:สภากาแฟ/อภิปราย/translatewiki.net|ร่วมกันแปล]] translatewiki.net คิดว่าในบรรดาโครงการพี่น้อง ที่วิกิพจนานุกรมจะมีความสำคัญในการดำเนินการส่วนนี้มากที่สุดครับ [[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 07:36, 20 มกราคม 2567 (+07)
== Report concerning 49.237.38.62 ==
*[[Special:Contribs/49.237.38.62]] - Reason: Vandalism.
[[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
: {{ping|Octahedron80}} [[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
Sorry for not online. A global-op already took it down. --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:46, 8 กุมภาพันธ์ 2567 (+07)
== เพิ่มข้อความในประกาศ ==
ขอให้ผู้ดูแลพิจารณาเพิ่มข้อความต่อไปนี้ในแม่แบบประกาศด้วยครับ
<code>* 17 ก.พ. - [[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|อภิปราย]]มาตรการห้ามเขียนบทความตระกูลรังสิตพลในโครงการวิกิมีเดียภาษาไทย</code> [[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 20:06, 17 กุมภาพันธ์ 2567 (+07)
==บังคับใช้มาตรการห้ามเขียนเนื้อหาของตระกูลรังสิตพล==
ตามที่ประชาคมวิกิมีเดียประเทศไทยได้ออกเสียงรับรองมาตรการ[[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|ห้ามเขียนเนื้อหาของตระกูลรังสิตพล]] จึงขอแจ้งให้ผู้ดูแลระบบทราบถึงมาตรการดังกล่าว ดังต่อไปนี้
# '''ห้ามมิให้'''ผู้ใช้ (ไม่ว่าจะเป็นผู้ใช้ลงทะเบียนหรือไม่ก็ตาม) '''เพิ่มเติมเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลและบุคคลในตระกูลเป็นจำนวนเจ็ด (7) ชั้นสายลำดับ''' ทั้งนี้ ให้ตีความอย่างกว้าง ในโครงการที่อยู่ในความดูแลของชุมชนวิกิมีเดียประเทศไทยทุกโครงการ (กล่าวคือ โครงการที่มีโดเมน <code>th.wik*</code> ทั้งหมด และโครงการใน Wikimedia Incubator ที่ใช้ภาษาไทย) ยกเว้นกรณีจะเป็นไปตามข้อยกเว้นที่กำหนด
#* คำว่า "เจ็ดชั้นสายลำดับ" ให้นับสุขวิช รังสิตพล และคู่สมรสเป็นชั้นลำดับที่ 0 และให้หมายถึงลำดับชั้นสุขวิช รังสิตพล และคู่สมรส ลำดับชั้นของบรรพบุรุษของสุขวิช รังสิตพล นับขึ้นไปสาม (3) ชั้นสายลำดับ และลำดับชั้นของผู้สืบสันดานของสุขวิช รังสิตพล และคู่สมรส นับถัดลงมาสาม (3) ชั้นสายลำดับ
#* คำว่า "ตีความอย่างกว้าง" ให้หมายความรวมถึงการแก้ไขบทความในเรื่องใด ๆ ก็ตามเพื่อเพิ่มเติมเนื้อหาที่เกี่ยวกับบุคคลในตระกูลรังสิตพล หรือเนื้อหาที่เกี่ยวข้องกับผลงานของบุคคลในตระกูลรังสิตพล ซึ่งรวมถึง (แต่ไม่จำกัดเพียง) การปฏิรูปการศึกษา กระเทย มหาวิทยาลัยราชภัฏ พรรคประชาธิปัตย์ หรือบทความใด ๆ ที่บุคคลในตระกูลรังสิตพลมีส่วนเกี่ยวข้อง
#* กรณีที่มีเนื้อหาของบุคคลในตระกูลรังสิตพลอยู่ในหน้าใด ให้'''นำออก'''หรือ'''ลบหน้า'''ดังกล่าวทิ้ง (ทั้งนี้ ไม่จำเป็นต้องใช้กระบวนการ Revision Delete เพื่อนำเนื้อหาดังกล่าวออกจากประวัติเดิมของหน้า)
# '''อนุญาต'''ให้มีเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลได้เฉพาะกรณีที่เป็นข้อเท็จจริงที่ไม่อาจโต้แย้งเป็นอย่างอื่นได้ และมีเอกสารราชการรองรับ เช่น การดำรงตำแหน่งในคณะรัฐมนตรีหรือหน่วยงานราชการ การลงสมัครผู้ว่ากรุงเทพมหานคร ทั้งนี้ จะต้องไม่เป็นการกล่าวถึงผลงานของบุคคลดังกล่าว
# '''อนุญาต'''ให้ใช้กลไกของระบบมีเดียวิกิ เช่น Abuse Filter, Title Blacklist หรือกลไกอื่นใดเพื่อดำเนินการตามมาตรการดังกล่าวได้ และ'''อนุญาต'''ให้ผู้ดูแลระบบดำเนินมาตรการตามที่เห็นสมควรกับผู้ใช้ที่พยายามกระทำการหลีกเลี่ยงการบังคับใช้มาตรการนี้ รวมถึงการบล็อกผู้ใช้หรือไอพีหากจำเป็นได้
# มาตรการนี้มีผลบังคับใช้เมื่อชุมชนวิกิมีเดียประเทศไทยให้ความเห็นชอบ และให้บังคับใช้โดย'''ไม่มีกำหนดระยะเวลา''' (indefinite) จนกว่าชุมชนจะได้ทบทวนมาตรการดังกล่าวในภายหลัง โดยคำนึงถึงภัยคุกคามที่อาจเกิดขึ้นในการมีบทความของบุคคลในตระกูลรังสิตพลในขณะนั้น ทั้งนี้ ให้มีการทบทวนนโยบายดังกล่าวอย่างน้อยหนึ่งครั้งทุก ๆ ระยะเวลาห้า (5) ปีที่เริ่มบังคับใช้มาตรการ หรือต่ออายุมาตรการครั้งหลังสุด
เพื่อการนี้ ขอให้ผู้ดูแลระบบหรือผู้ใช้ดำเนินการตามความเหมาะสมเพื่อนำออก และ/หรือคงเนื้อหาที่เกี่ยวข้องไว้โดยไม่เป็นการขัดต่อนโยบายนี้ จึงเรียนมาเพื่อทราบและดำเนินการต่อไป (ทั้งนี้ เนื่องจากเสร็จสิ้นการอภิปรายแล้ว สามารถนำประกาศในเรื่องนี้ออกได้) --[[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 15:26, 15 มีนาคม 2567 (+07)
== แจ้งลบประวัติหน้า ==
ขอให้ผู้ดูแลระบบลบประวัติหน้ารุ่นการแก้ไขนี้ [[Special:Permalink/2765044]] เนื่องจากมีการเปิดเผยสารสนเทศส่วนบุคคลครับ [[User:Ekminarin|Rin]] <sup>[ [[User talk:Ekminarin|T]] · [[Special:Contributions/Ekminarin|C]] ]</sup> 12:28, 11 มีนาคม 2568 (+07)
:ซ่อนประวัติหน้าแล้ว--[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 16:39, 12 มีนาคม 2568 (+07)
== WikiLove extension ==
ที่วิกิพีเดียภาษาไทยเริ่มใช้งานแล้วตั้งแต่ 7 สิงหาคม พ.ศ. 2568 หากท่านสนใจโปรดดำเนินการตามวิกิพีเดียภาษาไทยที่เป็นตัวอย่างให้แล้วได้เลย --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 00:57, 8 สิงหาคม 2568 (+07)
== temporary account ==
FYI. https://wikimedia.eventyay.com/talk/wikimania2025/talk/KFEFVG/ บัญชีชั่วคราวกำลังจะมาในระยะเวลาอันสั้น (1-3 เดือน ข้างหน้านี้) ทำให้ผู้ใช้ไม่ลงทะเบียนที่เป็นไอพีเปลี่ยนแปลงไป --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 22:18, 9 สิงหาคม 2568 (+07)
:: รวมกันไปอภิปรายที่เดียวก็ได้ครับ [[:w:th:วิกิพีเดีย:สภากาแฟ/อภิปราย/temporary accounts announcement]] --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 08:53, 30 สิงหาคม 2568 (+07)
== ขอสิทธิ์แก้ไข ==
สวัสดีครับ ตอนนี้ผมเขียนเพิ่มเนื้อหาของพจนานุกรมในส่วนที่เป็นภาษาญี่ปุ่น เนื่องจากผมเป็นผู้ใช้ใหม่ อีกทั้งยังติดตัวกรองสแปมของทางวิกิ ก็เลยยังไม่สามารถเขียนได้ในทั้งส่วนของคำนิยามเองก็ดี หรือแม่แบบที่เกี่ยวข้องกับภาษาญี่ปุ่นที่ไม่ค่อยครบก็ดี จงเรียนมาเพื่อโปรดพิจารณาให้ปลดแบนผมด้วย --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 18:39, 16 มิถุนายน 2569 (+07)
:เรื่องนี้มีอยู่สองประเด็น ประเด็นแรก คุณเป็นผู้ใช้ใหม่ยังไม่คุ้นเคยกับระบบวิกิ เพื่อป้องกันความเสียหายที่จะเกิดขึ้นจากการเขียนเล่น การก่อกวน หรือการทำให้เสียหายในวงกว้าง เราจึงไม่ให้ผู้ใช้ใหม่แก้ไขในส่วนที่เป็นโค้ดระดับกลางถึงสูง ซึ่งแม่แบบก็เป็นหนึ่งในนั้น ประเด็นที่สอง รูปแบบการเขียนของเนื้อหาที่คุณใส่เข้ามา มันน่าจะผิดปกติมากจน global filter ทำงาน ซึ่ง global filter ทำงานอยู่บนทุก ๆ วิกิ ดังนั้นไม่ว่าเขียนที่ไหนก็ขึ้นเนื้อหาไม่ได้ สิ่งที่คุณทำได้คือศึกษารูปแบบและวิธีการเขียนที่ถูกต้อง โดยดูตัวอย่างจากรายการคำอื่น ๆ ที่มีอยู่แล้ว แก้ไขนิยามในรายการที่ยังขาดหรือผิดอยู่ได้ เมื่อแก้ไขถึงระยะหนึ่ง คุณจะพ้นจากสถานะผู้ใช้ใหม่เอง ส่วนแม่แบบหรือโค้ดอื่น ๆ ที่ยังไม่มี เราจะไปคัดลอกมาแล้วดัดแปลงให้เข้ากับโครงการภาษาไทย (การคัดลอกเพียงอย่างเดียวอาจให้ผลลัพธ์ไม่ถูกต้อง) อนึ่งเราไม่ได้แบน เพราะถ้าแบน คุณคงจะคุยกับเราที่นี่ไม่ได้ครับ --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 21:41, 16 มิถุนายน 2569 (+07)
::รับทราบและขอบคุณสำหรับคำแนะนำครับ --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 6:33, 17 มิถุนายน 2569 (+07)
== [[คุยเรื่องภาคผนวก:รายชื่อคำในภาษาไทยที่มักเขียนผิด]] ==
ผมผ่านมาเห็นอีกทีก็ย้ายมาสองโครงการแล้ว อยากขอความคิดเห็นด้วยครับ เพราะเป็นหน้าที่ใช้ประโยชน์ได้มาก แต่หากอยู่กระจัดกระจายและขาดการเชื่อมโยงก็จะไม่ได้ใช้งานให้คุ้มค่าที่รวบรวมมาครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
=== add new section & reply ไม่ทำงาน ===
:: ป.ล. ผมไม่สามารถกดเพิ่มหัวข้อใหม่ (add a topic) ณ ที่นี้ได้ ต้องกดแก้ไขจากหัวข้อล่างสุด หากทราบวิธีการแก้ไขโปรดแนะนำด้วย
:: --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
::: ผมก็กดไม่ได้เหมือนกันครับ สคริปต์เป็นของสกินวิกิมีเดียที่เพิ่มเข้ามา แต่อาจจะใช้กับหน้าอื่นนอกจาก talk page ไม่ได้ ไม่มีที่ไหนจะแก้ไขได้ ก็ไม่ทราบเหมือนกัน 😅 --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 09:56, 5 กันยายน 2569 (+07)
:::: กลัวว่าเราจะช่วนกันรักษาเว็บเอาไว้ไม่อยู่นะครับถ้าแก้ไขปัญหาทางเทคนิคกันเองได้ล่าช้า / เดี๋ยวผมลองถามต่างประเทศให้นะครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:51, 6 กันยายน 2569 (+07)
::::: สอบถาม/แจ้งขอความช่วยเหลือให้แล้วครับ +ปุ่ม reply ก็ไม่ทำงานด้วยนะครับ TT --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 15:07, 6 กันยายน 2569 (+07)
:::: เราก็ไม่รู้มาก่อนนะครับว่ามันใช้บนหน้านี้ไม่ได้ หรือว่ามันเพิ่งจะเป็นก็ไม่ทราบ เพราะว่าก็ไม่มีใครติดต่อเลย แต่สำหรับ talk page อื่น ๆ น่ะใช้งานได้ --[[พิเศษ:เรื่องที่เขียน/~2026-48312-26|~2026-48312-26]] ([[คุยกับผู้ใช้:~2026-48312-26|คุย]]) 22:23, 6 กันยายน 2569 (+07)
:::::ดูที่ [[:w:en:user talk:Chlod]] นะครับ (ในหน้า edit source ตำแหน่ง cursor ไม่ตรงกับข้อความที่พิมพ์ด้วย ไม่ทราบว่าพอมีแนวทางแก้ไขไหมครับ) --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 16:05, 9 กันยายน 2569 (+07)
::::::ไม่ตรงแบบไหนครับ เดาว่าอันนั้นน่าจะเป็นพฤติกรรมของเบราว์เซอร์นะครับ แต่เท่าที่เรารู้คือภาษาไทยไม่มีฟอนต์แบบ monospaced เวลาแก้ไขซอร์ซ เคอร์เซอร์มันขยับไปเกินกว่าปกติ ถ้ามีภาษาไทย เพราะมันนับอักขระบนล่างของไทยด้วยเป็น 1 space ดังนั้นยิ่งพิมพ์มันจะห่างไปเรื่อย ๆ [[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 9 กันยายน 2569 (+07)
== ESEAP monthly call & survey for extended right users ==
วันนี้ผมได้เห็นผลการสำรวจ admin วิกิพีเดียและโครงการพี่น้องจากทั่วทั้งภูมิภาค ESEAP ใน [[:m:Event:ESEAP_Community_Call_61_(6_September_2026)]] ปรากฎว่าไม่มีผลการสำรวจจากประเทศไทยเลย ผลการสำรวจได้ข้อสรุปว่าจะจัดให้มี online conference call เพื่อเชื่อมโยงกันและปรึกษาหารือกันในปลายเดือนนี้ ผมคิดว่าเป็นโอกาสอันดียิ่งที่จะได้แลกเปลี่ยนเรียนรู้ปัญหากับ admin ท่านอื่นในโครงการพี่น้องภาษาอื่นนะครับ อยากเชิญชวนเข้าไปฟังกัน ติดต่อผ่านผู้ประสานได้ที่ [[:m:User:IKristiani-WMF]] คนที่ไม่ใช่ admin ถ้าคิดว่าเป็นประโยชน์ก็เข้าฟังได้ --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:46, 6 กันยายน 2569 (+07)
7aq80qis1nn1y1q9g1cbv2rkk7dz9i2
5760002
5760001
2026-09-09T10:12:42Z
Octahedron80
267
/* add new section & reply ไม่ทำงาน */
5760002
wikitext
text/x-wiki
{{/ส่วนหัว}}
== คำขอแก้ไข ==
ผมสร้างคำขอใหม่ที่[[คุยเรื่องมอดูล:mul-letter]] แต่ติดตัวกรองผู้ใช้ใหม่ โปรดพิจารณาด้วยครับขอบคุณครับ --[[ผู้ใช้:Patsagorn Y.|Patsagorn Y.]] ([[คุยกับผู้ใช้:Patsagorn Y.|คุย]]) 12:06, 2 กันยายน 2563 (+07)
== deprecated global wg varibles on HotCat ==
เนื่องจากมีเดียวิกิได้มี[[phab:T72470|การอัพเดตซอฟต์แวร์]]ทำให้การแปลภาษาไทยของ HotCat ในหน้า [[มีเดียวิกิ:Gadget-HotCat.js/local_defaults]] ใช้การไม่ได้ ซึ่งมีกระทบทำให้อุปกรณ์เสริมนี้ใช้ไม่ได้ มีวิธีแก้ไขโดยใส่
<pre>var wgArticleId = mw.config.get('wgArticleId');</pre>
เข้าไประหว่างบรรทัดที่ 47 - 48
สามารถดูการแก้ไขที่แก้ไขแล้วประกอบที่ [[w:Special:Diff/9337615]] ด้วยครับ --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 13:35, 29 เมษายน 2564 (+07)
:{{done}} ทำแล้ว ไม่รู้ดีขึ้นหรือเปล่า --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:53, 30 เมษายน 2564 (+07)
:: เท่าที่ดูก็ดีขึ้นแล้วนะครับ กลับมาใช้งานได้แล้ว --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 21:08, 30 เมษายน 2564 (+07)
== แก้ไขตอนลบไม่แสดงจำนวนหน้าย่อย (ต้องใช้สิทธิ์ IA) ==
เนื่องจากเวลาจะลบหน้าแล้วระบบไม่แสดงจำนวนหน้าย่อย เนื่องจากความผิดพลาดในโค้ดอินเตอร์เฟซ จึงมาแจ้งเพื่อให้ปรับปรุงโค้ดในหน้า [[มีเดียวิกิ:Deleting-subpages-warning]] ดังนี้
<source lang=diff>
- <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $ หน้า|51=มากกว่า 50 หน้า}}]]
+ <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $1 หน้า|51=มากกว่า 50 หน้า}}]]
</source>
ขอบคุณครับ (และขอขอบคุณ [[ผู้ใช้:นคเรศ]] ที่ช่วยหาหน้าอินเตอร์เฟซให้ครับ) --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 03:34, 13 พฤษภาคม 2564 (+07)
::{{done}} --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 04:36, 13 พฤษภาคม 2564 (+07)
== ติดตามกลุ่มหุ่นเชิด ==
อยากให้ผู้ดูแลระบบวิกิพจนานุกรมทุกท่านช่วยติดตามกลุ่มหุ่นเชิด [[w:วิกิพีเดีย:การก่อกวนต่อเนื่องยาวนาน/Phanuruch8555|Ph8555]] เนื่องจากมีการก่อกวนข้ามโครงการ มีการสร้างหน้านโยบายที่ไม่ผ่านความคิดเห็นของชุมชน [[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 21:18, 13 พฤษภาคม 2566 (+07)
== บล็อก ==
รบกวนผู้ดูแลระบบพิจารณาบล็อก [[ผู้ใช้:อีหน้าห*]] เนื่องจากเป็นหุ่นเชิดของ ph8555 และมีพฤติกรรมไม่เหมาะสม และบล็อกช่วงไอพี 2001:FB1:154:0:0:0:0:0/46 ซึ่งเป็นช่วงไอพีหลักที่ผู้ก่อกวนใช้ --[[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 14:24, 17 พฤษภาคม 2566 (+07)
::{{done}} เฉพาะผู้ใช้ดังกล่าว --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 18 มิถุนายน 2566 (+07)
:::{{ping|Octahedron80}} บัญชีถูก [[Special:CentralAuth/อีหน้าห*|globally locked]] แล้วครับ
== Report concerning 2403:6200:8850:2402:89C1:8EB3:2BB7:20C0 ==
* [[Special:Contribs/2403:6200:8850:2402:89C1:8EB3:2BB7:20C0]]
* Removing content from pages. Sorry for not knowing your language.
[[ผู้ใช้:Yahya|Yahya]] ([[คุยกับผู้ใช้:Yahya|คุย]]) 00:54, 12 กรกฎาคม 2566 (+07)
== translatewiki.net ==
{{ping|Octahedron80|Ponpan|B20180|Alifshinobi|NNNEIFU}}
ขอเชิญชวน[[:w:วิกิพีเดีย:สภากาแฟ/อภิปราย/translatewiki.net|ร่วมกันแปล]] translatewiki.net คิดว่าในบรรดาโครงการพี่น้อง ที่วิกิพจนานุกรมจะมีความสำคัญในการดำเนินการส่วนนี้มากที่สุดครับ [[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 07:36, 20 มกราคม 2567 (+07)
== Report concerning 49.237.38.62 ==
*[[Special:Contribs/49.237.38.62]] - Reason: Vandalism.
[[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
: {{ping|Octahedron80}} [[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
Sorry for not online. A global-op already took it down. --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:46, 8 กุมภาพันธ์ 2567 (+07)
== เพิ่มข้อความในประกาศ ==
ขอให้ผู้ดูแลพิจารณาเพิ่มข้อความต่อไปนี้ในแม่แบบประกาศด้วยครับ
<code>* 17 ก.พ. - [[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|อภิปราย]]มาตรการห้ามเขียนบทความตระกูลรังสิตพลในโครงการวิกิมีเดียภาษาไทย</code> [[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 20:06, 17 กุมภาพันธ์ 2567 (+07)
==บังคับใช้มาตรการห้ามเขียนเนื้อหาของตระกูลรังสิตพล==
ตามที่ประชาคมวิกิมีเดียประเทศไทยได้ออกเสียงรับรองมาตรการ[[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|ห้ามเขียนเนื้อหาของตระกูลรังสิตพล]] จึงขอแจ้งให้ผู้ดูแลระบบทราบถึงมาตรการดังกล่าว ดังต่อไปนี้
# '''ห้ามมิให้'''ผู้ใช้ (ไม่ว่าจะเป็นผู้ใช้ลงทะเบียนหรือไม่ก็ตาม) '''เพิ่มเติมเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลและบุคคลในตระกูลเป็นจำนวนเจ็ด (7) ชั้นสายลำดับ''' ทั้งนี้ ให้ตีความอย่างกว้าง ในโครงการที่อยู่ในความดูแลของชุมชนวิกิมีเดียประเทศไทยทุกโครงการ (กล่าวคือ โครงการที่มีโดเมน <code>th.wik*</code> ทั้งหมด และโครงการใน Wikimedia Incubator ที่ใช้ภาษาไทย) ยกเว้นกรณีจะเป็นไปตามข้อยกเว้นที่กำหนด
#* คำว่า "เจ็ดชั้นสายลำดับ" ให้นับสุขวิช รังสิตพล และคู่สมรสเป็นชั้นลำดับที่ 0 และให้หมายถึงลำดับชั้นสุขวิช รังสิตพล และคู่สมรส ลำดับชั้นของบรรพบุรุษของสุขวิช รังสิตพล นับขึ้นไปสาม (3) ชั้นสายลำดับ และลำดับชั้นของผู้สืบสันดานของสุขวิช รังสิตพล และคู่สมรส นับถัดลงมาสาม (3) ชั้นสายลำดับ
#* คำว่า "ตีความอย่างกว้าง" ให้หมายความรวมถึงการแก้ไขบทความในเรื่องใด ๆ ก็ตามเพื่อเพิ่มเติมเนื้อหาที่เกี่ยวกับบุคคลในตระกูลรังสิตพล หรือเนื้อหาที่เกี่ยวข้องกับผลงานของบุคคลในตระกูลรังสิตพล ซึ่งรวมถึง (แต่ไม่จำกัดเพียง) การปฏิรูปการศึกษา กระเทย มหาวิทยาลัยราชภัฏ พรรคประชาธิปัตย์ หรือบทความใด ๆ ที่บุคคลในตระกูลรังสิตพลมีส่วนเกี่ยวข้อง
#* กรณีที่มีเนื้อหาของบุคคลในตระกูลรังสิตพลอยู่ในหน้าใด ให้'''นำออก'''หรือ'''ลบหน้า'''ดังกล่าวทิ้ง (ทั้งนี้ ไม่จำเป็นต้องใช้กระบวนการ Revision Delete เพื่อนำเนื้อหาดังกล่าวออกจากประวัติเดิมของหน้า)
# '''อนุญาต'''ให้มีเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลได้เฉพาะกรณีที่เป็นข้อเท็จจริงที่ไม่อาจโต้แย้งเป็นอย่างอื่นได้ และมีเอกสารราชการรองรับ เช่น การดำรงตำแหน่งในคณะรัฐมนตรีหรือหน่วยงานราชการ การลงสมัครผู้ว่ากรุงเทพมหานคร ทั้งนี้ จะต้องไม่เป็นการกล่าวถึงผลงานของบุคคลดังกล่าว
# '''อนุญาต'''ให้ใช้กลไกของระบบมีเดียวิกิ เช่น Abuse Filter, Title Blacklist หรือกลไกอื่นใดเพื่อดำเนินการตามมาตรการดังกล่าวได้ และ'''อนุญาต'''ให้ผู้ดูแลระบบดำเนินมาตรการตามที่เห็นสมควรกับผู้ใช้ที่พยายามกระทำการหลีกเลี่ยงการบังคับใช้มาตรการนี้ รวมถึงการบล็อกผู้ใช้หรือไอพีหากจำเป็นได้
# มาตรการนี้มีผลบังคับใช้เมื่อชุมชนวิกิมีเดียประเทศไทยให้ความเห็นชอบ และให้บังคับใช้โดย'''ไม่มีกำหนดระยะเวลา''' (indefinite) จนกว่าชุมชนจะได้ทบทวนมาตรการดังกล่าวในภายหลัง โดยคำนึงถึงภัยคุกคามที่อาจเกิดขึ้นในการมีบทความของบุคคลในตระกูลรังสิตพลในขณะนั้น ทั้งนี้ ให้มีการทบทวนนโยบายดังกล่าวอย่างน้อยหนึ่งครั้งทุก ๆ ระยะเวลาห้า (5) ปีที่เริ่มบังคับใช้มาตรการ หรือต่ออายุมาตรการครั้งหลังสุด
เพื่อการนี้ ขอให้ผู้ดูแลระบบหรือผู้ใช้ดำเนินการตามความเหมาะสมเพื่อนำออก และ/หรือคงเนื้อหาที่เกี่ยวข้องไว้โดยไม่เป็นการขัดต่อนโยบายนี้ จึงเรียนมาเพื่อทราบและดำเนินการต่อไป (ทั้งนี้ เนื่องจากเสร็จสิ้นการอภิปรายแล้ว สามารถนำประกาศในเรื่องนี้ออกได้) --[[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 15:26, 15 มีนาคม 2567 (+07)
== แจ้งลบประวัติหน้า ==
ขอให้ผู้ดูแลระบบลบประวัติหน้ารุ่นการแก้ไขนี้ [[Special:Permalink/2765044]] เนื่องจากมีการเปิดเผยสารสนเทศส่วนบุคคลครับ [[User:Ekminarin|Rin]] <sup>[ [[User talk:Ekminarin|T]] · [[Special:Contributions/Ekminarin|C]] ]</sup> 12:28, 11 มีนาคม 2568 (+07)
:ซ่อนประวัติหน้าแล้ว--[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 16:39, 12 มีนาคม 2568 (+07)
== WikiLove extension ==
ที่วิกิพีเดียภาษาไทยเริ่มใช้งานแล้วตั้งแต่ 7 สิงหาคม พ.ศ. 2568 หากท่านสนใจโปรดดำเนินการตามวิกิพีเดียภาษาไทยที่เป็นตัวอย่างให้แล้วได้เลย --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 00:57, 8 สิงหาคม 2568 (+07)
== temporary account ==
FYI. https://wikimedia.eventyay.com/talk/wikimania2025/talk/KFEFVG/ บัญชีชั่วคราวกำลังจะมาในระยะเวลาอันสั้น (1-3 เดือน ข้างหน้านี้) ทำให้ผู้ใช้ไม่ลงทะเบียนที่เป็นไอพีเปลี่ยนแปลงไป --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 22:18, 9 สิงหาคม 2568 (+07)
:: รวมกันไปอภิปรายที่เดียวก็ได้ครับ [[:w:th:วิกิพีเดีย:สภากาแฟ/อภิปราย/temporary accounts announcement]] --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 08:53, 30 สิงหาคม 2568 (+07)
== ขอสิทธิ์แก้ไข ==
สวัสดีครับ ตอนนี้ผมเขียนเพิ่มเนื้อหาของพจนานุกรมในส่วนที่เป็นภาษาญี่ปุ่น เนื่องจากผมเป็นผู้ใช้ใหม่ อีกทั้งยังติดตัวกรองสแปมของทางวิกิ ก็เลยยังไม่สามารถเขียนได้ในทั้งส่วนของคำนิยามเองก็ดี หรือแม่แบบที่เกี่ยวข้องกับภาษาญี่ปุ่นที่ไม่ค่อยครบก็ดี จงเรียนมาเพื่อโปรดพิจารณาให้ปลดแบนผมด้วย --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 18:39, 16 มิถุนายน 2569 (+07)
:เรื่องนี้มีอยู่สองประเด็น ประเด็นแรก คุณเป็นผู้ใช้ใหม่ยังไม่คุ้นเคยกับระบบวิกิ เพื่อป้องกันความเสียหายที่จะเกิดขึ้นจากการเขียนเล่น การก่อกวน หรือการทำให้เสียหายในวงกว้าง เราจึงไม่ให้ผู้ใช้ใหม่แก้ไขในส่วนที่เป็นโค้ดระดับกลางถึงสูง ซึ่งแม่แบบก็เป็นหนึ่งในนั้น ประเด็นที่สอง รูปแบบการเขียนของเนื้อหาที่คุณใส่เข้ามา มันน่าจะผิดปกติมากจน global filter ทำงาน ซึ่ง global filter ทำงานอยู่บนทุก ๆ วิกิ ดังนั้นไม่ว่าเขียนที่ไหนก็ขึ้นเนื้อหาไม่ได้ สิ่งที่คุณทำได้คือศึกษารูปแบบและวิธีการเขียนที่ถูกต้อง โดยดูตัวอย่างจากรายการคำอื่น ๆ ที่มีอยู่แล้ว แก้ไขนิยามในรายการที่ยังขาดหรือผิดอยู่ได้ เมื่อแก้ไขถึงระยะหนึ่ง คุณจะพ้นจากสถานะผู้ใช้ใหม่เอง ส่วนแม่แบบหรือโค้ดอื่น ๆ ที่ยังไม่มี เราจะไปคัดลอกมาแล้วดัดแปลงให้เข้ากับโครงการภาษาไทย (การคัดลอกเพียงอย่างเดียวอาจให้ผลลัพธ์ไม่ถูกต้อง) อนึ่งเราไม่ได้แบน เพราะถ้าแบน คุณคงจะคุยกับเราที่นี่ไม่ได้ครับ --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 21:41, 16 มิถุนายน 2569 (+07)
::รับทราบและขอบคุณสำหรับคำแนะนำครับ --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 6:33, 17 มิถุนายน 2569 (+07)
== [[คุยเรื่องภาคผนวก:รายชื่อคำในภาษาไทยที่มักเขียนผิด]] ==
ผมผ่านมาเห็นอีกทีก็ย้ายมาสองโครงการแล้ว อยากขอความคิดเห็นด้วยครับ เพราะเป็นหน้าที่ใช้ประโยชน์ได้มาก แต่หากอยู่กระจัดกระจายและขาดการเชื่อมโยงก็จะไม่ได้ใช้งานให้คุ้มค่าที่รวบรวมมาครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
=== add new section & reply ไม่ทำงาน ===
:: ป.ล. ผมไม่สามารถกดเพิ่มหัวข้อใหม่ (add a topic) ณ ที่นี้ได้ ต้องกดแก้ไขจากหัวข้อล่างสุด หากทราบวิธีการแก้ไขโปรดแนะนำด้วย
:: --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
::: ผมก็กดไม่ได้เหมือนกันครับ สคริปต์เป็นของสกินวิกิมีเดียที่เพิ่มเข้ามา แต่อาจจะใช้กับหน้าอื่นนอกจาก talk page ไม่ได้ ไม่มีที่ไหนจะแก้ไขได้ ก็ไม่ทราบเหมือนกัน 😅 --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 09:56, 5 กันยายน 2569 (+07)
:::: กลัวว่าเราจะช่วนกันรักษาเว็บเอาไว้ไม่อยู่นะครับถ้าแก้ไขปัญหาทางเทคนิคกันเองได้ล่าช้า / เดี๋ยวผมลองถามต่างประเทศให้นะครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:51, 6 กันยายน 2569 (+07)
::::: สอบถาม/แจ้งขอความช่วยเหลือให้แล้วครับ +ปุ่ม reply ก็ไม่ทำงานด้วยนะครับ TT --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 15:07, 6 กันยายน 2569 (+07)
:::: เราก็ไม่รู้มาก่อนนะครับว่ามันใช้บนหน้านี้ไม่ได้ หรือว่ามันเพิ่งจะเป็นก็ไม่ทราบ เพราะว่าก็ไม่มีใครติดต่อเลย แต่สำหรับ talk page อื่น ๆ น่ะใช้งานได้ --[[พิเศษ:เรื่องที่เขียน/~2026-48312-26|~2026-48312-26]] ([[คุยกับผู้ใช้:~2026-48312-26|คุย]]) 22:23, 6 กันยายน 2569 (+07)
:::::ดูที่ [[:w:en:user talk:Chlod]] นะครับ (ในหน้า edit source ตำแหน่ง cursor ไม่ตรงกับข้อความที่พิมพ์ด้วย ไม่ทราบว่าพอมีแนวทางแก้ไขไหมครับ) --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 16:05, 9 กันยายน 2569 (+07)
::::::ไม่ตรงแบบไหนครับ เดาว่าอันนั้นน่าจะเป็นพฤติกรรมของเบราว์เซอร์นะครับ แต่เท่าที่เรารู้คือ ภาษาไทยไม่มีฟอนต์แบบ monospaced เวลาแก้ไขซอร์ซ เคอร์เซอร์มันขยับไปเกินกว่าปกติถ้ามีภาษาไทย เพราะมันนับอักขระบนล่างของไทยด้วยเป็น 1 space ดังนั้นยิ่งพิมพ์มันจะห่างไปเรื่อย ๆ ถ้าคลิกลงไปตามที่ตาเห็นมันก็จะไม่ตรง เมื่อก่อนก็เจอปัญหานี้ตอนแก้มอดูล จนผมต้องปิด syntax highlighter แล้วคีย์แต่ตัวเปล่า ๆ แต่หลังจากอัปเดตเป็นเวอร์ชั่นใหม่แล้วปัญหานี้หายไปสำหรับผม คุณอาจจะยังเจออยู่กับเบราว์เซอร์อื่นหรือเปล่า [[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 9 กันยายน 2569 (+07)
== ESEAP monthly call & survey for extended right users ==
วันนี้ผมได้เห็นผลการสำรวจ admin วิกิพีเดียและโครงการพี่น้องจากทั่วทั้งภูมิภาค ESEAP ใน [[:m:Event:ESEAP_Community_Call_61_(6_September_2026)]] ปรากฎว่าไม่มีผลการสำรวจจากประเทศไทยเลย ผลการสำรวจได้ข้อสรุปว่าจะจัดให้มี online conference call เพื่อเชื่อมโยงกันและปรึกษาหารือกันในปลายเดือนนี้ ผมคิดว่าเป็นโอกาสอันดียิ่งที่จะได้แลกเปลี่ยนเรียนรู้ปัญหากับ admin ท่านอื่นในโครงการพี่น้องภาษาอื่นนะครับ อยากเชิญชวนเข้าไปฟังกัน ติดต่อผ่านผู้ประสานได้ที่ [[:m:User:IKristiani-WMF]] คนที่ไม่ใช่ admin ถ้าคิดว่าเป็นประโยชน์ก็เข้าฟังได้ --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:46, 6 กันยายน 2569 (+07)
ikqgtagbkw7u2dsmwtxi8lobenwt1g6
5760003
5760002
2026-09-09T10:13:29Z
Octahedron80
267
/* add new section & reply ไม่ทำงาน */
5760003
wikitext
text/x-wiki
{{/ส่วนหัว}}
== คำขอแก้ไข ==
ผมสร้างคำขอใหม่ที่[[คุยเรื่องมอดูล:mul-letter]] แต่ติดตัวกรองผู้ใช้ใหม่ โปรดพิจารณาด้วยครับขอบคุณครับ --[[ผู้ใช้:Patsagorn Y.|Patsagorn Y.]] ([[คุยกับผู้ใช้:Patsagorn Y.|คุย]]) 12:06, 2 กันยายน 2563 (+07)
== deprecated global wg varibles on HotCat ==
เนื่องจากมีเดียวิกิได้มี[[phab:T72470|การอัพเดตซอฟต์แวร์]]ทำให้การแปลภาษาไทยของ HotCat ในหน้า [[มีเดียวิกิ:Gadget-HotCat.js/local_defaults]] ใช้การไม่ได้ ซึ่งมีกระทบทำให้อุปกรณ์เสริมนี้ใช้ไม่ได้ มีวิธีแก้ไขโดยใส่
<pre>var wgArticleId = mw.config.get('wgArticleId');</pre>
เข้าไประหว่างบรรทัดที่ 47 - 48
สามารถดูการแก้ไขที่แก้ไขแล้วประกอบที่ [[w:Special:Diff/9337615]] ด้วยครับ --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 13:35, 29 เมษายน 2564 (+07)
:{{done}} ทำแล้ว ไม่รู้ดีขึ้นหรือเปล่า --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:53, 30 เมษายน 2564 (+07)
:: เท่าที่ดูก็ดีขึ้นแล้วนะครับ กลับมาใช้งานได้แล้ว --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 21:08, 30 เมษายน 2564 (+07)
== แก้ไขตอนลบไม่แสดงจำนวนหน้าย่อย (ต้องใช้สิทธิ์ IA) ==
เนื่องจากเวลาจะลบหน้าแล้วระบบไม่แสดงจำนวนหน้าย่อย เนื่องจากความผิดพลาดในโค้ดอินเตอร์เฟซ จึงมาแจ้งเพื่อให้ปรับปรุงโค้ดในหน้า [[มีเดียวิกิ:Deleting-subpages-warning]] ดังนี้
<source lang=diff>
- <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $ หน้า|51=มากกว่า 50 หน้า}}]]
+ <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $1 หน้า|51=มากกว่า 50 หน้า}}]]
</source>
ขอบคุณครับ (และขอขอบคุณ [[ผู้ใช้:นคเรศ]] ที่ช่วยหาหน้าอินเตอร์เฟซให้ครับ) --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 03:34, 13 พฤษภาคม 2564 (+07)
::{{done}} --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 04:36, 13 พฤษภาคม 2564 (+07)
== ติดตามกลุ่มหุ่นเชิด ==
อยากให้ผู้ดูแลระบบวิกิพจนานุกรมทุกท่านช่วยติดตามกลุ่มหุ่นเชิด [[w:วิกิพีเดีย:การก่อกวนต่อเนื่องยาวนาน/Phanuruch8555|Ph8555]] เนื่องจากมีการก่อกวนข้ามโครงการ มีการสร้างหน้านโยบายที่ไม่ผ่านความคิดเห็นของชุมชน [[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 21:18, 13 พฤษภาคม 2566 (+07)
== บล็อก ==
รบกวนผู้ดูแลระบบพิจารณาบล็อก [[ผู้ใช้:อีหน้าห*]] เนื่องจากเป็นหุ่นเชิดของ ph8555 และมีพฤติกรรมไม่เหมาะสม และบล็อกช่วงไอพี 2001:FB1:154:0:0:0:0:0/46 ซึ่งเป็นช่วงไอพีหลักที่ผู้ก่อกวนใช้ --[[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 14:24, 17 พฤษภาคม 2566 (+07)
::{{done}} เฉพาะผู้ใช้ดังกล่าว --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 18 มิถุนายน 2566 (+07)
:::{{ping|Octahedron80}} บัญชีถูก [[Special:CentralAuth/อีหน้าห*|globally locked]] แล้วครับ
== Report concerning 2403:6200:8850:2402:89C1:8EB3:2BB7:20C0 ==
* [[Special:Contribs/2403:6200:8850:2402:89C1:8EB3:2BB7:20C0]]
* Removing content from pages. Sorry for not knowing your language.
[[ผู้ใช้:Yahya|Yahya]] ([[คุยกับผู้ใช้:Yahya|คุย]]) 00:54, 12 กรกฎาคม 2566 (+07)
== translatewiki.net ==
{{ping|Octahedron80|Ponpan|B20180|Alifshinobi|NNNEIFU}}
ขอเชิญชวน[[:w:วิกิพีเดีย:สภากาแฟ/อภิปราย/translatewiki.net|ร่วมกันแปล]] translatewiki.net คิดว่าในบรรดาโครงการพี่น้อง ที่วิกิพจนานุกรมจะมีความสำคัญในการดำเนินการส่วนนี้มากที่สุดครับ [[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 07:36, 20 มกราคม 2567 (+07)
== Report concerning 49.237.38.62 ==
*[[Special:Contribs/49.237.38.62]] - Reason: Vandalism.
[[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
: {{ping|Octahedron80}} [[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
Sorry for not online. A global-op already took it down. --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:46, 8 กุมภาพันธ์ 2567 (+07)
== เพิ่มข้อความในประกาศ ==
ขอให้ผู้ดูแลพิจารณาเพิ่มข้อความต่อไปนี้ในแม่แบบประกาศด้วยครับ
<code>* 17 ก.พ. - [[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|อภิปราย]]มาตรการห้ามเขียนบทความตระกูลรังสิตพลในโครงการวิกิมีเดียภาษาไทย</code> [[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 20:06, 17 กุมภาพันธ์ 2567 (+07)
==บังคับใช้มาตรการห้ามเขียนเนื้อหาของตระกูลรังสิตพล==
ตามที่ประชาคมวิกิมีเดียประเทศไทยได้ออกเสียงรับรองมาตรการ[[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|ห้ามเขียนเนื้อหาของตระกูลรังสิตพล]] จึงขอแจ้งให้ผู้ดูแลระบบทราบถึงมาตรการดังกล่าว ดังต่อไปนี้
# '''ห้ามมิให้'''ผู้ใช้ (ไม่ว่าจะเป็นผู้ใช้ลงทะเบียนหรือไม่ก็ตาม) '''เพิ่มเติมเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลและบุคคลในตระกูลเป็นจำนวนเจ็ด (7) ชั้นสายลำดับ''' ทั้งนี้ ให้ตีความอย่างกว้าง ในโครงการที่อยู่ในความดูแลของชุมชนวิกิมีเดียประเทศไทยทุกโครงการ (กล่าวคือ โครงการที่มีโดเมน <code>th.wik*</code> ทั้งหมด และโครงการใน Wikimedia Incubator ที่ใช้ภาษาไทย) ยกเว้นกรณีจะเป็นไปตามข้อยกเว้นที่กำหนด
#* คำว่า "เจ็ดชั้นสายลำดับ" ให้นับสุขวิช รังสิตพล และคู่สมรสเป็นชั้นลำดับที่ 0 และให้หมายถึงลำดับชั้นสุขวิช รังสิตพล และคู่สมรส ลำดับชั้นของบรรพบุรุษของสุขวิช รังสิตพล นับขึ้นไปสาม (3) ชั้นสายลำดับ และลำดับชั้นของผู้สืบสันดานของสุขวิช รังสิตพล และคู่สมรส นับถัดลงมาสาม (3) ชั้นสายลำดับ
#* คำว่า "ตีความอย่างกว้าง" ให้หมายความรวมถึงการแก้ไขบทความในเรื่องใด ๆ ก็ตามเพื่อเพิ่มเติมเนื้อหาที่เกี่ยวกับบุคคลในตระกูลรังสิตพล หรือเนื้อหาที่เกี่ยวข้องกับผลงานของบุคคลในตระกูลรังสิตพล ซึ่งรวมถึง (แต่ไม่จำกัดเพียง) การปฏิรูปการศึกษา กระเทย มหาวิทยาลัยราชภัฏ พรรคประชาธิปัตย์ หรือบทความใด ๆ ที่บุคคลในตระกูลรังสิตพลมีส่วนเกี่ยวข้อง
#* กรณีที่มีเนื้อหาของบุคคลในตระกูลรังสิตพลอยู่ในหน้าใด ให้'''นำออก'''หรือ'''ลบหน้า'''ดังกล่าวทิ้ง (ทั้งนี้ ไม่จำเป็นต้องใช้กระบวนการ Revision Delete เพื่อนำเนื้อหาดังกล่าวออกจากประวัติเดิมของหน้า)
# '''อนุญาต'''ให้มีเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลได้เฉพาะกรณีที่เป็นข้อเท็จจริงที่ไม่อาจโต้แย้งเป็นอย่างอื่นได้ และมีเอกสารราชการรองรับ เช่น การดำรงตำแหน่งในคณะรัฐมนตรีหรือหน่วยงานราชการ การลงสมัครผู้ว่ากรุงเทพมหานคร ทั้งนี้ จะต้องไม่เป็นการกล่าวถึงผลงานของบุคคลดังกล่าว
# '''อนุญาต'''ให้ใช้กลไกของระบบมีเดียวิกิ เช่น Abuse Filter, Title Blacklist หรือกลไกอื่นใดเพื่อดำเนินการตามมาตรการดังกล่าวได้ และ'''อนุญาต'''ให้ผู้ดูแลระบบดำเนินมาตรการตามที่เห็นสมควรกับผู้ใช้ที่พยายามกระทำการหลีกเลี่ยงการบังคับใช้มาตรการนี้ รวมถึงการบล็อกผู้ใช้หรือไอพีหากจำเป็นได้
# มาตรการนี้มีผลบังคับใช้เมื่อชุมชนวิกิมีเดียประเทศไทยให้ความเห็นชอบ และให้บังคับใช้โดย'''ไม่มีกำหนดระยะเวลา''' (indefinite) จนกว่าชุมชนจะได้ทบทวนมาตรการดังกล่าวในภายหลัง โดยคำนึงถึงภัยคุกคามที่อาจเกิดขึ้นในการมีบทความของบุคคลในตระกูลรังสิตพลในขณะนั้น ทั้งนี้ ให้มีการทบทวนนโยบายดังกล่าวอย่างน้อยหนึ่งครั้งทุก ๆ ระยะเวลาห้า (5) ปีที่เริ่มบังคับใช้มาตรการ หรือต่ออายุมาตรการครั้งหลังสุด
เพื่อการนี้ ขอให้ผู้ดูแลระบบหรือผู้ใช้ดำเนินการตามความเหมาะสมเพื่อนำออก และ/หรือคงเนื้อหาที่เกี่ยวข้องไว้โดยไม่เป็นการขัดต่อนโยบายนี้ จึงเรียนมาเพื่อทราบและดำเนินการต่อไป (ทั้งนี้ เนื่องจากเสร็จสิ้นการอภิปรายแล้ว สามารถนำประกาศในเรื่องนี้ออกได้) --[[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 15:26, 15 มีนาคม 2567 (+07)
== แจ้งลบประวัติหน้า ==
ขอให้ผู้ดูแลระบบลบประวัติหน้ารุ่นการแก้ไขนี้ [[Special:Permalink/2765044]] เนื่องจากมีการเปิดเผยสารสนเทศส่วนบุคคลครับ [[User:Ekminarin|Rin]] <sup>[ [[User talk:Ekminarin|T]] · [[Special:Contributions/Ekminarin|C]] ]</sup> 12:28, 11 มีนาคม 2568 (+07)
:ซ่อนประวัติหน้าแล้ว--[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 16:39, 12 มีนาคม 2568 (+07)
== WikiLove extension ==
ที่วิกิพีเดียภาษาไทยเริ่มใช้งานแล้วตั้งแต่ 7 สิงหาคม พ.ศ. 2568 หากท่านสนใจโปรดดำเนินการตามวิกิพีเดียภาษาไทยที่เป็นตัวอย่างให้แล้วได้เลย --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 00:57, 8 สิงหาคม 2568 (+07)
== temporary account ==
FYI. https://wikimedia.eventyay.com/talk/wikimania2025/talk/KFEFVG/ บัญชีชั่วคราวกำลังจะมาในระยะเวลาอันสั้น (1-3 เดือน ข้างหน้านี้) ทำให้ผู้ใช้ไม่ลงทะเบียนที่เป็นไอพีเปลี่ยนแปลงไป --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 22:18, 9 สิงหาคม 2568 (+07)
:: รวมกันไปอภิปรายที่เดียวก็ได้ครับ [[:w:th:วิกิพีเดีย:สภากาแฟ/อภิปราย/temporary accounts announcement]] --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 08:53, 30 สิงหาคม 2568 (+07)
== ขอสิทธิ์แก้ไข ==
สวัสดีครับ ตอนนี้ผมเขียนเพิ่มเนื้อหาของพจนานุกรมในส่วนที่เป็นภาษาญี่ปุ่น เนื่องจากผมเป็นผู้ใช้ใหม่ อีกทั้งยังติดตัวกรองสแปมของทางวิกิ ก็เลยยังไม่สามารถเขียนได้ในทั้งส่วนของคำนิยามเองก็ดี หรือแม่แบบที่เกี่ยวข้องกับภาษาญี่ปุ่นที่ไม่ค่อยครบก็ดี จงเรียนมาเพื่อโปรดพิจารณาให้ปลดแบนผมด้วย --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 18:39, 16 มิถุนายน 2569 (+07)
:เรื่องนี้มีอยู่สองประเด็น ประเด็นแรก คุณเป็นผู้ใช้ใหม่ยังไม่คุ้นเคยกับระบบวิกิ เพื่อป้องกันความเสียหายที่จะเกิดขึ้นจากการเขียนเล่น การก่อกวน หรือการทำให้เสียหายในวงกว้าง เราจึงไม่ให้ผู้ใช้ใหม่แก้ไขในส่วนที่เป็นโค้ดระดับกลางถึงสูง ซึ่งแม่แบบก็เป็นหนึ่งในนั้น ประเด็นที่สอง รูปแบบการเขียนของเนื้อหาที่คุณใส่เข้ามา มันน่าจะผิดปกติมากจน global filter ทำงาน ซึ่ง global filter ทำงานอยู่บนทุก ๆ วิกิ ดังนั้นไม่ว่าเขียนที่ไหนก็ขึ้นเนื้อหาไม่ได้ สิ่งที่คุณทำได้คือศึกษารูปแบบและวิธีการเขียนที่ถูกต้อง โดยดูตัวอย่างจากรายการคำอื่น ๆ ที่มีอยู่แล้ว แก้ไขนิยามในรายการที่ยังขาดหรือผิดอยู่ได้ เมื่อแก้ไขถึงระยะหนึ่ง คุณจะพ้นจากสถานะผู้ใช้ใหม่เอง ส่วนแม่แบบหรือโค้ดอื่น ๆ ที่ยังไม่มี เราจะไปคัดลอกมาแล้วดัดแปลงให้เข้ากับโครงการภาษาไทย (การคัดลอกเพียงอย่างเดียวอาจให้ผลลัพธ์ไม่ถูกต้อง) อนึ่งเราไม่ได้แบน เพราะถ้าแบน คุณคงจะคุยกับเราที่นี่ไม่ได้ครับ --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 21:41, 16 มิถุนายน 2569 (+07)
::รับทราบและขอบคุณสำหรับคำแนะนำครับ --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 6:33, 17 มิถุนายน 2569 (+07)
== [[คุยเรื่องภาคผนวก:รายชื่อคำในภาษาไทยที่มักเขียนผิด]] ==
ผมผ่านมาเห็นอีกทีก็ย้ายมาสองโครงการแล้ว อยากขอความคิดเห็นด้วยครับ เพราะเป็นหน้าที่ใช้ประโยชน์ได้มาก แต่หากอยู่กระจัดกระจายและขาดการเชื่อมโยงก็จะไม่ได้ใช้งานให้คุ้มค่าที่รวบรวมมาครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
=== add new section & reply ไม่ทำงาน ===
:: ป.ล. ผมไม่สามารถกดเพิ่มหัวข้อใหม่ (add a topic) ณ ที่นี้ได้ ต้องกดแก้ไขจากหัวข้อล่างสุด หากทราบวิธีการแก้ไขโปรดแนะนำด้วย
:: --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
::: ผมก็กดไม่ได้เหมือนกันครับ สคริปต์เป็นของสกินวิกิมีเดียที่เพิ่มเข้ามา แต่อาจจะใช้กับหน้าอื่นนอกจาก talk page ไม่ได้ ไม่มีที่ไหนจะแก้ไขได้ ก็ไม่ทราบเหมือนกัน 😅 --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 09:56, 5 กันยายน 2569 (+07)
:::: กลัวว่าเราจะช่วนกันรักษาเว็บเอาไว้ไม่อยู่นะครับถ้าแก้ไขปัญหาทางเทคนิคกันเองได้ล่าช้า / เดี๋ยวผมลองถามต่างประเทศให้นะครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:51, 6 กันยายน 2569 (+07)
::::: สอบถาม/แจ้งขอความช่วยเหลือให้แล้วครับ +ปุ่ม reply ก็ไม่ทำงานด้วยนะครับ TT --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 15:07, 6 กันยายน 2569 (+07)
:::: เราก็ไม่รู้มาก่อนนะครับว่ามันใช้บนหน้านี้ไม่ได้ หรือว่ามันเพิ่งจะเป็นก็ไม่ทราบ เพราะว่าก็ไม่มีใครติดต่อเลย แต่สำหรับ talk page อื่น ๆ น่ะใช้งานได้ --[[พิเศษ:เรื่องที่เขียน/~2026-48312-26|~2026-48312-26]] ([[คุยกับผู้ใช้:~2026-48312-26|คุย]]) 22:23, 6 กันยายน 2569 (+07)
:::::ดูที่ [[:w:en:user talk:Chlod]] นะครับ (ในหน้า edit source ตำแหน่ง cursor ไม่ตรงกับข้อความที่พิมพ์ด้วย ไม่ทราบว่าพอมีแนวทางแก้ไขไหมครับ) --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 16:05, 9 กันยายน 2569 (+07)
::::::ไม่ตรงแบบไหนครับ เดาว่าอันนั้นน่าจะเป็นพฤติกรรมของเบราว์เซอร์นะครับ แต่เท่าที่เรารู้คือ ภาษาไทยไม่มีฟอนต์แบบ monospaced เวลาแก้ไขซอร์ซ เคอร์เซอร์มันขยับไปเกินกว่าปกติถ้ามีภาษาไทย เพราะมันนับอักขระบนล่างของไทยด้วยเป็น 1 space ดังนั้นยิ่งพิมพ์มันจะห่างไปเรื่อย ๆ ถ้าคลิกลงไปตามที่ตาเห็นมันก็จะไม่ตรง เมื่อก่อนก็เจอปัญหานี้ตอนแก้มอดูล จนผมต้องปิด syntax highlighter แล้วคีย์แต่ตัวเปล่า ๆ แต่หลังจากอัปเดตเป็นเวอร์ชั่นใหม่แล้ว (มีปุ่ม Syntax ขึ้นมาแทน) ปัญหานี้หายไปสำหรับผม คุณอาจจะยังเจออยู่กับเบราว์เซอร์อื่นหรือเปล่า [[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 9 กันยายน 2569 (+07)
== ESEAP monthly call & survey for extended right users ==
วันนี้ผมได้เห็นผลการสำรวจ admin วิกิพีเดียและโครงการพี่น้องจากทั่วทั้งภูมิภาค ESEAP ใน [[:m:Event:ESEAP_Community_Call_61_(6_September_2026)]] ปรากฎว่าไม่มีผลการสำรวจจากประเทศไทยเลย ผลการสำรวจได้ข้อสรุปว่าจะจัดให้มี online conference call เพื่อเชื่อมโยงกันและปรึกษาหารือกันในปลายเดือนนี้ ผมคิดว่าเป็นโอกาสอันดียิ่งที่จะได้แลกเปลี่ยนเรียนรู้ปัญหากับ admin ท่านอื่นในโครงการพี่น้องภาษาอื่นนะครับ อยากเชิญชวนเข้าไปฟังกัน ติดต่อผ่านผู้ประสานได้ที่ [[:m:User:IKristiani-WMF]] คนที่ไม่ใช่ admin ถ้าคิดว่าเป็นประโยชน์ก็เข้าฟังได้ --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:46, 6 กันยายน 2569 (+07)
h9oykbdux2hcweuedh55cpm2x6s5na1
5760004
5760003
2026-09-09T10:17:21Z
Octahedron80
267
/* add new section & reply ไม่ทำงาน */
5760004
wikitext
text/x-wiki
{{/ส่วนหัว}}
== คำขอแก้ไข ==
ผมสร้างคำขอใหม่ที่[[คุยเรื่องมอดูล:mul-letter]] แต่ติดตัวกรองผู้ใช้ใหม่ โปรดพิจารณาด้วยครับขอบคุณครับ --[[ผู้ใช้:Patsagorn Y.|Patsagorn Y.]] ([[คุยกับผู้ใช้:Patsagorn Y.|คุย]]) 12:06, 2 กันยายน 2563 (+07)
== deprecated global wg varibles on HotCat ==
เนื่องจากมีเดียวิกิได้มี[[phab:T72470|การอัพเดตซอฟต์แวร์]]ทำให้การแปลภาษาไทยของ HotCat ในหน้า [[มีเดียวิกิ:Gadget-HotCat.js/local_defaults]] ใช้การไม่ได้ ซึ่งมีกระทบทำให้อุปกรณ์เสริมนี้ใช้ไม่ได้ มีวิธีแก้ไขโดยใส่
<pre>var wgArticleId = mw.config.get('wgArticleId');</pre>
เข้าไประหว่างบรรทัดที่ 47 - 48
สามารถดูการแก้ไขที่แก้ไขแล้วประกอบที่ [[w:Special:Diff/9337615]] ด้วยครับ --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 13:35, 29 เมษายน 2564 (+07)
:{{done}} ทำแล้ว ไม่รู้ดีขึ้นหรือเปล่า --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:53, 30 เมษายน 2564 (+07)
:: เท่าที่ดูก็ดีขึ้นแล้วนะครับ กลับมาใช้งานได้แล้ว --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 21:08, 30 เมษายน 2564 (+07)
== แก้ไขตอนลบไม่แสดงจำนวนหน้าย่อย (ต้องใช้สิทธิ์ IA) ==
เนื่องจากเวลาจะลบหน้าแล้วระบบไม่แสดงจำนวนหน้าย่อย เนื่องจากความผิดพลาดในโค้ดอินเตอร์เฟซ จึงมาแจ้งเพื่อให้ปรับปรุงโค้ดในหน้า [[มีเดียวิกิ:Deleting-subpages-warning]] ดังนี้
<source lang=diff>
- <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $ หน้า|51=มากกว่า 50 หน้า}}]]
+ <strong>คำเตือน:</strong> หน้าที่คุณกำลังจะลบมี[[Special:PrefixIndex/{{FULLPAGENAME}}/|{{PLURAL:$1|หน้าย่อย $1 หน้า|51=มากกว่า 50 หน้า}}]]
</source>
ขอบคุณครับ (และขอขอบคุณ [[ผู้ใช้:นคเรศ]] ที่ช่วยหาหน้าอินเตอร์เฟซให้ครับ) --[[ผู้ใช้:Bebiezaza|Bebiezaza]] ([[คุยกับผู้ใช้:Bebiezaza|คุย]]) 03:34, 13 พฤษภาคม 2564 (+07)
::{{done}} --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 04:36, 13 พฤษภาคม 2564 (+07)
== ติดตามกลุ่มหุ่นเชิด ==
อยากให้ผู้ดูแลระบบวิกิพจนานุกรมทุกท่านช่วยติดตามกลุ่มหุ่นเชิด [[w:วิกิพีเดีย:การก่อกวนต่อเนื่องยาวนาน/Phanuruch8555|Ph8555]] เนื่องจากมีการก่อกวนข้ามโครงการ มีการสร้างหน้านโยบายที่ไม่ผ่านความคิดเห็นของชุมชน [[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 21:18, 13 พฤษภาคม 2566 (+07)
== บล็อก ==
รบกวนผู้ดูแลระบบพิจารณาบล็อก [[ผู้ใช้:อีหน้าห*]] เนื่องจากเป็นหุ่นเชิดของ ph8555 และมีพฤติกรรมไม่เหมาะสม และบล็อกช่วงไอพี 2001:FB1:154:0:0:0:0:0/46 ซึ่งเป็นช่วงไอพีหลักที่ผู้ก่อกวนใช้ --[[ผู้ใช้:Kaoavi|Kaoavi]] ([[คุยกับผู้ใช้:Kaoavi|คุย]]) 14:24, 17 พฤษภาคม 2566 (+07)
::{{done}} เฉพาะผู้ใช้ดังกล่าว --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 18 มิถุนายน 2566 (+07)
:::{{ping|Octahedron80}} บัญชีถูก [[Special:CentralAuth/อีหน้าห*|globally locked]] แล้วครับ
== Report concerning 2403:6200:8850:2402:89C1:8EB3:2BB7:20C0 ==
* [[Special:Contribs/2403:6200:8850:2402:89C1:8EB3:2BB7:20C0]]
* Removing content from pages. Sorry for not knowing your language.
[[ผู้ใช้:Yahya|Yahya]] ([[คุยกับผู้ใช้:Yahya|คุย]]) 00:54, 12 กรกฎาคม 2566 (+07)
== translatewiki.net ==
{{ping|Octahedron80|Ponpan|B20180|Alifshinobi|NNNEIFU}}
ขอเชิญชวน[[:w:วิกิพีเดีย:สภากาแฟ/อภิปราย/translatewiki.net|ร่วมกันแปล]] translatewiki.net คิดว่าในบรรดาโครงการพี่น้อง ที่วิกิพจนานุกรมจะมีความสำคัญในการดำเนินการส่วนนี้มากที่สุดครับ [[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 07:36, 20 มกราคม 2567 (+07)
== Report concerning 49.237.38.62 ==
*[[Special:Contribs/49.237.38.62]] - Reason: Vandalism.
[[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
: {{ping|Octahedron80}} [[ผู้ใช้:Hide on Rosé|Hide on Rosé]] ([[คุยกับผู้ใช้:Hide on Rosé|คุย]]) 20:12, 8 กุมภาพันธ์ 2567 (+07)
Sorry for not online. A global-op already took it down. --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 20:46, 8 กุมภาพันธ์ 2567 (+07)
== เพิ่มข้อความในประกาศ ==
ขอให้ผู้ดูแลพิจารณาเพิ่มข้อความต่อไปนี้ในแม่แบบประกาศด้วยครับ
<code>* 17 ก.พ. - [[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|อภิปราย]]มาตรการห้ามเขียนบทความตระกูลรังสิตพลในโครงการวิกิมีเดียภาษาไทย</code> [[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 20:06, 17 กุมภาพันธ์ 2567 (+07)
==บังคับใช้มาตรการห้ามเขียนเนื้อหาของตระกูลรังสิตพล==
ตามที่ประชาคมวิกิมีเดียประเทศไทยได้ออกเสียงรับรองมาตรการ[[:m:Wikimedia Thailand/Rangsitpol Family Topic Ban|ห้ามเขียนเนื้อหาของตระกูลรังสิตพล]] จึงขอแจ้งให้ผู้ดูแลระบบทราบถึงมาตรการดังกล่าว ดังต่อไปนี้
# '''ห้ามมิให้'''ผู้ใช้ (ไม่ว่าจะเป็นผู้ใช้ลงทะเบียนหรือไม่ก็ตาม) '''เพิ่มเติมเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลและบุคคลในตระกูลเป็นจำนวนเจ็ด (7) ชั้นสายลำดับ''' ทั้งนี้ ให้ตีความอย่างกว้าง ในโครงการที่อยู่ในความดูแลของชุมชนวิกิมีเดียประเทศไทยทุกโครงการ (กล่าวคือ โครงการที่มีโดเมน <code>th.wik*</code> ทั้งหมด และโครงการใน Wikimedia Incubator ที่ใช้ภาษาไทย) ยกเว้นกรณีจะเป็นไปตามข้อยกเว้นที่กำหนด
#* คำว่า "เจ็ดชั้นสายลำดับ" ให้นับสุขวิช รังสิตพล และคู่สมรสเป็นชั้นลำดับที่ 0 และให้หมายถึงลำดับชั้นสุขวิช รังสิตพล และคู่สมรส ลำดับชั้นของบรรพบุรุษของสุขวิช รังสิตพล นับขึ้นไปสาม (3) ชั้นสายลำดับ และลำดับชั้นของผู้สืบสันดานของสุขวิช รังสิตพล และคู่สมรส นับถัดลงมาสาม (3) ชั้นสายลำดับ
#* คำว่า "ตีความอย่างกว้าง" ให้หมายความรวมถึงการแก้ไขบทความในเรื่องใด ๆ ก็ตามเพื่อเพิ่มเติมเนื้อหาที่เกี่ยวกับบุคคลในตระกูลรังสิตพล หรือเนื้อหาที่เกี่ยวข้องกับผลงานของบุคคลในตระกูลรังสิตพล ซึ่งรวมถึง (แต่ไม่จำกัดเพียง) การปฏิรูปการศึกษา กระเทย มหาวิทยาลัยราชภัฏ พรรคประชาธิปัตย์ หรือบทความใด ๆ ที่บุคคลในตระกูลรังสิตพลมีส่วนเกี่ยวข้อง
#* กรณีที่มีเนื้อหาของบุคคลในตระกูลรังสิตพลอยู่ในหน้าใด ให้'''นำออก'''หรือ'''ลบหน้า'''ดังกล่าวทิ้ง (ทั้งนี้ ไม่จำเป็นต้องใช้กระบวนการ Revision Delete เพื่อนำเนื้อหาดังกล่าวออกจากประวัติเดิมของหน้า)
# '''อนุญาต'''ให้มีเนื้อหาที่เกี่ยวข้องกับตระกูลรังสิตพลได้เฉพาะกรณีที่เป็นข้อเท็จจริงที่ไม่อาจโต้แย้งเป็นอย่างอื่นได้ และมีเอกสารราชการรองรับ เช่น การดำรงตำแหน่งในคณะรัฐมนตรีหรือหน่วยงานราชการ การลงสมัครผู้ว่ากรุงเทพมหานคร ทั้งนี้ จะต้องไม่เป็นการกล่าวถึงผลงานของบุคคลดังกล่าว
# '''อนุญาต'''ให้ใช้กลไกของระบบมีเดียวิกิ เช่น Abuse Filter, Title Blacklist หรือกลไกอื่นใดเพื่อดำเนินการตามมาตรการดังกล่าวได้ และ'''อนุญาต'''ให้ผู้ดูแลระบบดำเนินมาตรการตามที่เห็นสมควรกับผู้ใช้ที่พยายามกระทำการหลีกเลี่ยงการบังคับใช้มาตรการนี้ รวมถึงการบล็อกผู้ใช้หรือไอพีหากจำเป็นได้
# มาตรการนี้มีผลบังคับใช้เมื่อชุมชนวิกิมีเดียประเทศไทยให้ความเห็นชอบ และให้บังคับใช้โดย'''ไม่มีกำหนดระยะเวลา''' (indefinite) จนกว่าชุมชนจะได้ทบทวนมาตรการดังกล่าวในภายหลัง โดยคำนึงถึงภัยคุกคามที่อาจเกิดขึ้นในการมีบทความของบุคคลในตระกูลรังสิตพลในขณะนั้น ทั้งนี้ ให้มีการทบทวนนโยบายดังกล่าวอย่างน้อยหนึ่งครั้งทุก ๆ ระยะเวลาห้า (5) ปีที่เริ่มบังคับใช้มาตรการ หรือต่ออายุมาตรการครั้งหลังสุด
เพื่อการนี้ ขอให้ผู้ดูแลระบบหรือผู้ใช้ดำเนินการตามความเหมาะสมเพื่อนำออก และ/หรือคงเนื้อหาที่เกี่ยวข้องไว้โดยไม่เป็นการขัดต่อนโยบายนี้ จึงเรียนมาเพื่อทราบและดำเนินการต่อไป (ทั้งนี้ เนื่องจากเสร็จสิ้นการอภิปรายแล้ว สามารถนำประกาศในเรื่องนี้ออกได้) --[[ผู้ใช้:Harley Hartwell|Harley Hartwell]] ([[คุยกับผู้ใช้:Harley Hartwell|คุย]]) 15:26, 15 มีนาคม 2567 (+07)
== แจ้งลบประวัติหน้า ==
ขอให้ผู้ดูแลระบบลบประวัติหน้ารุ่นการแก้ไขนี้ [[Special:Permalink/2765044]] เนื่องจากมีการเปิดเผยสารสนเทศส่วนบุคคลครับ [[User:Ekminarin|Rin]] <sup>[ [[User talk:Ekminarin|T]] · [[Special:Contributions/Ekminarin|C]] ]</sup> 12:28, 11 มีนาคม 2568 (+07)
:ซ่อนประวัติหน้าแล้ว--[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 16:39, 12 มีนาคม 2568 (+07)
== WikiLove extension ==
ที่วิกิพีเดียภาษาไทยเริ่มใช้งานแล้วตั้งแต่ 7 สิงหาคม พ.ศ. 2568 หากท่านสนใจโปรดดำเนินการตามวิกิพีเดียภาษาไทยที่เป็นตัวอย่างให้แล้วได้เลย --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 00:57, 8 สิงหาคม 2568 (+07)
== temporary account ==
FYI. https://wikimedia.eventyay.com/talk/wikimania2025/talk/KFEFVG/ บัญชีชั่วคราวกำลังจะมาในระยะเวลาอันสั้น (1-3 เดือน ข้างหน้านี้) ทำให้ผู้ใช้ไม่ลงทะเบียนที่เป็นไอพีเปลี่ยนแปลงไป --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 22:18, 9 สิงหาคม 2568 (+07)
:: รวมกันไปอภิปรายที่เดียวก็ได้ครับ [[:w:th:วิกิพีเดีย:สภากาแฟ/อภิปราย/temporary accounts announcement]] --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 08:53, 30 สิงหาคม 2568 (+07)
== ขอสิทธิ์แก้ไข ==
สวัสดีครับ ตอนนี้ผมเขียนเพิ่มเนื้อหาของพจนานุกรมในส่วนที่เป็นภาษาญี่ปุ่น เนื่องจากผมเป็นผู้ใช้ใหม่ อีกทั้งยังติดตัวกรองสแปมของทางวิกิ ก็เลยยังไม่สามารถเขียนได้ในทั้งส่วนของคำนิยามเองก็ดี หรือแม่แบบที่เกี่ยวข้องกับภาษาญี่ปุ่นที่ไม่ค่อยครบก็ดี จงเรียนมาเพื่อโปรดพิจารณาให้ปลดแบนผมด้วย --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 18:39, 16 มิถุนายน 2569 (+07)
:เรื่องนี้มีอยู่สองประเด็น ประเด็นแรก คุณเป็นผู้ใช้ใหม่ยังไม่คุ้นเคยกับระบบวิกิ เพื่อป้องกันความเสียหายที่จะเกิดขึ้นจากการเขียนเล่น การก่อกวน หรือการทำให้เสียหายในวงกว้าง เราจึงไม่ให้ผู้ใช้ใหม่แก้ไขในส่วนที่เป็นโค้ดระดับกลางถึงสูง ซึ่งแม่แบบก็เป็นหนึ่งในนั้น ประเด็นที่สอง รูปแบบการเขียนของเนื้อหาที่คุณใส่เข้ามา มันน่าจะผิดปกติมากจน global filter ทำงาน ซึ่ง global filter ทำงานอยู่บนทุก ๆ วิกิ ดังนั้นไม่ว่าเขียนที่ไหนก็ขึ้นเนื้อหาไม่ได้ สิ่งที่คุณทำได้คือศึกษารูปแบบและวิธีการเขียนที่ถูกต้อง โดยดูตัวอย่างจากรายการคำอื่น ๆ ที่มีอยู่แล้ว แก้ไขนิยามในรายการที่ยังขาดหรือผิดอยู่ได้ เมื่อแก้ไขถึงระยะหนึ่ง คุณจะพ้นจากสถานะผู้ใช้ใหม่เอง ส่วนแม่แบบหรือโค้ดอื่น ๆ ที่ยังไม่มี เราจะไปคัดลอกมาแล้วดัดแปลงให้เข้ากับโครงการภาษาไทย (การคัดลอกเพียงอย่างเดียวอาจให้ผลลัพธ์ไม่ถูกต้อง) อนึ่งเราไม่ได้แบน เพราะถ้าแบน คุณคงจะคุยกับเราที่นี่ไม่ได้ครับ --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 21:41, 16 มิถุนายน 2569 (+07)
::รับทราบและขอบคุณสำหรับคำแนะนำครับ --[[ผู้ใช้:Poompak|Poompak]] ([[คุยกับผู้ใช้:Poompak|คุย]]) 6:33, 17 มิถุนายน 2569 (+07)
== [[คุยเรื่องภาคผนวก:รายชื่อคำในภาษาไทยที่มักเขียนผิด]] ==
ผมผ่านมาเห็นอีกทีก็ย้ายมาสองโครงการแล้ว อยากขอความคิดเห็นด้วยครับ เพราะเป็นหน้าที่ใช้ประโยชน์ได้มาก แต่หากอยู่กระจัดกระจายและขาดการเชื่อมโยงก็จะไม่ได้ใช้งานให้คุ้มค่าที่รวบรวมมาครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
=== add new section & reply ไม่ทำงาน ===
:: ป.ล. ผมไม่สามารถกดเพิ่มหัวข้อใหม่ (add a topic) ณ ที่นี้ได้ ต้องกดแก้ไขจากหัวข้อล่างสุด หากทราบวิธีการแก้ไขโปรดแนะนำด้วย
:: --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 06:36, 5 กันยายน 2569 (+07)
::: ผมก็กดไม่ได้เหมือนกันครับ สคริปต์เป็นของสกินวิกิมีเดียที่เพิ่มเข้ามา แต่อาจจะใช้กับหน้าอื่นนอกจาก talk page ไม่ได้ ไม่มีที่ไหนจะแก้ไขได้ ก็ไม่ทราบเหมือนกัน 😅 --[[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 09:56, 5 กันยายน 2569 (+07)
:::: กลัวว่าเราจะช่วนกันรักษาเว็บเอาไว้ไม่อยู่นะครับถ้าแก้ไขปัญหาทางเทคนิคกันเองได้ล่าช้า / เดี๋ยวผมลองถามต่างประเทศให้นะครับ --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:51, 6 กันยายน 2569 (+07)
::::: สอบถาม/แจ้งขอความช่วยเหลือให้แล้วครับ +ปุ่ม reply ก็ไม่ทำงานด้วยนะครับ TT --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 15:07, 6 กันยายน 2569 (+07)
:::: เราก็ไม่รู้มาก่อนนะครับว่ามันใช้บนหน้านี้ไม่ได้ หรือว่ามันเพิ่งจะเป็นก็ไม่ทราบ เพราะว่าก็ไม่มีใครติดต่อเลย แต่สำหรับ talk page อื่น ๆ น่ะใช้งานได้ --[[พิเศษ:เรื่องที่เขียน/~2026-48312-26|~2026-48312-26]] ([[คุยกับผู้ใช้:~2026-48312-26|คุย]]) 22:23, 6 กันยายน 2569 (+07)
:::::ดูที่ [[:w:en:user talk:Chlod]] นะครับ (ในหน้า edit source ตำแหน่ง cursor ไม่ตรงกับข้อความที่พิมพ์ด้วย ไม่ทราบว่าพอมีแนวทางแก้ไขไหมครับ) --[[ผู้ใช้:Taweetham|taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 16:05, 9 กันยายน 2569 (+07)
::::::ไม่ตรงแบบไหนครับ เดาว่าอันนั้นน่าจะเป็นพฤติกรรมของเบราว์เซอร์นะครับ แต่เท่าที่เรารู้คือ ภาษาไทยไม่มีฟอนต์แบบ monospaced เวลาแก้ไขซอร์ซ เคอร์เซอร์มันขยับไปเกินกว่าปกติถ้ามีภาษาไทย เพราะมันนับอักขระบนล่างของไทยด้วยเป็น 1 space ดังนั้นยิ่งพิมพ์มันจะห่างไปเรื่อย ๆ ถ้าคลิกลงไปตามที่ตาเห็นมันก็จะไม่ตรง เมื่อก่อนก็เจอปัญหานี้ตอนแก้มอดูล จนผมต้องปิด syntax highlighter แล้วคีย์แต่ตัวเปล่า ๆ แต่หลังจากอัปเดตเป็นเวอร์ชั่นใหม่แล้ว (มีปุ่ม Syntax ขึ้นมาแทน) ปัญหานี้ก็หายไปเลยสำหรับผม คุณอาจจะยังเจออยู่กับเบราว์เซอร์อื่นหรือเปล่า [[ผู้ใช้:Octahedron80|Octahedron80]] ([[คุยกับผู้ใช้:Octahedron80|คุย]]) 17:08, 9 กันยายน 2569 (+07)
== ESEAP monthly call & survey for extended right users ==
วันนี้ผมได้เห็นผลการสำรวจ admin วิกิพีเดียและโครงการพี่น้องจากทั่วทั้งภูมิภาค ESEAP ใน [[:m:Event:ESEAP_Community_Call_61_(6_September_2026)]] ปรากฎว่าไม่มีผลการสำรวจจากประเทศไทยเลย ผลการสำรวจได้ข้อสรุปว่าจะจัดให้มี online conference call เพื่อเชื่อมโยงกันและปรึกษาหารือกันในปลายเดือนนี้ ผมคิดว่าเป็นโอกาสอันดียิ่งที่จะได้แลกเปลี่ยนเรียนรู้ปัญหากับ admin ท่านอื่นในโครงการพี่น้องภาษาอื่นนะครับ อยากเชิญชวนเข้าไปฟังกัน ติดต่อผ่านผู้ประสานได้ที่ [[:m:User:IKristiani-WMF]] คนที่ไม่ใช่ admin ถ้าคิดว่าเป็นประโยชน์ก็เข้าฟังได้ --[[ผู้ใช้:Taweetham|Taweethaも]] ([[คุยกับผู้ใช้:Taweetham|คุย]]) 14:46, 6 กันยายน 2569 (+07)
e5dehwnmmn7hfgs7kt22qbralvh78ro
มอดูล:etymology languages/code to canonical name
828
324685
5759999
5753871
2026-09-09T10:00:42Z
Octahedron80
267
5759999
Scribunto
text/plain
return {
["aae"] = "Arbëresh Albanian",
["aat"] = "Arvanitika Albanian",
["abr"] = "Abron",
["acm-khu"] = "Khuzestani Arabic",
["act"] = "Achterhoeks",
["adx"] = "Amdo Tibetan",
["ae-old"] = "อเวสตะเก่า",
["ae-yng"] = "Younger Avestan",
["ain-hok"] = "ไอนุแบบฮกไกโด",
["ain-kur"] = "ไอนุแบบคูริล",
["ain-sak"] = "ไอนุแบบซาฮาลิน",
["akk-lbb"] = "บาบิโลเนียช่วงปลาย",
["akk-mas"] = "อัสซีเรียกลาง",
["akk-mbb"] = "บาบิโลเนียกลาง",
["akk-nas"] = "อัสซีเรียใหม่",
["akk-nbb"] = "บาบิโลเนียใหม่",
["akk-oas"] = "อัสซีเรียเก่า",
["akk-obb"] = "บาบิโลเนียเก่า",
["akk-old"] = "แอกแคดเก่า",
["akk-stb"] = "บาบิโลเนียมาตรฐาน",
["aln"] = "Gheg Albanian",
["als"] = "Tosk Albanian",
["alv-kro"] = "Kromanti",
["ang-ang"] = "อังกฤษเก่าแบบแองเกิล",
["ang-ken"] = "Kentish Old English",
["ang-mer"] = "อังกฤษเก่าแบบเมอร์เซีย",
["ang-nor"] = "อังกฤษเก่าแบบนอร์ทัมเบรีย",
["ang-wsx"] = "อังกฤษเก่าแบบแซกซันตะวันตก",
["apc-ale"] = "Aleppine North Levantine Arabic",
["apc-dam"] = "Damascene North Levantine Arabic",
["apc-leb"] = "Lebanese North Levantine Arabic",
["apc-nle"] = "North Lebanese North Levantine Arabic",
["apc-sle"] = "South Lebanese North Levantine Arabic",
["apc-syr"] = "Syrian North Levantine Arabic",
["arc-bib"] = "อารามายาไบเบิล",
["arc-cpa"] = "อารามายาแบบคริสต์ปาเลสไตน์",
["arc-hat"] = "อารามายาแบบฮัตรา",
["arc-imp"] = "อารามายาจักรวรรดิ",
["arc-jla"] = "Jewish Literary Aramaic",
["arc-nab"] = "อารามายาแบบแนบาเทีย",
["arc-old"] = "อารามายาเก่า",
["arc-pal"] = "อารามายาแบบแพลไมรา",
["as-bkm"] = "Barpetia Kamrupi Assamese",
["as-nkm"] = "Nalbaria Kamrupi Assamese",
["as-pkm"] = "Palasbaria Kamrupi Assamese",
["atn"] = "Ashtiani",
["az-cls"] = "อาเซอร์ไบจานคลาสสิก",
["bat-dni"] = "Dnieper Baltic",
["bat-gol"] = "Golyad",
["bat-pro"] = "บอลติกดั้งเดิม",
["bcc"] = "บาโลจใต้",
["bew-kot"] = "Betawi Kota",
["bgn"] = "บาโลจตะวันตก",
["bgp"] = "บาโลจตะวันออก",
["bn-dvn"] = "Dhakaiya Vaṅga Bengali",
["bn-nvn"] = "Noakhailla Vaṅga Bengali",
["bnt-cmn"] = "Common Bantu",
["bra-old"] = "Old Braj",
["bry-ear"] = "บริทอนิกช่วงต้น",
["bry-lat"] = "บริทอนิกช่วงปลาย",
["bsg-ban"] = "Bandari",
["bsg-hor"] = "Hormozi",
["bsg-min"] = "Minabi",
["bsh-kat"] = "Kativiri",
["bsh-mum"] = "Mumviri",
["ca-val"] = "Valencian",
["ckm"] = "Chakavian Serbo-Croatian",
["cls"] = "สันสกฤตคลาสสิก",
["cmn-MY"] = "Malaysian Mandarin",
["cmn-PH"] = "Philippine Mandarin",
["cmn-SG"] = "Singapore Mandarin",
["cmn-TW"] = "Taiwanese Mandarin",
["cmn-bec"] = "Beijingic Mandarin",
["cmn-bei"] = "Beijing Mandarin",
["cmn-cep"] = "Central Plains Mandarin",
["cmn-ear"] = "จีนกลางช่วงต้น",
["cmn-gua"] = "Guanzhong Mandarin",
["cmn-gui"] = "Guilin Mandarin",
["cmn-jhu"] = "Jianghuai Mandarin",
["cmn-lan"] = "Lanyin Mandarin",
["cmn-nan"] = "Nanjing Mandarin",
["cmn-noe"] = "Northeastern Mandarin",
["cmn-palladius"] = "Palladius",
["cmn-pinyin"] = "Hanyu Pinyin",
["cmn-sow"] = "Southwestern Mandarin",
["cmn-tia"] = "Tianjin Mandarin",
["cmn-tongyong"] = "Tongyong Pinyin",
["cmn-wadegiles"] = "Wade–Giles",
["cmn-wuh"] = "Wuhan Mandarin",
["cmn-wvc"] = "Written vernacular Mandarin",
["cmn-xin"] = "Xining Mandarin",
["cmn-yan"] = "Yangzhou Mandarin",
["cop-akh"] = "Akhmimic Coptic",
["cop-boh"] = "Bohairic Coptic",
["cop-fay"] = "Fayyumic Coptic",
["cop-ggg"] = "Coptic Dialect G",
["cop-her"] = "Hermopolitan Coptic",
["cop-jjj"] = "Coptic Dialect J",
["cop-kkk"] = "Coptic Dialect K",
["cop-lyc"] = "Lycopolitan Coptic",
["cop-old"] = "Old Coptic",
["cop-oxy"] = "Oxyrhynchite Coptic",
["cop-ply"] = "Proto-Lycopolitan Coptic",
["cop-ppp"] = "Coptic Dialect P",
["cop-sah"] = "Sahidic Coptic",
["crh-dbj"] = "Dobrujan Tatar",
["crp-cpr-kya"] = "Kyakhta Chinese Pidgin Russian",
["cs-ear"] = "เช็กใหม่ช่วงต้น",
["cu-bgm"] = "บัลแกเรียกลาง",
["cv-ana"] = "Anatri Chuvash",
["cv-mid"] = "Middle Chuvash",
["cv-old"] = "Old Chuvash",
["cv-vir"] = "Viryal Chuvash",
["cy-nor"] = "North Wales Welsh",
["cy-sou"] = "South Wales Welsh",
["de-AT"] = "เยอรมันแบบออสเตรีย",
["de-AT-vie"] = "เยอรมันแบบเวียนนา",
["de-CH"] = "เยอรมันแบบสวิตเซอร์แลนด์",
["de-bal"] = "Baltic German",
["de-ear"] = "Early New High German",
["drt"] = "Drents",
["dv-add"] = "Addu Dhivehi",
["dv-huv"] = "Huvadhu Dhivehi",
["dv-mul"] = "Mulaku Dhivehi",
["dv-old"] = "Old Dhivehi",
["egl-old"] = "Old Emilian",
["egy-lat"] = "อียิปต์ช่วงปลาย",
["egy-mid"] = "อียิปต์กลาง",
["egy-nmi"] = "อียิปต์กลางใหม่",
["egy-old"] = "อียิปต์เก่า",
["el-crt"] = "กรีกแบบครีต",
["el-cyp"] = "กรีกแบบไซปรัส",
["el-kal"] = "Kaliarda",
["el-kth"] = "คาทาเรวูซา",
["el-pap"] = "กรีกแบบพาฟอส",
["elx-ach"] = "Achaemenid Elamite",
["elx-mid"] = "Middle Elamite",
["elx-neo"] = "Neo-Elamite",
["elx-old"] = "Old Elamite",
["en-AU"] = "อังกฤษแบบออสเตรเลีย",
["en-CA"] = "อังกฤษแบบแคนาดา",
["en-GB"] = "อังกฤษแบบบริเตน",
["en-GB-NIR"] = "อังกฤษแบบไอร์แลนด์เหนือ",
["en-GB-SCT"] = "อังกฤษแบบสกอตแลนด์",
["en-GB-WLS"] = "อังกฤษแบบเวลส์",
["en-HK"] = "อังกฤษแบบฮ่องกง",
["en-IE"] = "อังกฤษแบบไอร์แลนด์",
["en-IM"] = "อังกฤษแบบแมงซ์",
["en-IN"] = "อังกฤษแบบอินเดีย",
["en-NNN"] = "อังกฤษแบบอเมริกาเหนือ",
["en-NZ"] = "อังกฤษแบบนิวซีแลนด์",
["en-US"] = "อังกฤษแบบอเมริกา",
["en-US-CA"] = "อังกฤษแบบแคลิฟอร์เนีย",
["en-ZA"] = "อังกฤษแบบเซาท์แอฟริกา",
["en-aae"] = "Australian Aboriginal English",
["en-ear"] = "อังกฤษใหม่ช่วงต้น",
["en-geo"] = "Geordie",
["en-uls"] = "Ulster English",
["enm-emi"] = "East Midland Middle English",
["enm-esc"] = "Early Scots",
["enm-ken"] = "Kentish Middle English",
["enm-nor"] = "Northern Middle English",
["enm-sou"] = "Southern Middle English",
["enm-wmi"] = "West Midland Middle English",
["es-AR"] = "Rioplatense Spanish",
["es-BO"] = "Bolivian Spanish",
["es-CL"] = "Chilean Spanish",
["es-CO"] = "Colombian Spanish",
["es-CU"] = "Cuban Spanish",
["es-MX"] = "Mexican Spanish",
["es-PE"] = "Peruvian Spanish",
["es-PH"] = "Philippine Spanish",
["es-PR"] = "Puerto Rican Spanish",
["es-US"] = "United States Spanish",
["es-VE"] = "Venezuelan Spanish",
["es-ear"] = "Early Modern Spanish",
["es-lun"] = "Lunfardo",
["esi"] = "North Alaskan Inupiatun",
["esk"] = "Northwest Alaskan Inupiatun",
["fa-cls"] = "เปอร์เซียคลาสสิก",
["fa-ear"] = "เปอร์เซียใหม่ช่วงต้น",
["fa-ira"] = "เปอร์เซียแบบอิหร่าน",
["fat"] = "Fante Akan",
["fay-bsh"] = "Bushehri",
["fay-bur"] = "Burenjani",
["fay-dav"] = "Davani",
["fay-dsh"] = "Dashtaki",
["fay-eze"] = "Emamzada Esmaili",
["fay-gav"] = "Gavkoshaki",
["fay-kar"] = "Khargi",
["fay-kho"] = "Khollari",
["fay-kon"] = "Kondazi",
["fay-kzo"] = "Old Kazeruni",
["fay-mas"] = "Masarami",
["fay-pap"] = "Papuni",
["fay-sam"] = "Samghani",
["fay-sho"] = "Old Shirazi",
["fay-shr"] = "Shirazi",
["fay-sor"] = "Sorkhi",
["ffm"] = "Maasina Fulfulde",
["fiu-pro"] = "ฟินโน-ยูกริกดั้งเดิม",
["fr-CA"] = "ฝรั่งเศสแบบแคนาดา",
["fr-CH"] = "ฝรั่งเศสแบบสวิตเซอร์แลนด์",
["fr-aca"] = "ฝรั่งเศสแบบอะคาเดีย",
["fr-lou"] = "Louisiana French",
["fr-mis"] = "Missouri French",
["frc"] = "ฝรั่งเศสแบบเคเจิน",
["frk"] = "แฟรงก์",
["fro-nor"] = "ฝรั่งเศสเหนือเก่า",
["fro-pic"] = "Picard Old French",
["frp-old"] = "Old Franco-Provençal",
["frr-amr"] = "Amrum North Frisian",
["frr-fam"] = "Föhr-Amrum North Frisian",
["frr-foh"] = "Föhr North Frisian",
["frr-goe"] = "Goesharde North Frisian",
["frr-hal"] = "Halligen North Frisian",
["frr-hel"] = "Heligoland North Frisian",
["frr-ins"] = "Insular North Frisian",
["frr-kar"] = "Karrharde North Frisian",
["frr-mai"] = "Mainland North Frisian",
["frr-moo"] = "Mooring North Frisian",
["frr-syl"] = "Sylt North Frisian",
["frr-wie"] = "Wiedingharde North Frisian",
["frs"] = "East Frisian Low German",
["fub"] = "Adamawa Fulfulde",
["fuc"] = "Pulaar",
["fue"] = "Borgu Fulfulde",
["fuf"] = "Pular",
["fuh"] = "Western Niger Fulfulde",
["fui"] = "Bagirmi Fulfulde",
["fuq"] = "Central-Eastern Niger Fulfulde",
["fur-old"] = "Old Friulian",
["fuv"] = "Nigerian Fulfulde",
["gax"] = "Borana",
["gbz"] = "Zoroastrian Dari",
["gem-sue"] = "Suevic",
["gkm"] = "กรีกแบบไบแซนไทน์",
["gmq-osw-lat"] = "Late Old Swedish",
["gmw-afr-pro"] = "Proto-Anglo-Frisian",
["gmw-nsg-pro"] = "Proto-North Sea Germanic",
["gos"] = "Gronings",
["grc-aeo"] = "กรีกแบบอีโอลิส",
["grc-arc"] = "กรีกแบบอาร์เคเดีย",
["grc-arp"] = "กรีกแบบอาร์เคโดไซปรัส",
["grc-att"] = "กรีกแบบเอเธนส์",
["grc-boi"] = "กรีกแบบบีโอเชีย",
["grc-cyp"] = "กรีกโบราณแบบไซปรัส",
["grc-dor"] = "กรีกแบบดอเรียนส์",
["grc-ela"] = "กรีกแบบเอลิส",
["grc-epi"] = "กรีกมหากาพย์",
["grc-ion"] = "กรีกแบบไอโอเนีย",
["grc-koi"] = "กรีกแบบคอยนี",
["grc-kre"] = "กรีกโบราณแบบครีต",
["grc-opl"] = "โอพุนเชียนโลคริส",
["grc-ozl"] = "โอโซเลียนโลคริส",
["grc-pam"] = "กรีกแบบแพมฟิเลีย",
["grc-ths"] = "กรีกแบบเธสซาเลีย",
["gsw-FR-als"] = "Alsatian Alemannic German",
["gsw-hig"] = "High Alemannic German",
["gsw-hst"] = "Highest Alemannic German",
["gsw-low"] = "Low Alemannic German",
["gu-kat"] = "Kathiyawadi",
["gu-lda"] = "Lisan ud-Dawat Gujarati",
["gzi"] = "Gazi",
["hae"] = "Harar Oromo",
["hak-HK"] = "Hong Kong Hakka",
["hak-TW"] = "Taiwanese Hakka",
["hak-dab"] = "Dabu Hakka",
["hak-eam"] = "Early Modern Hakka",
["hak-hai"] = "Hailu Hakka",
["hak-hui"] = "Huiyang Hakka",
["hak-hui-MY"] = "Malaysian Huiyang Hakka",
["hak-mei"] = "Meixian Hakka",
["hak-six"] = "Sixian Hakka",
["hak-zha"] = "Zhao\'an Hakka",
["haz"] = "Hazaragi",
["hbo"] = "ฮีบรูไบเบิล",
["he-IL"] = "ฮีบรูแบบอิสราเอล",
["he-med"] = "ฮีบรูสมัยกลาง",
["he-mis"] = "Mishnaic Hebrew",
["hi-mid"] = "ฮินดีกลาง",
["hi-mum"] = "ฮินดีแบบมุมไบ",
["hsn-hya"] = "Hengyang Xiang",
["hsn-hzh"] = "Hengzhou Xiang",
["hsn-lou"] = "Loudi Xiang",
["hsn-new"] = "New Xiang",
["hsn-old"] = "เซียงเก่า",
["ht-sdm"] = "Saint Dominican Creole French",
["htx"] = "Middle Hittite",
["hye"] = "อาร์มีเนียตะวันออก",
["hyw"] = "อาร์มีเนียตะวันตก",
["inc-aav"] = "Avahattha",
["inc-agu"] = "Gurjara Apabhramsa",
["inc-aka"] = "Kasmiri Apabhramsa",
["inc-ama"] = "Maharastri Apabhramsa",
["inc-asa"] = "Sauraseni Apabhramsa",
["inc-ash-pro"] = "Proto-Middle Indo-Aryan",
["inc-ata"] = "Takka Apabhramsa",
["inc-avr"] = "Vracada Apabhramsa",
["inc-khr-par"] = "Parnadiya Khortha",
["inc-mit"] = "Mitanni",
["iro-ohu"] = "Old Wendat",
["iro-omo"] = "Old Mohawk",
["iro-oon"] = "Old Onondaga",
["it-CH"] = "อิตาลีแบบสวิตเซอร์แลนด์",
["itc-ala"] = "ละตินโบราณ",
["itc-lan"] = "Lanuvian",
["itc-ola"] = "ละตินเก่า",
["itc-pra"] = "Praenestine",
["ja-cla"] = "ญี่ปุ่นคลาสสิก",
["ja-ear"] = "ญี่ปุ่นใหม่ช่วงต้น",
["ja-mid"] = "ญี่ปุ่นกลาง",
["ja-mid-ear"] = "ญี่ปุ่นกลางช่วงต้น",
["ja-mid-lat"] = "ญี่ปุ่นกลางช่วงปลาย",
["jpa"] = "อารามายาแบบยิวปาเลสไตน์",
["jrb"] = "Judeo-Arabic",
["ka-mid"] = "จอร์เจียกลาง",
["kbg"] = "Khamba",
["kea-alu"] = "ALUPEC Kabuverdianu",
["kea-bar"] = "Barlavento Kabuverdianu",
["kea-bra"] = "Brava Kabuverdianu",
["kea-bvi"] = "Boa Vista Kabuverdianu",
["kea-fog"] = "Fogo Kabuverdianu",
["kea-mai"] = "Maio Kabuverdianu",
["kea-saa"] = "Santo Antão Kabuverdianu",
["kea-sal"] = "Sal Kabuverdianu",
["kea-san"] = "Santiago Kabuverdianu",
["kea-sni"] = "São Nicolau Kabuverdianu",
["kea-sot"] = "Sotavento Kabuverdianu",
["kea-svi"] = "São Vicente Kabuverdianu",
["kfm"] = "Khunsari",
["khg"] = "Khams Tibetan",
["kho-lat"] = "Late Khotanese",
["kho-old"] = "Old Khotanese",
["kjh-fyu"] = "Fuyu Kyrgyz",
["kjv"] = "Kajkavian Serbo-Croatian",
["klj-arg"] = "Arghu",
["kn-hav"] = "Havigannada",
["kn-kun"] = "Kundagannada",
["ko-KP"] = "เกาหลีเหนือมาตรฐาน",
["ko-KR"] = "เกาหลีใต้มาตรฐาน",
["ko-cen"] = "เกาหลีตอนกลาง",
["ko-chu"] = "Chungcheong Korean",
["ko-gan"] = "Gangwon Korean",
["ko-gyg"] = "Gyeonggi Korean",
["ko-gys"] = "Gyeongsang Korean",
["ko-ham"] = "Hamgyong Korean",
["ko-hwa"] = "Hwanghae Korean",
["ko-jeo"] = "Jeolla Korean",
["ko-pyo"] = "Pyongan Korean",
["ko-yuk"] = "Yukjin Korean",
["kok-mid"] = "กงกัณกลาง",
["kok-old"] = "กงกัณเก่า",
["krl-nor"] = "North Karelian",
["krl-sou"] = "South Karelian",
["ksh"] = "Kölsch",
["kze"] = "Kosena",
["la-afr"] = "African Romance",
["la-cla"] = "ละตินคลาสสิก",
["la-con"] = "ละตินร่วมสมัย",
["la-ecc"] = "ละตินคริสตจักร",
["la-eme"] = "ละตินสมัยกลางช่วงต้น",
["la-lat"] = "ละตินช่วงปลาย",
["la-med"] = "ละตินสมัยกลาง",
["la-new"] = "ละตินใหม่",
["la-ren"] = "ละตินสมัยเรอแนซ็องส์",
["la-vul"] = "ละตินตลาด",
["lij-old"] = "Old Ligurian",
["lld-amp"] = "Ampezan Ladin",
["lld-bad"] = "Badiot Ladin",
["lld-cad"] = "Cadorino Ladin",
["lld-fas"] = "Fascian Ladin",
["lld-fod"] = "Fodom Ladin",
["lld-for"] = "Fornes Ladin",
["lld-ghe"] = "Gherdëina Ladin",
["lld-non"] = "Nones Ladin",
["lmo-old"] = "Old Lombard",
["lng"] = "Lombardic",
["ltc-ear"] = "จีนยุคกลางช่วงต้น",
["ltc-lat"] = "จีนยุคกลางช่วงปลาย",
["lut-nor"] = "Northern Lushootseed",
["lzh-KO"] = "Korean Classical Chinese",
["lzh-VI"] = "Vietnamese Classical Chinese",
["lzh-cii"] = "Ci",
["lzh-cmn"] = "Classical Mandarin",
["lzh-cmn-TW"] = "Classical Taiwanese Mandarin",
["lzh-lit"] = "Literary Chinese",
["lzh-pre"] = "Pre-Classical Chinese",
["lzh-shi"] = "Traditional Chinese poetry",
["lzh-tai"] = "Classical Taishanese",
["lzh-yue"] = "Classical Cantonese",
["mn-cha"] = "Chakhar Mongolian",
["mn-kha"] = "Khalkha Mongolian",
["mn-khr"] = "Khorchin Mongolian",
["mn-ord"] = "Ordos Mongolian",
["mns-eas"] = "Eastern Mansi",
["mns-wes"] = "Western Mansi",
["ms-cla"] = "มลายูคลาสสิก",
["ms-old"] = "มลายูเก่า",
["mul-tax"] = "taxonomic name",
["nan-anx"] = "Anxi Hokkien",
["nan-cha"] = "Changtai Hokkien",
["nan-hbl-PH"] = "ฮกเกี้ยนแบบฟิลิปปินส์",
["nan-hbl-SG"] = "ฮกเกี้ยนแบบสิงคโปร์",
["nan-hbl-TW"] = "ฮกเกี้ยนแบบไต้หวัน",
["nan-hou"] = "Houlu Min",
["nan-hui"] = "Hui\'an Hokkien",
["nan-jin"] = "ฮกเกี้ยนแบบจิ้นเจียง",
["nan-kin"] = "Kinmenese Hokkien",
["nan-med"] = "Medan Hokkien",
["nan-pen"] = "ฮกเกี้ยนแบบปีนัง",
["nan-qia"] = "Qianlu Min",
["nan-qua"] = "ฮกเกี้ยนแบบเฉวียนโจว",
["nan-spm"] = "Southern Malaysian Hokkien",
["nan-ton"] = "Tong\'an Hokkien",
["nan-xia"] = "ฮกเกี้ยนแบบเซี่ยเหมิน",
["nan-yon"] = "Yongchun Hokkien",
["nan-zha"] = "ฮกเกี้ยนแบบจางโจว",
["nan-zho"] = "Zhao\'an Hokkien",
["nan-zhp"] = "Zhangping Hokkien",
["nap-old"] = "Old Neapolitan",
["ncb-cam"] = "Camorta",
["ncb-kat"] = "Katchal",
["ncb-nan"] = "Nancowry",
["nds-de"] = "เยอรมันต่ำแบบเยอรนี",
["nds-lpr"] = "Low Prussian",
["nds-nl"] = "แซกซันต่ำแบบเนเธอร์แลนด์",
["nei"] = "Neo-Hittite",
["nl-BE"] = "ดัตช์แบบเบลเยียม",
["non-grn"] = "Greenlandic Norse",
["non-oen"] = "Old East Norse",
["non-own"] = "Old West Norse",
["nrf-grn"] = "Guernsey Norman",
["nrf-jer"] = "Jersey Norman",
["ntz"] = "Natanzi",
["nyq"] = "Nayini",
["oc-ara"] = "Aranese",
["oc-auv"] = "Auvergnat",
["oc-gas"] = "Gascon",
["oc-jud"] = "Shuadit",
["oc-lan"] = "Languedocien",
["oc-lim"] = "Limousin",
["oc-pro"] = "พรอว็องส์",
["oc-pro-old"] = "พรอว็องส์เก่า",
["oc-viv"] = "Vivaro-Alpine",
["och-ear"] = "จีนเก่าช่วงต้น",
["och-lat"] = "จีนเก่าช่วงปลาย",
["oht"] = "Old Hittite",
["ojp-eas"] = "ญี่ปุ่นเก่าตะวันออก",
["okm-ear"] = "เกาหลีกลางช่วงต้น",
["oko-lat"] = "เกาหลีเก่าช่วงปลาย",
["okz-ang"] = "เขมรเก่าสมัยอังกอร์",
["okz-pre"] = "เขมรเก่าสมัยก่อนอังกอร์",
["ont"] = "Ontenu",
["oos"] = "Old Ossetic",
["oos-ear"] = "Early Old Ossetic",
["oos-lat"] = "Late Old Ossetic",
["orc"] = "Orma",
["oru-kan"] = "Kaniguram",
["oru-log"] = "Logar",
["os-dig"] = "Digor Ossetian",
["os-iro"] = "Iron Ossetian",
["osc-luc"] = "Lucanian",
["osc-sam"] = "Samnite",
["otk-kir"] = "คีร์กีซเก่า",
["otk-ork"] = "Orkhon Turkic",
["pal-ear"] = "เปอร์เซียกลางช่วงต้น",
["pal-lat"] = "เปอร์เซียกลางช่วงปลาย",
["peo-ear"] = "เปอร์เซียเก่าช่วงต้น",
["peo-lat"] = "เปอร์เซียเก่าช่วงปลาย",
["pfl"] = "เยอรมันแบบปาเลสไตน์",
["pl-gor"] = "Goral",
["pl-gre"] = "Greater Polish",
["pl-les"] = "Lesser Polish",
["pl-mas"] = "Masovian Polish",
["pld"] = "Polari",
["pms-old"] = "Old Piedmontese",
["pnb"] = "ปัญจาบตะวันตก",
["pra-abh"] = "อาภีระ",
["pra-ard"] = "อรรธมคธ",
["pra-ava"] = "อาวันต์",
["pra-bah"] = "พาห์ลีกะ",
["pra-can"] = "จาณฑาล",
["pra-dak"] = "ทากษิณาตย์",
["pra-dra"] = "ทรามิล",
["pra-hel"] = "เอลู",
["pra-kha"] = "ขศะ",
["pra-mag"] = "มคธ",
["pra-mah"] = "มหาราษฏร์",
["pra-odr"] = "โอฑระ",
["pra-pai"] = "ไปศาจ",
["pra-pra"] = "ปราจย์",
["pra-pro"] = "Proto-New Indo-Aryan",
["pra-sab"] = "ศาพระ",
["pra-sak"] = "ศาการะ",
["pra-sau"] = "เศารเสน",
["prs"] = "ดารี",
["ps-afr"] = "Afridi",
["ps-ban"] = "Bannu",
["ps-bng"] = "Bangash",
["ps-cgi"] = "Central Ghilzay",
["ps-jad"] = "Jadrani",
["ps-kak"] = "Kakari",
["ps-kan"] = "Kandahari",
["ps-mah"] = "Mahsudi",
["ps-nea"] = "ปาทานตะวันออกเฉียงเหนือ",
["ps-nwe"] = "ปาทานตะวันตกเฉียงเหนือ",
["ps-pes"] = "Peshawari",
["ps-sea"] = "ปาทานตะวันออกเฉียงใต้",
["ps-ser"] = "Sher",
["ps-swe"] = "ปาทานตะวันตกเฉียงใต้",
["ps-waz"] = "Waziri",
["ps-xat"] = "Khatak",
["pse-bsm"] = "Besemah",
["pt-BR"] = "โปรตุเกสแบบบราซิล",
["pt-PT"] = "โปรตุเกสแบบยุโรป",
["qfa-yke-pro"] = "Proto-Ketic",
["qfa-yko-pro"] = "Proto-Kottic",
["qfa-ypm-pro"] = "Proto-Pumpokolic",
["qfa-yrn-pro"] = "Proto-Arinic",
["qsb-bal"] = "Paleo-Balkan",
["qsb-bma"] = "the BMAC substrate",
["qsb-grc"] = "Pre-Greek",
["qsb-ibe"] = "Paleo-Hispanic",
["qwm-arm"] = "Armeno-Kipchak",
["qwm-cum"] = "Cuman",
["qwm-mam"] = "Mamluk-Kipchak",
["qxq"] = "Qashqai",
["rdb-jir"] = "Jirofti",
["rdb-kah"] = "Kahnuji",
["rgn-old"] = "Old Romagnol",
["rm-gri"] = "Rumantsch Grischun",
["rm-old"] = "Old Romansh",
["rm-put"] = "Puter Romansh",
["rm-srm"] = "Surmiran Romansh",
["rm-srs"] = "Sursilvan Romansh",
["rm-sut"] = "Sutsilvan Romansh",
["rm-val"] = "Vallader Romansh",
["ro-MD"] = "Moldovan",
["roa-oit"] = "อิตาลีเก่า",
["roa-pro"] = "Proto-Romance",
["rw-kin"] = "Kinyarwanda",
["rw-run"] = "Kirundi",
["sa-bhs"] = "Buddhist Hybrid Sanskrit",
["sa-bra"] = "Brahmanic Sanskrit",
["sa-epi"] = "Epic Sanskrit",
["sa-neo"] = "สันสกฤตใหม่",
["sa-rig"] = "Rigvedic Sanskrit",
["sc-nuo"] = "Nuorese",
["sc-old"] = "Old Sardinian",
["sc-src"] = "Logudorese",
["sc-sro"] = "Campidanese",
["scn-old"] = "Old Sicilian",
["sco-ins"] = "Insular Scots",
["sco-nor"] = "สกอตเหนือ",
["sco-sou"] = "สกอตใต้",
["sco-uls"] = "Ulster Scots",
["sdz"] = "Sallands",
["sgh-baj"] = "Bajui",
["sgh-bar"] = "Bartangi",
["sgh-bro"] = "Bartangi-Oroshori",
["sgh-oro"] = "Oroshori",
["sgh-ros"] = "Roshani",
["sgh-rsx"] = "Roshani-Khufi",
["sgh-xgb"] = "Khughni-Bajui",
["sgh-xuf"] = "Khufi",
["sgh-xug"] = "Khughni",
["sh-tor"] = "Torlakian Serbo-Croatian",
["shi-med"] = "Medieval Tashelhit",
["si-med"] = "สิงหลสมัยกลาง",
["ska"] = "Skagit",
["slh"] = "Southern Lushootseed",
["sli"] = "Silesian East Central German",
["sno"] = "Snohomish",
["sog-ear"] = "Early Sogdian",
["sog-lat"] = "Late Sogdian",
["soj"] = "Soi",
["ssn"] = "Waata",
["stl"] = "Stellingwerfs",
["sxu"] = "Upper Saxon German",
["ta-mid"] = "ทมิฬกลาง",
["tai-shz"] = "Shangsi Zhuang",
["taq"] = "Tamasheq",
["tbq-pro"] = "ทิเบโต-เบอร์มันดั้งเดิม",
["th-ayu"] = "ไทยเก่าสมัยอยุธยา",
["th-old"] = "ไทยเก่า",
["th-suk"] = "ไทยเก่าสมัยสุโขทัย",
["thv"] = "Tamahaq",
["thv-ght"] = "Ghat",
["thz"] = "Tayert",
["tks-cal"] = "Chali Tati",
["tks-dan"] = "Danesfani",
["tks-ebr"] = "Ebrahimabadi",
["tks-esf"] = "Esfarvarini",
["tks-sag"] = "Sagzabadi",
["tks-tak"] = "Takestani",
["tks-xia"] = "Khiaraji",
["tks-xoz"] = "Khoznini",
["tl-cls"] = "ตากาล็อกคลาสสิก",
["tl-old"] = "ตากาล็อกเก่า",
["tly-anb"] = "Anbarani",
["tly-asa"] = "Asalemi",
["tly-aze"] = "Azerbaijani Talysh",
["tly-cen"] = "Central Talysh",
["tly-fum"] = "Fumani",
["tly-kar"] = "Karganrudi",
["tly-msa"] = "Masali",
["tly-msu"] = "Masulei",
["tly-nor"] = "Northern Talysh",
["tly-san"] = "Shandarmani",
["tly-sou"] = "Southern Talysh",
["tly-tal"] = "Taleshdulabi",
["tly-tul"] = "Tularudi",
["tmr"] = "อารามายาแบบยิวบาบิโลเนีย",
["tpw-lga"] = "Língua Geral Amazônica",
["tpw-lgp"] = "Língua Geral Paulista",
["tr-CY"] = "ตุรกีแบบไซปรัส",
["trk-bul-pro"] = "Proto-Bulgar",
["trk-cmn-pro"] = "เตอร์กิกสามัญดั้งเดิม",
["trk-ogr-pro"] = "Proto-Oghur",
["trk-ogz-pro"] = "โอคุซดั้งเดิม",
["tsk"] = "Tseku",
["ttq"] = "Tawellemmet",
["tw"] = "Twi Akan",
["tw-aku"] = "Akuapem Twi",
["tw-asa"] = "Asante Twi",
["twd"] = "Twents",
["uk-CA"] = "ยูเครนแบบแคนาดา",
["urj-fpr-pro"] = "ฟินโน-เปอร์มิกดั้งเดิม",
["uz-afg"] = "Afghan Uzbek",
["vaf"] = "Vafsi",
["vec-old"] = "Old Venetan",
["vel"] = "Veluws",
["vsn"] = "สันสกฤตพระเวท",
["wae"] = "Walser German",
["wep"] = "Westphalian",
["wss"] = "Wasa",
["wuu-chm"] = "Shadi Wu",
["wuu-han"] = "Hangzhounese",
["wuu-nin"] = "Ningbonese",
["wuu-nor"] = "Northern Wu",
["wuu-sha"] = "เซี่ยงไฮ้",
["wuu-suz"] = "Suzhounese",
["wuu-wen"] = "Wenzhounese",
["xaq"] = "Aquitanian",
["xbo-dan"] = "Danube Bulgar",
["xbo-vol"] = "Volga Bulgar",
["xcg"] = "Cisalpine Gaulish",
["xfa-cap"] = "Capenate",
["xh-bha"] = "Bhaca",
["xme-aby"] = "Abyanehi",
["xme-abz"] = "Abuzeydabadi",
["xme-amo"] = "Amorehi",
["xme-ana"] = "Anaraki",
["xme-ard"] = "Ardestani",
["xme-azr"] = "Old Azari",
["xme-bdr"] = "Badrudi",
["xme-bid"] = "Bidhandi",
["xme-bij"] = "Bijagani",
["xme-bor"] = "Borujerdi",
["xme-cim"] = "Chimehi",
["xme-del"] = "Delijani",
["xme-far"] = "Farizandi",
["xme-ham"] = "Hamadani",
["xme-han"] = "Hanjani",
["xme-isf"] = "Isfahani",
["xme-jow"] = "Jowshaqani",
["xme-kaf"] = "Kafroni",
["xme-kah"] = "Kahaki",
["xme-kas"] = "Kashani",
["xme-kes"] = "Kesehi",
["xme-kom"] = "Komjani",
["xme-krm"] = "Kermani",
["xme-mah"] = "Mahallati",
["xme-mey"] = "Meymehi",
["xme-nar"] = "Naraqi",
["xme-nas"] = "Nashalji",
["xme-nus"] = "Nushabadi",
["xme-qal"] = "Qalhari",
["xme-qoh"] = "Qohrudi",
["xme-sed"] = "Sedehi",
["xme-tar"] = "Tari",
["xme-trh"] = "Tarehi",
["xme-ttc-cen"] = "Central Tati",
["xme-ttc-eas"] = "Eastern Tati",
["xme-ttc-nor"] = "Northern Tati",
["xme-ttc-sou"] = "Southern Tati",
["xme-ttc-wes"] = "Western Tati",
["xme-val"] = "Valujerdi",
["xme-var"] = "Varani",
["xme-von"] = "Vonishuni",
["xme-vrz"] = "Varzenehi",
["xme-xur"] = "Khuri",
["xme-yar"] = "Yarandi",
["xme-yaz"] = "Yazdi",
["xme-zef"] = "Zefrehi",
["xme-zor"] = "Zori",
["xmn"] = "Manichaean Middle Persian",
["xng-ear"] = "Early Middle Mongol",
["xng-lat"] = "Late Middle Mongol",
["xnn"] = "Northern Kankanaey",
["xno"] = "แองโกล-นอร์มัง",
["xno-law"] = "Law French",
["xtg"] = "Transalpine Gaulish",
["xvi"] = "Kamviri",
["yue-HK"] = "Hong Kong Cantonese",
["yue-gua"] = "Guangzhou Cantonese",
["yue-lit"] = "Literary Cantonese",
["yue-wvc"] = "Written vernacular Cantonese",
["zh-postal"] = "Postal Romanization",
["zhx-dan"] = "Danzhou Chinese",
["zhx-tai-wvc"] = "Written vernacular Taishanese",
["zhx-zho"] = "Zhongshan Min",
["zle-mbe"] = "เบลารุสกลาง",
["zle-mru"] = "รัสเซียกลาง",
["zle-muk"] = "ยูเครนกลาง",
["zle-ops"] = "Old Pskovian",
["zls-chs-ru"] = "Russian Church Slavonic",
["zls-chs-uk"] = "Ukrainian Church Slavonic",
["zlw-mpl"] = "โปแลนด์กลาง",
["zrp"] = "Zarphatic",
}
jrne3m3iu6i97d8oyh1io52pt17x85f
มอดูล:etymology languages/canonical names
828
324686
5760000
5753872
2026-09-09T10:00:47Z
Octahedron80
267
5760000
Scribunto
text/plain
return {
["ALUPEC Kabuverdianu"] = "kea-alu",
["Abron"] = "abr",
["Abuzeydabadi"] = "xme-abz",
["Abyanehi"] = "xme-aby",
["Achaemenid Elamite"] = "elx-ach",
["Achterhoeks"] = "act",
["Adamawa Fulfulde"] = "fub",
["Addu Dhivehi"] = "dv-add",
["Afghan Uzbek"] = "uz-afg",
["African Romance"] = "la-afr",
["Afridi"] = "ps-afr",
["Akhmimic Coptic"] = "cop-akh",
["Akuapem Twi"] = "tw-aku",
["Aleppine North Levantine Arabic"] = "apc-ale",
["Alsatian Alemannic German"] = "gsw-FR-als",
["Amdo Tibetan"] = "adx",
["Amorehi"] = "xme-amo",
["Ampezan Ladin"] = "lld-amp",
["Amrum North Frisian"] = "frr-amr",
["Anaraki"] = "xme-ana",
["Anatri Chuvash"] = "cv-ana",
["Anbarani"] = "tly-anb",
["Anxi Hokkien"] = "nan-anx",
["Aquitanian"] = "xaq",
["Aranese"] = "oc-ara",
["Arbëresh Albanian"] = "aae",
["Ardestani"] = "xme-ard",
["Arghu"] = "klj-arg",
["Armeno-Kipchak"] = "qwm-arm",
["Arvanitika Albanian"] = "aat",
["Asalemi"] = "tly-asa",
["Asante Twi"] = "tw-asa",
["Ashtiani"] = "atn",
["Australian Aboriginal English"] = "en-aae",
["Auvergnat"] = "oc-auv",
["Avahattha"] = "inc-aav",
["Azerbaijani Talysh"] = "tly-aze",
["Badiot Ladin"] = "lld-bad",
["Badrudi"] = "xme-bdr",
["Bagirmi Fulfulde"] = "fui",
["Bajui"] = "sgh-baj",
["Baltic German"] = "de-bal",
["Bandari"] = "bsg-ban",
["Bangash"] = "ps-bng",
["Bannu"] = "ps-ban",
["Barlavento Kabuverdianu"] = "kea-bar",
["Barpetia Kamrupi Assamese"] = "as-bkm",
["Bartangi"] = "sgh-bar",
["Bartangi-Oroshori"] = "sgh-bro",
["Beijing Mandarin"] = "cmn-bei",
["Beijingic Mandarin"] = "cmn-bec",
["Besemah"] = "pse-bsm",
["Betawi Kota"] = "bew-kot",
["Bhaca"] = "xh-bha",
["Bidhandi"] = "xme-bid",
["Bijagani"] = "xme-bij",
["Boa Vista Kabuverdianu"] = "kea-bvi",
["Bohairic Coptic"] = "cop-boh",
["Bolivian Spanish"] = "es-BO",
["Borana"] = "gax",
["Borgu Fulfulde"] = "fue",
["Borujerdi"] = "xme-bor",
["Brahmanic Sanskrit"] = "sa-bra",
["Brava Kabuverdianu"] = "kea-bra",
["Buddhist Hybrid Sanskrit"] = "sa-bhs",
["Burenjani"] = "fay-bur",
["Bushehri"] = "fay-bsh",
["Cadorino Ladin"] = "lld-cad",
["Camorta"] = "ncb-cam",
["Campidanese"] = "sc-sro",
["Capenate"] = "xfa-cap",
["Central Ghilzay"] = "ps-cgi",
["Central Plains Mandarin"] = "cmn-cep",
["Central Talysh"] = "tly-cen",
["Central Tati"] = "xme-ttc-cen",
["Central-Eastern Niger Fulfulde"] = "fuq",
["Chakavian Serbo-Croatian"] = "ckm",
["Chakhar Mongolian"] = "mn-cha",
["Chali Tati"] = "tks-cal",
["Changtai Hokkien"] = "nan-cha",
["Chilean Spanish"] = "es-CL",
["Chimehi"] = "xme-cim",
["Chungcheong Korean"] = "ko-chu",
["Ci"] = "lzh-cii",
["Cisalpine Gaulish"] = "xcg",
["Classical Cantonese"] = "lzh-yue",
["Classical Mandarin"] = "lzh-cmn",
["Classical Taishanese"] = "lzh-tai",
["Classical Taiwanese Mandarin"] = "lzh-cmn-TW",
["Colombian Spanish"] = "es-CO",
["Common Bantu"] = "bnt-cmn",
["Coptic Dialect G"] = "cop-ggg",
["Coptic Dialect J"] = "cop-jjj",
["Coptic Dialect K"] = "cop-kkk",
["Coptic Dialect P"] = "cop-ppp",
["Cuban Spanish"] = "es-CU",
["Cuman"] = "qwm-cum",
["Dabu Hakka"] = "hak-dab",
["Damascene North Levantine Arabic"] = "apc-dam",
["Danesfani"] = "tks-dan",
["Danube Bulgar"] = "xbo-dan",
["Danzhou Chinese"] = "zhx-dan",
["Dashtaki"] = "fay-dsh",
["Davani"] = "fay-dav",
["Delijani"] = "xme-del",
["Dhakaiya Vaṅga Bengali"] = "bn-dvn",
["Digor Ossetian"] = "os-dig",
["Dnieper Baltic"] = "bat-dni",
["Dobrujan Tatar"] = "crh-dbj",
["Drents"] = "drt",
["Early Middle Mongol"] = "xng-ear",
["Early Modern Hakka"] = "hak-eam",
["Early Modern Spanish"] = "es-ear",
["Early New High German"] = "de-ear",
["Early Old Ossetic"] = "oos-ear",
["Early Scots"] = "enm-esc",
["Early Sogdian"] = "sog-ear",
["East Frisian Low German"] = "frs",
["East Midland Middle English"] = "enm-emi",
["Eastern Mansi"] = "mns-eas",
["Eastern Tati"] = "xme-ttc-eas",
["Ebrahimabadi"] = "tks-ebr",
["Emamzada Esmaili"] = "fay-eze",
["Epic Sanskrit"] = "sa-epi",
["Esfarvarini"] = "tks-esf",
["Fante Akan"] = "fat",
["Farizandi"] = "xme-far",
["Fascian Ladin"] = "lld-fas",
["Fayyumic Coptic"] = "cop-fay",
["Fodom Ladin"] = "lld-fod",
["Fogo Kabuverdianu"] = "kea-fog",
["Fornes Ladin"] = "lld-for",
["Fumani"] = "tly-fum",
["Fuyu Kyrgyz"] = "kjh-fyu",
["Föhr North Frisian"] = "frr-foh",
["Föhr-Amrum North Frisian"] = "frr-fam",
["Gangwon Korean"] = "ko-gan",
["Gascon"] = "oc-gas",
["Gavkoshaki"] = "fay-gav",
["Gazi"] = "gzi",
["Geordie"] = "en-geo",
["Ghat"] = "thv-ght",
["Gheg Albanian"] = "aln",
["Gherdëina Ladin"] = "lld-ghe",
["Goesharde North Frisian"] = "frr-goe",
["Golyad"] = "bat-gol",
["Goral"] = "pl-gor",
["Greater Polish"] = "pl-gre",
["Greenlandic Norse"] = "non-grn",
["Gronings"] = "gos",
["Guangzhou Cantonese"] = "yue-gua",
["Guanzhong Mandarin"] = "cmn-gua",
["Guernsey Norman"] = "nrf-grn",
["Guilin Mandarin"] = "cmn-gui",
["Gurjara Apabhramsa"] = "inc-agu",
["Gyeonggi Korean"] = "ko-gyg",
["Gyeongsang Korean"] = "ko-gys",
["Hailu Hakka"] = "hak-hai",
["Halligen North Frisian"] = "frr-hal",
["Hamadani"] = "xme-ham",
["Hamgyong Korean"] = "ko-ham",
["Hangzhounese"] = "wuu-han",
["Hanjani"] = "xme-han",
["Hanyu Pinyin"] = "cmn-pinyin",
["Harar Oromo"] = "hae",
["Havigannada"] = "kn-hav",
["Hazaragi"] = "haz",
["Heligoland North Frisian"] = "frr-hel",
["Hengyang Xiang"] = "hsn-hya",
["Hengzhou Xiang"] = "hsn-hzh",
["Hermopolitan Coptic"] = "cop-her",
["High Alemannic German"] = "gsw-hig",
["Highest Alemannic German"] = "gsw-hst",
["Hong Kong Cantonese"] = "yue-HK",
["Hong Kong Hakka"] = "hak-HK",
["Hormozi"] = "bsg-hor",
["Houlu Min"] = "nan-hou",
["Hui\'an Hokkien"] = "nan-hui",
["Huiyang Hakka"] = "hak-hui",
["Huvadhu Dhivehi"] = "dv-huv",
["Hwanghae Korean"] = "ko-hwa",
["Insular North Frisian"] = "frr-ins",
["Insular Scots"] = "sco-ins",
["Iron Ossetian"] = "os-iro",
["Isfahani"] = "xme-isf",
["Jadrani"] = "ps-jad",
["Jeolla Korean"] = "ko-jeo",
["Jersey Norman"] = "nrf-jer",
["Jewish Literary Aramaic"] = "arc-jla",
["Jianghuai Mandarin"] = "cmn-jhu",
["Jirofti"] = "rdb-jir",
["Jowshaqani"] = "xme-jow",
["Judeo-Arabic"] = "jrb",
["Kafroni"] = "xme-kaf",
["Kahaki"] = "xme-kah",
["Kahnuji"] = "rdb-kah",
["Kajkavian Serbo-Croatian"] = "kjv",
["Kakari"] = "ps-kak",
["Kaliarda"] = "el-kal",
["Kamviri"] = "xvi",
["Kandahari"] = "ps-kan",
["Kaniguram"] = "oru-kan",
["Karganrudi"] = "tly-kar",
["Karrharde North Frisian"] = "frr-kar",
["Kashani"] = "xme-kas",
["Kasmiri Apabhramsa"] = "inc-aka",
["Katchal"] = "ncb-kat",
["Kathiyawadi"] = "gu-kat",
["Kativiri"] = "bsh-kat",
["Kentish Middle English"] = "enm-ken",
["Kentish Old English"] = "ang-ken",
["Kermani"] = "xme-krm",
["Kesehi"] = "xme-kes",
["Khalkha Mongolian"] = "mn-kha",
["Khamba"] = "kbg",
["Khams Tibetan"] = "khg",
["Khargi"] = "fay-kar",
["Khatak"] = "ps-xat",
["Khiaraji"] = "tks-xia",
["Khollari"] = "fay-kho",
["Khorchin Mongolian"] = "mn-khr",
["Khoznini"] = "tks-xoz",
["Khufi"] = "sgh-xuf",
["Khughni"] = "sgh-xug",
["Khughni-Bajui"] = "sgh-xgb",
["Khunsari"] = "kfm",
["Khuri"] = "xme-xur",
["Khuzestani Arabic"] = "acm-khu",
["Kinmenese Hokkien"] = "nan-kin",
["Kinyarwanda"] = "rw-kin",
["Kirundi"] = "rw-run",
["Komjani"] = "xme-kom",
["Kondazi"] = "fay-kon",
["Korean Classical Chinese"] = "lzh-KO",
["Kosena"] = "kze",
["Kromanti"] = "alv-kro",
["Kundagannada"] = "kn-kun",
["Kyakhta Chinese Pidgin Russian"] = "crp-cpr-kya",
["Kölsch"] = "ksh",
["Languedocien"] = "oc-lan",
["Lanuvian"] = "itc-lan",
["Lanyin Mandarin"] = "cmn-lan",
["Late Khotanese"] = "kho-lat",
["Late Middle Mongol"] = "xng-lat",
["Late Old Ossetic"] = "oos-lat",
["Late Old Swedish"] = "gmq-osw-lat",
["Late Sogdian"] = "sog-lat",
["Law French"] = "xno-law",
["Lebanese North Levantine Arabic"] = "apc-leb",
["Lesser Polish"] = "pl-les",
["Limousin"] = "oc-lim",
["Lisan ud-Dawat Gujarati"] = "gu-lda",
["Literary Cantonese"] = "yue-lit",
["Literary Chinese"] = "lzh-lit",
["Logar"] = "oru-log",
["Logudorese"] = "sc-src",
["Lombardic"] = "lng",
["Loudi Xiang"] = "hsn-lou",
["Louisiana French"] = "fr-lou",
["Low Alemannic German"] = "gsw-low",
["Low Prussian"] = "nds-lpr",
["Lucanian"] = "osc-luc",
["Lunfardo"] = "es-lun",
["Lycopolitan Coptic"] = "cop-lyc",
["Língua Geral Amazônica"] = "tpw-lga",
["Língua Geral Paulista"] = "tpw-lgp",
["Maasina Fulfulde"] = "ffm",
["Mahallati"] = "xme-mah",
["Maharastri Apabhramsa"] = "inc-ama",
["Mahsudi"] = "ps-mah",
["Mainland North Frisian"] = "frr-mai",
["Maio Kabuverdianu"] = "kea-mai",
["Malaysian Huiyang Hakka"] = "hak-hui-MY",
["Malaysian Mandarin"] = "cmn-MY",
["Mamluk-Kipchak"] = "qwm-mam",
["Manichaean Middle Persian"] = "xmn",
["Masali"] = "tly-msa",
["Masarami"] = "fay-mas",
["Masovian Polish"] = "pl-mas",
["Masulei"] = "tly-msu",
["Medan Hokkien"] = "nan-med",
["Medieval Tashelhit"] = "shi-med",
["Meixian Hakka"] = "hak-mei",
["Mexican Spanish"] = "es-MX",
["Meymehi"] = "xme-mey",
["Middle Chuvash"] = "cv-mid",
["Middle Elamite"] = "elx-mid",
["Middle Hittite"] = "htx",
["Minabi"] = "bsg-min",
["Mishnaic Hebrew"] = "he-mis",
["Missouri French"] = "fr-mis",
["Mitanni"] = "inc-mit",
["Moldovan"] = "ro-MD",
["Mooring North Frisian"] = "frr-moo",
["Mulaku Dhivehi"] = "dv-mul",
["Mumviri"] = "bsh-mum",
["Nalbaria Kamrupi Assamese"] = "as-nkm",
["Nancowry"] = "ncb-nan",
["Nanjing Mandarin"] = "cmn-nan",
["Naraqi"] = "xme-nar",
["Nashalji"] = "xme-nas",
["Natanzi"] = "ntz",
["Nayini"] = "nyq",
["Neo-Elamite"] = "elx-neo",
["Neo-Hittite"] = "nei",
["New Xiang"] = "hsn-new",
["Nigerian Fulfulde"] = "fuv",
["Ningbonese"] = "wuu-nin",
["Noakhailla Vaṅga Bengali"] = "bn-nvn",
["Nones Ladin"] = "lld-non",
["North Alaskan Inupiatun"] = "esi",
["North Karelian"] = "krl-nor",
["North Lebanese North Levantine Arabic"] = "apc-nle",
["North Wales Welsh"] = "cy-nor",
["Northeastern Mandarin"] = "cmn-noe",
["Northern Kankanaey"] = "xnn",
["Northern Lushootseed"] = "lut-nor",
["Northern Middle English"] = "enm-nor",
["Northern Talysh"] = "tly-nor",
["Northern Tati"] = "xme-ttc-nor",
["Northern Wu"] = "wuu-nor",
["Northwest Alaskan Inupiatun"] = "esk",
["Nuorese"] = "sc-nuo",
["Nushabadi"] = "xme-nus",
["Old Azari"] = "xme-azr",
["Old Braj"] = "bra-old",
["Old Chuvash"] = "cv-old",
["Old Coptic"] = "cop-old",
["Old Dhivehi"] = "dv-old",
["Old East Norse"] = "non-oen",
["Old Elamite"] = "elx-old",
["Old Emilian"] = "egl-old",
["Old Franco-Provençal"] = "frp-old",
["Old Friulian"] = "fur-old",
["Old Hittite"] = "oht",
["Old Kazeruni"] = "fay-kzo",
["Old Khotanese"] = "kho-old",
["Old Ligurian"] = "lij-old",
["Old Lombard"] = "lmo-old",
["Old Mohawk"] = "iro-omo",
["Old Neapolitan"] = "nap-old",
["Old Onondaga"] = "iro-oon",
["Old Ossetic"] = "oos",
["Old Piedmontese"] = "pms-old",
["Old Pskovian"] = "zle-ops",
["Old Romagnol"] = "rgn-old",
["Old Romansh"] = "rm-old",
["Old Sardinian"] = "sc-old",
["Old Shirazi"] = "fay-sho",
["Old Sicilian"] = "scn-old",
["Old Venetan"] = "vec-old",
["Old Wendat"] = "iro-ohu",
["Old West Norse"] = "non-own",
["Ontenu"] = "ont",
["Ordos Mongolian"] = "mn-ord",
["Orkhon Turkic"] = "otk-ork",
["Orma"] = "orc",
["Oroshori"] = "sgh-oro",
["Oxyrhynchite Coptic"] = "cop-oxy",
["Palasbaria Kamrupi Assamese"] = "as-pkm",
["Paleo-Balkan"] = "qsb-bal",
["Paleo-Hispanic"] = "qsb-ibe",
["Palladius"] = "cmn-palladius",
["Papuni"] = "fay-pap",
["Parnadiya Khortha"] = "inc-khr-par",
["Peruvian Spanish"] = "es-PE",
["Peshawari"] = "ps-pes",
["Philippine Mandarin"] = "cmn-PH",
["Philippine Spanish"] = "es-PH",
["Picard Old French"] = "fro-pic",
["Polari"] = "pld",
["Postal Romanization"] = "zh-postal",
["Praenestine"] = "itc-pra",
["Pre-Classical Chinese"] = "lzh-pre",
["Pre-Greek"] = "qsb-grc",
["Proto-Anglo-Frisian"] = "gmw-afr-pro",
["Proto-Arinic"] = "qfa-yrn-pro",
["Proto-Bulgar"] = "trk-bul-pro",
["Proto-Ketic"] = "qfa-yke-pro",
["Proto-Kottic"] = "qfa-yko-pro",
["Proto-Lycopolitan Coptic"] = "cop-ply",
["Proto-Middle Indo-Aryan"] = "inc-ash-pro",
["Proto-New Indo-Aryan"] = "pra-pro",
["Proto-North Sea Germanic"] = "gmw-nsg-pro",
["Proto-Oghur"] = "trk-ogr-pro",
["Proto-Pumpokolic"] = "qfa-ypm-pro",
["Proto-Romance"] = "roa-pro",
["Puerto Rican Spanish"] = "es-PR",
["Pulaar"] = "fuc",
["Pular"] = "fuf",
["Puter Romansh"] = "rm-put",
["Pyongan Korean"] = "ko-pyo",
["Qalhari"] = "xme-qal",
["Qashqai"] = "qxq",
["Qianlu Min"] = "nan-qia",
["Qohrudi"] = "xme-qoh",
["Rigvedic Sanskrit"] = "sa-rig",
["Rioplatense Spanish"] = "es-AR",
["Roshani"] = "sgh-ros",
["Roshani-Khufi"] = "sgh-rsx",
["Rumantsch Grischun"] = "rm-gri",
["Russian Church Slavonic"] = "zls-chs-ru",
["Sagzabadi"] = "tks-sag",
["Sahidic Coptic"] = "cop-sah",
["Saint Dominican Creole French"] = "ht-sdm",
["Sal Kabuverdianu"] = "kea-sal",
["Sallands"] = "sdz",
["Samghani"] = "fay-sam",
["Samnite"] = "osc-sam",
["Santiago Kabuverdianu"] = "kea-san",
["Santo Antão Kabuverdianu"] = "kea-saa",
["Sauraseni Apabhramsa"] = "inc-asa",
["Sedehi"] = "xme-sed",
["Shadi Wu"] = "wuu-chm",
["Shandarmani"] = "tly-san",
["Shangsi Zhuang"] = "tai-shz",
["Sher"] = "ps-ser",
["Shirazi"] = "fay-shr",
["Shuadit"] = "oc-jud",
["Silesian East Central German"] = "sli",
["Singapore Mandarin"] = "cmn-SG",
["Sixian Hakka"] = "hak-six",
["Skagit"] = "ska",
["Snohomish"] = "sno",
["Soi"] = "soj",
["Sorkhi"] = "fay-sor",
["Sotavento Kabuverdianu"] = "kea-sot",
["South Karelian"] = "krl-sou",
["South Lebanese North Levantine Arabic"] = "apc-sle",
["South Wales Welsh"] = "cy-sou",
["Southern Lushootseed"] = "slh",
["Southern Malaysian Hokkien"] = "nan-spm",
["Southern Middle English"] = "enm-sou",
["Southern Talysh"] = "tly-sou",
["Southern Tati"] = "xme-ttc-sou",
["Southwestern Mandarin"] = "cmn-sow",
["Stellingwerfs"] = "stl",
["Suevic"] = "gem-sue",
["Surmiran Romansh"] = "rm-srm",
["Sursilvan Romansh"] = "rm-srs",
["Sutsilvan Romansh"] = "rm-sut",
["Suzhounese"] = "wuu-suz",
["Sylt North Frisian"] = "frr-syl",
["Syrian North Levantine Arabic"] = "apc-syr",
["São Nicolau Kabuverdianu"] = "kea-sni",
["São Vicente Kabuverdianu"] = "kea-svi",
["Taiwanese Hakka"] = "hak-TW",
["Taiwanese Mandarin"] = "cmn-TW",
["Takestani"] = "tks-tak",
["Takka Apabhramsa"] = "inc-ata",
["Taleshdulabi"] = "tly-tal",
["Tamahaq"] = "thv",
["Tamasheq"] = "taq",
["Tarehi"] = "xme-trh",
["Tari"] = "xme-tar",
["Tawellemmet"] = "ttq",
["Tayert"] = "thz",
["Tianjin Mandarin"] = "cmn-tia",
["Tong\'an Hokkien"] = "nan-ton",
["Tongyong Pinyin"] = "cmn-tongyong",
["Torlakian Serbo-Croatian"] = "sh-tor",
["Tosk Albanian"] = "als",
["Traditional Chinese poetry"] = "lzh-shi",
["Transalpine Gaulish"] = "xtg",
["Tseku"] = "tsk",
["Tularudi"] = "tly-tul",
["Twents"] = "twd",
["Twi Akan"] = "tw",
["Ukrainian Church Slavonic"] = "zls-chs-uk",
["Ulster English"] = "en-uls",
["Ulster Scots"] = "sco-uls",
["United States Spanish"] = "es-US",
["Upper Saxon German"] = "sxu",
["Vafsi"] = "vaf",
["Valencian"] = "ca-val",
["Vallader Romansh"] = "rm-val",
["Valujerdi"] = "xme-val",
["Varani"] = "xme-var",
["Varzenehi"] = "xme-vrz",
["Veluws"] = "vel",
["Venezuelan Spanish"] = "es-VE",
["Vietnamese Classical Chinese"] = "lzh-VI",
["Viryal Chuvash"] = "cv-vir",
["Vivaro-Alpine"] = "oc-viv",
["Volga Bulgar"] = "xbo-vol",
["Vonishuni"] = "xme-von",
["Vracada Apabhramsa"] = "inc-avr",
["Waata"] = "ssn",
["Wade–Giles"] = "cmn-wadegiles",
["Walser German"] = "wae",
["Wasa"] = "wss",
["Waziri"] = "ps-waz",
["Wenzhounese"] = "wuu-wen",
["West Midland Middle English"] = "enm-wmi",
["Western Mansi"] = "mns-wes",
["Western Niger Fulfulde"] = "fuh",
["Western Tati"] = "xme-ttc-wes",
["Westphalian"] = "wep",
["Wiedingharde North Frisian"] = "frr-wie",
["Written vernacular Cantonese"] = "yue-wvc",
["Written vernacular Mandarin"] = "cmn-wvc",
["Written vernacular Taishanese"] = "zhx-tai-wvc",
["Wuhan Mandarin"] = "cmn-wuh",
["Xining Mandarin"] = "cmn-xin",
["Yangzhou Mandarin"] = "cmn-yan",
["Yarandi"] = "xme-yar",
["Yazdi"] = "xme-yaz",
["Yongchun Hokkien"] = "nan-yon",
["Younger Avestan"] = "ae-yng",
["Yukjin Korean"] = "ko-yuk",
["Zarphatic"] = "zrp",
["Zefrehi"] = "xme-zef",
["Zhangping Hokkien"] = "nan-zhp",
["Zhao\'an Hakka"] = "hak-zha",
["Zhao\'an Hokkien"] = "nan-zho",
["Zhongshan Min"] = "zhx-zho",
["Zori"] = "xme-zor",
["Zoroastrian Dari"] = "gbz",
["taxonomic name"] = "mul-tax",
["the BMAC substrate"] = "qsb-bma",
["กงกัณกลาง"] = "kok-mid",
["กงกัณเก่า"] = "kok-old",
["กรีกแบบครีต"] = "el-crt",
["กรีกแบบคอยนี"] = "grc-koi",
["กรีกแบบไซปรัส"] = "el-cyp",
["กรีกแบบดอเรียนส์"] = "grc-dor",
["กรีกแบบเธสซาเลีย"] = "grc-ths",
["กรีกแบบบีโอเชีย"] = "grc-boi",
["กรีกแบบไบแซนไทน์"] = "gkm",
["กรีกแบบพาฟอส"] = "el-pap",
["กรีกแบบแพมฟิเลีย"] = "grc-pam",
["กรีกแบบอาร์เคเดีย"] = "grc-arc",
["กรีกแบบอาร์เคโดไซปรัส"] = "grc-arp",
["กรีกแบบอีโอลิส"] = "grc-aeo",
["กรีกแบบเอเธนส์"] = "grc-att",
["กรีกแบบเอลิส"] = "grc-ela",
["กรีกแบบไอโอเนีย"] = "grc-ion",
["กรีกโบราณแบบครีต"] = "grc-kre",
["กรีกโบราณแบบไซปรัส"] = "grc-cyp",
["กรีกมหากาพย์"] = "grc-epi",
["เกาหลีกลางช่วงต้น"] = "okm-ear",
["เกาหลีเก่าช่วงปลาย"] = "oko-lat",
["เกาหลีตอนกลาง"] = "ko-cen",
["เกาหลีใต้มาตรฐาน"] = "ko-KR",
["เกาหลีเหนือมาตรฐาน"] = "ko-KP",
["ขศะ"] = "pra-kha",
["เขมรเก่าสมัยก่อนอังกอร์"] = "okz-pre",
["เขมรเก่าสมัยอังกอร์"] = "okz-ang",
["คาทาเรวูซา"] = "el-kth",
["คีร์กีซเก่า"] = "otk-kir",
["จอร์เจียกลาง"] = "ka-mid",
["จาณฑาล"] = "pra-can",
["จีนกลางช่วงต้น"] = "cmn-ear",
["จีนเก่าช่วงต้น"] = "och-ear",
["จีนเก่าช่วงปลาย"] = "och-lat",
["จีนยุคกลางช่วงต้น"] = "ltc-ear",
["จีนยุคกลางช่วงปลาย"] = "ltc-lat",
["เช็กใหม่ช่วงต้น"] = "cs-ear",
["เซียงเก่า"] = "hsn-old",
["เซี่ยงไฮ้"] = "wuu-sha",
["แซกซันต่ำแบบเนเธอร์แลนด์"] = "nds-nl",
["ญี่ปุ่นกลาง"] = "ja-mid",
["ญี่ปุ่นกลางช่วงต้น"] = "ja-mid-ear",
["ญี่ปุ่นกลางช่วงปลาย"] = "ja-mid-lat",
["ญี่ปุ่นเก่าตะวันออก"] = "ojp-eas",
["ญี่ปุ่นคลาสสิก"] = "ja-cla",
["ญี่ปุ่นใหม่ช่วงต้น"] = "ja-ear",
["ดัตช์แบบเบลเยียม"] = "nl-BE",
["ดารี"] = "prs",
["ตากาล็อกเก่า"] = "tl-old",
["ตากาล็อกคลาสสิก"] = "tl-cls",
["ตุรกีแบบไซปรัส"] = "tr-CY",
["เตอร์กิกสามัญดั้งเดิม"] = "trk-cmn-pro",
["ทมิฬกลาง"] = "ta-mid",
["ทรามิล"] = "pra-dra",
["ทากษิณาตย์"] = "pra-dak",
["ทิเบโต-เบอร์มันดั้งเดิม"] = "tbq-pro",
["ไทยเก่า"] = "th-old",
["ไทยเก่าสมัยสุโขทัย"] = "th-suk",
["ไทยเก่าสมัยอยุธยา"] = "th-ayu",
["บริทอนิกช่วงต้น"] = "bry-ear",
["บริทอนิกช่วงปลาย"] = "bry-lat",
["บอลติกดั้งเดิม"] = "bat-pro",
["บัลแกเรียกลาง"] = "cu-bgm",
["บาบิโลเนียกลาง"] = "akk-mbb",
["บาบิโลเนียเก่า"] = "akk-obb",
["บาบิโลเนียช่วงปลาย"] = "akk-lbb",
["บาบิโลเนียมาตรฐาน"] = "akk-stb",
["บาบิโลเนียใหม่"] = "akk-nbb",
["บาโลจตะวันตก"] = "bgn",
["บาโลจตะวันออก"] = "bgp",
["บาโลจใต้"] = "bcc",
["เบลารุสกลาง"] = "zle-mbe",
["ปราจย์"] = "pra-pra",
["ปัญจาบตะวันตก"] = "pnb",
["ปาทานตะวันตกเฉียงใต้"] = "ps-swe",
["ปาทานตะวันตกเฉียงเหนือ"] = "ps-nwe",
["ปาทานตะวันออกเฉียงใต้"] = "ps-sea",
["ปาทานตะวันออกเฉียงเหนือ"] = "ps-nea",
["เปอร์เซียกลางช่วงต้น"] = "pal-ear",
["เปอร์เซียกลางช่วงปลาย"] = "pal-lat",
["เปอร์เซียเก่าช่วงต้น"] = "peo-ear",
["เปอร์เซียเก่าช่วงปลาย"] = "peo-lat",
["เปอร์เซียคลาสสิก"] = "fa-cls",
["เปอร์เซียแบบอิหร่าน"] = "fa-ira",
["เปอร์เซียใหม่ช่วงต้น"] = "fa-ear",
["โปรตุเกสแบบบราซิล"] = "pt-BR",
["โปรตุเกสแบบยุโรป"] = "pt-PT",
["โปแลนด์กลาง"] = "zlw-mpl",
["ไปศาจ"] = "pra-pai",
["ฝรั่งเศสแบบเคเจิน"] = "frc",
["ฝรั่งเศสแบบแคนาดา"] = "fr-CA",
["ฝรั่งเศสแบบสวิตเซอร์แลนด์"] = "fr-CH",
["ฝรั่งเศสแบบอะคาเดีย"] = "fr-aca",
["ฝรั่งเศสเหนือเก่า"] = "fro-nor",
["พรอว็องส์"] = "oc-pro",
["พรอว็องส์เก่า"] = "oc-pro-old",
["พาห์ลีกะ"] = "pra-bah",
["ฟินโน-เปอร์มิกดั้งเดิม"] = "urj-fpr-pro",
["ฟินโน-ยูกริกดั้งเดิม"] = "fiu-pro",
["แฟรงก์"] = "frk",
["มคธ"] = "pra-mag",
["มลายูเก่า"] = "ms-old",
["มลายูคลาสสิก"] = "ms-cla",
["มหาราษฏร์"] = "pra-mah",
["ยูเครนกลาง"] = "zle-muk",
["ยูเครนแบบแคนาดา"] = "uk-CA",
["เยอรมันต่ำแบบเยอรนี"] = "nds-de",
["เยอรมันแบบปาเลสไตน์"] = "pfl",
["เยอรมันแบบเวียนนา"] = "de-AT-vie",
["เยอรมันแบบสวิตเซอร์แลนด์"] = "de-CH",
["เยอรมันแบบออสเตรีย"] = "de-AT",
["รัสเซียกลาง"] = "zle-mru",
["ละตินเก่า"] = "itc-ola",
["ละตินคริสตจักร"] = "la-ecc",
["ละตินคลาสสิก"] = "la-cla",
["ละตินช่วงปลาย"] = "la-lat",
["ละตินตลาด"] = "la-vul",
["ละตินโบราณ"] = "itc-ala",
["ละตินร่วมสมัย"] = "la-con",
["ละตินสมัยกลาง"] = "la-med",
["ละตินสมัยกลางช่วงต้น"] = "la-eme",
["ละตินสมัยเรอแนซ็องส์"] = "la-ren",
["ละตินใหม่"] = "la-new",
["ศาการะ"] = "pra-sak",
["ศาพระ"] = "pra-sab",
["เศารเสน"] = "pra-sau",
["สกอตใต้"] = "sco-sou",
["สกอตเหนือ"] = "sco-nor",
["สันสกฤตคลาสสิก"] = "cls",
["สันสกฤตพระเวท"] = "vsn",
["สันสกฤตใหม่"] = "sa-neo",
["สิงหลสมัยกลาง"] = "si-med",
["อรรธมคธ"] = "pra-ard",
["อเวสตะเก่า"] = "ae-old",
["อังกฤษเก่าแบบแซกซันตะวันตก"] = "ang-wsx",
["อังกฤษเก่าแบบนอร์ทัมเบรีย"] = "ang-nor",
["อังกฤษเก่าแบบเมอร์เซีย"] = "ang-mer",
["อังกฤษเก่าแบบแองเกิล"] = "ang-ang",
["อังกฤษแบบแคนาดา"] = "en-CA",
["อังกฤษแบบแคลิฟอร์เนีย"] = "en-US-CA",
["อังกฤษแบบเซาท์แอฟริกา"] = "en-ZA",
["อังกฤษแบบนิวซีแลนด์"] = "en-NZ",
["อังกฤษแบบบริเตน"] = "en-GB",
["อังกฤษแบบแมงซ์"] = "en-IM",
["อังกฤษแบบเวลส์"] = "en-GB-WLS",
["อังกฤษแบบสกอตแลนด์"] = "en-GB-SCT",
["อังกฤษแบบอเมริกา"] = "en-US",
["อังกฤษแบบอเมริกาเหนือ"] = "en-NNN",
["อังกฤษแบบออสเตรเลีย"] = "en-AU",
["อังกฤษแบบอินเดีย"] = "en-IN",
["อังกฤษแบบไอร์แลนด์"] = "en-IE",
["อังกฤษแบบไอร์แลนด์เหนือ"] = "en-GB-NIR",
["อังกฤษแบบฮ่องกง"] = "en-HK",
["อังกฤษใหม่ช่วงต้น"] = "en-ear",
["อัสซีเรียกลาง"] = "akk-mas",
["อัสซีเรียเก่า"] = "akk-oas",
["อัสซีเรียใหม่"] = "akk-nas",
["อาเซอร์ไบจานคลาสสิก"] = "az-cls",
["อาภีระ"] = "pra-abh",
["อารามายาเก่า"] = "arc-old",
["อารามายาจักรวรรดิ"] = "arc-imp",
["อารามายาแบบคริสต์ปาเลสไตน์"] = "arc-cpa",
["อารามายาแบบแนบาเทีย"] = "arc-nab",
["อารามายาแบบแพลไมรา"] = "arc-pal",
["อารามายาแบบยิวบาบิโลเนีย"] = "tmr",
["อารามายาแบบยิวปาเลสไตน์"] = "jpa",
["อารามายาแบบฮัตรา"] = "arc-hat",
["อารามายาไบเบิล"] = "arc-bib",
["อาร์มีเนียตะวันตก"] = "hyw",
["อาร์มีเนียตะวันออก"] = "hye",
["อาวันต์"] = "pra-ava",
["อิตาลีเก่า"] = "roa-oit",
["อิตาลีแบบสวิตเซอร์แลนด์"] = "it-CH",
["อียิปต์กลาง"] = "egy-mid",
["อียิปต์กลางใหม่"] = "egy-nmi",
["อียิปต์เก่า"] = "egy-old",
["อียิปต์ช่วงปลาย"] = "egy-lat",
["เอลู"] = "pra-hel",
["แอกแคดเก่า"] = "akk-old",
["แองโกล-นอร์มัง"] = "xno",
["โอคุซดั้งเดิม"] = "trk-ogz-pro",
["โอโซเลียนโลคริส"] = "grc-ozl",
["โอฑระ"] = "pra-odr",
["โอพุนเชียนโลคริส"] = "grc-opl",
["ไอนุแบบคูริล"] = "ain-kur",
["ไอนุแบบซาฮาลิน"] = "ain-sak",
["ไอนุแบบฮกไกโด"] = "ain-hok",
["ฮกเกี้ยนแบบจางโจว"] = "nan-zha",
["ฮกเกี้ยนแบบจิ้นเจียง"] = "nan-jin",
["ฮกเกี้ยนแบบเฉวียนโจว"] = "nan-qua",
["ฮกเกี้ยนแบบเซี่ยเหมิน"] = "nan-xia",
["ฮกเกี้ยนแบบไต้หวัน"] = "nan-hbl-TW",
["ฮกเกี้ยนแบบปีนัง"] = "nan-pen",
["ฮกเกี้ยนแบบฟิลิปปินส์"] = "nan-hbl-PH",
["ฮกเกี้ยนแบบสิงคโปร์"] = "nan-hbl-SG",
["ฮินดีกลาง"] = "hi-mid",
["ฮินดีแบบมุมไบ"] = "hi-mum",
["ฮีบรูแบบอิสราเอล"] = "he-IL",
["ฮีบรูไบเบิล"] = "hbo",
["ฮีบรูสมัยกลาง"] = "he-med",
}
rde78z0fec72ahjayfh2guzzlwn0542
มอดูล:taxlink
828
338888
5759930
1914572
2026-09-08T12:03:46Z
Octahedron80
267
5759930
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus"
or rank == "subgenus"
or rank == "subg."
or rank == "genus"
or rank == "subsection"
or rank == "section"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies"
or rank == "infraspecies"
or rank == "subsubspecies"
or rank == "subspecies"
or rank == "subsp."
or rank == "species"
or rank == "variety"
or rank == "var."
or rank == "forma"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar"
or rank == "cvar."
or rank == "series"
or rank == "ser."
or rank == "subseries"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
k540lmf2rxrkw9vblv04nkprxovujps
5759936
5759930
2026-09-08T12:20:23Z
Octahedron80
267
5759936
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus"
or rank == "subgenus"
or rank == "subg."
or rank == "genus"
or rank == "subsection"
or rank == "section"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies"
or rank == "infraspecies"
or rank == "subsubspecies"
or rank == "subspecies" or rank == "ชนิดย่อย" or rank == "สปีชีส์ย่อย"
or rank == "subsp."
or rank == "species" or rank == "ชนิด" or rank == "สปีชีส์"
or rank == "variety"
or rank == "var."
or rank == "forma"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar"
or rank == "cvar."
or rank == "series"
or rank == "ser."
or rank == "subseries"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
b1k6o3z1jqq4vyriu7afx8jfmz7xyxt
5759945
5759936
2026-09-08T12:41:27Z
Octahedron80
267
5759945
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus"
or rank == "subgenus" or rank == "สกุลย่อย"
or rank == "subg."
or rank == "genus" or rank == "สกุล"
or rank == "subsection"
or rank == "section"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies"
or rank == "infraspecies"
or rank == "subsubspecies"
or rank == "subspecies" or rank == "ชนิดย่อย" or rank == "สปีชีส์ย่อย"
or rank == "subsp."
or rank == "species" or rank == "ชนิด" or rank == "สปีชีส์"
or rank == "variety"
or rank == "var."
or rank == "forma"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar"
or rank == "cvar."
or rank == "series"
or rank == "ser."
or rank == "subseries"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
quic6g4s0v4l93pxmlf3cdwlei9sg2s
5759946
5759945
2026-09-08T12:43:10Z
Octahedron80
267
5759946
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus"
or rank == "subgenus" or rank == "สกุลย่อย"
or rank == "subg."
or rank == "genus" or rank == "สกุล"
or rank == "subsection" or rank == "หมู่ย่อย"
or rank == "section" or rank == "หมู่"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies"
or rank == "infraspecies"
or rank == "subsubspecies"
or rank == "subspecies" or rank == "ชนิดย่อย" or rank == "สปีชีส์ย่อย"
or rank == "subsp."
or rank == "species" or rank == "ชนิด" or rank == "สปีชีส์"
or rank == "variety"
or rank == "var."
or rank == "forma"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar"
or rank == "cvar."
or rank == "series"
or rank == "ser."
or rank == "subseries"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
qpreyz9op3va0y7898764cc3k5emd7m
5759947
5759946
2026-09-08T12:43:54Z
Octahedron80
267
5759947
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus"
or rank == "subgenus" or rank == "สกุลย่อย"
or rank == "subg."
or rank == "genus" or rank == "สกุล"
or rank == "subsection" or rank == "หมู่ย่อย"
or rank == "section" or rank == "หมู่"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies"
or rank == "infraspecies"
or rank == "subsubspecies"
or rank == "subspecies" or rank == "ชนิดย่อย" or rank == "สปีชีส์ย่อย"
or rank == "subsp."
or rank == "species" or rank == "ชนิด" or rank == "สปีชีส์"
or rank == "variety" or rank == "พันธุ์"
or rank == "var."
or rank == "forma"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar"
or rank == "cvar."
or rank == "series"
or rank == "ser."
or rank == "subseries"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
ppxcpaox3qijmnhgcut4l3kshrzlgt6
5759948
5759947
2026-09-08T12:45:57Z
Octahedron80
267
5759948
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus"
or rank == "subgenus" or rank == "สกุลย่อย"
or rank == "subg."
or rank == "genus" or rank == "สกุล"
or rank == "subsection" or rank == "หมู่ย่อย"
or rank == "section" or rank == "หมู่"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies"
or rank == "infraspecies"
or rank == "subsubspecies"
or rank == "subspecies" or rank == "ชนิดย่อย" or rank == "สปีชีส์ย่อย"
or rank == "subsp."
or rank == "species" or rank == "ชนิด" or rank == "สปีชีส์"
or rank == "variety" or rank == "พันธุ์"
or rank == "var."
or rank == "forma" or rank == "แบบ"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar" or rank == "พันธุ์ปลูก" or rank == "พันธุ์เพาะ"
or rank == "cvar."
or rank == "series" or rank == "ชุด"
or rank == "ser."
or rank == "subseries" or rank == "ชุดย่อย"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
80omsk3jw23jtca55qkoum8zgyzzwyf
5759950
5759948
2026-09-08T12:48:59Z
Octahedron80
267
5759950
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus"
or rank == "subgenus" or rank == "สกุลย่อย"
or rank == "subg."
or rank == "genus" or rank == "สกุล"
or rank == "subsection" or rank == "หมู่ย่อย"
or rank == "section" or rank == "หมู่"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies" or rank == "ชนิดลูกผสม" or rank == "สปีชีส์ลูกผสม"
or rank == "infraspecies"
or rank == "subsubspecies"
or rank == "subspecies" or rank == "ชนิดย่อย" or rank == "สปีชีส์ย่อย"
or rank == "subsp."
or rank == "species" or rank == "ชนิด" or rank == "สปีชีส์"
or rank == "variety" or rank == "พันธุ์"
or rank == "var."
or rank == "forma" or rank == "แบบ"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar" or rank == "พันธุ์ปลูก" or rank == "พันธุ์เพาะ"
or rank == "cvar."
or rank == "series" or rank == "ชุด"
or rank == "ser."
or rank == "subseries" or rank == "ชุดย่อย"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
i058utzgbyv1r2q1mv4of2u89imauuj
5759953
5759950
2026-09-08T12:52:28Z
Octahedron80
267
5759953
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus" or rank == "สกุลลูกผสม"
or rank == "subgenus" or rank == "สกุลย่อย"
or rank == "subg."
or rank == "genus" or rank == "สกุล"
or rank == "subsection" or rank == "หมู่ย่อย"
or rank == "section" or rank == "หมู่"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies" or rank == "ชนิดลูกผสม" or rank == "สปีชีส์ลูกผสม"
or rank == "infraspecies"
or rank == "subsubspecies"
or rank == "subspecies" or rank == "ชนิดย่อย" or rank == "สปีชีส์ย่อย"
or rank == "subsp."
or rank == "species" or rank == "ชนิด" or rank == "สปีชีส์"
or rank == "variety" or rank == "พันธุ์"
or rank == "var."
or rank == "forma" or rank == "แบบ"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar" or rank == "พันธุ์ปลูก" or rank == "พันธุ์เพาะ"
or rank == "cvar."
or rank == "series" or rank == "ชุด"
or rank == "ser."
or rank == "subseries" or rank == "ชุดย่อย"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
s8mrmqmk9tsukz4pb3zcl5msxfol7kp
5759960
5759953
2026-09-08T13:02:28Z
Octahedron80
267
5759960
Scribunto
text/plain
local export = {}
function format_text(text, rank, force_italics)
if force_italics then
return "''" .. text .. "''"
end
if rank == "nothogenus" or rank == "สกุลลูกผสม"
or rank == "subgenus" or rank == "สกุลย่อย"
or rank == "subg."
or rank == "genus" or rank == "สกุล"
or rank == "subsection" or rank == "หมู่ย่อย"
or rank == "section" or rank == "หมู่"
or rank == "subsect."
or rank == "sect."
or rank == "nothospecies" or rank == "ชนิดลูกผสม" or rank == "สปีชีส์ลูกผสม"
or rank == "infraspecies"
or rank == "subsubspecies" or rank == "ชนิดย่อยขั้นสอง" or rank == "สปีชีส์ย่อยขั้นสอง"
or rank == "subspecies" or rank == "ชนิดย่อย" or rank == "สปีชีส์ย่อย"
or rank == "subsp."
or rank == "species" or rank == "ชนิด" or rank == "สปีชีส์"
or rank == "variety" or rank == "พันธุ์"
or rank == "var."
or rank == "forma" or rank == "แบบ"
or rank == "form"
or rank == "morph"
or rank == "morpha"
or rank == "species complex"
or rank == "species group"
or rank == "cultivar" or rank == "พันธุ์ปลูก" or rank == "พันธุ์เพาะ"
or rank == "cvar."
or rank == "series" or rank == "ชุด"
or rank == "ser."
or rank == "subseries" or rank == "ชุดย่อย"
or rank == "subser."
then
text = require("Module:italics").i(text)
end
return text
end
function format_result(target, rank, text, cats, warning)
-- Don't create categories for entries on User: pages
if cats ~= "" and mw.title.getCurrentTitle().nsText == "ผู้ใช้" then
cats = ""
end
if warning ~= "" then
warning = '<sup class="error previewonly"><small>' .. warning .. '</small></sup>'
end
return '<span class="biota">' .. '[[' .. target .. '|' .. text .. ']]' .. warning .. cats .. '</span>'
end
function export.taxlink(frame)
local warn = ""
local cats = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
["nover"] = {}, -- nover is allowed but not used
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target
-- if page exists and nomul= is not set, use a local link and add to cleanup category
if (not args["nomul"]) and mw.title.new( taxon ):getContent() ~= nil then
cats = cats .. "[[หมวดหมู่:Entries with redundant template: taxlink]]"
target = taxon .. "#ภาษาร่วม"
if warn ~= "" then warn = warn .. "; " end
warn = warn .. "(Please check if this is already defined at target. Replace <code>{{[[Template:taxlink|taxlink]]}}</code> with <code>{{[[Template:taxfmt|taxfmt]]}}</code> if already defined. Add nomul=1 if not defined.)"
else
-- undocumented and unused in existing entries as of 2/24/2024, if rank is epithet use local link
if rank == "epithet" then
target = taxon .. "#ภาษาร่วม"
else
if args["wplink"] then
if args["wplink"] == "0" then
target = "w:" .. taxon
elseif args["wplink"] == "1" then
target = "w:" .. mw.loadData("Module:headword/data").pagename
else
target = "w:" .. args["wplink"]
end
else
if args["wslink"] then
target = "Wikispecies:" .. args["wslink"]
else
target = "Wikispecies:" .. taxon
end
end
end
end
if not args["nocat"] then
label = rank and rank or "unknown"
cats = cats .. "[[หมวดหมู่:Entries using missing taxonomic name (" .. label .. ")|" .. taxon .. "]]"
end
return format_result(target, rank, text, cats, warn)
end
function export.taxfmt(frame)
local warn = ""
local params = {
[1] = {required = true},
[2] = {required = true},
[3] = {},
["i"] = {type = "boolean"},
["noi"] = {type = "boolean"},
-- unused parameters, allowed for easy renaming {{taxlink}} to {{taxfmt}}
["nocat"] = {type = "boolean"},
["nomul"] = {},
["wplink"] = {},
["wslink"] = {},
}
local args = require("Module:parameters").process(frame:getParent().args, params)
local taxon = args[1] or ""
local rank = args[2] or ""
local text = args[3] or taxon
if not args["noi"] then
text = format_text(text, rank, args["i"])
end
local target = taxon .. "#ภาษาร่วม"
return format_result(target, rank, text, "", warn)
end
return export
agbx73bhv3mjhxfuqjqwohmot05xrtb
Homo sapiens
0
2358481
5759937
2026-09-08T12:25:53Z
Octahedron80
267
นำเข้าจาก enwikt เก็บกวาด
5759937
wikitext
text/x-wiki
== ภาษาร่วม ==
[[ไฟล์:Carl von Linné.jpg|thumb|{{1|lectotype}} of the species '''''Homo sapiens''''' Linnaeus, 1758, designated by Stearn, 1959. Portrait of {{w|Carl Linnaeus}} by Alexander Roslin, 1775.]]
[[ไฟล์:Human.svg|right|thumb|Detail from Pioneer 11 spacecraft plaque]]
=== รากศัพท์ ===
{{root|mul|ine-pro|*seh₁p-}}
{{etymon|mul|id=modern human|:af|mul:Homo<id:human>|la:sapiēns<id:wise>|tree=1}}
จาก{{der|mul|la|homō||มนุษย์}} + {{m|la|sapiēns||ฉลาด, รอบคอบ, มีวิจารณญาณ}}
=== การออกเสียง ===
{{col-top|2|การออกเสียง}}
* อังกฤษ:
** {{IPA|en|/ˌhəʊməʊ ˈseɪpi.ənz/|/ˌhəʊməʊ ˈsæpi.ənz/|a=RP}}
** {{IPA|en|/ˌhoʊmoʊ ˈseɪpi.ənz/|a=US}}
* อาเซอร์ไบจาน: {{az-IPA|'homo 'sapiyens}}
* กาตาลา: {{ca-IPA|indent=**|hòmo sàpiens}}
* เช็ก: {{cs-IPA|homo sapiens}}
* {{IPA+|nl|/ˌɦoːmoː ˈsaːpiɛns/}}
* ฟินแลนด์: {{fi-IPA|homo-sapi.ens}}
* ฝรั่งเศส: {{fr-IPA|homo sapiaince}}
* {{IPA+|de|[ˈhoːmo ˈzaːpi̯ɛns]}}
* ฮังการี: {{hu-IPA|hómó szápiensz}}
* อิตาลี: {{it-IPA|hómo sàpiens}}
* ละติน: {{la-IPA|indent=**|homō sapiēns}}
* โปแลนด์: {{pl-pr|indent=**}}
* {{IPA+|pt|/ˈho.mu ˈsa.pi.ẽj̃s/|a=Brazil}}
* รัสเซีย: {{ru-IPA|го́мо са́пиенс}}, {{ru-IPA|ɣо́мо са́пиенс}}
* สเปน: {{es-pr|homo sápiens<bullets:0>}}
{{col-bottom}}
=== คำวิสามานยนาม ===
{{taxoninfl|head=[[Homo]] {{epinew|sapiens||la}}|g=m|i=1}} (พหูพจน์ '''''[[Homines sapientes]]''''', หรือบางครั้ง '''''Homo sapiens''''')
# {{taxon|ชนิด|วงศ์|Hominidae|[[มนุษย์]]}}
#* {{quote-journal|en|author=Ferruccio Rossi-Landi|chapter=Linguistics and Economics|journal=Current Trends in Linguistics|location=The Hague|publisher=[[w:De Gruyter|Mouton & Co.]]|year=1974|volume=XII|others=part eight, “Linguistics and Adjacent Arts and Sciences”|section=section “The homology between linguistic production and material production”, subsection “After utensils and sentences”, subsubsection “Tenth level: Global production”|page=1888|passage=A productive unit can be a man, a more or less wide and/or permanent social group, a whole culture; the widest productive unit one can think of is mankind as the totality '''''hominum sapientium'''''.|translation=หน่วยการผลิตสามารถเป็นมนุษย์คนหนึ่ง กลุ่มทางสังคมที่กว้างขวางและ/หรือถาวรไม่มากก็น้อย หรือทั้งวัฒนธรรม หน่วยการผลิตที่กว้างขวางที่สุดที่สามารถนึกถึงได้คือมนุษยชาติในฐานะผลรวมทั้งหมดของ '''''โฮโม เซเปียนส์'''''|termlang=mul}}
#* {{quote-journal|la|journal=Bulletin du [[w:National Museum of Natural History, France|Muséum national d’histoire naturelle]]|year=1992|page=197|passage=Inter species Novae-Caledoniae singularis ob folia parva, chartacea, marginibus valde recurvis (et in sicco et in vivo), ita ut folium quodque pustulam ruptam in calce '''Hominis sapientis''' referat.|translation=มีความโดดเด่นในบรรดาสปีชีส์ของนิวแคลิโดเนียด้วยใบขนาดเล็กคล้ายกระดาษและขอบใบม้วนงออย่างยิ่ง (ทั้งในพืชสดและในตัวอย่างแห้ง) จนกระทั่งใบแต่ละใบดูคล้ายตุ่มพองแตกที่ส้นเท้าของ '''''โฮโม เซเปียนส์'''''|footer={{small|(แปลจากหน้าเดียวกัน)}}|termlang=mul}}
#* {{quote-book|en|author=Bronisław Bombała|chapter=In Search of the Sources of Humanity|editor=w:Anna-Teresa Tymieniecka|title=Phenomenology of Life from the Animal Soul to the Human Mind|series=Analecta Husserliana: The Yearbook of Phenomenological Research|seriesvolume=XCIII|publisher=[[w:Springer Science+Business Media|Springer]]|year=2007|others=book I, “In Search of Experience”, supersection “Sources of Humanity”|section=section “In Search of the Starting Point of the Anthropogenesis”|page=110|isbn=978-1-4020-5192-0|passage=One may only suppose that the roots of the “thinking” man go back to the anthropoids from Oligocene, while apes and homonidae were only lateral shells of the anthropogenesis. The same refers to the subspecies of homonidae, which were also lateral shells, replaced by '''''hominis sapientis'''''.|translation=เราอาจสันนิษฐานได้เพียงว่ารากเหง้าของมนุษย์ "ผู้มีความคิด" ย้อนกลับไปถึงแอนโทรพอยด์จากสมัยโอลิโกซีน ในขณะที่เอปและโฮมินิดีเป็นเพียงเปลือกด้านข้างของการกำเนิดมนุษย์ สิ่งเดียวกันนี้ยังหมายรวมถึงชนิดย่อยของโฮมินิดี ซึ่งก็เป็นเปลือกด้านข้างเช่นกัน และถูกแทนที่ด้วย '''''โฮโม เซเปียนส์'''''|termlang=mul}}
#* {{quote-book|en|author=w:Zygmunt Bauman|chapter=Afterword: From official to “do it yourself” fear|title=State of Fear in a Liquid World|publisher=w:Routledge|year=2017|page=107|isbn=978-1-315-27012-8|passage=Nothingness and eternity can be and indeed are obsessively attempted to be imagined – postulated and/or presumed to exist; they can’t however be visualized. Both stay tenaciously beyond the reach of their sensual equipment as much as remaining in-excisable and un-eliminable from the '''''homini sapienti''''' ruminations.|translation=ความว่างเปล่าและความเป็นนิรันดร์สามารถถูกพยายามจินตนาการขึ้นมาอย่างหมกมุ่นได้จริง – โดยตั้งเป็นสมมติฐานและ/หรือทึกทักว่ามีอยู่จริง ทว่าไม่อาจนึกเห็นเป็นภาพได้ ทั้งสองสิ่งยังคงอยู่นอกเหนือการรับรู้ทางผัสสะของพวกมันอย่างเหนียวแน่น พอ ๆ กับที่ยังคงไม่สามารถตัดทิ้งหรือขจัดออกไปจากความคิดคำนึงของ '''''โฮโม เซเปียนส์''''' ได้|termlang=mul}}
==== คำจ่ากลุ่ม ====
* {{sense|ชนิด}} {{Homo Hypernyms}}
==== คำลูกกลุ่ม ====
* {{sense|ชนิด}} {{taxfmt|Homo sapiens sapiens|ชนิดย่อย}} (มนุษย์สมัยใหม่){{--}} ชนิดย่อยที่มีอยู่
** †{{taxfmt|Homo sapiens idaltu|ชนิดย่อย}}{{--}} ชนิดย่อยที่สูญพันธุ์
==== ลูกคำ ====
* {{taxfmt|Homo sapiens neanderthalensis|ชนิดย่อย}}
* {{taxfmt|Homo sapiens sapiens|ชนิดย่อย}}
==== คำสืบทอด ====
* {{desc|en|Homo sapien|sapien|sapiens|Homo insipiens|bor=1}}
* {{desc|hi|[[होमो सैपियन्स]]|bor=1}}
=== ดูเพิ่ม ===
* ในอักษรอื่น:
** อักษรเทวนาครี: {{m|hi|होमो सैपियन्स|g=m}}
** อักษรเบงกอล: {{m|bn|হোমো সেপিয়েন্স|tr=hōmō sepiẏens}}
** อักษรคาตากานะ: {{m|ja|ホモサピエンス||tr=homosapiensu}}, {{m|ja|ホモ・サピエンス||tr=homo-sapiensu}}
** อักษรฮันกึล: {{m|ko|호모 사피엔스}}
** อักษรซีริลลิก: {{m|ru|го́мо са́пиенс|tr=gómo sápiens|g=m}}
=== อ้างอิง ===
* {{pedia|i=1}}<!--Thai OK-->
* {{specieslite|i=1}}
* {{comcatlite|i=1}}
* {{pedia|List of sequenced animal genomes|lang=en}}
{{cln|mul|terms with IPA pronunciation}}
{{C|mul|Hominids|มนุษย์}}
== ภาษาอังกฤษ ==
=== คำนาม ===
{{head|en|รูปนาม|head=[[Homo]] [[sapiens]]}}
# {{plural of|en|Homo sapien}}
fmjtn6fghsof669ymd7o7q6dm8tqq9f
แม่แบบ:1
10
2358482
5759938
2026-09-08T12:26:16Z
Octahedron80
267
นำเข้าจาก enwikt
5759938
wikitext
text/x-wiki
#REDIRECT [[Template:cap]]
kykyb6l8cl5yzei3yuqmj8mvtvlj3pf
แม่แบบ:IPA+
10
2358483
5759939
2026-09-08T12:26:38Z
Octahedron80
267
นำเข้าจาก enwikt
5759939
wikitext
text/x-wiki
{{#invoke:IPA/templates|IPA|include_langname=1}}<!--
--><noinclude>{{documentation}}</noinclude>
ejlrqt1gfpevfiz6ofqwckjoeys633q
nothospecies
0
2358484
5759949
2026-09-08T12:48:27Z
Octahedron80
267
นำเข้าจาก enwikt เก็บกวาด
5759949
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
จาก{{prefix|en|notho|species}}
=== การออกเสียง ===
* {{IPA|en|/ˈnɒθəʊˌspiːʃiz/}}
** {{audio|en|LL-Q1860 (eng)-Vealhurl-nothospecies.wav|a=Southern England}}
=== คำนาม ===
{{en-noun|*}}
# {{lb|en|พฤกษศาสตร์}} [[ลูกผสม]]ที่เกิดจากการ[[ผสมข้าม]]กันโดยตรงระหว่างสอง[[ชนิด]] ไม่ใช่ลูกผสมอื่น
#* {{quote-journal|en|year=1999|author=Günter Staudt|title=Systematics and Geographic Distribution of the American Strawberry Species: Taxonomic Studies in the Genus Fragaria (Rosaceae: Potentilleae)|journal=Botany|volume=81|publisher=University of California Press|url=http://books.google.com.au/books?id=LU29C_V3DNkC&pg=PA32&dq=%22nothospecies%22&hl=en&sa=X&ei=eMLwUYatMKWXiQeO5YGQDg&ved=0CDUQ6AEwAQ#v=onepage&q=%22nothospecies%22&f=false|page=32|text=The fourth species, the '''nothospecies''' ''Fragaria × ananassa'', was originally established for the hybrids ''F. chiloensis'' × ''F. virginiana'', which had originated under cultivation and are known as the large-fruited garden strawberries. When the hybrid populations in the coastal regions of northwestern North America were identified as introgressants of the same two octoploid species, they were combined with the cultivated garden strawberries into the '''nothospecies''' ''F. ×ananassa''.|translation=ชนิดที่สี่ ซึ่งเป็น'''ลูกผสมระหว่างสองชนิด''' ''Fragaria × ananassa'' เดิมถูกกำหนดขึ้นสำหรับลูกผสม ''F. chiloensis'' × ''F. virginiana'' ซึ่งกำเนิดขึ้นภายใต้การเพาะปลูกและเป็นที่รู้จักกันในชื่อสตรอว์เบอร์รีสวนผลใหญ่ เมื่อประชากรลูกผสมในแถบชายฝั่งตะวันตกเฉียงเหนือของทวีปอเมริกาเหนือได้รับการระบุว่าเป็นผลจากการถ่ายเทยีนข้ามชนิดของชนิดออกทาพลอยด์สองชนิดเดียวกันนี้ จึงถูกรวมเข้ากับสตรอว์เบอร์รีสวนที่เพาะปลูกเป็น'''ลูกผสมระหว่างสองชนิด''' ''F. ×ananassa''}}
#* {{quote-book|en|year=2004|author=David M. Spooner|title=Wild potatoes (Solanum section Petota; Solanaceae) of North and Central America|url=http://books.google.com.au/books?id=xj4lAQAAMAAJ&q=%22nothospecies%22&dq=%22nothospecies%22&hl=en&sa=X&ei=eMLwUYatMKWXiQeO5YGQDg&ved=0CIkBEOgBMBI|page=17|text=For our treatment we designate hybrid species ('''nothospecies''') by prefix with a multiplication sign placed flush with the species epithet (×; Art H.1.1; H.3A.1 of the ''International Code of Botanical Nomenclature'', Greuter et al. 2000) only if they are of restricted distribution and are sympatric with their putative parents.|translation=สำหรับแนวทางการจัดจำแนกของเรา เรากำหนดชนิดลูกผสม ('''โนโทชนิด''') โดยใส่เครื่องหมายคูณนำหน้าติดกับคำระบุชนิด (×; มาตรา H.1.1; H.3A.1 ของ ''International Code of Botanical Nomenclature'', Greuter et al. 2000) เฉพาะในกรณีที่มีการกระจายพันธุ์จำกัดและพบร่วมถิ่นกับชนิดพ่อแม่ที่สันนิษฐานไว้เท่านั้น}}
#* {{quote-book|en|year=2011|author=Arthur Haines|title=New England Wild Flower Society's Flora Novae Angliae: A Manual for the Identification of Native and Naturalized Higher Vascular Plants of New England|url=http://books.google.com.au/books?id=RKKWVwC_sdoC&pg=PR16&dq=%22nothospecies%22&hl=en&sa=X&ei=eMLwUYatMKWXiQeO5YGQDg&ved=0CFYQ6AEwCA#v=onepage&q=%22nothospecies%22&f=false|page=xvi|text=The number that precedes each species is presented to help determine parentage of '''nothospecies''' (i.e., hybrids). Therefore, all '''nothospecies''' included in the manual are provided with a numeric formula (e.g., 1 × 3) in addition to the scientific name (when present).|translation=ตัวเลขที่นำหน้าแต่ละชนิดระบุไว้เพื่อช่วยระบุความเป็นพ่อแม่ของ'''ชนิดลูกผสม''' (กล่าวคือ ลูกผสม) ดังนั้น '''โนโทชนิด'''ทั้งหมดที่ระบุไว้ในคู่มือจึงมีสูตรตัวเลขกำกับไว้ (เช่น 1 × 3) เพิ่มเติมจากชื่อวิทยาศาสตร์ (เมื่อมีระบุไว้)}}
==== หมายเหตุการใช้ ====
* ชนิดลูกผสม (nothospecies) อาจระบุได้โดยใช้เครื่องหมายคูณ (×) คั่นระหว่างชื่อทวินามของชนิดพ่อแม่ (เมื่อทราบชนิดพ่อแม่ทั้งสองชนิด) หรือโดยวางเครื่องหมายคูณติดกับ[[คำระบุชนิด]]ในชื่อทวินาม
==== คำเกี่ยวข้อง ====
* {{l|en|nothogeneric}}
* {{l|en|nothogenus}}
* {{l|en|nothospecific}}
* {{l|en|nothosubspecies}}
* {{l|en|nothotaxon}}
==== ดูเพิ่ม ====
* {{l|en|cultivar}}
* {{l|en|grex name}}
sxzvwam48mpp41go86afv45greal7jc
5759951
5759949
2026-09-08T12:50:21Z
Octahedron80
267
/* คำนาม */
5759951
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
จาก{{prefix|en|notho|species}}
=== การออกเสียง ===
* {{IPA|en|/ˈnɒθəʊˌspiːʃiz/}}
** {{audio|en|LL-Q1860 (eng)-Vealhurl-nothospecies.wav|a=Southern England}}
=== คำนาม ===
{{en-noun|*}}
# {{lb|en|พฤกษศาสตร์}} [[ลูกผสม]]ที่เกิดจากการ[[ผสมข้าม]]กันโดยตรงระหว่างสอง[[ชนิด]] ไม่ใช่ลูกผสมอื่น
#* {{quote-journal|en|year=1999|author=Günter Staudt|title=Systematics and Geographic Distribution of the American Strawberry Species: Taxonomic Studies in the Genus Fragaria (Rosaceae: Potentilleae)|journal=Botany|volume=81|publisher=University of California Press|url=http://books.google.com.au/books?id=LU29C_V3DNkC&pg=PA32&dq=%22nothospecies%22&hl=en&sa=X&ei=eMLwUYatMKWXiQeO5YGQDg&ved=0CDUQ6AEwAQ#v=onepage&q=%22nothospecies%22&f=false|page=32|text=The fourth species, the '''nothospecies''' ''Fragaria × ananassa'', was originally established for the hybrids ''F. chiloensis'' × ''F. virginiana'', which had originated under cultivation and are known as the large-fruited garden strawberries. When the hybrid populations in the coastal regions of northwestern North America were identified as introgressants of the same two octoploid species, they were combined with the cultivated garden strawberries into the '''nothospecies''' ''F. ×ananassa''.|translation=ชนิดที่สี่ ซึ่งเป็น'''ลูกผสมระหว่างสองชนิด''' ''Fragaria × ananassa'' เดิมถูกกำหนดขึ้นสำหรับลูกผสม ''F. chiloensis'' × ''F. virginiana'' ซึ่งกำเนิดขึ้นภายใต้การเพาะปลูกและเป็นที่รู้จักกันในชื่อสตรอว์เบอร์รีสวนผลใหญ่ เมื่อประชากรลูกผสมในแถบชายฝั่งตะวันตกเฉียงเหนือของทวีปอเมริกาเหนือได้รับการระบุว่าเป็นผลจากการถ่ายเทยีนข้ามชนิดของชนิดออกทาพลอยด์สองชนิดเดียวกันนี้ จึงถูกรวมเข้ากับสตรอว์เบอร์รีสวนที่เพาะปลูกเป็น'''ลูกผสมระหว่างสองชนิด''' ''F. ×ananassa''}}
#* {{quote-book|en|year=2004|author=David M. Spooner|title=Wild potatoes (Solanum section Petota; Solanaceae) of North and Central America|url=http://books.google.com.au/books?id=xj4lAQAAMAAJ&q=%22nothospecies%22&dq=%22nothospecies%22&hl=en&sa=X&ei=eMLwUYatMKWXiQeO5YGQDg&ved=0CIkBEOgBMBI|page=17|text=For our treatment we designate hybrid species ('''nothospecies''') by prefix with a multiplication sign placed flush with the species epithet (×; Art H.1.1; H.3A.1 of the ''International Code of Botanical Nomenclature'', Greuter et al. 2000) only if they are of restricted distribution and are sympatric with their putative parents.|translation=สำหรับแนวทางการจัดจำแนกของเรา เรากำหนดชนิดลูกผสม ('''โนโทสปีชีส์''') โดยใส่เครื่องหมายคูณนำหน้าติดกับคำระบุชนิด (×; มาตรา H.1.1; H.3A.1 ของ ''International Code of Botanical Nomenclature'', Greuter et al. 2000) เฉพาะในกรณีที่มีการกระจายพันธุ์จำกัดและพบร่วมถิ่นกับชนิดพ่อแม่ที่สันนิษฐานไว้เท่านั้น}}
#* {{quote-book|en|year=2011|author=Arthur Haines|title=New England Wild Flower Society's Flora Novae Angliae: A Manual for the Identification of Native and Naturalized Higher Vascular Plants of New England|url=http://books.google.com.au/books?id=RKKWVwC_sdoC&pg=PR16&dq=%22nothospecies%22&hl=en&sa=X&ei=eMLwUYatMKWXiQeO5YGQDg&ved=0CFYQ6AEwCA#v=onepage&q=%22nothospecies%22&f=false|page=xvi|text=The number that precedes each species is presented to help determine parentage of '''nothospecies''' (i.e., hybrids). Therefore, all '''nothospecies''' included in the manual are provided with a numeric formula (e.g., 1 × 3) in addition to the scientific name (when present).|translation=ตัวเลขที่นำหน้าแต่ละชนิดระบุไว้เพื่อช่วยระบุความเป็นพ่อแม่ของ'''ชนิดลูกผสม''' (กล่าวคือ ลูกผสม) ดังนั้น '''โนโทสปีชีส์'''ทั้งหมดที่ระบุไว้ในคู่มือจึงมีสูตรตัวเลขกำกับไว้ (เช่น 1 × 3) เพิ่มเติมจากชื่อวิทยาศาสตร์ (เมื่อมีระบุไว้)}}
==== หมายเหตุการใช้ ====
* ชนิดลูกผสม (nothospecies) อาจระบุได้โดยใช้เครื่องหมายคูณ (×) คั่นระหว่างชื่อทวินามของชนิดพ่อแม่ (เมื่อทราบชนิดพ่อแม่ทั้งสองชนิด) หรือโดยวางเครื่องหมายคูณติดกับ[[คำระบุชนิด]]ในชื่อทวินาม
==== คำเกี่ยวข้อง ====
* {{l|en|nothogeneric}}
* {{l|en|nothogenus}}
* {{l|en|nothospecific}}
* {{l|en|nothosubspecies}}
* {{l|en|nothotaxon}}
==== ดูเพิ่ม ====
* {{l|en|cultivar}}
* {{l|en|grex name}}
nzwtx2gzziottpk5wbsptk2xvl6lthz
nothogenus
0
2358485
5759952
2026-09-08T12:52:09Z
Octahedron80
267
นำเข้าจาก enwikt เก็บกวาด
5759952
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
{{ety|en|:af|notho-|genus|text=+|tree=1}}
=== คำนาม ===
{{en-noun|nothogenera}}
# [[สกุล]]ที่บ่งบอกถึง[[ลูกผสม]]หรือ[[การผสมข้ามพันธุ์]]
==== คำเกี่ยวข้อง ====
* {{l|en|nothospecies}}
iqs903rkqxms7xrbiuc7i2fsyi70t9d
infraspecies
0
2358486
5759954
2026-09-08T12:53:49Z
Octahedron80
267
นำเข้าจาก enwikt เก็บกวาด
5759954
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
จาก{{prefix|en|infra|species}}
=== คำนาม ===
{{en-noun|*}}
# [[ชื่อ]]ระดับต่ำกว่า[[ชนิด]] (สำหรับ[[อนุกรมวิธาน]]ที่ต่ำกว่าระดับชนิด) ซึ่งใช้ในเชิงไม่เป็นทางการเป็นลำดับชั้นในทางสัตววิทยา
=== อ้างอิง ===
* {{pedia}}
crze3ybmar1t5hstdyyakq0sym93a5d
5759955
5759954
2026-09-08T12:54:00Z
Octahedron80
267
/* อ้างอิง */
5759955
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
จาก{{prefix|en|infra|species}}
=== คำนาม ===
{{en-noun|*}}
# [[ชื่อ]]ระดับต่ำกว่า[[ชนิด]] (สำหรับ[[อนุกรมวิธาน]]ที่ต่ำกว่าระดับชนิด) ซึ่งใช้ในเชิงไม่เป็นทางการเป็นลำดับชั้นในทางสัตววิทยา
=== อ้างอิง ===
* {{pedia|lang=en}}
jtej8p3frrbtiivza1sswhgc2z4atsu
subsubspecies
0
2358487
5759956
2026-09-08T12:58:14Z
Octahedron80
267
นำเข้าจาก enwikt เก็บกวาด
5759956
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
จาก{{prefix|en|sub|subspecies}}
=== คำนาม ===
{{en-noun|*}}
# ชนิดย่อยขั้นสอง, [[ชนิดย่อย]]ของชนิดย่อย
#* {{quote-book|en|author=[[w:Adolf Bernhard Meyer|A[dolf] B[ernhard] Meyer]]; [[w:Lionel William Wiglesworth|L[ionel] W[illiam] Wiglesworth]]|title=The Birds of Celebes and the Neighbouring Islands|volume=I|location=Berlin|publisher=R. Friedländer & Sohn|year=1898|page=52|pageurl=https://archive.org/details/birdsCelebesnei1Meye/page/52/mode/1up?view=theater|passage={{...}}and any geographical sections of the whole which have been called by distinct names are, by definition, only subspecies, or even '''subsubspecies'''.|translation={{...}}และส่วนทางภูมิศาสตร์ใด ๆ ของทั้งหมดที่ได้รับการเรียกขานด้วยชื่อที่แตกต่างกัน โดยนิยามแล้วก็เป็นเพียงชนิดย่อย หรือกระทั่ง'''ชนิดย่อยขั้นสอง'''}}
#* {{quote-book|en|author=w:Stanley A. Cain|title=Foundations of Plant Geography|location=New York, N.Y.; London|publisher=[[w:Harper (publisher)|Harper & Brothers]]|year=1944|page=383|pageurl=https://archive.org/details/dli.ernet.19086/page/383/mode/1up?view=theater|passage=Kinsey’s species of ''Cynips'' are considered to be only subspecies or '''subsubspecies''' by Goldschmidt (282).|translation=สปีชีส์ของ ''Cynips'' ตามการจัดของคินซีย์ ถูกมองว่าเป็นเพียงชนิดย่อยหรือ'''ชนิดย่อยขั้นสอง'''เท่านั้นโดยโกลด์ชมิดต์ (282)}}
#* {{quote-journal|en|author=E. Gorton Linsley|title=The Naming of Infra-Specific Categories|journal=Entomological News|volume=LV|issue=9|location=Philadelphia, Pa.|publisher=[[w:American Entomological Society|The American Entomological Society]]; The Academy of Natural Sciences|month=November|year=1944|pages=227–228|pageurl=https://archive.org/details/entomologicalnew54amer/page/228/mode/1up?view=theater|passage=Cases may also be encountered where very distinct subspecies appear to have been further segregated into what might be equivalent to “'''subsubspecies'''.”|translation=อาจพบกรณีที่ชนิดย่อยที่จำแนกได้อย่างชัดเจนดูเหมือนจะถูกแบ่งย่อยลงไปอีกจนอาจเทียบเท่ากับ "'''ชนิดย่อยขั้นสอง'''"}}
#* {{quote-book|en|author=Paul B. Weisz|title=The Science of Zoology|publisher=[[w:McGraw Hill Education|McGraw-Hill Book Company]]|year=1966|page=437|pageurl=https://archive.org/details/scienceofzoology00weis/page/437/mode/1up?view=theater|lccn=65-21577|passage=Moreover, a species usually encompasses subordinate classification groups such as subspecies (or ''varieties''), '''subsubspecies''' (or ''races''), and strains, and these too are distinguished by particular, unique variations (Fig. 16.2).|translation=นอกจากนี้ สปีชีส์หนึ่ง ๆ มักครอบคลุมกลุ่มการจำแนกชั้นที่อยู่ลำดับรองลงไป เช่น ชนิดย่อย (หรือ ''ความหลากหลาย''), '''ชนิดย่อยขั้นสอง''' (หรือ ''เชื้อชาติ/สายพันธุ์'') และสายพันธุ์บริสุทธิ์ และกลุ่มเหล่านี้ก็แยกความแตกต่างได้ด้วยความแปรผันที่มีลักษณะเฉพาะ (ภาพที่ 16.2)}}
==== คำเกี่ยวข้อง ====
{{col|en
|infrasubspecific
|subsubdomain
|subsubpopulation
|subspecific
|subsubtype
}}
tijdp9qwdozrzn2ewug4g3i7ze32e4k
5759957
5759956
2026-09-08T12:59:50Z
Octahedron80
267
/* คำนาม */
5759957
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
จาก{{prefix|en|sub|subspecies}}
=== คำนาม ===
{{en-noun|*}}
# ชนิดย่อยขั้นสอง, [[ชนิดย่อย]]ของชนิดย่อย
#* {{quote-book|en|author=[[w:Adolf Bernhard Meyer|A[dolf] B[ernhard] Meyer]]; [[w:Lionel William Wiglesworth|L[ionel] W[illiam] Wiglesworth]]|title=The Birds of Celebes and the Neighbouring Islands|volume=I|location=Berlin|publisher=R. Friedländer & Sohn|year=1898|page=52|pageurl=https://archive.org/details/birdsCelebesnei1Meye/page/52/mode/1up?view=theater|passage={{...}}and any geographical sections of the whole which have been called by distinct names are, by definition, only subspecies, or even '''subsubspecies'''.|translation={{...}}และส่วนทางภูมิศาสตร์ใด ๆ ของทั้งหมดที่ได้รับการเรียกขานด้วยชื่อที่แตกต่างกัน โดยนิยามแล้วก็เป็นเพียงชนิดย่อย หรือกระทั่ง'''ชนิดย่อยขั้นสอง'''}}
#* {{quote-book|en|author=w:Stanley A. Cain|title=Foundations of Plant Geography|location=New York, N.Y.; London|publisher=[[w:Harper (publisher)|Harper & Brothers]]|year=1944|page=383|pageurl=https://archive.org/details/dli.ernet.19086/page/383/mode/1up?view=theater|passage=Kinsey’s species of ''Cynips'' are considered to be only subspecies or '''subsubspecies''' by Goldschmidt (282).|translation=ชนิดของ ''Cynips'' ตามการจัดของคินซีย์ ถูกมองว่าเป็นเพียงชนิดย่อยหรือ'''ชนิดย่อยขั้นสอง'''เท่านั้นโดยโกลด์ชมิดต์ (282)}}
#* {{quote-journal|en|author=E. Gorton Linsley|title=The Naming of Infra-Specific Categories|journal=Entomological News|volume=LV|issue=9|location=Philadelphia, Pa.|publisher=[[w:American Entomological Society|The American Entomological Society]]; The Academy of Natural Sciences|month=November|year=1944|pages=227–228|pageurl=https://archive.org/details/entomologicalnew54amer/page/228/mode/1up?view=theater|passage=Cases may also be encountered where very distinct subspecies appear to have been further segregated into what might be equivalent to “'''subsubspecies'''.”|translation=อาจพบกรณีที่ชนิดย่อยที่จำแนกได้อย่างชัดเจนดูเหมือนจะถูกแบ่งย่อยลงไปอีกจนอาจเทียบเท่ากับ "'''ชนิดย่อยขั้นสอง'''"}}
#* {{quote-book|en|author=Paul B. Weisz|title=The Science of Zoology|publisher=[[w:McGraw Hill Education|McGraw-Hill Book Company]]|year=1966|page=437|pageurl=https://archive.org/details/scienceofzoology00weis/page/437/mode/1up?view=theater|lccn=65-21577|passage=Moreover, a species usually encompasses subordinate classification groups such as subspecies (or ''varieties''), '''subsubspecies''' (or ''races''), and strains, and these too are distinguished by particular, unique variations (Fig. 16.2).|translation=นอกจากนี้ ชนิดหนึ่ง ๆ มักครอบคลุมกลุ่มการจำแนกชั้นที่อยู่ลำดับรองลงไป เช่น ชนิดย่อย (หรือ ''ความหลากหลาย''), '''ชนิดย่อยขั้นสอง''' (หรือ ''เชื้อชาติ/สายพันธุ์'') และสายพันธุ์บริสุทธิ์ และกลุ่มเหล่านี้ก็แยกความแตกต่างได้ด้วยความแปรผันที่มีลักษณะเฉพาะ (ภาพที่ 16.2)}}
==== คำเกี่ยวข้อง ====
{{col|en
|infrasubspecific
|subsubdomain
|subsubpopulation
|subspecific
|subsubtype
}}
luh9qrg2qwrfzp9wnan2toms23hlxjp
5759958
5759957
2026-09-08T13:00:23Z
Octahedron80
267
/* คำนาม */
5759958
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
จาก{{prefix|en|sub|subspecies}}
=== คำนาม ===
{{en-noun|*}}
# ชนิดย่อยขั้นสอง, [[ชนิดย่อย]]ของชนิดย่อย
#* {{quote-book|en|author=[[w:Adolf Bernhard Meyer|A[dolf] B[ernhard] Meyer]]; [[w:Lionel William Wiglesworth|L[ionel] W[illiam] Wiglesworth]]|title=The Birds of Celebes and the Neighbouring Islands|volume=I|location=Berlin|publisher=R. Friedländer & Sohn|year=1898|page=52|pageurl=https://archive.org/details/birdsCelebesnei1Meye/page/52/mode/1up?view=theater|passage={{...}}and any geographical sections of the whole which have been called by distinct names are, by definition, only subspecies, or even '''subsubspecies'''.|translation={{...}}และส่วนทางภูมิศาสตร์ใด ๆ ของทั้งหมดที่ได้รับการเรียกขานด้วยชื่อที่แตกต่างกัน โดยนิยามแล้วก็เป็นเพียงชนิดย่อย หรือกระทั่ง'''ชนิดย่อยขั้นสอง'''}}
#* {{quote-book|en|author=w:Stanley A. Cain|title=Foundations of Plant Geography|location=New York, N.Y.; London|publisher=[[w:Harper (publisher)|Harper & Brothers]]|year=1944|page=383|pageurl=https://archive.org/details/dli.ernet.19086/page/383/mode/1up?view=theater|passage=Kinsey’s species of ''Cynips'' are considered to be only subspecies or '''subsubspecies''' by Goldschmidt (282).|translation=ชนิดของ ''Cynips'' ตามการจัดของคินซีย์ ถูกมองว่าเป็นเพียงชนิดย่อยหรือ'''ชนิดย่อยขั้นสอง'''เท่านั้นโดยโกลด์ชมิดต์ (282)}}
#* {{quote-journal|en|author=E. Gorton Linsley|title=The Naming of Infra-Specific Categories|journal=Entomological News|volume=LV|issue=9|location=Philadelphia, Pa.|publisher=[[w:American Entomological Society|The American Entomological Society]]; The Academy of Natural Sciences|month=November|year=1944|pages=227–228|pageurl=https://archive.org/details/entomologicalnew54amer/page/228/mode/1up?view=theater|passage=Cases may also be encountered where very distinct subspecies appear to have been further segregated into what might be equivalent to “'''subsubspecies'''.”|translation=อาจพบกรณีที่ชนิดย่อยที่จำแนกได้อย่างชัดเจนดูเหมือนจะถูกแบ่งย่อยลงไปอีกจนอาจเทียบเท่ากับ "'''ชนิดย่อยขั้นสอง'''"}}
#* {{quote-book|en|author=Paul B. Weisz|title=The Science of Zoology|publisher=[[w:McGraw Hill Education|McGraw-Hill Book Company]]|year=1966|page=437|pageurl=https://archive.org/details/scienceofzoology00weis/page/437/mode/1up?view=theater|lccn=65-21577|passage=Moreover, a species usually encompasses subordinate classification groups such as subspecies (or ''varieties''), '''subsubspecies''' (or ''races''), and strains, and these too are distinguished by particular, unique variations (Fig. 16.2).|translation=นอกจากนี้ ชนิดหนึ่ง ๆ มักครอบคลุมกลุ่มการจำแนกชั้นที่อยู่ลำดับรองลงไป เช่น ชนิดย่อย (หรือ ''พันธุ์''), '''ชนิดย่อยขั้นสอง''' (หรือ ''เชื้อชาติ/สายพันธุ์'') และสายพันธุ์บริสุทธิ์ และกลุ่มเหล่านี้ก็แยกความแตกต่างได้ด้วยความแปรผันที่มีลักษณะเฉพาะ (ภาพที่ 16.2)}}
==== คำเกี่ยวข้อง ====
{{col|en
|infrasubspecific
|subsubdomain
|subsubpopulation
|subspecific
|subsubtype
}}
t5qd8tya4i0ponlx31bxg595ch8kakv
5759959
5759958
2026-09-08T13:01:09Z
Octahedron80
267
/* คำนาม */
5759959
wikitext
text/x-wiki
== ภาษาอังกฤษ ==
=== รากศัพท์ ===
จาก{{prefix|en|sub|subspecies}}
=== คำนาม ===
{{en-noun|*}}
# ชนิดย่อยขั้นสอง, [[ชนิดย่อย]]ของชนิดย่อย
#* {{quote-book|en|author=[[w:Adolf Bernhard Meyer|A[dolf] B[ernhard] Meyer]]; [[w:Lionel William Wiglesworth|L[ionel] W[illiam] Wiglesworth]]|title=The Birds of Celebes and the Neighbouring Islands|volume=I|location=Berlin|publisher=R. Friedländer & Sohn|year=1898|page=52|pageurl=https://archive.org/details/birdsCelebesnei1Meye/page/52/mode/1up?view=theater|passage={{...}}and any geographical sections of the whole which have been called by distinct names are, by definition, only subspecies, or even '''subsubspecies'''.|translation={{...}}และส่วนทางภูมิศาสตร์ใด ๆ ของทั้งหมดที่ได้รับการเรียกขานด้วยชื่อที่แตกต่างกัน โดยนิยามแล้วก็เป็นเพียงชนิดย่อย หรือกระทั่ง'''ชนิดย่อยขั้นสอง'''}}
#* {{quote-book|en|author=w:Stanley A. Cain|title=Foundations of Plant Geography|location=New York, N.Y.; London|publisher=[[w:Harper (publisher)|Harper & Brothers]]|year=1944|page=383|pageurl=https://archive.org/details/dli.ernet.19086/page/383/mode/1up?view=theater|passage=Kinsey’s species of ''Cynips'' are considered to be only subspecies or '''subsubspecies''' by Goldschmidt (282).|translation=ชนิดของ ''Cynips'' ตามการจัดของคินซีย์ ถูกมองว่าเป็นเพียงชนิดย่อยหรือ'''ชนิดย่อยขั้นสอง'''เท่านั้นโดยโกลด์ชมิดต์ (282)}}
#* {{quote-journal|en|author=E. Gorton Linsley|title=The Naming of Infra-Specific Categories|journal=Entomological News|volume=LV|issue=9|location=Philadelphia, Pa.|publisher=[[w:American Entomological Society|The American Entomological Society]]; The Academy of Natural Sciences|month=November|year=1944|pages=227–228|pageurl=https://archive.org/details/entomologicalnew54amer/page/228/mode/1up?view=theater|passage=Cases may also be encountered where very distinct subspecies appear to have been further segregated into what might be equivalent to “'''subsubspecies'''.”|translation=อาจพบกรณีที่ชนิดย่อยที่จำแนกได้อย่างชัดเจนดูเหมือนจะถูกแบ่งย่อยลงไปอีกจนอาจเทียบเท่ากับ "'''ชนิดย่อยขั้นสอง'''"}}
#* {{quote-book|en|author=Paul B. Weisz|title=The Science of Zoology|publisher=[[w:McGraw Hill Education|McGraw-Hill Book Company]]|year=1966|page=437|pageurl=https://archive.org/details/scienceofzoology00weis/page/437/mode/1up?view=theater|lccn=65-21577|passage=Moreover, a species usually encompasses subordinate classification groups such as subspecies (or ''varieties''), '''subsubspecies''' (or ''races''), and strains, and these too are distinguished by particular, unique variations (Fig. 16.2).|translation=นอกจากนี้ ชนิดหนึ่ง ๆ มักครอบคลุมกลุ่มการจำแนกชั้นที่อยู่ลำดับรองลงไป เช่น ชนิดย่อย (หรือ ''พันธุ์''), '''ชนิดย่อยขั้นสอง''' (หรือ ''เผ่าพันธุ์'') และสายพันธุ์บริสุทธิ์ และกลุ่มเหล่านี้ก็แยกความแตกต่างได้ด้วยความแปรผันที่มีลักษณะเฉพาะ (ภาพที่ 16.2)}}
==== คำเกี่ยวข้อง ====
{{col|en
|infrasubspecific
|subsubdomain
|subsubpopulation
|subspecific
|subsubtype
}}
qy5r7r2skvk5tvstk4otonyy4bj0gdp
แม่แบบ:epinew
10
2358488
5759962
2026-09-08T13:05:08Z
Octahedron80
267
นำเข้าจาก enwikt
5759962
wikitext
text/x-wiki
{{#invoke:checkparams|warn}}<!-- Validate template parameters
-->{{l|{{{3|und}}}|{{{1}}}|{{{2|}}}}}<!--
-->{{#if:{{NAMESPACE}}<!--
-->|<!--
do nothing
-->|<!--
-->{{#if:{{{nomul|}}}{{{notax|}}}<!--
-->|<!--
-->[[Category:Species entry using missing {{#invoke:languages/templates|getByCode|{{{3|und}}}|getCanonicalName}} specific epithet|{{{1}}} {{{2|}}}]]<!--
-->|<!--
-->{{#ifexist:{{{1}}}<!--
-->|<!--
-->[[Category:Species name using {{#invoke:languages/templates|getByCode|{{{3|und}}}|getCanonicalName}} specific epithet|{{{1}}} {{{2|}}}]]<!--
-->|<!--
-->[[Category:Species entry using missing {{#invoke:languages/templates|getByCode|{{{3|und}}}|getCanonicalName}} specific epithet|{{{1}}} {{{2|}}}]]<!--
-->}}<!--
-->}}<!--
-->}}<!--
--><noinclude>{{documentation}}</noinclude>
abdsfc07xpsjtpd3owf22appofa045l
5759963
5759962
2026-09-08T13:07:02Z
Octahedron80
267
5759963
wikitext
text/x-wiki
{{#invoke:checkparams|warn}}<!-- Validate template parameters
-->{{l|{{{3|und}}}|{{{1}}}|{{{2|}}}|tr=-}}<!-- not to transcribe
-->{{#if:{{NAMESPACE}}<!--
-->|<!--
do nothing
-->|<!--
-->{{#if:{{{nomul|}}}{{{notax|}}}<!--
-->|<!--
-->[[Category:Species entry using missing {{#invoke:languages/templates|getByCode|{{{3|und}}}|getCanonicalName}} specific epithet|{{{1}}} {{{2|}}}]]<!--
-->|<!--
-->{{#ifexist:{{{1}}}<!--
-->|<!--
-->[[Category:Species name using {{#invoke:languages/templates|getByCode|{{{3|und}}}|getCanonicalName}} specific epithet|{{{1}}} {{{2|}}}]]<!--
-->|<!--
-->[[Category:Species entry using missing {{#invoke:languages/templates|getByCode|{{{3|und}}}|getCanonicalName}} specific epithet|{{{1}}} {{{2|}}}]]<!--
-->}}<!--
-->}}<!--
-->}}<!--
--><noinclude>{{documentation}}</noinclude>
8dqdynesk0cib4rsfrl3dav8920x2jl
ภาคผนวก:การออกเสียงภาษาเวียดนาม
100
2358489
5759966
2026-09-08T13:16:33Z
Octahedron80
267
สร้างหน้าด้วย "{{softredirect|w:en:Vietnamese phonology}}"
5759966
wikitext
text/x-wiki
{{softredirect|w:en:Vietnamese phonology}}
7n5bnj6ex9dx7ntqe14fd204fmlw9z2
คุยกับผู้ใช้:วาสนา แก้วอำรัตน์
3
2358491
5759971
2026-09-08T14:11:57Z
New user message
2698
เพิ่ม[[Template:Welcome|สารต้อนรับ]]ในหน้าคุยของผู้ใช้ใหม่
5759971
wikitext
text/x-wiki
{{Template:Welcome|realName=|name=วาสนา แก้วอำรัตน์}}
-- [[ผู้ใช้:New user message|New user message]] ([[คุยกับผู้ใช้:New user message|คุย]]) 21:11, 8 กันยายน 2569 (+07)
4h7kzgunmcgh4x2l57uhztlml5e4bky
การแปลเอาความ
0
2358492
5759975
2026-09-09T05:46:37Z
Octahedron80
267
สร้างคำอัตโนมัติ
5759975
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{prefix|th|การ|แปลเอาความ}}
=== การออกเสียง ===
{{th-pron|กาน-แปฺล-เอา-คฺวาม}}
=== คำนาม ===
{{th-noun}}
# {{abstract noun of|th|แปลเอาความ}}
ajusmvk6yqu1lmg7gjoqk19atksz3js
แปลตามเนื้อความ
0
2358493
5759976
2026-09-09T05:49:15Z
Octahedron80
267
สร้างหน้าด้วย "== ภาษาไทย == === รากศัพท์ === {{com+|th|แปล|ตาม|เนื้อ|ความ}} === การออกเสียง === {{th-pron|แปฺล-ตาม-เนื้อ-คฺวาม}} === คำกริยา === {{th-verb}} # {{synonym of|th|แปลเอาความ}}"
5759976
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{com+|th|แปล|ตาม|เนื้อ|ความ}}
=== การออกเสียง ===
{{th-pron|แปฺล-ตาม-เนื้อ-คฺวาม}}
=== คำกริยา ===
{{th-verb}}
# {{synonym of|th|แปลเอาความ}}
7qj233r0dniorx1ieg9dioparddzmt0
แปลตามอรรถ
0
2358494
5759977
2026-09-09T05:49:33Z
Octahedron80
267
สร้างหน้าด้วย "== ภาษาไทย == === รากศัพท์ === {{com+|th|แปล|ตาม|อรรถ}} === การออกเสียง === {{th-pron|แปฺล-ตาม-อัด}} === คำกริยา === {{th-verb}} # {{synonym of|th|แปลเอาความ}}"
5759977
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{com+|th|แปล|ตาม|อรรถ}}
=== การออกเสียง ===
{{th-pron|แปฺล-ตาม-อัด}}
=== คำกริยา ===
{{th-verb}}
# {{synonym of|th|แปลเอาความ}}
7dqiwnq8vnfl9nh6owzsbwmcbvdtc59
แปลโดยอรรถ
0
2358495
5759978
2026-09-09T05:49:41Z
Octahedron80
267
สร้างหน้าด้วย "== ภาษาไทย == === รากศัพท์ === {{com+|th|แปล|โดย|อรรถ}} === การออกเสียง === {{th-pron|แปฺล-โดย-อัด}} === คำกริยา === {{th-verb}} # {{synonym of|th|แปลเอาความ}}"
5759978
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{com+|th|แปล|โดย|อรรถ}}
=== การออกเสียง ===
{{th-pron|แปฺล-โดย-อัด}}
=== คำกริยา ===
{{th-verb}}
# {{synonym of|th|แปลเอาความ}}
dqzkfp7bn3u7410tiqm40b0965ftq65
การแปลโดยอรรถ
0
2358496
5759980
2026-09-09T05:49:57Z
Octahedron80
267
สร้างคำอัตโนมัติ
5759980
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{prefix|th|การ|แปลโดยอรรถ}}
=== การออกเสียง ===
{{th-pron|กาน-แปฺล-โดย-อัด}}
=== คำนาม ===
{{th-noun}}
# {{abstract noun of|th|แปลโดยอรรถ}}
t6g7fsezplznf6kyf4ptnecq00wxuoa
การแปลตามอรรถ
0
2358497
5759981
2026-09-09T05:49:59Z
Octahedron80
267
สร้างคำอัตโนมัติ
5759981
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{prefix|th|การ|แปลตามอรรถ}}
=== การออกเสียง ===
{{th-pron|กาน-แปฺล-ตาม-อัด}}
=== คำนาม ===
{{th-noun}}
# {{abstract noun of|th|แปลตามอรรถ}}
0ifstioqkj6q62o1nfmylkqxkiqngk7
การแปลตามเนื้อความ
0
2358498
5759982
2026-09-09T05:50:01Z
Octahedron80
267
สร้างคำอัตโนมัติ
5759982
wikitext
text/x-wiki
== ภาษาไทย ==
=== รากศัพท์ ===
{{prefix|th|การ|แปลตามเนื้อความ}}
=== การออกเสียง ===
{{th-pron|กาน-แปฺล-ตาม-เนื้อ-คฺวาม}}
=== คำนาม ===
{{th-noun}}
# {{abstract noun of|th|แปลตามเนื้อความ}}
gvji7r5i1x52fgzsnttau7l8m3fdxnh
赤茄子
0
2358499
5760005
2026-09-09T10:18:54Z
Octahedron80
267
นำเข้าจาก enwikt เก็บกวาด
5760005
wikitext
text/x-wiki
== ภาษาญี่ปุ่น ==
{{ja-kanjitab|あか|なす2|yomi=k,juku2|alt=赤なす}}
=== รากศัพท์ ===
{{ja-compound|赤|あか|茄子|なす|t1=แดง|t2=มะเขือ}}
=== การออกเสียง ===
{{ja-pron|あかなす|acc=0|acc_ref=DJR,NHK}}
=== คำนาม ===
{{ja-noun|あかなす}}
# {{lb|ja|obsolete}} {{synonym of|ja|トマト|tr=tomato||มะเขือเทศ}}
#* {{lw|ja|村井弦斎}}, {{lw|ja|pref=『|食道楽 (村井弦斎)|食道楽|suf=』}}, {{lang|ja|冬の巻}}
#*: {{ja-usex|その上から白ソースとか'''赤%茄%子'''ソースとか適%宜のソースをかけて食べます。|その うえ から しろ ソース とか '''あか%な%す''' ソース とか てき%ぎ の ソース を かけて たべます。|ราดด้วยซอสที่เหมาะสมอย่างไวต์ซอสหรือซอส'''มะเขือเทศ'''ด้านบนแล้วรับประทาน|ref=[http://www.aozora.gr.jp/cards/000810/files/52355_50975.html]}}
=== อ้างอิง ===
{{reflist}}
{{C|ja|ผลไม้|ผัก|sort=あかなす}}
9cbxn59r13j9jmsleh1ulkfpgurrj80