Idea

โดยให้ input method จัดการแทรกรหัสแบ่งคำให้โดยอัตโนมัติ (เหมือนกับที่ถ้าเราสามารถทำ input sequence correction ได้ ก็ใช้วิธีเดียวกัน) ทีนี้ โค้ดแบ่งคำก็จะมาอยู่ที่เดียวจริงๆ และผู้ใช้ยังสามารถควบคุมการแบ่งคำระหว่าง input ได้เลยรวมทั้งไม่ต้องไป localize โปรแกรมต่างๆ (ที่ support unicode) ในส่วนของการตัดคำอีก โปรแกรมก็จะสามารถตัดคำได้ “off-the-shelf” เลย
เทพพิทักษ์ การุญบุญญานันท์

 

PyICU

หลังจากพยายามนั่งทำ Binding ของ libthai ให้เป็น Python อยู่หลายวัน พบว่ามีคนทำ PyICU อยู่ก่อนแล้ว T_T แต่ก็นับว่าได้ความรู้การใช้งาน Python ระดับล่างๆ ได้ดีขึ้นเยอะ

pyicu

ถึงตอนนี้โครงการ ZWSP คงเห็นทางเสร็จทันปลายปี

 

จุดยืน

เข้าโรงกันไปเป็นที่เรียบร้อยแล้วกับภาพยนต์เจ้าปัญหาอย่าง Davinci Code หลังจากมีเรื่องกันมานาน

ผมเองมักหลีกเลี่ยงการให้ความเห็นทางด้านศาสนาและการเมืองเสมอ เพราะเชื่อว่าสิ่งที่เราควรให้กับผู้อื่นเพื่อให้เชื่อตามที่เราอยากให้เชื่อนั้น ไม่ควรมีอะไรมากไปกว่าข้อเท็จจริง

…แน่นอนว่าเป็นข้อเท็จจริงในแบบที่เราอยากให้เขาได้รับ…

แต่เอาว่าวันนี้ขอสักวันแล้วกัน ขอเตือนว่าคอมเมนต์ในเว็บนี้ถ้าผมไม่ชอบใจ ไม่ว่าจะด้วยเหตุผลเล็กน้อยแค่ไหน ผมยินดีลบโดยไม่ต้องคิดเสมอ เรื่องหมิ่นเหม่อย่างนี้โอกาสโดนลบก็มีค่อนข้างสูง ดังนั้นอย่าแปลกใจถ้าคอมเมนต์มายาวๆ แล้วมันหายไป

กรณีข้อพิพาทเรื่อง Davinci Code นี้สร้างข้อสงสัยหลายๆ อย่างในใจ โดยเฉพาะข้อพิพาทระหว่างคนดู ที่ต้องการดูเต็ม กับคริสตชนที่ไปแสดงความไม่เห็นด้วยในการฉาย เช่น

  1. คริสตชนกลุ่มนั้นเรียกร้องให้มีการตัดสิบนาทีสุดท้ายออกหรือ? พวกเขาเป็นผู้ตัดสินใจหรือว่าจะเป็นเช่นนั้น ไม่ใช่คณะกรรมการพิจารณาภาพยนตร์ กองบังคับการกองทะเบียนตามที่เป็นข่าวหรืออย่างไร
  2. ถ้าจะโทษว่าคำตัดสินเช่นนั้นออกมาเพราะมีการประท้วง คนที่อ่านนิยายแล้ว ติดตามกระแสตั้งแต่นิยายออกบ้าง นึกไม่ถึุงกันเลยหรือ ว่าภาพยนต์เรื่องนี้จะโดนประท้วง คิดว่าคริสตชนหลายแสนคนในเมืองไทยจะนั่งยิ้มกันทั้งประเทศกับภาพยนต์เรื่องนี้กันทุกคน?
  3. แล้วจะทะเลาะกันไปทำไม

คล้ายๆ กับเรื่องการเมืองในตอนนี้ ที่ก่อนหน้ากระแสพระราชดำรัส ทุกคนเอาแต่ทะเลาะกัน ไม่มีใครพูดถึงศาล

ประเทศไทยจะดำเนินไปแบบเฮโลอย่างนี้อีกนานเท่าใหร่ เราจะกลัวเครื่องดื่มมึนเมาเข้าตลาดหุ้นไปอีกกี่ครั้ง ต้องมีคนไปยืนประท้วง ไปโดนยิง และไปตีกันอีกเท่าใหร่

