FireFox is (quite) ready now.

ต่อจากเรื่องที่ ไฟร์ฟอกซ์ยังไม่พร้อม ที่เคยเขียนไว้ วันนี้ความคืบหน้าค่อนข้างชัดเจน การใช้งานบนลินุกซ์แม้จะมีปัญหาเรื่องของ Shortcut Key ที่ไม่เวิร์คเมื่อใช้คีย์บอร์ดภาษาอื่นๆ แต่นอกจากนั้นก็ยังคงเวิร์คอย่างเต็มรูปแบบ

ประเด็นหลักคือ Extension ตัดคำภาษาไทยที่กำลังจะออกมา ทำให้ส่วนการตัดคำจะแยกออกจากตัวโปรแกรมหลักแล้วในที่สุด ทำให้การอัพเกรดโปรแกรมหลักจะไม่ทำให้การตัดคำหายแล้วต้องไปนั่งรอคนคอมไพล์ตัวใหม่อีกต่อไป

วางแผนไว้ว่า Extension นี่วางตลาดเป็นทางการเมื่อใหร่ จะมีแคมเปญใหญ่ที่ Blognone ส่วนที่นี่เองคงมีแบนเนอร์บอกผู้ใช้ IE ให้ช่วยกันย้ายซักที

Silver Bullet

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

ตอน​นี้​ก็​ได้​มา​อัน​นึงแล้ว

((?=[\u0e01\u0e02\u0e04\u0e07\u0e08\u0e0a\u0e0b\u0e14\u0e15\u0e16\u0e17\u0e19\u0e1a\u0e1b\u0e1c\u0e1e\u0e21\u0e22\u0e23\u0e25\u0e27\u0e2a\u0e2b\u0e2d\u0e40\u0e41\u0e42\u0e43\u0e44])(?:\u0e17(?:\u0e33(?:\u0e43\u0e2b\u0e49)?|\u0e35\u0e48|(?:\u0e32|\u0e31\u0e49)\u0e07|\u0e48\u0e32\u0e19)|\u0e40(?:\u0e23(?:\u0e37\u0e48\u0e2d\u0e07|\u0e32)|\u0e02\u0e49?\u0e32|\u0e1e(?:\u0e23\u0e32\u0e30|\u0e37\u0e48\u0e2d)|(?:[\u0e1b\u0e2b]\u0e47|\u0e0a\u0e48)\u0e19|\u0e21\u0e37\u0e48\u0e2d|\u0e01\u0e34\u0e14|\u0e14\u0e47\u0e01|\u0e27\u0e25\u0e32)|\u0e01(?:\u0e31[\u0e1a\u0e19]|\u0e32\u0e23|\u0e47|\u0e25\u0e38\u0e48\u0e21|\u0e27\u0e48\u0e32)|\u0e43(?:\u0e2b(?:\u0e49|\u0e21\u0e48)|\u0e19|\u0e0a\u0e49)|\u0e21(?:\u0e32\u0e01?|\u0e35|\u0e31\u0e19)|\u0e02(?:\u0e2d\u0e07|\u0e36\u0e49\u0e19)|\u0e08(?:[\u0e30\u0e19]|\u0e32\u0e01|(?:\u0e36|\u0e23\u0e34)\u0e07)|\u0e41(?:\u0e25(?:\u0e30|\u0e49\u0e27)|\u0e15\u0e48|\u0e2b\u0e48\u0e07|\u0e1a\u0e1a)|\u0e44(?:[\u0e14\u0e27]\u0e49|\u0e21\u0e48|\u0e1b|\u0e17\u0e22)|\u0e27(?:\u0e48\u0e32|\u0e31\u0e19)|\u0e04(?:\u0e27\u0e32\u0e21|\u0e19|\u0e37\u0e2d)|\u0e19(?:\u0e35\u0e49|\u0e31\u0e49\u0e19|\u0e32\u0e22)|\u0e2b(?:\u0e23\u0e37\u0e2d|\u0e19\u0e36\u0e48\u0e07|\u0e25\u0e32\u0e22)|\u0e2d(?:\u0e22(?:\u0e39\u0e48|\u0e48\u0e32\u0e07)|[\u0e35\u0e2d]\u0e01|\u0e32\u0e08|(?:\u0e37\u0e48|\u0e31)\u0e19|\u0e30\u0e44\u0e23)|\u0e15(?:\u0e48(?:\u0e32\u0e07|\u0e2d)|\u0e49\u0e2d\u0e07|\u0e32\u0e21|\u0e31\u0e27)|\u0e14(?:\u0e49(?:\u0e27\u0e22|\u0e32\u0e19)|\u0e35)|\u0e16(?:\u0e36\u0e07|\u0e49\u0e32|\u0e39\u0e01)|\u0e1c(?:\u0e39\u0e49|[\u0e21\u0e25])|\u0e1b(?:\u0e23\u0e30\u0e40\u0e17\u0e28|\u0e35|\u0e31\u0e0d\u0e2b\u0e32)|\u0e2a(?:\u0e31\u0e07\u0e04\u0e21|\u0e32\u0e21\u0e32\u0e23\u0e16|\u0e48\u0e27\u0e19|\u0e34\u0e48\u0e07|\u0e33\u0e04\u0e31\u0e0d)|(?:\u0e0b\u0e36\u0e48|\u0e22\u0e31|\u0e1a\u0e32|\u0e25)\u0e07|\u0e42\u0e14\u0e22|\u0e23\u0e31\u0e1a|\u0e0a\u0e35\u0e27\u0e34\u0e15|\u0e07\u0e32\u0e19|\u0e1e\u0e23\u0e23\u0e04))

