เกี่ยวกับบั๊กการป้อนภาษาไทยที่ไม่รับสระบน-ล่าง ซึ่งกล่าวถึงกันมากใน ubuntuclub.com นั้น ความจริงเป็นปัญหาที่คาบเกี่ยวทั้งพฤติกรรมการใช้งานของผู้ใช้ ทั้งปัญหาของซอฟต์แวร์เองด้วย คำอธิบายปัญหาจึงมีทั้งสองส่วน

ก่อนอื่น ขอเริ่มจากเรื่องการป้อนข้อความภาษาไทยใน GTK+ ซึ่งรองรับภาษาไทยมานานแล้ว โดย GTK+ สามารถเปลี่ยนวิธีป้อนข้อความได้ขณะทำงาน โดยคลิกขวาที่บริเวณป้อนข้อความใด ๆ แล้วเลือกเมนู “วิธีป้อนข้อความ” (Input Methods) ก็จะสามารถเลือกวิธีป้อนข้อความภาษาต่าง ๆ ได้ ถ้าคุณเลือก “ไทย-ลาว” (Thai-Lao) หรือ “Thai (libthai)” ก็จะสามารถป้อนภาษาไทยได้โดยไม่ขึ้นกับโลแคลที่ใช้ พร้อมกับมีการตรวจแก้ลำดับการพิมพ์ให้ด้วย

หรือถ้าเลือก “X Input Method” ภายใต้โลแคลไทย ก็จะป้อนภาษาไทยแบบตรวจแก้ลำดับได้เช่นกัน โดยถ้าอยู่ในโลแคลอื่น ก็อาจป้อนได้หรือไม่ก็ได้ ขึ้นอยู่กับโลแคลเป็นกรณีไป ที่แน่ ๆ คือ จะไม่มีการตรวจแก้ลำดับการพิมพ์ในกรณีที่ป้อนได้

กล่าวคือ แม้คุณจะไม่ได้เข้าระบบด้วยวาระภาษาไทย คุณก็สามารถเลือกวิธีป้อนภาษาไทยได้เสมอ ด้วยเมนูคลิกขวา แล้วเลือก “ไทย-ลาว” (Thai-Lao) หรือ “Thai (libthai)”

ปัญหาที่พบกันคือ มันไม่ได้เลือกวิธีดังกล่าวไว้เป็นค่าปริยายตั้งแต่เปิดโปรแกรม ค่าปริยายนั้น จะขึ้นอยู่กับภาษาที่ใช้เข้าระบบ ถ้าเข้าระบบเป็นภาษาอังกฤษ ก็จะใช้วิธีป้อนของภาษาอังกฤษ แต่ถ้าเข้าระบบด้วยภาษาไทย ก็จะเลือกวิธีใดวิธีหนึ่งที่เหมาะกับภาษาไทยเป็นค่าปริยาย

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

นั่นคือส่วนของพฤติกรรมผู้ใช้ ทีนี้มาดูพฤติกรรมซอฟต์แวร์บ้าง

วิธีป้อนข้อความในสภาพแวดล้อมภาษาอังกฤษนั้น GTK+ ได้เตรียมไว้ให้ป้อนได้ครอบคลุมภาษาพอสมควร คือโดยหลักการแล้ว ผู้ใช้ควรสามารถป้อนภาษาไทยแบบไม่มีการตรวจแก้ลำดับได้

ปัญหาคือ ใน GTK+ 2.14 ได้เพิ่มการจัดการเกี่ยวกับการ compose อักขระ accent ต่าง ๆ ในภาษายุโรปเข้ามาด้วย แต่เงื่อนไขการตรวจสอบอักขระที่จะประกอบบนอักขระฐานนั้น ค่อนข้างกว้างเกินไป จนมากระทบภาษาอื่น ๆ รวมทั้งภาษาไทยด้วย ภาษาไทยจึงถูกบังคับให้ป้อนในแบบยุโรปโดยปริยาย โดยไม่มีข้อมูลรองรับอีกต่างหาก ปัญหานี้ กำลังอยู่ระหว่างแก้ไขที่ GNOME Bug #555000 (เลขสวยดีแฮะ) ซึ่งจะทัน Intrepid หรือไม่ ก็ขึ้นอยู่กับว่าบั๊กนั้นจะแก้ไขทันกำหนดหรือเปล่า และ Ubuntu จะปิด LP #273856 หรือเปล่า

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

บั๊กนี้จะถือว่าร้ายแรงก็ได้ ไม่ร้ายแรงก็ได้ ขึ้นอยู่กับว่ากำลังพูดถึงผู้ใช้กลุ่มไหน ถ้าเป็นผู้ใช้ที่เข้าระบบด้วยภาษาไทย ก็ไม่มีปัญหาอะไร ถ้าเป็นผู้ใช้ที่เข้าระบบด้วยภาษาอังกฤษ แต่รู้จักวิธีเลือกวิธีป้อนภาษาไทย ไม่ว่าจะผ่านเมนูของ GTK+ หรือผ่านการตั้ง im-switch ก็เป็นปัญหาเล็กน้อย แต่ถ้าเป็นผู้ใช้ที่เข้าระบบด้วยภาษาอังกฤษโดยไม่ได้ทำอะไรเพิ่มเติมเลย ก็คงเป็นปัญหาร้ายแรง