ถ้าเรามีจุดยืนกันจริงๆ เมื่อใหร่กันที่เมื่อเราแสดงจุดยืน แสดงพลังในการต่อต้านสิ่งที่เราบอกว่าไม่ดีแล้ว เราจะทำเพื่อให้สิ่งนั้นมันออกไปจากสังคมอย่างถาวร ทำจนกว่าเราจะมั่นใจว่าคนรุ่นต่อไปจะไม่ต้องเจออะไรเหมือนเรา

ไม่ใช่การเฮโลไปเรื่อยๆ เป็นรายๆ ไปแบบนี้

 

ทำไมถึงต้อง ZWSP

ผมพูดถึงเรื่อง ZWSP มาเป็นปีๆ แม้จะไม่ได้รับความสนใจนัก นอกจากที่ไปพูดในงาน BTD ที่ผ่านมา จนหลา่ยคนอาจจะสงสัยว่าหมอนี่มันเป็นอะไร?

คำตอบคือ การใช้การตัดคำในทุกวันนี้ไม่เป็นมาตรฐานเปิด

การตัดคำไทยในทุกวันนี้อาศัยการรู้กันของเหล่านักพัฒนาว่าควรจะตัดคำไทยอย่างไรจึงจะเหมาะสม ขณะที่ไม่มีอะไรเป็นหลักประกันเลยว่าโปรแกรมหนึ่งๆ จะเวิร์คกับภาษาไทยในอนาคต

ที่ร้ายกว่านั้นคือเอกสารที่เราทำในทุกวันนี้ก็อาจจะใช้งานไม่ได้ในอนาคตด้วยซ้ำไป ลองนึกภาพคุณจัดหน้าหนังสือเล่มหนึ่ง ในโอเพนออฟฟิศหรือไมโครซอฟท์เวิร์ดในวันนี้ ทุกอย่างมันถูกต้องสวยงามดี แล้ววันหนึ่ง สามสี่ปีผ่านไป คุณใช้โปรแกรมเดิม (เวอร์ชั่นใหม่) เปิดไฟล์เดิม ด้วยฟอนต์เดิม แต่การจัดหน้ากลับเละเทะจนคุณต้องทำงานจัดหน้าใหม่อีกครั้ง

นี่ไม่ต้องพูดถึงต่างโปรแกรม ต่างบราวเซอร์ ฯลฯ

การใส่ ZWSP เป็นมาตรฐานที่ทั่วโลกรองรับกันอยู่แล้ว ไม่ว่าจะเป็น OpenType หรือ Unicode แม้ในทุกวันนี้โปรแกรมและฟอนต์ยังรองรับในวงแคบ แต่มีแนวโน้มที่ชัดเจนว่าจะขยายตัวขึ้นอย่างต่อเนื่อง

ขณะที่มันเป็นไปได้ว่าเราจะไปแจ้งกับนักพัฒนาโอเพนซอร์ส ขอให้เพิ่มความสามารถในการรองรับ ZWSP เนื่องจากเป็นมาตรฐานของ Unicode มันจะถูกรับเรื่องไปไม่ยากนัก ขณะที่การขอให้มีการตัดคำไทยนั้นไม่ใช่เรื่องง่ายเลย

อีกประเด็นคือเรื่องของภาษา

ภาษาที่ยังมีการใช้งานเช่นภาษาไทย จะมีการเปลี่ยนแปลงไปตามกาลเวลาเสมอ เราจะเห็นคำว่า จ๊าบ ทำมัย โลกานุวัตร ฯลฯ ไม่ว่าเราชอบหรือไม่ คำเหล่านี้มีใช้จริงในภาษาไทย เช่นเดียวกับคำอื่นๆ จำนวนมากที่เกิดขึ้นและหายไปตามกาลเวลา

ประเด็นนี้คือต้นเหตุของความล้มเหลวในการรักษาความสามารถในการตัดคำในอนาคต เราไม่สามารถบอกได้เลยว่าคำใดจะเพิ่มเข้ามาหรือหายไป เราได้แต่ภาวนาว่ามันจะไม่เกิดขึ้นบ่อยเกินไปนัก และเอกสารหลายร้อยหน้าของเราจะพร้อมใช้งาน เมื่อเราจะพิมพ์ออกมาในห้าปีข้างหน้า

แต่อย่างไรก็ตาม ZWSP ยังไม่พร้อมในวันนี้ มันต้องการการปูทางความพร้อมอีกหลายๆ ด้าน โดยเฉพาะอย่างยิ่งสองประเด็นคือการรองรับเอกสารเก่าๆ ที่ไม่มี ZWSP และการปรับตัวของผู้ใช้ที่ไม่ควรรู้สึกแตกต่างกับการทำงานก่อนหน้านี้