เปรียบมวย unicode edtiors for LaTeX

ในปัจจุบันบนวินโดวส์มีบรรณาธิกรณ์ (editor) อยู่สองตัวที่รองรับ unicode และสามารถทำ forward/inverse search ได้ ตัวหนึ่งคือ TeXWorks ส่วนอีกตัวคือ TeXMakerX ในบทความนี้จะเปรียบเทียบเฉพาะความสามารถในด้านที่กล่าวถึงเท่านั้น รูปร่างหน้าตาและความสามารถอื่น ๆ นั้น TeXWorks ยังคงเปรียบเทียบกับ TeXMakerX ไม่ได้  นั่นเป็นเพราะ TeXMakerX นั้นมีฐานมาจาก TeXMaker ซึ่งเป็นข้อได้เปรียบ

คราวนี้ TeXMakerX ได้ออกเวอร์ชัน 2.0  ซึ่งบรรจุความสามารถ forward/inverse search ทำให้ไม่จำเป็นต้องไปหา pdf viewer แบบ Sumatra PDF และเนื่องจากตัวมันรองรับ unicode ทำให้สามารถใช้งานกับภาษาไทยได้ดี โดยเฉพาะอย่างยิ่งกับ XeLaTeX ทำให้การแก้ไขงานที่เป็นภาษาไทยไม่ยุ่งยากอีกต่อไป  หน้าตาของ pdf viewer ที่ติดมากับ TeXMakerX นั้นเป็นแบบรูปข้างล่าง ก็มีฟังก์ชันในการดูไฟล์เอกสารครบถ้วน เพียงพอที่จะใช้ตรวจสอบเอกสาร

หลังจากที่เราได้เอกสาร pdf แล้ว เราสามารถจะเรียกดูเอกสารต้นฉบับได้โดยการเอาเมาส์ไปจิ้มตำแหน่งที่เราต้องการ แล้วคลิ๊กขวาเพื่อเลือกตัวเลือก Jump to Source ตัวบรรณาธิกรณ์ก็จะขึ้นมาตรงบรรทัดนั้นให้และแถมด้วยการเน้นข้อความในส่วนนั้นด้วยสีเหลือง  ส่วนการจะเรียกดูสิ่งที่ปรากฏใน pdf ไฟล์ จากบรรณาธิกรณ์ ก็ไปที่ตำแหน่งนั้น จะกด F7 หรือคลิ๊กที่ไอคอน Adobe ก็ได้

ตอนจะลองนะครับ สำหรับ TeXMakerX จำเป็นจะต้องตั้งค่าคำสั่งให้ถูกต้องด้วย สำหรับการใช้ XeLaTeX ก็ต้องไปแก้ อย่างในกรณีนี้ผมไม่ใช้ LaTeX แล้วผมก็แก้ให้เป็น XeLaTeX ดังนี้ครับ

xelatex  -synctex=1 -interaction=nonstopmode %.tex

ซึ่งหลังจากแก้ไขแล้ว ตัวโปรแกรมก็จะเรียกใช้ XeLaTeX แทน

สำหรับ TeXworks นั้นมีตัวเลือกสำหรับ XeLaTeX ให้อยู่แล้ว เรียกใช้ได้เลย ทุกอย่างแทบจะเหมือนกันกับ TeXMakerX ทั้งหมด เพียงแต่ในการทำ Forward/Inverse search นั้นจะต้องใช้เมาส์ซึ่งไม่สะดวกนัก อีกข้อเสียหนึ่งก็คือตัวโปรแกรมจะเลือกเปิดตัว pdf viewer เฉพาะในที่ ๆ กำหนดไว้เท่านั้น ผู้ใช้ต้องเลื่อนเอาเอง บางครั้งมันไม่สะดวกนัก

สรุป TeXworks นั้นยังตาม TeXMakerX อยู่มากโข ในแง่ของคุณลักษณะการใช้งาน ถ้าไม่เกี่ยงเรื่องรก TeXMakerX เป็นบรรณาธิกรณ์สำหรับ XeLaTeX ภาษาไทยที่ดีตัวหนึ่งครับ

TexMakerX 1.9.2 preview

TexMakerX เป็นบรรณาธิกรณ์ที่สนับสนุนยูนิโค้ดที่แยกตัวออกมาจาก TexMaker อีกทีหนึ่ง ตัว TexMakerX นั้นมีทุกอย่างที่ TexMaker มี โดยมีการนำคุณสมบัติที่ดี ๆ มาทั้งหมดและนำมาปรับปรุงแก้ไข ถ้ามองเฉพาะหน้าตาและความง่ายในการใช้งาน TexMaker 1.9.2 นั้นยังใช้งานทั่วไปง่ายกว่า TexMakerX อยู่นิดหน่อย แต่ตัว TexMakerX นั้นได้เพิ่มหลายสิ่งหลายอย่างเข้ามา  เช่น code folding ระบบ auto complete ที่ใช้งานได้จริง เป็นต้น

texmakerx

