จากที่เมื่อวานหัดใช้ 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 จะดีกว่า