Qt, KDE Thai
KDE
- konsole (terminal ของ KDE) ยังไม่สนับสนุนภาษาไทย สถานะ ค้างคา
- ตัดคำไทยสำหรับ KHTML: สถานะ ได้ทำ patch สำหรับkdelibs-3.2.2 ตัดคำเวลา browse web ได้แล้ว, ต้องการ libthai.so.0 (สนใจลองดูไดที่นี่ ฉบับแก้แล้ว khtml/rendering/[break_lines.h, break_lines.cpp, khtml_factory.cpp]) ทดสอบแล้วใช้ได้ดี, ล่าสุด 2005/03/21 รวมใน KDE 3.4 แล้วแต่ยังไม่รวม patch ที่เพิ่ม cache=0, th_brk=0 ใน destructor. คาดว่าจะถูกรวมในเวอร์ชั่นถัดไป รายละเอียดดูได้ที่ นี่, update: เข้าใน 3.4.1 แล้ว ปิดประเด็น
- พิมพ์ภาษาไทยแล้วตัวเล็ก: สถานะ ขยายฟอนต์ใน thaifonts-scalable ให้โต แล้วน่าจะแก้ปัญหานี้
- KHTML (อย่างเช่นใน message window ของ kmail) ถ้าเนื้อหาเป็นภาษาไทย และอักษรตรงท้ายบรรทัดเป็นพยัญชนะที่มีสระหรือวรรณยุกต์ จะ render ผิดมี space เพิ่มมาก่อนหน้าอักขระนั้นอยู่หนึ่งช่อง ถ้าเอา mouse select text ตรงนั้น ตอนที่ selected นั้น render ได้ถูก (ไม่มีช่องว่างเกิน) แต่ว่าบางทีสระหรือวรรณยุกต์จะลอย, สถานะ ค้างคา, เขาเรียกว่า mouse selection text bug ดูเหมือนจะไม่ใช่ปัญหาเฉพาะภาษาไทย ทางนักพัฒนาทราบกันแล้วแต่ยังไม่ได้แก้, กำลังตามๆ ดูอยู่, updated: เหมือนหายแล้ว bug นี้ (KDE 3.4.1) ไม่เจออีกแล้ว, ปิดประเด็น
Qt
- render ภาษาไทย ใช้งานได้ในระดับหนึ่ง (สระมีสูงต่ำ) แต่ยังไม่สมบูรณ์, e.g., สระและวรรณยุกต์ยังไม่หลบหาง ป ปลา, ต้องแก้ต่อไป, สถานะ ค้างคา
- Thai Input method: XIM?, IIMF?, ฝังใน Qt เลย? เราจะไปทางไหนกันดี สถานะ ค้างคา
- ตัดคำใน QTextEdit, สถานะ เคยทำ patch src/kernel/qrichtext.cpp เอาไว้ คุณ Lars Knoll เจ้าเก่า หลังจากดูตรง KDE แล้วก็ช่วย มาทำตรง Qt ให้เลย แกทำ patch สำหรับ Qt 3.3.2 มาให้ แต่ลองบน 3.2.3 ก็ใช้ได้ดี ปัญหาเวลาที่ wrap ในโหมด fixed column width เจอที่แก้แล้วดูได้ที่ไฟล์ qrichtext.cpp (3.3.2 copy), 2004/12 เข้าไปใน main Qt source แล้ว, 2004/03/21 รวมใน Qt 3.3.4 แล้วแต่ยังไม่รวม patch ที่แก้ปัญหาตัดคำระหว่างคำไทย กับคำอังกฤษ, ล่าสุด แก้แล้ว (2005/01/14) โดยคุณ Knoll ใน qtextengine.cpp เติม, ดู patch เข้าใน cvs แล้ว จะถูกรวมใน Qt 3.3.5 และ 4.0.1 ปิดประเด็น
- อักขระที่มีใน windows-874 แต่ไม่มีใน tis-620: ได้ทำ patch สำหรับ qt-x11-free-3.2.3: src/codecs/qtextcodec.cpp เพิ่มโค้ดจาก windows-874 เข้าไปใน tis-620 table, สถานะ ส่ง patch ไปแล้ว, เข้า cvs แล้ว (2004/12) ปิดประเด็น
Steps
-install libthai on your computer (ต้องมี libthai.so ใน library path)
-recompile qt หรือ kdelibs with the above files
-Qt QTextEdit: test with examples/textedit/textedit
-KDE/KHTML rendering test with the testkhtml program (comes with KHTML) หรือ Konqueror
-see code for more details
Debian
เพิ่มบรรทัดนี้ใน /etc/apt/sources.list# LTN deb http://linux.thai.net/apt ./แล้วเรียกคำสั่ง
# apt-get update # apt-get install libthai0 # ก่อนอื่นต้องมี libthai ก่อน # apt-get install kdelibs4 # สำหรับทดสอบ kdelibs # apt-get install libqt3c102-mt # สำหรับทดสอบ Qt