จากรูปจะเห็นได้ว่าหน้าตามาตรฐานของ TexMakerX นั้นไม่ได้เปลี่ยนแปลงไปจาก TexMaker รุ่น 1.8 เลย แต่ในรุ่นนี้สามารถเปลี่ยนหน้าตาให้ทันสมัยขึ้นได้จากเมนู Option ซึ่งไม่ขอพูดถึงแล้วกันครับ เท่าที่ใช้ดูเล็กน้อยก็พบว่าการใช้งานไม่แตกต่างอะไรไปจาก TexMaker เลย โดยเฉพาะจุดเด่นของ TexMaker ในเรื่องของการแ้จ้งผลขอผิดพลาดที่ดีมาก ๆ ในตัว TexMakerX นั้นยังได้เพิ่มแท็บ log file, message, preview เพิ่มขึ้นมาจากปกติอีก มีข้อดีคือทำให้ไม่สับสน

เรื่องที่น่าชมคือเรื่อง auto complete ที่ใช้งานได้จริง กล่าวคือเมื่อเติมเต็มคำสั่ง หรือ environment ให้แล้ว ตัวเคอร์เซอร์จะไปอยู่ในตำแหน่งที่ผู้ใช้ควรจะพิมพ์ทันที (อันนี้บรรณาธิกรณ์ของ LaTeX บนวินโดวส์ไม่เป็น) ซึ่งทำให้สะดวกและผู้ใช้จะยินดีใช้มันอย่างยิ่ง อย่างไรก็ตามยังมีข้อเสียอีกหลายข้อเช่นไม่สามารถเรียก command shell ของวินโดวส์ขึ้นมาดู และยังไม่สามารถปรับแต่งอะไรได้มากนัก (จริง ๆ ก็ปรับแต่งได้มากอยู่แล้ว) นอกจากนั้นเวลาเรียกโปรแกรมประกอบเช่น bibtex ก็ไม่มีการแสดงรายละเอียดการของการคอมไพล์ ซึ่งจำเป็นมากในการดูข้อผิดพลาดต่าง ๆ (ในส่วนนี้ผมจะแจ้งให้ผู้พัฒนาต่อไป)

ท้ายที่สุดผมขอแนะนำให้ผู้ใช้ LaTeX รุ่นใหม่ ๆ เริ่มจากบรรณาธิกรณ์ตัวนี้นะครับ ด้วยเหตุผลง่าย ๆ คือ รองรับยูนิโค้ด มีระบบแสดงข้อผิดพลาดที่เข้าใจได้ และระบบ auto complete ที่ใช้งานได้จริง แค่นี้ผู้ใช้มือใหม่ก็สบายขึ้นเยอะแล้วครับ

หมายเหตุ รู้สึกจะยังไม่มีระบบ Project management ที่ดี ในกรณีทั่วไปสามารถตั้งค่า main file ได้จากเมนู Option

TexMakerX: TexMaker กบฏ

TexMaker เป็น Unicode editor ตัวแรกสำหรับ LaTeX ที่ใช้งานบน Windows ได้ แต่ผมไม่ค่อยชอบนัก ด้วยเหตุผล bla bla (ด่าโปรแกรมเปิดรหัส เดี๋ยวจะโดนแขวะว่า พูดตรงนี้ไม่มีคนพัฒนาเขาไม่รู้หรอก เสือกรู้อีกว่าเราไม่ได้บอกคนพัฒนา) บน OS อื่นรู้สึกจะมีนานแล้ว ตอนนี้มี TeXworks กับ Kile บน KDE for windows (การพัฒนายังไม่เสถียร และผมก็ยังไม่ได้ลอง)

ปัจจุบันมี TexMakerX ซึ่งแยกตัวออกมากจาก TexMaker เข้าใจว่าตั้งแต่ 1.8 โดยมีการส่งเวอร์ชัน 1.8.1 มาให้ยลโฉมดังรูปข้างล่าง ผมลองใช้ดูแล้วสิ่งที่ดีขึ้นเห็นได้ชัด ๆ คือ การ syntax highlight ที่ดีขึ้น และมีการ floding ทำให้สามารถปิดบางส่วนของโปรแกรมใน environment ได้ (ซึ่งจะมีประโยชน์มากในการทำ presentation) ที่เหลือก็คงแตกต่างจาก 1.8 มากนัก

https://i0.wp.com/texmakerx.sourceforge.net/img/example.png

การแจ้งความผิดพลาดยังใช้ระบบเดิมคือ ถ้าคอมไพล์ latex ไม่พลาด แต่โปรแกรมเสริมตัวอื่น ๆ พลาด จะแสดงข้อความแค่ว่ามีปัญหา แล้วหลุดออกมาโดยไม่กระทบกับโปรแกรมตัวอื่น ๆ (ดีกว่า WinEDT ตรงที่ไม่ต้องมากด cancel เอง ถ้าลืมกดก็จะมีปัญหาน่ารำคาญ)

ข้อดีของ TexMaker ซึ่งมีมานานแล้วคือการตั้งค่าลำดับของการคอมไพล์ที่เข้าใจง่าย และเข้าถึงได้ง่าย (ของ WinEDT ง่ายกว่า แต่เข้าถึงยาก) แต่แน่นอนการจัดการต่าง ๆ ยังห่างไกล WinEDT พอสมควร (ใครติด WinEDT แล้วจะเลิกลำบาก)  อย่างไรก็ตามนี่เป็นพัฒนาการที่ดีของบรรณาธิกรณ์ตัวนี้ครับ