เผื่อ​ใคร​งง (งง​แน่อ่ะดิ เล่น​ไม่​อธิบาย​เลย) ไอ้​ข้าง​บน​นี่​คือ Regular Expression ที่​ได้​จาก​การ Optimize 100 คำ​แรก​ที่​พบ​บ่อย​ใน​ภาษา​ไทย ทำ​ให้​สามารถ​นำ​ไป​ใช้​เป็น​ตัว​ตัด​คำ​ภาษา​ไทย​ใน​บราวเซอร์​ที่​เป็น Gecko-Based ได้ ที่​ได้​มา​นี่​เป็น​ผล​พวง​จาก​ความ​พยายาม​หา​ทาง​ที่​ง่ายๆ เอา​มา​ใช้​ใน k-meleon

Credit

สุด​ท้าย เข้า​ไป​ทด​สอบ​การ​ใช้​งาน​ได้ (ที่​นี่) ระวัง​อย่า​ใช้ IE เข้า​ไป เพราะ​มัน​จะ​ช้า​มาก

Update: เขียน​ไป​เขียน​มา ก็​ได้​เป็น Firefox Extension กัน​ไป​ใช้​งาน เท่า​ที่​ลอง​ยัง​คง​มี​บั๊ก​อยู่​เยอะ โดย​เฉพาะ​พวก Attribute ต่างๆ แต่​งาน​นี้​ก็​พอ​ใช้​งาน​ได้ (ลอง​เข้า manager แล้ว​ไม่​ระเบิด) ไว้​ว่างๆ ค่อย​มา​เขียน​ดีๆ อีก​ที

Web Developer

ช่วย​เพื่อน​ทำ​เว็บ เลย​ลอง​ใช้​ปลั๊กอิน Web Develop กับ Flock ดู

เข้า​ใจ​ว่า​ใน​ไฟร์ฟอกซ์​ก็​น่า​จะ​ทำ​งาน​เหมือนๆ กัน แต่​ชีวิต​กับ CSS มัน​ดู​มี​ความสุข​ขึ้น​เยอะ​เลย​แฮะ

ปัญหา​คือ IE มัน​ยัง​คง​ทำ​เรนเดอร์ได้​ครึ่งๆ กลางๆ เนี่ยสิ