Fixing Thai in Hotmail w/ Greasemonkey
by pittayaจากที่เมื่อวานหัดใช้ greasemonkey ดูแล้วรู้สึกว่ามัน powerful ดีทีเดียว วันนี้ลองใช้ทำอะไรที่มันมีประโยชน์มากกว่าลบฟอร์มที่ไม่ต้องการออกบ้าง
โจทย์วันนี้คือ แก้ไขการแสดงผลภาษาไทยของ hotmail ใน Firefox โดยอัตโนมัติ
ปกติแล้วเวลาเข้าเช็คเมลใน hotmail ทาง server ของ hotmail จะส่ง content-type มาผิดประเภท โดยส่งมาเป็น Latin-1 (iso-8859-1) ดังนั้นถ้าเจอเมลที่มีหัวเรื่องเป็นภาษาไทย จะเดือดร้อน อ่านไม่ออก ต้องวุ่นวายไปจิ้ม View -> Character Encoding -> Thai ทุกครั้ง บ่อยๆ เข้ามันก็น่าหงุดหงิด
User script ตัวนี้จะปรับการแสดงผลในหน้า Inbox และหน้าดูข้อความให้ถูกต้อง โดยหลักการทำงานคือ script จะมองหาตัวหนังสือที่ “ควรจะ” เป็นภาษาไทย แล้วเปลี่ยนเป็นตัวหนังสือที่อ่านออกให้ ดูไม่ค่อยจะ elegant เท่าไหร่ แต่ว่าจาก javascript เราไม่สามารถไปแก้ไข characterSet ของ document ได้ (document.characterSet มันเป็น read-only) ก็เลยต้องใช้วิธีลูกทุ่งแบบนี้
วิธีติดตั้งก็เหมือนปกติ
- ลง extension greasemonkey (อย่าลืม restart Firefox)
- เอา firefox เปิดไปที่หน้านี้ http://dogpositive.com/userscript/hotmail.user.js
- จากในเมนู Tools -> Install This User Script
เหตุผลจริงๆ ที่ต้องมานั่งแก้อะไรพรรค์นี้คือ hotmail มันแอบโกง ถ้ารู้ว่าเราใช้ browser อื่นที่ไม่ใช่ IE เข้าไปดู ก็จะส่งหน้าอ่านไม่ออก แบบนี้มาให้
วิธีแก้ไขที่ยั่งยืนคือ ไปใช้ free email ยี่ห้ออื่นที่มันดีกว่านี้อย่าง gmail, yahoo mail จะดีกว่า
- Published:September 27th, 2006
- Comments:3 Comments
- Category:Firefox, Programming


3 Comments
ขอบคุณครับ
>แต่ว่าจาก javascript เราไม่สามารถไปแก้ไข characterSet ของ document ได้
ใช้ web filtering proxy (ที่ทำ regular expressions ได้)
แก้ได้ทุกอย่างครับ (iso-8859-1 -> iso-8859-11)
Privoxy เลิกใช้แล้ว
Proxomitron ใช้อยู่ (discontinue คนเขียนตายแล้ว, Dedicated to the memory of Scott R. Lemmon)
Proximodo (OpenSource, Proxomitron clone)
ถ้าเรา reply เมล แล้วมันไม่เปลี่ยนให้ครับ