ตั้ง locale ไทย แต่เมนูอังกฤษใน Ubuntu
posted on 14 Feb 2007 16:03 by pongtawat in linux-unix
หาอยู่นานมากๆ ว่าทำยังไงถึงจะใช้ locale ไทยแต่เมนูอังกฤษได้ใน Ubuntu Edgy
สุดท้ายหลังจากการทดลองก็พบว่าต้องตั้ง
LANG=th_TH.UTF-8
LANGUAGE=en_US.UTF-8:en
ในไฟล์ /etc/environment กับ /etc/default/locale
LANG นี่จะเป็น default สำหรับ LC_XXX ทั้งหมดที่ไม่ได้ตั้งค่า
ส่วน LANGUAGE นี่ไม่รู้นิยามเอาไว้เพื่อทำอะไร แต่เท่าที่ลอง UI ใน GNOME จะเลือกภาษาตามตัวนี้
ส่วน LC_MESSAGES นี่จริงๆ น่าจะเอาไว้เลือกภาษา UI แต่ว่าตั้งแล้วใน GNOME ไม่เปลี่ยนให้ (คับคล้ายคับคลาว่าใน Hoary ตั้งตัวนี้แล้วมันเปลี่ยนนา)
สรุปว่าก็ยังไม่เข้าใจอยู่ดีว่าแต่ละตัวมันเอาไว้ทำอะไรแน่ :(
นอกจากตั้ง LANGUAGE แล้ว ก็ต้องตั้ง LC_TIME=en_US ด้วย ไม่งั้นจะแสดงวันที่และเวลาเป็นภาษาไทย ตัวนี้ต้องตั้งใน /etc/environment เท่านั้น ใน /etc/default/locale ตั้งไปก็ไม่มีผล (สองไฟล์นี้ก็งงๆ เหมือนกัน)
ปล. ที่จริงโปรแกรมส่วนมากใช้ภาษาไทยบน locale en_US ได้แทบไม่มีปัญหาเลย เพราะเป็น Unicode กันเกือบหมดแล้ว เท่าที่เจอมีแค่ Office XP บน CrossOver/Wine กับ ICQ offline message ใน GAIM ที่มีปัญหา
ปล. ขอบคุณอานนท์ที่ช่วยลองหลายๆ แบบให้
สุดท้ายหลังจากการทดลองก็พบว่าต้องตั้ง
LANG=th_TH.UTF-8
LANGUAGE=en_US.UTF-8:en
ในไฟล์ /etc/environment กับ /etc/default/locale
LANG นี่จะเป็น default สำหรับ LC_XXX ทั้งหมดที่ไม่ได้ตั้งค่า
ส่วน LANGUAGE นี่ไม่รู้นิยามเอาไว้เพื่อทำอะไร แต่เท่าที่ลอง UI ใน GNOME จะเลือกภาษาตามตัวนี้
ส่วน LC_MESSAGES นี่จริงๆ น่าจะเอาไว้เลือกภาษา UI แต่ว่าตั้งแล้วใน GNOME ไม่เปลี่ยนให้ (คับคล้ายคับคลาว่าใน Hoary ตั้งตัวนี้แล้วมันเปลี่ยนนา)
สรุปว่าก็ยังไม่เข้าใจอยู่ดีว่าแต่ละตัวมันเอาไว้ทำอะไรแน่ :(
นอกจากตั้ง LANGUAGE แล้ว ก็ต้องตั้ง LC_TIME=en_US ด้วย ไม่งั้นจะแสดงวันที่และเวลาเป็นภาษาไทย ตัวนี้ต้องตั้งใน /etc/environment เท่านั้น ใน /etc/default/locale ตั้งไปก็ไม่มีผล (สองไฟล์นี้ก็งงๆ เหมือนกัน)
ปล. ที่จริงโปรแกรมส่วนมากใช้ภาษาไทยบน locale en_US ได้แทบไม่มีปัญหาเลย เพราะเป็น Unicode กันเกือบหมดแล้ว เท่าที่เจอมีแค่ Office XP บน CrossOver/Wine กับ ICQ offline message ใน GAIM ที่มีปัญหา
ปล. ขอบคุณอานนท์ที่ช่วยลองหลายๆ แบบให้