บล็อกเพื่อแลกเปลี่ยนเรียนรู้ สำหรับนักพัฒนาฟังก์ชันสำหรับ R ในประเทศไทย
สนับสนุนโดย สำนักงานกองทุนสนับสนุนการวิจัย (สกว)

19 มิถุนายน 2548

การตั้งค่าใน Rconsole ให้ใช้ภาษาไทยได้ (R 2.1.0 ขึ้นไป)

โดยทั่วไปแล้ว ในการเปลี่ยน font ที่แสดงใน R console นั้น ทำได้โดยเลือกเมนู ‘Edit’ แล้วเลือก ‘GUI preferences…’ จากนั้นจะมี window เกิดขึ้น ภายในนั้นมีช่องหนึ่งให้ใส่ font ที่ต้องการ อย่างไรก็ตามในรายการ font ที่ให้มานั้น มีเพียง font เดียวคือ FixedSys เท่านั้นที่จะทำให้แสดงความช่วยเหลือเป็นภาษาไทยได้ แต่การแสดงสระบนล่าง และวรรณยุกต์ ไม่สามารถแสดงได้ถูกต้อง คือจะเหลื่อมกับตัวอักษรอยู่ เมื่อเลือกตัวเลือกต่างๆ แล้ว จึงบันทึกแฟ้มเป็นแฟ้มชื่อ Rconsole ซึ่ง R จะบันทึกไว้ในโฟลเดอร์ My Documents

การแก้ไขข้อบกพร่องนี้สามารถทำได้โดยการเลือก font ที่เหมาะสมมาใส่ในแฟ้มชื่อ Rconsole ในโฟลเดอร์ My Documents นี้เอง แต่ก่อนอื่นต้อง download font ภาษาไทยที่เป็น monospace มาเสียก่อน ที่พบว่าใช้ได้ดีมี trutype font อยู่ 2 ตัวที่ดาวน์โหลดได้ฟรี คือ Courier MonoThai กับ Thaimono สามารถดาวน์โหลด Courier MonoThai ซึ่งสร้างโดยคุณ เศรษฐพล ลิ้นปราชญา (settapol@hotmail.com) ได้จาก http://software.thai.net/tis-620/courierthai.html และสำหรับ MonoThai ซึ่งสร้างโดยคุณ วรวิทย์ ฆังตระกูล (wwwit@thai.com) ดาวน์โหลดได้ที่ http://software.thai.net/tis-620/modthai.html เมื่อดาวน์โหลดมาแล้วให้ install เข้าในโฟลเดอร์ Font ซึ่งเรียกได้จาก Control Panel

ภาษาอังกฤษของ font ทั้งสองมีลักษณะเช่นเดียวกับ Courier New แต่ภาษาไทยมีลักษณะแตกต่างกัน Courier MonoThai ตัวอักษรมีลักษณะอ้วนกลม ส่วน Thaimono มีลักษณะสูงและค่อนข้างเบียดกัน อาจดาวน์โหลดมาทั้งสอง font แล้วเลือกลักษณะอักษรที่ชอบได้ตามใจ

เนื่องจาก font ดังกล่าวไม่มีอยู่ในลิสต์ จึงไม่สามารถเลือกได้จากเมนู การจะใช้ font เหล่านี้ต้องแก้ไขแฟ้ม Rconsole ใน My Documents (ไม่ใช่ที่ ../R/rw201x/etc) เมื่อเปิดขึ้นมาจะพบว่าบรรทัดที่ 12-19 มีข้อความดังนี้

(12) ## Font.
(13) # Please use only fixed width font.
(14) # If font=FixedFont the system fixed font is used; in this case
(15) # points and style are ignored. If font begins with "TT ", only
(16) # True Type fonts are searched for.
(17) font = TT Courier MonoThai
(18) points = 10
(19) style = normal # Style can be normal, bold, italic

บรรทัดที่ 17 ให้เปลี่ยนข้อความเป็น

(17) font = TT Courier MonoThai

หรือ

(17) font = TT Thaimono

ตามแต่ชอบ

บรรทัดที่ 18 เป็นขนาดของตัวอักษรเป็น point และบรรทัดที่ 19 เป็นรูปแบบตัวอักษร อาจเลือกใช้ normal หรือ bold แล้วแต่ชอบ

เมื่อแก้ไขเสร็จแล้วบันทึกแฟ้มกลับเช่นเดิม แล้วเรียก RGUI ขึ้นมาใหม่ จะพบว่า R console จะมีหน้าตา font เหมือน Courier New แต่หากเรียกกดปุ่มเปลี่ยนเป็นภาษาไทย ก็จะสามารถพิมพ์ภาษาไทยเข้าไปได้อย่างถูกต้อง และเมื่อเรียก help แบบ text ใน library EpiCan รุ่น 1.3.4 ขึ้นไป ก็จะแสดงความช่วยเหลือเป็นภาษาไทยได้อย่างถูกต้อง

อย่างไรก็ตาม การเว้นบรรทัดของ Courier และ font ทั้งสองค่อนข้างห่าง ผู้ใช้บางท่านอาจไม่ชอบนัก ก็อาจใช้ FixedSys แทนก็ได้ แม้ว่าจะแสดงอักษรไทยได้ แต่การจัดสระบนล่างและวรรณยุกต์จะไม่ถูกต้อง แต่ไม่มีปัญหาในการใช้งานแต่อย่างใด
สนับสนุนโดย สำนักงานกองทุนสนับสนุนการวิจัย (สกว)

This page is powered by Blogger. Isn't yours?