เกี่ยวกับวิธีกำหนดค่าเพิ่มเติม ถ้าต้องการใช้ภาษาไทยในโปรแกรมโดยให้ UI เป็นภาษาอังกฤษ ขอแนะนำ 2 วิธี:

  1. กำหนด LC_MESSAGES เป็น en_US.UTF-8 ไว้ อาจจะที่ /etc/environment หรือ export ใน ~/.bashrc ก็แล้วแต่ แล้วเลือกภาษาไทยขณะเข้าระบบ
  2. เข้าระบบเป็นภาษาอังกฤษตามเดิม แต่กำหนด im-switch ให้เลือกวิธีป้อนภาษาไทยโดยปริยาย
    • system-wide:
      sudo im-switch -z all_ALL -s th-xim
    • per-user:
      im-switch -s th-xim
    • สามารถเปลี่ยน th-xim เป็นอย่างอื่นได้ เช่น
      ถ้าติดตั้ง gtk-im-libthai: ใช้ th-gtk-im-libthai
      ถ้าใช้ scim-thai: ใช้ scim-immodule
    • ดูค่าที่เป็นไปได้ทั้งหมดได้โดยสั่ง
      im-switch -l

ถามผม ผมแนะนำว่าวิธีแรกง่ายที่สุดครับ

ก็ พอดีว่าในงานวัน SFD08 เจอกับ @sugree ซึ่งก็ได้พูดคุยกันนิดหน่อยเรื่อง Bug ภาษาไทยใน Intrepid ที่ทำให้พิมพ์สระบนและสระล่างไม่ได้ ดูเหมือนว่าจะเป็นปัญหาที่ SCIM (อันนี้ผมไม่มีความรู้เท่าไหร่ ขออภัย) วิธีแก้ไขในเบื้องต้น สามารถแก้ได้ด้วยการเปลี่ยน Imput Method จาก System เป็น Thai Lao

ส่วนระยะยาวแล้ว บั๊กนี้จะมาพร้อม Intrepid หรือไม่ขึ้นอยู่กับเราแล้วครับ ไปช่วยกันแสดงความเคลื่อนไหวกันหน่อย เพื่อให้ทีมพัฒนาเขารับรู้ว่ามีคนไทยใช้ ubuntu กันมากแค่ไหน แล้วถ้าไม่ได้ปริมาณผู้ใช้ ubuntu จะต้องสูญหายไปอีกเท่าไหร่

สถานะปัจจุบันของบักเป็น Confirmed แล้วก็ นักพัฒนาของ SCIM รับทราบปัญหานี้แล้ว

ตามความเคลื่อนไหวได้ที่
– http://groups.google.com/group/ubuntuclub/
– https://bugs.launchpad.net/ubuntu/+source/scim/+bug/273856

ตามที่ได้แจ้งข่าวไว้นะครับ ว่าเมื่อวันเสาร์ที่ผ่านมา ทาง Ubuntu ThaiTeam ของเรา ได้มีการจัดกิจกรรม BugJam ขึ้น โดยกิจกรรมหลักๆเลยก็ แจ้งบั๊กแล้วก็ Confirm บั๊กนิดหน่อย

โดยกิจกรรมที่จัดขึ้นนี้ได้สถานที่ ที่ ม. เกษตรครับ ขอบคุณ @sugree กับ @jittat ด้วยครับ สำหรับสถานที่ งานนี้ก็ทีมงานมาจัดการบั๊กกันที่ ชั้น2 ตึก 15ครับ

* ทีมงานที่ไปช่วยกันก็ตามนี้ครับ น้องวินหัวหน้าทีม
* มะระ
* คุณสมเจตน์
* คุณหมี TrendyTeddy
* อั้ม itcoolgang
* @DArKer08
* @ch_a_m_p

รวมตัวกันครบก็ประมาณ 10.30 น. ทีมงานก็เริ่มลงมือจัดการเรื่องบั๊กกันเลย โดยทีมตกลงกันว่าจะดูกันเฉพาะในส่วนที่เกี่ยวกับภาษาไทย ก็เลยเข้าไปดูหน้า Launchpad แล้วค้นหาบั๊กที่เกี่ยวกับภาษาไทย ตัวงานแบ่งออกมาได้สองงาน คือแจ้งบั๊กใหม่ กับ Comfirm บั๊กใหม่ โดยแจ้งบั๊กใหม่ที่เรารู้ๆกันก็เจออยู่บั๊กเดียว คือบั๊กสระอำ อันนี้ @sugree ขอมา เลยให้เป็นของขวัญ

รายการบั๊กที่จัดการไปดูได้ที่ https://wiki.ubuntu.com/ThaiTeam/BugJam08 ส่วนเวลาทีเหลือทีมงานก็จัดการเรื่อง Club Distro กันต่อ ส่วนภาพบรรยากาศตามนี้ครับ http://picasaweb.google.co.th/aumpradya/Ubuntubugjam

Ubuntu GlobalBugJam เป็นกิจกรรมร่วมกันแจ้งบั๊ก คล้ายๆ BugAton ของทาง Mozilla นั่นเอง ก็จะเป็นโอกาสอันดีที่กลุ่มผู้ใช้ Ubuntu ในบ้านเราจะมาร่วมกันค้นหาและแจ้งบั๊ก โดยเฉพาะอย่างยิ่ง บั๊กที่เกี่ยวเนื่องกับเรื่องของภาษาไทย ซึ่งงานนี้ตามกำหนดการแล้ว ทั่วโลกเขาจะจัดกันตั้งแต่วันที่ 8 – 10 สิงหานี้ครับ ส่วนของประเทศเราเป็น วันเสาร์ที่ 9 นี้ วันเดียวพอ
เจอกันได้ที่ ชั้น 2 ตึก 15 คณะ วิศว ม.เกษตร ตรงแยกบางเขนครับ วันเสาร์ที่ 9 นี้ เวลา 9.30 น. เป็นต้นไป
ที่มา – ubuntuclub.com