คอมไพล์ emacs จาก CVS
www.tanabutr.co.th/photobook
ตามที่คุณ Werner LEMBERG มาประกาศไว้ว่าเขาได้เพิ่มโค้ดที่เกี่ยวกับการจัดการคำภาษาไทยใน emacs แล้วทำให้ใช้ฟังก์ชันที่เกี่ยวข้องกับคำได้เช่นกระโดดข้ามหรือถอยเป็นคำ, ตัดคำ ฯลฯ. เลยอยากจะแนะนำวิธีการดาว์นโหลดรหัสต้นฉบับและคอมไพล์ดูกัน.
ดาว์นโหลดรหัสต้นฉบับด้วย cvs
ตรงนี้ไม่มีอะไรเป็นพิเศษอ่านเอาจาก Anonymouse CVS FAQ ที่ไซด์ Savannah. ก่อนอื่นสร้างไดเรกทอรีที่เก็บ CVS ที่จะดาว์นโหลดมา. แล้วใช้คำสั่ง cvs ดาว์นโหลดรหัสต้นฉบับ.
$ mkdir CVS $ cd CVS $ export CVS_RSH="ssh" # กำหนดวิธีใช้ CVS $ cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/emacs co emacs # check out มาทั้งหมด
ถ้ามีถามรหัสผ่านก็กด Enter ไปเฉยๆแล้ว cvs จะดาว์นโหลดรหัสต้นฉบับไว้ในไดเรกทอรีที่ชื่อ emacs ให้.
คอมไพล์
โดยปรกติเราสามารถเข้าไปในไดเรกทอรี emacs แล้ว make ได้เลยแต่ผมไม่ค่อยชอบเพราะระหว่างการบิวล์จะสร้างไฟล์โน่นนี่เยอะแยะ. เราสามารถสร้างไดเรกทอรีต่างหากสำหรับบิวล์ได้.
$ cd CVS $ mkdir BUILD $ cd BUILD $ ../emacs/configure --with-gtk # รัน configure อยู่ในคนละไดเรกทอรี $ make # มีข้อผิดพลาดต้องใช้ make bootstrap Your tree does not include the compiled Lisp files. You need to do `make bootstrap' to build Emacs. Emacs now requires Texinfo version 4.2. make: *** [maybe_bootstrap] Error 1 $ make bootstrap $ su # เปลี่ยนเป็น root $ make install
โปรแกรม emacs จะอินสตอลล์ไว้ที่ /usr/local/bin. ถ้าไม่ต้องการก็ make uninstall เพื่อเอาโปรแกรมออกจากระบบ.
ใช้ emacs
เพื่อความแน่ใจว่าใช้ emacs ถูกตัวจะสั่งคำสั่งเป็น full path
$ LANG=th_TH /usr/local/bin/emacs

กด C-h (Ctrl+h) แล้วกดคีย์ t. emacs จะแสดง tutorial ภาษาไทย. ตอนที่ผมใช้ emacs ครั้งแรก (10 ปีที่แล้ว) ก็เรียนจาก tutorial นี้แหละ (ภาษาอังกฤษ). Tutorial นี้เดิมเขียนโดย อ.มานพ. ฉบับปัจจุบันแก้ไขโดย อ.วิรัช. emacs เดิมใช้ภาษาไทยไม่ได้จะมีโปรแกรมที่สร้างจาก emacs ที่ชื่อ mule. ส่วนที่เป็นภาษาไทยเขียนโดยคุณ Handa Ken'ichi (ถ้าเข้าใจไม่ผิดเขาเป็นคนสร้าง mule ด้วย).
ถ้าลองฟังก์ชันที่เกี่ยวกับคำภาษาไทยก็จะรู้ว่ามันใช้ได้ดีทีเดียว.
M-f (forward-word) หรือกด Ctrl แล้วตามด้วยลูกศรขวา M-b (backward-word) หรือกด Ctrl แล้วตามด้วยลูกศรซ้าย M-d (kill-word) หรือกด Ctrl แล้ว backspace M-DEL (backward-kill-word) M-t (transpose-words) M-q (fill-paragraph) M-x auto-fill-mode ขึ้นบรรทัดใหม่ (เติม newline) ให้อัตโนมัติ