Mozilla Pango-Break (Really) Checked-in!
Mozilla Bug #336959 ปิดแล้วจริง ๆ หลังจากที่ ครั้งที่แล้ว patch ได้ check-in แต่โดนถอนออกมา โดยต้องรอให้ Text Layout ใหม่ถูก enable by default เสียก่อน
รอบใหม่นี้ยังต้องปรับ patch ไปมาหลายตลบกว่าจะได้เข้า (รายละเอียดอ่านได้ใน bug) ซึ่งสุดท้ายก็มาลงเอยที่วิธีที่เรียบง่ายที่สุด คือลิงก์ Pango เข้าไป ผ่าน adapter ง่าย ๆ โดยดัดแปลง nsJISx4051LineBreaker ให้เรียกออกมาเฉพาะช่วงที่มี complex text เพียงแต่ครั้งนี้ได้ล้วงลึกลงไปใน nsJISx4051LineBreaker มากกว่าที่เคย
เป็นอันว่า mozilla บน Linux สนับสนุนการตัดคำไทยผ่าน Pango เรียบร้อยแล้วใน trunk รอผู้สนใจทำโค้ดส่วนที่เรียก Uniscribe, ATSUI ก่อนที่ Firefox 3 จะออก (ใช้วิธีตาม patch ใหม่นะครับ โดย implement ฟังก์ชัน NS_GetComplexLineBreaks()
แค่ฟังก์ชันเดียวเท่านั้น แล้วกำหนด build flag เลือกลิงก์เอา) ระหว่างนี้ platform ที่ไม่มี Pango ก็จะ fall back มาที่ rule-based breaker ไปพลาง ๆ
ปล. ตายังไม่หายดีครับ ต้องใช้เวลาหน้าเครื่องกับงานล้วน ๆ เห็นว่าเรื่องนี้สำคัญเลยมา blog ไว้ ขอบคุณทุกความเห็นเรื่องวิธีบำรุงตานะครับ
6 ความเห็น:
ณ 19 กรกฎาคม 2550 เวลา 20:34 , veer แถลง…
เจ๋ง
ณ 19 กรกฎาคม 2550 เวลา 20:39 , veer แถลง…
ถ้าจะ patch เอา code จาก svn trunk มาเลยใช่เปล่าครับ?
ณ 20 กรกฎาคม 2550 เวลา 21:19 , ไม่ระบุชื่อ แถลง…
จากhttps://bugzilla.mozilla.org/show_bug.cgi?id=336959
ต้องใช้ทุกแพชจาก หรือว่าแค่สองอันสุดท้ายครับ
mozilla-trunk20070716-pango-break-4.patch
bug336959.pango-break.patch
ณ 20 กรกฎาคม 2550 เวลา 23:22 , ไม่ระบุชื่อ แถลง…
อ่า...สงสัยผมเข้าใจผิด patches นี้สำหรับ firefox3 หรือว่าใช้ได้กับ firefox2 ด้วยครับ :D
ณ 22 กรกฎาคม 2550 เวลา 18:01 , veer แถลง…
เราไปตั้งกลุ่ม patch อยู่ที่ wikia นะครับ
คาดว่าบน Mac OS X น่าจะใช้ UCFindTextBreak ได้ เป็น API ของ Carbon ไม่น่าจะใช่ ATSUI (low level กว่า ATSUI).
ณ 31 มกราคม 2555 เวลา 17:29 , enjoyproduct แถลง…
สวัสดีครับ ผมอยากได้ library ตัดคำภาษาไทย ที่เป็นภาษา PHP ได้ทำไว้หรือมีหรือเปล่าครับ ถ้าไม่มี ผมจะเขียนเอง พอจะมีคำแนะนำอย่างไรบ้างครับ ขอบคุณครับ
แสดงความเห็น (มีการกลั่นกรองสำหรับ blog ที่เก่ากว่า 14 วัน)
<< กลับหน้าแรก