29 March 2005

Mozilla Firefox บน Ubuntu

เมื่อวานกลับมาใช้ Ubuntu อีกครั้ง แล้วเพิ่งจะสังเกตเห็นว่า Mozilla Firefox ที่มากับ Ubuntu แสดงภาษาไทยแล้ววรรณยุกต์ไม่ลอย สามารถจัดระดับวรรณยุกต์ได้ถูกต้อง เลยลองไปเอาซอร์สของ Mozilla Firefox ที่ Ubuntu ใช้มาดู เลยรู้ว่าไม่ได้ใช้ซอร์สแบบปกติ แต่มีการเพิ่มเติมเพื่อให้ใช้ pango ในการแสดงตัวอักษร ซึ่งทำให้แสดงผลภาษาพิเศษต่างๆ ได้ถูกต้องมากยิ่งขึ้น (ลองอ่านในเว็บต่างๆ คร่าวๆ ดูเหมือนว่าจะเอามาจาก Fedora Core อีกที) พอรู้ว่าใช้ pango ก็เกิดความคิดว่าถ้าเราเอา pango-libthai ที่พี่เทพทำไว้มาใช้ ก็อาจจะทำให้ตัดคำได้ โดยไม่จำเป็นต้องไปคอมไพล์ใหม่ เพราะ pango จะเรียกใช้โมดูลการแสดงผลที่กำหนดไว้ใน /etc/pango/pango.modules ให้ทันที แต่สิ่งต่างๆ ในโลกนี้มักจะไม่ง่ายอย่างที่คิด เอา pango-libthai มาลงแล้ว มันก็ยังไม่ตัดคำให้เหมือนเดิม ทั้งที่ลอง gedit ก็ทำงานอย่างดี แถมลอง strace ดูการทำงานของ Firefox ก็เห็นว่ามีการเรียกใช้โมดูลตามที่ต้องการ สุดท้ายเลยลองไปดูซอร์สส่วนที่ใช้ pango ดูเหมือนว่าเขาจะตัดข้อความมาเป็นชิ้นๆ ก่อน แล้วค่อยส่งให้ pango จัดการวาดตัวอักษร เลยทำให้ไม่ได้ใช้ความสามารถของ pango ในการตัดบรรทัด พอรู้อย่างนี้ก็เริ่มหมดความสามารถแก้ต่อ ไว้กลับเมืองไทยว่างๆ แล้วค่อยลองดูอีกทีล่ะกัน (แต่เอามาบันทึกไว้ก่อน)

No comments: