ภาษาไทยใน Terminal (OSX)

Published on

เพิ่งลง OSX Mavericks (10.9) ใหม่ แล้วภาษาไทยใน terminal (ใช้ iTerm2) มันมีปัญหา เป็นแบบนี้ครับ (รัน git diff)

default osx locale

ส่วนใน Vim ก็เละตุ้มเป๊ะ

thai in vim

ลองหาใน Google ดู ก็พบว่าเป็นปัญหาที่ locale ในเครื่องเรา ที่มันอ่านภาษาไทยไม่ออก เมื่อรัน command locale มันก็ได้แบบนี้ครับ

$ locale
LANG=
LC_COLLATE="C"
LC_CTYPE="C"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

วิธีแก้ก็คือ เซ็ต locale ให้มันเป็น en_US.UTF-8 ครับ โดยเพิ่ม 2 บรรทัดนี้เข้าไปใน ~/.zshrc (ถ้าใครใช้ bash ก็เป็น ~/.bashrc)

# ~/.zshrc
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

พบว่าภาษาไทยแสดงผลได้ดีแล้ว

fixed locale in iterm

fixed thai in vim

เช็ค locale ดูก็เป็น en_US.UTF-8

$ locale
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL="en_US.UTF-8"

ที่มา: In OSX Lion, LANG is not set to utf8. how to fix?

ปล.

Share

(Edit on GitHub)