NOT COMPLETE, waiting for complete Thaiversion of Thai HOWTO
Mini Howto
Subject: Thai fonts/keyboard for X windows system
By: Pruet Boonma <pruet@ds90.intanon.nectec.or.th>
Date: June 22, 1998
Update from: Apr 3, 1998 <Xthai_Apr_3_98.html>
License: สงวนลิขสิทธิ์เอกสารนี้ โดย พฤษภ์ บุญมา <pruet@ds90.intanon.nectec.or.th> การเผยแพร่เอกสารนี้จะต้องอยู่ภายไต้ เงื่อนไขของ GNU General Public License เวอร์ชั่น 2.0 ที่ออกโดย Free Sofware Foundation กรุฒาอ่านรายละเอียดของ GPL ที่ <http://linux.thai.net/gpl.html>

Introduction:
สำหรับ Linux แล้ว จะมี X-Windows เป็น GUI มาตรฐาน เหมือนกับ Unix โดยทั่วไป และยังสามารถใช้ภาษาไทยบน X-Windows ได้ด้วย โดยใน XFree86 Version หลัง ๆ จะเริ่มมีการ Support Keyboard ภาษาไทย ทำให้ไม่ต้องสร้าง file keyboard map เองอีกด้วย สำหรับ mini-howto นี้ จะแนะนำขั้นตอนการติดตั้งภาษาไทยบน X-Windows ให้สามารถอ่านเขียนได้ โดยอาศัยวิธีที่ได้ทดสอบแล้ว ว่าใช้งานได้ โดยอาจจะไม่ถูกต้องตามหลักการมากนัก

หมายเหตุ
1. สำหรับ Font ภาษาไทย ส่วนหนึ่งจัดทำโดยทีมนักศึกษาไทยในประเทศญี่ปุ่น ซึ่งในตอนนี้ได้จัดทำ Thai Extension for Linux <http://eagle.fedu.uec.ac.jp/ZzzThai/Linux/> สำหรับ Linux ขึ้นมา ซื่งทำให้สามารถติดตั้งการใช้ภาษาไทยทำได้ง่ายขึ้น สำหรับ Link ของ นักศึกษาไทยใน ประเทศญี่ปุ่นที่เข้าไปได้ ก็มีดังนี้คือ Zzz Thai Project <http://www.fedu.uec.ac.jp/ZzzThai>,Thai Page at NACSIS <http://thaigate.nacsis.ac.jp>
รวมทั้ง Thai HOWTO <ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/Thai-HOWTO> ของคุณพูนลาภ วีรธนบุตร <poon-v@fedu.uec.ac.jp> ที่ได้รับการยอมรับเข้าสู่ Linux Document Project แล้วด้วย และ Thai Linux Project <http://www.thailinux.org>ของทีมไกรวัล สำหรับ เอกสารและข้อแนะนำบางส่วน
2. ในเอกสารฉบับนี้กล่าวถึงการติดตั้ง Thai Font และ Keyboad map เท่านั้น ไม่ได้รวมถึงการทำ Internationalize สำหรับภาษาไทย รวมถึง Locale ต่าง ๆ ซึ่งจะได้กล่าวในเอกสารฉบับต่อ ๆ ไป

ขั้นตอนการติดตั้ง Thai Font
ให้ทำการ Download Thai Upgrade <ftp://proxy.intanon.nectec.or.th/pub/utils/thai.tgz> แล้วทำการ uncompress และ untar ดังนี้
# mv thai.tgz /tmp
# cd /tmp
# gzip -d thai.tgz
# tar -xvf thai.tar
จะได้ directory fonts ขึ้นมา และ file thaiXmap อีกหนึ่ง file ให้ทำการย้าย font ทั้งหมด ไปยัง directory /usr/X11/lib/X11/fonts/misc หรือว่า /usr/X11R6/lib/X11/fonts/misc ดังนี้
# cd fonts
# mv * /usr/X11/lib/X11/fonts/misc
แล้วก็ให้เข้าไปยัง Directory ดังกล่าว เพื่อสร้าง file font database ดังนี้
# cd /usr/X11/lib/X11/fonts/misc
# /usr/X11/bin/mkfontdir
เสร็จแล้ว ก็จะได้ file /usr/X11/lib/X11/fonts/misc/fonts.dir ขึ้นมา ซึ่งเป็น file ที่บอกว่ามี font อะไรอยู่ใน Directory นี้บ้าง ให้ใช้ editor เข้าไปแก้ไข ในบางส่วนดังนี้
font ที่ขึ้นต้นด้วย thai แล้วตามด้วยตัวเลขขนาด font ให้แก้ไขดังนี้
ก่อนแก้ไข
thai8x20.pcf.Z -thai-fixed-medium-r-normal--16-114-100-100-m-80-tis620.2529-1
หลังการแก้ไข
thai8x20.pcf.Z -misc-thai8x20-medium-r-normal--16-114-100-100-c-80-tis620.2529-1
นั่นคือ แก้ foundary จาก thai เป็น misc และ แก้ family จาก fixed ให้เป็น ชื่อ font หรือว่า thai8x20 และแก้ spc จาก m เป็น c นั่นเอง
สำหรับ font ที่มีลักษณะดังนี้
thai8x13.pcf.Z thai8x13
ให้แก้โดยไป copy ส่วนหลังของ font อื่นมาแก้ดังนี้
thai8x13.pcf.Z -misc-thai8x13-medium-r-normal--16-114-100-100-c-80-tis620.2529-1
เสร็จแล้วให้ทำการ save file /usr/X11/lib/X11/fonts/misc/fonts.dir ไว้

ขั้นตอนการติดตั้ง Thai Keyboard map
ให้ย้าย file thaiXmap ไปยัง /usr/X11/lib/X11/xinit และเปลี่ยนชื่อเป็น .Xmodmap ดังนี้
# cd /tmp
# mv thaiXmap /usr/X11/lib/X11/xinit/.Xmodmap
ให้ทำการแก้ไข file /etc/XF86Config ใน section Keyboard ดังนี้
...
Section "Keyboard"
Protocol "Standard"
AutoRepeat 500 5
LeftAlt Meta
ScrollLock Compose
RightCtl control
XkbKeycodes "xfree86"
XkbTypes "default"
XkbCompat "default"
XkbSymbols "us(pc101)"
XkbGeometry "pc"
XkbRules "xfree86"
XkbModel "pc101"
XkbLayout "th"
XkbOptions "grp:toggle"
XkbDisable
EndSection
...
โดยในส่วนของ Xkb อาจจะไม่ใส่ก็ได้ แต่ว่า XkbDisable ต้องใส่ ด้วย เนื่องจากว่า การใช้ Xkb นั้นจะใช้ Left Alt+Left Shift กับ Right Alt + Right Shift ในการเปลี่ยน mode การทำงาน ค่อนข้างจะมีปัญหากับ keyboad บางรุ่น จึงใช้การ map keyboad ให้ไปใช้ปุ่ม Scroll Lock ในการสลับ Mode การทำงานแทน เมื่อแก้ไขเสร็จแล้ว ให้ทำการ Restart X-Windows ใหม่ เพื่อดูว่าใช้งานได้หรือไม่
 
 
 

Updated : 28 มิถุนายน 2547 / ปัญญา แสนมุข Panya Saenmuk <panya@spcom.co.th>