ตัวติดตั้ง Thai to Unicode

วันนี้ได้ทำตัวติดตั้งสำหรับ script Thai to Unicode มันจะติดตั้งเข้าไปที่ /Library/iTunes/Scripts หรือที่ ~/Library/iTunes/Scripts แล้วแต่เลือก

ไม่ต้องเสียเวลาแตก zip และ copy ไฟล์อีก

download: ThaitoUnicode.dmg

Facebooktwittergoogle_plusredditpinterestlinkedinmail

Update: iTunes Thai to Unicode script

ใช้ได้กับ OS X 10.5 10.6 10.7

ก่อนหน้านี้ได้เขียนถึงการแปลงชื่อเพลงใน iTunes ให้เป็นภาษาไทยที่ถูกต้องด้วย applescript ตอนนี้เพิ่งจะรู้ว่า script ที่เขียนยังทำงานได้ไม่ถูกต้อง เหตุเพราะตอนแรกเข้าใจว่า iTunes มันอ่านชื่อเพลงที่เป็น ascii แล้วก็แปลงให้เป็น unicode ด้วย character encoding แบบ Latin-1 (iso 8859-1) ซึ่งจะแปลงไปเป็น Unicode ภาษาไทยได้ตรงๆ

แต่จริงๆ แล้วมันกลายเป็นว่า iTunes ได้แปลงรหัสของตัวอักษรบางตัวออกไปนอกเหนือจาก iso 8859-1 ทำให้การทำงานของ script เดิมผิดพลาด

คราวนี้เลยต้องมาดูว่า iTunes มันแปลงรหัสของตัวอักษรอย่างไร วิธีการที่ใช้ก็คือกำหนดชื่อเพลงใน id3 tag ของไฟล์ mp3 เป็นตัวอักษรตั้งแต่ 128 ไล่ไปจนถึง 255 แล้ว import เข้าไปใน iTunes จากนั้นก็ดูในชื่อเพลงที่ iTunes มันแปลงแล้วว่ามันกลายเป็นอะไรไป

ในการแก้ไข id3 tag นั้นก็ได้เขียนโปรแกรมด้วย Java โดยอาศัย Java ID3 Tag Library เป็นตัวช่วย

ผลที่ได้คือรู้ว่า iTunes ได้แปลงรหัสตัวอักษรในส่วนที่เป็นภาษาไทยของ TIS-620 (รหัสตั้งแต่ 161 จนถึง 251) โดยคิดว่าเป็น Latin ไปดังนี้

iTunes_code_conversion.png
สำหรับตัวอักษรอื่นๆนอกจากรายการข้างต้นนั้น ไม่ได้ถูกเปลี่ยนรหัสตัวอักษรแต่อย่างใด

จากข้อมูลที่ได้มาทั้งหมดก็ต้องเอาไปเขียน script ใหม่ โดยแก้ไขส่วนที่เป็นการแปลงรหัสเป็นอย่างในรูป
Picture 1.png
download ThaitoUnicode.dmg
update: แก้ไข function การแปลงรหัสอีกเล็กน้อย อันเดิมใช้ is เพื่อเปรียบเทียบมันไม่เวิร์ก

update: 12 สิงหาคม 2554 เพิ่ม วิธีติดตั้งและใช้งาน

Facebooktwittergoogle_plusredditpinterestlinkedinmail