Theppitak's blog

My personal blog.

20 มีนาคม 2554

swath 0.4.1

ตามแผนการที่ได้พูดถึงใน ท้าย blog thaifonts-scalable 0.4.15 ก็มาถึงคิวของ swath ซึ่งขอเปลี่ยนลำดับให้ออกก่อน ThaiLaTeX เพื่อเป็นการเตรียม tool ให้เรียบร้อยก่อน พอ ThaiLaTeX ตัวใหม่มาถึง ผู้ใช้จะได้ใช้ภาษาบาลี-สันสกฤตได้ทันที ประกอบกับจะได้ใช้ swath ตัวใหม่ในการ build เอกสารทดสอบของ ThaiLaTeX ตัวใหม่ด้วย

หลังจากไม่ได้อัปเดตมาถึง 2 ปี swath 0.4.1 ก็มีการเปลี่ยนแปลงเพียงเล็กน้อยในแง่ความสามารถของโปรแกรม คือ:

  • แก้บั๊กเรื่องการตัดคำเมื่อเจอคำบาลีที่ใช้นิคหิตบนสระอิ เช่น กิสมิํ ซึ่ง swath ตัวเก่าจะตัดคำระหว่าง "มิ" กับนิคหิต ซึ่งไม่ถูกต้อง ในรุ่นนี้ได้แก้ไขบั๊กนี้แล้ว รวมทั้งได้แก้บั๊กเดียวกันสำหรับพินทุ ยามักการ และลากข้างยาวด้วย
  • เพื่อให้ผู้ใช้เปลี่ยนพจนานุกรมที่ใช้ตัดคำได้สะดวกขึ้น ก็ได้เปลี่ยนพฤติกรรมของตัวเลือก -d ซึ่งเดิมจะใช้กำหนดไดเรกทอรีที่บรรจุแฟ้มพจนานุกรมของ swath ให้เป็นที่อื่น ก็เปลี่ยนให้มากำหนดเป็นแฟ้มได้ด้วย เนื่องจากหลังจากที่เปลี่ยนมาใช้ libdatrie 0.2 ซึ่งสามารถเก็บข้อมูล trie ทั้งตัวในแฟ้มเดียวได้ ก็ไม่จำเป็นต้องระบุเป็นไดเรกทอรีเหมือนเดิมอีกแล้ว สามารถระบุแฟ้มของ trie ได้เลย ดังนั้น สมมุติว่าคุณอยากเปลี่ยนไปใช้พจนานุกรมของ libthai ในการตัดคำแทนของ swath เอง ก็เพียงสั่งดังนี้:
    $ swath -d /usr/share/libthai/thbrk.tri -f latex < in.tex > out.tex
    
    หรือจะกำหนดตัวแปรสภาพแวดล้อมชื่อ SWATHDICT แทนก็ได้ (ในรุ่นเก่าจะใช้ตัวแปร WORDSEGDATA ซึ่งอิงชื่อโปรแกรมสมัยเริ่มแรกก่อนที่จะเปลี่ยนชื่อเป็น swath รุ่นนี้จึงขอเปลี่ยนชื่อ) เช่น:
    $ export SWATHDICT=/usr/share/libthai/thbrk.tri
    $ swath -f latex < in.tex > out.tex
    

นั่นคือสิ่งที่เห็นภายนอก ส่วนโค้ดภายในก็ได้ทำความสะอาดโค้ด ลดการทำงานที่ไม่จำเป็นลงบ้าง แต่ไม่ได้ปรับอะไรใหญ่โตมากนัก เนื่องจาก swath เป็นโค้ดที่ค่อนข้างเปราะบาง แก้ไปแล้วมีโอกาสพังสูง (เคยพังมาแล้วในรุ่น 0.3.2) จึงต้องค่อย ๆ แก้ไปทีละนิดละหน่อย พร้อมกับมีการทดสอบทุกขั้นตอนที่แก้ ว่ายังทำงานปกติดีหรือเปล่า :-P รุ่นนี้หากพบ regression ก็กรุณาแจ้งผมโดยทันทีครับ

ป้ายกำกับ: ,

0 ความเห็น:

แสดงความเห็น (มีการกลั่นกรองสำหรับ blog ที่เก่ากว่า 14 วัน)

<< กลับหน้าแรก

hacker emblem