ReadCamp 29 Nov 2008 @ Bangkok Art and Culture Centre

Beginning LaTeX

by pittaya

ข้อกำหนดในการเขียนวิทยานิพนธ์ของมหาลัยที่เรียนอยู่ เค้ากำหนดว่าต้องเขียนตามรูปแบบมาตรฐานของเค้า แต่ไอ้ “รูปแบบมาตรฐาน” ที่เค้าบังคับดันไม่มีการเขียนกำหนดไว้ชัดเจนว่า ใช้ฟอนต์ขนาดเท่าไหร่ เว้นระยะขอบเท่าไหร่ แต่กลับมักง่ายด้วยการให้คนเขียนดาวน์โหลด template ไปใช้เอง ซึ่ง template ที่ให้ดาวน์โหลดอันนี้มันเป็น template สำหรับ Microsoft Word

เท่ากับว่าทางมหาวิทยาลัย (อันทรงเกียรติ) คาดหวังว่านิสิตนักศึกษาทุกคนจะมี Microsoft Word เอาไว้ใช้งานกันทุกคน โดยไม่สนใจว่าราคาของชุด Microsoft Office จะแพงขนาดไหน หรือว่าคนที่มีใช้จะใช้ของที่ถูกลิขสิทธิ์หรือไม่ เป็นถึงมหาวิทยาลัยที่บอกว่าตัวเองเป็นมหาวิทยาลัยชั้นนำของประเทศ แต่กลับทำเรื่องมักง่ายแบบนี้ ในฐานะคนที่เรียนอยู่รู้สึกสะอิดสะเอียนอย่างบอกไม่ถูก

โชคดีที่ว่าในแลปที่เป็นสมาชิกอยู่ เค้าเขียนวิทยานิพนธ์หรืองานวิจัยกันด้วย LaTeX (อ่านว่า เล-เทค) และมีการทำ template ไว้ให้ใช้เรียบร้อยแล้ว (เป็นของ unofficial ทำกันเอง ไม่ได้มาจากทางมหาวิทยาลัย) เลยคิดว่าคงหันมาใช้วิธีนี้เขียนบ้างดีกว่า เพราะผลงานที่ออกมาดูดี สวยงาม แก้ไขง่าย และใช้ได้หลาย platform (ทำให้ไม่ต้องสลับไปใช้ windows เวลาจะเขียน)

การใช้งานภาษาไทย LaTeX บน Mac มีวิธีบอกที่ thaimacdev คร่าวๆ ก็คือ (จดไว้กันลืม)

  1. ลง Xcode จะได้มี tools ที่จำเป็นในการ compile thailatex และ swath (อันนี้ลงไว้ในเครื่องอยู่แล้ว)
  2. โหลด MacTeX มาลง (ไฟล์ขนาด 720 MB!)
  3. ลง thailatex จัดการ configure / make / install ตามปกติ ในขั้นนี้อาจจะโดนโวยวายว่าไม่เจอ latex ก็ให้ add path ของ latex ที่ได้จากการลง MacTeX เข้าไปด้วย (ปกติจะอยู่ที่ /usr/texbin/latex)
    พอเสร็จแล้วให้ย้ายไฟล์ share/texmf ไปไว้ใน ~/Libary แล้วก็สั่ง updmap
    $ updmap --enable Map=~/Library/texmf/fonts/map/dvips/thai/thai.map
  4. ลง swath เอาไว้ตัดคำภาษาไทย ก็แค่ configure / make / install ตามปกติ

หลังจากนี้มันจะมีปัญหานิดหน่อยตรงที่ package thailatex มันใช้ได้กับไฟล์ที่เป็นรูปแบบ ascii (หรือ tis-620) เท่านั้น แต่ text editor ที่ใช้งาน (TextMate) มันเซฟเป็น tis-620 ไม่ได้ ก็เลยให้มันเซฟเป็น utf-8 แทน แล้วในขั้นตอนการ compile เอกสาร ก็แอบแปลงให้มันเป็น tis-620 เสียก่อน

# แปลงจาก utf-8 เป็น tis-620 แล้วผ่านเข้า swath ที่เป็นตัวตัดคำ
$ iconv -f utf8 -t tis620 foo.tex | swath -f latex > foo.ttex
# compile ให้ออกมาเป็น pdf
$ pdflatex foo.ttex

แต่อันนี้ที่จริงก็ยังไม่เนียนเท่าไหร่ เพราะใน TextMate มันจะมีคำสั่งให้กด Cmd-R แล้วคอมไพล์เอกสารให้เลย รวดเร็วดี แต่มันจะไม่แปลง encoding และไม่ตัดคำให้ ถ้าจะแก้ก็ต้องไปแก้ใน Bundle Editor ของมันเอง เพิ่มคำสั่งเข้าไปสักที่นึง แต่ตอนนี้ยังขี้เกียจแกะโค้ด เอาไว้มีเวลาว่างๆ ก่อน


Rss Commenti

No comments yet

No comments yet.

Leave a comment