ใช้ภาษาไทยกับ emacs
ใช้ภาษาไทยกับ emacs
emacs เป็นบรรณาธิกรณ์ (editor) ยอดนิยมอันหนึ่งที่สามารถใช้ภาษาไทยได้ทันทีโดยที่ไม่ต้องเซ็ตอะไรมากมายนัก. ปัญหาอย่างหนึ่งของการใช้ภาษาไทยกับ emacs คือเรื่องฟอนต์. ถ้าไม่มีการเซ็ตฟอนต์หรือติดตั้งฟอนต์ที่เหมาะสม, การแสดงผลอาจจะไม่สวยงามเท่าที่ควรและทำให้รู้สึกไม่อยากใช้ไปทันทีทันใด.ตัวอย่างหน้าจอของ emacs ที่แสดงต่อไปนี้เป็นรุ่น 21.3.1 ซึ่งสามารถใช้ภาษาไทยได้ทันทีในสภาพแวดล้อม LANG=th_TH.TIS-620. เราสามารถเรียกใช้ emacs จากเชลล์ได้ดังนี้. ถ้าตัวแปรสภาพแวดล้อม (environment variable) LANG เป็น th_TH.TIS-620 อยู่แล้วจะสั่งคำสั่ง emacs เฉยๆก็ได้.
$ LANG=th_TH.TIS-620 emacs &
จากรูปข้างบน. ส่วนที่วงสีแดงไว้เป็นส่วนที่แสดงโหมดของภาษาไทยว่าใช้ภาษาไทยได้ (T) แต่แป้นพิมพ์ที่ใช้เป็นภาษาอังกฤษอยู่. การเปลี่ยนแป้นพิมพ์เป็นภาษาไทยให้ใช้คีย์ C-\ (กดคีย์ Ctrl ค้างไว้แล้วกด \)
จะเห็นว่าส่วนที่วงสีแดงไว้เปลี่ยนเป็น "กก" หมายถึงพิมพ์ภาษาไทยได้. การพิมพ์ภาษาไทยใน emacs ให้ใช้วิธีการพิมพ์ภาษา (input method) ของ emacs ซึ่งได้แก่การใช้คีย์ "C-\" อย่าใช้วิธีการพิมพ์ภาษาของ X วินโดว์เช่น Alt+Shift เพราะจะทำให้ตำแหน่งสระวรรณยุกต์เพี้ยนไป, และไม่สามารถใช้คีย์ C- ขณะพิมพ์ภาษาไทยด้วย.
emacs จะพยายามหาฟอนต์ภาษาไทยที่ใช้ได้แล้วแสดงผลซึ่งถ้าในระบบมีฟอนต์ที่ไม่เหมาะสมกับ emacs ก็จะแสดงภาษาไทยได้ไม่สวยงาม.
ฟอนต์ภาษาไทยสำหรับ emacs
ฟอนต์ภาษาไทยสำหรับ emacs ต้องเป็นฟอนต์แบบ monospace คืออักขระทุกตัวต้องมีความกว้างเท่ากัน. ตัวอย่างของฟอนต์ประเภทนี้ได้แก่.$ xlsfonts | grep tis | grep emacs -nectec-emacs-bold-i-normal--18-180-72-72-c-90-tis620-0 -nectec-emacs-bold-r-normal--18-180-72-72-c-90-tis620-0 -nectec-emacs-medium-i-normal--18-180-72-72-c-90-tis620-0 -nectec-emacs-medium-r-normal--18-180-72-72-c-90-tis620-0 -poonlap-emacs-bold-i-normal--20-140-100-100-c-11-tis620-0 -poonlap-emacs-bold-r-normal--20-140-100-100-c-11-tis620-0 -poonlap-emacs-medium-i-normal--20-140-100-100-c-11-tis620-0 -poonlap-emacs-medium-r-normal--20-140-100-100-c-11-tis620-0 -poonlap-emacs-small-r-normal--8-140-100-100-c-8-tis620-0ฟอนต์ที่ผมเห็นว่าใช้กับ emacs ได้ดีที่สุดคือฟอนต์ -nectec-fixed-medium-r-normal--18-180-72-72-c-90-tis620-0. เวลาใช้ emacs สามารถเลือกฟอนต์ได้จากบรรทัดคำสั่งดังนี้.
$ LANG=th_TH.TIS-620 emacs -fn -nectec-emacs-medium-r-normal--18-180-72-72-c-90-tis620-0
ฟอนต์อื่นๆที่ใช้ได้กับ emacs เช่น
-phaisarn-ptmule-medium-r-normal--20-200-75-75-c-100-tis620-2 -etl-fixed-medium-r-normal--24-240-72-72-c-120-tis620-0เพื่อความสะดวกในการใช้, แพกเกจ thaixfonts มีการสร้าง alias ชื่อฟอนต์ให้สั่นลงเช่นชื่อสั้นของฟอนต์ -nectec-emacs-medium-r-normal--18-180-72-72-c-90-tis620-0 คือ themacs18. ดังนั้นเขียนคำสั่งให้สั้นลงได้อีกเป็น.
$ LANG=th_TH-TIS-620 emacs -fn themasc18 &
ใช้ไฟล์ตั้งค่าเริ่มต้น
แทนที่จะพิมพ์คำสั่งยาวๆทุกครั้งเราอาจจะเขียนบรรทัดต่อไปนี้ไว้ในไฟล์ $HOME/.Xdefaults ก็ได้.emacs.font: -nectec-emacs-medium-r-normal--18-180-72-72-c-90-tis620-0และถ้าสภาพแวดล้อมเป็นภาษาไทยและใช้ชุดอักขระ TIS-620 อยู่แล้วก็เรียกใช้ emacs ดังนี้.
$ emacs &ก็จะได้ใช้ emacs กับภาษาไทยได้อย่างดี.
Link ที่เกี่ยวข้อง