บันทึกรุ่น | ||
---|---|---|
รุ่นที่ 0.4 | 1998-08-04 | poon-v |
ZzzThai [en] | ||
รุ่นที่ 1.0 | 1998-08-04 | poon-v |
ZzzThai [th] | ||
รุ่นที่ 2.0-pre8b | 2002-01-16 | sf_alpha |
TLWG [th] Pre-Release 8a (Draft) |
Abstract
This document describes how to use Thai language. This will cover about setting Thai in many applications, for both console and X window. This document also provides some information about Thai implementation for developers. (Thai Language)
บทคัดย่อ
เอกสารฉบับนี้จะแนะนำเกี่ยวกับการใช้ภาษาไทยบน Linux เนื้อหาของเอกสารฉบับนี้จะประกอบด้วยวิธีการ กำหนดค่าภาษาไทยในโปรแกรมต่าง ๆ บน Linux ทั้งใน Console และ X window และเอกสารฉบับนี้ยัง มีข้อมูลเกี่ยวกับ ระบบและการใช้งานภาษาไทย สำหรับนักพัฒนาและผู้ที้สนใจด้วย.
สารบัญ
เนื่องจาก Thai-HOWTO ไม่ได้ปรับปรุงมาหลายปีแล้ว (ราว ๆ 3 ปีกว่าขณะเขียนอยู่นี้) และการพัฒนาเกี่ยวกับภาษาไทย บน Linux ได้ก้่าวหน้าไปมากแล้ว แต่ยังแทบไม่มี เอกสาร คำแนะนำหรือคู่มือ ออกมาเลย ผมจึงได้เอา Thai - HOWTO มาปัดฝุ่นซะใหม่
สำหรับรุ่นของ Linux Thai-HOWTO ฉบับนี้ จะเป็น ฉบับร่าง Linux Thai-HOWTO รุ่นต่อ ๆ ไปก็สามารถติดตามได้ที่ ftp://ftp.nectec.or.th/pub/ThaiLinux/cvs/doc/thai-howto สำหรับ Draft และรุ่นก่อนหน้า สามารถหาได้จาก Anonymous CVS ของ linux.thai.net ใน /docs/thai-howto ครับ
This document is copyrighted (c) 2001 Phattanon Duangdara and is distributed under the terms of the Linux Documentation Project (LDP) license, stated below.
Unless otherwise stated, Linux HOWTO documents are copyrighted by their respective authors. Linux HOWTO documents may be reproduced and distributed in whole or in part, in any medium physical or electronic, as long as this copyright notice is retained on all copies. Commercial redistribution is allowed and encouraged; however, the author would like to be notified of any such distributions.
All translations, derivative works, or aggregate works incorporating any Linux HOWTO documents must be covered under this copyright notice. That is, you may not produce a derivative work from a HOWTO and impose additional restrictions on its distribution. Exceptions to these rules may be granted under certain conditions; please contact the Linux HOWTO coordinator at the address given below.
In short, we wish to promote dissemination of this information through as many channels as possible. However, we do wish to retain copyright on the HOWTO documents, and would like to be notified of any plans to redistribute the HOWTOs.
If you have any questions, please contact <linux-howto@metalab.unc.edu>
Use contents of this document can be produce errors or damages to your system. No liability for the contents of this documents can be accepted. Use the concepts, examples and other content at your own risk. The authors have no responsibility for any damage and/or error caused by using informations of this document.
All copyrights are held by their by their respective owners, unless specifically noted otherwise. Use of a term in this document should not be regarded as affecting the validity of any trademark or service mark.
เดิม Linux Thai-HOWTO นั้น ดูแลและเีขียนโดย พูลลาภ วีระธนาบุตร <poon-v@fedu.uec.ac.jp> ซึ่งแผยแพร่ ทาง Zzzthai (“สื่อไืืืทย”) แต่เนื่องจากไม่มีการ ปรับปรุงมานานมากแล้ว ผมจึง เอา Thai-HOWTO มาปัดฝุ่นใหม่ เพื่อให้เข้ากับพัฒนาการของภาษาไทย บน Linux ซึ่งได้ก้่าวหน้าไปมากแล้
การรัปปรุงครั้งนี้แทบจะเป็นการเขียนใหม่ เพราะมีข้อมูลใหม่เพิ่มเข้ามาไม่ต่ำกว่า 200% และยังได้เปลี่ยนจาก ระบบ Linuxdoc (SGML) เดิม มาเป็น DocBook (XML) ซึ่งทันสมัยและดีกว่า (แต่ก็ซับซ้อนกว่ามาก) และต้องขออภัย ถ้ามีข้อผิดพลาดบนเอกสารนี้
จริง ๆ แล้วมี Thai HOWTO อีกฉบับ ของคุณ เทพพิทักษ์ การุญบุญญานันท์ <thep@links.nectec.or.th> ซึ่งทำขึ้นมาระหว่างพัฒนา TE และ Linux TLE ซึ่งเป็น HOWTO ฉบับจิ๋วซึ่งบอกเกี่ยวกับการกำหนดค่า ภาษาไทย สำหรับ Linux คร่าว ๆ ซึ่งก็เป็นส่วนหนึ่งของ HOWTO ฉบับนี้ ในภายหลัง
Linux Thai-HOWTO ฉบับนี้ี่ เขียนโดย พัฒน์นนท์ ดวงดารา<sf_alpha@yahoo.com> ซึ่งผมไม่ได้เขียนคนเดียว ผมก็คงต้องยกให้ คุณ เทพพิทักษ์ การุญบุญญานันท์ <thep@links.nectec.or.th> เป็นคนเขียนด้วยอีกคน เพราะใช้ข้อมูลของเขา ใน Thai-HOWTO ฉบับจิ๋ว เดิม และเป็นคนที่ช่วยตรวจสอบ ด้วยซึ่ง Thai HOWTO ฉบับนี้จะได้รับการเผยแพร่บน Thai Linux Working Group : Documentation ครับ ...
สุดท้ายต้องขอบคุณ Portuguese HOWTO ถึงแม้จะอ่านไม่ออกแต่มันก็เป็น แนวทางในการลำดับ หัวข้อ และ ตอน ต่าง ๆ ของ HOWTO ฉบับนี้ครับ
Thai HOWTO ฉบับนี้ แน่นอน ต้องมีข้อผิดพลาดบ้าง ไม่มากก็น้อย แต่ถ้าเจอก็กรุณาแจ้งให้เรา ทราบด้วยนะครับ ถ้ามีข้อเสนอแนะอย่างไร อยากให้ใส่ข้อมูลเกี่ยวกับอะไรเพิ่มก็แนะนำมาได้ครับ เรายินดีรับฟังเสมอ แต่จะมีการ update บ่อยแค่ไหนก็ขึ้นอยู่กับว่าพวกเราว่างกันหรือปล่าวนะครับ และตอนผมเขียน HOWTO ฉบับนี้ผมก็อยู่แค่ ปี 1 เองครับ
$Id: Thai-HOWTO.html,v 1.5 2002-03-05 17:12:47 sf_alpha Exp $
ส่วนนี้จะพูดถึง มาตรฐานเกี่ยวกับ ภาษาไทยบนคอมพิวเตอร์ รวมทั้งการใช้งานข้อมูลภาษาไทย และ การแสดงข้อมูลให้เหมาะสมกับท้องถิ่น (Localization) สำหรับภาษาไทยด้วย
TIS-620 หรือ มอก. 620 หรือที่เรียก กันทั่วไปว่า รหัส สมอ. เป็นมาตรฐานของรหัสตัวอักษร (Charset Code) ที่ใช้บนคอมพิวเตอร์ ซึ่งกำหนดโดยสำนักงานมาตรฐานอุตสาหกรรม หรือ สมอ. (Thai Indrustial Standards Institute [TISI]). TIS-620 เป็นรหัสตัวอักษรที่ต่อเพิ่มจากรหัสตัวอักษรของ ISO-646 ซึ่งเป็น รหัสตัวอักษรแบบ 7 bit คล้าย ๆ ASCII
มาตรฐาน TIS-620 ตัวแรกคือ TIS-620 2529 (1986) ซึ่งได้มีการแก้ไขเพิ่มเติมอีก ในปี 2533 เป็น TIS-620 2533 (1990) เพื่อเพิ่มเนื้อหาบางส่วนให้สอดคล้องกับ ISO/IEC 2022 แต่ตารางรหัสตัวอักษรทั้งหมดยังคงเหมือนเดิม
ปัจจุบัน GNU C library (GLIBC) ได้สนับสนุนมาตรฐาน TIS-620 ในการใช้งาน สำหรับกับท้องถิ่นประเทศไทยและภาษาไทย ภายใต้ชื่อ th_TH (th_TH.TIS-620)
รหัสตัวอักษรแบบ 8 bit ของ TIS-620 คล้ายกับ กับรหัสตัวอักษรในระบบ ISO/IEC 8859 มาก เนื่องจาก สมอ. (TISI) นั้นไม่ประสบความสำเร็จมากนักในนการกระตุ้นให้ TIS-620 เป็นมาตรฐาน จึงได้คิดจะ ใส่ไว้ในระบ ISO/IEC 8859 แทน เพื่อห้ ในระบบอุตสาหกรรมต่าง ๆ หันมาใช้ตาราง รหัสภาษาไทย ตามมาตราฐาน มากขึ้น ตารางนี้ได้รับการใส่ไว้ในส่วนที่ 11 (Part 11) ของมาตรฐาน ISO/IEC 8859 ถึงแม้จะมีการปฏิเสธการใช้มาตรฐานนี้เนื่องจากภาษาไทยนั้นต่างจากภาษา แบบละติด ตรงที่มีต้องมีการประกอบตัวอักษรเข้าด้วยกัน แต่ในภายหลัง ก็มีการผลักดันให้ ISO/IEC 8859 Part 11 ผ่านในที่ประชุม ISO และประกาศเป็นทางการในปลายปี พ.ศ. 2544
โปรแกรมในปัจจุบันได้เริ่มออกแบบให้สามารถใช้ได้หลายภาษา (multilingual) โดยใช้ มาตรฐานของตัวอักษร ของ ISO/IEC 10646 (Universal Multi-octet Coded Character Set - UCS) ซึ่งเป็นระบบสำหรับเก็บข้อมูลตัวอักษรสากลในระบบ 8bit (หรือ byte) ซึ่งอาจอยู่ในรูป 8 bit หลาย ๆ ตัวต่อกัน และรู้จักกันดีในชื่อ Unicode UCS หรือ UTF-8
Unicode Consortium ได้รับการก่อตั้งขึ้นมา ก่อนที่ ISO/IEC จะกำหนดมาตรฐาน ISO/IEC 10646 นี้ขึ้นสำหรับเป็นมาตรฐานสากล ในปัจจุบัน Unicode Consortium เป็นคณะกรรมการ และเป็นผู้ลงคะแนนร่วมกับผู้แทนจากหลาย ๆ ประเทศสมาชิก ในการร่างและกำหนดมาตรฐาน เกี่ยวกับ Unicode ด้วย
สำหรับข้อมูลอื่น ๆ ที่เกียวกับ Unicode หรือ UCS บนลินุกซ์ สามารถอ่านได้จาก UTF-8 and Unicode FAQ for Unix/Linux ครับ
สำหรับรหัสตัวอักษรต่าง ๆ ของภาษาไทยบน Unicode และ ISO/IEC 10646-1 นั้น ได้ถูกจัดให้ อยู่ในลำดับที่ 0x0E00-0x0E7F ซึ่งมีการเรียงลำดับตัวอักษรเหมือนกับในมาตรฐาน TIS-620 ในลำดับ 0xA0-0xFF ครับ
สำหรับข้อมูลและรายละเอียดอื่น ๆ เกี่ยบกับรหัสตัวอักษรภาษาไืทย และมาตรฐานของชุดตัว อักษรไทยอื่น ๆ สามารถอ่านได้จาก An annotated reference to the Thai implementations ของ ตฤณ ตัณฑเศรษฐี ครับ และยังมีข้อมูลอื่น ๆ เพิ่มเติ่มอีกในหัวข้อ ข้อมูลอื่น ๆ ด้านล่างครับ
TIS-820 หรือ มอก. 820 เป็นมาตรฐานของแป้นพิมพ์ภาษาไทย ซึ่งกำหนดโดย สำนักงานมาตรฐานอุตสาหกรรม (สมอ.) สำหรับมาตรฐานในปัจจุบับคือ TIS-820 2538 (1995)
มาตรฐาน TIS-820 ตัวแรกคือ is TIS-820 2531 (1988) รูปแบบของแป้นพิมพ์ ใน TIS-820 2531 จะเหมือนกับแป้นพิมพ์แบบเกษมณี ที่ใช้กันบนพิมพ์ดีดภาษาไทย ต่อมา มีการกำหนดมาตรฐาน การใช้งานและรับข้อมูลภาษาไทย ซึ่งกำหนดโดย Thai API Consortium (TAPIC) ซึ่งมีชื่อว่า WTT หรือ วทท. (ย่อมาจาก วิ่งทุกที่) ซึ่งได้มีการกำหนดส่วนเพิ่มเติมให้กับ TIS-820 2531เพื่อให้ปุ่มกดบางปุ่ม ใช้งานร่วมกับภาษาละติดได้ หลังจากมีการประกาศมาตรฐาน WTT 2.0 แป้นพิมพ์ ของ TIS-820 2531 ที่มีการ เพิ่มเติมตาม วทท 2.0 ก็ได้รับการกำหนดเป็นมาตรฐานใน TIS-820 2536 (1993)
ในปี 2538 มีการปรับปรุง TIS-820 ใหม่ เป็น TIS-820 2538 ซึ่งเพิ่มเติมให้สามารถพิมพ์ตัวอักษรพิเศษบางตัวได้ และได้ย้ายัวอักษรบางตัวด้วย แต่ อย่างไรก็ตาม แป้นพิมพ์ตามาตรฐาน TIS-820 2538 ยังคงเหมือนของเดิมเกือบทั้งหมด และมีการกำหนดมาตรฐานบางอย่างให้รองรับ วทท 2.0 โดย ตัวบอก ตัวอักษรละติด กับ ไทย ต้องอยู่บนปุ่มกดและใช้สีต่างกัน
แป้นพิมพ์ของ TIS-820 นั้นยังคงใช้รูปแบบการวางปุ่มกดแบบ แป้นพิมพ์แบบเกษมณี เพียงแต่มีการแก้ไขเล็กน้อยเท่านั้น แป้นพิมพ์ของคอมพิวเตอร์ที่เป็น TIS-820 ในปัจจุบัน จึงยังคงเรียกว่า แป้นพิมพ์แบบเกษมณี ส่วนอีกแบบคือปัตตะโชตินั้นไม่ได้รับความนิยม และแทบจะไม่มีใช้ในปัจจุบัน ทั้งที่ริล้วแบบปัตตะโตินั้นพิมพ์ได้ง่ายกว่า และสิ้นเปลืองแรงน้อยกว่าเพราะสร้างขึ้นจากการวิจัยการใช้งานของนิ้วบนแป้นพิมพ์
สำหรับข้อมูลอื่น ๆ เพิ่มเติม รวมทั้งรูปแบบแป้นพิมพ์อื่น ๆ สามารถอ่านได้จาก http://www.nectec.or.th/it-standards/keyboard_layout/thai-key.htm ครับ
Thai API Consortium ได้กำหนดมาตรฐานการรับส่งข้อมูลและการจัดการเกี่ยวกับภาษาไทย เรียกว่า WTT 2.0 หรือ วทท. 2.0 (“วิ่งทุกที่”) ซึ่งปัจจุบันคือ TIS-1566 2541 (1998) สำหรับรายละเอียด สามารถดูได้จาก WTT 2.0 Thai Input and Output Method ข้อมูลเกี่ยวกับ การใช้งานตามมาตรฐาน ดูได้จาก Thai standardization and implementations โดย เทพพิทักษ์ การุญบุญญานันท์ <thep@links.nectec.or.th> และ แผ่นใส ในรูปแบบ .pdf
Internationalization (เรียกย่อ ๆ ว่า i18n) คือ ลักษณะของโปรแกรมที่สามารถปรับสภาพต่าง ๆ ในการทำงานให้เหมาะกับท้องถิ่นต่าง ๆ ได้ เช่นสามารถใช้งานได้หลายภาษา สามารถเปลี่ยนหน่วยการวัดให้เหมาะสมกับภาษาและวัฒนธรรมในที่นั้น หรือสำหรับภาษาหรือท้องถิ่นนั้นได้ในทันที และไม่ต้อง ทำการสร้างโปรแกรมขึ้นใหม่ (no-recompile) โดยการทำงานจะอาศัยรูปแบบมูลท้องถิ่น (Locale) และระบบการปรับตัวให้เข้ากับท้องถิ่น หรือ (Localization)
Localization (เรียกย่อ ๆ ว่า l10n) เป็นกระบวนการที่ใช้จัดการข้อมูลในแต่ละท้องถิ่น เช่น การแปลงข้อมูลต่าง ๆ การแสดงผล หรือการจัดการข้อมูลในภาษาต่าง ๆ Localization มีหลายระดัีบ และแตกต่างกันออกไป เช่น POSIX Locale, X Locale ขึ้นอยู่กับ ความเหมาะสมในการใช้งานของโปรแกรมนั้น ๆ ซึ่งการทำงานของ กระบวนการดังกล่าวจะอาศัยข้อมูลจากรูปแบบข้อมูลท้องถิ่น (Locale Definition)
Locale (อ่านว่า "โลแคล") หรือ รูปแบบข้อมูลท้องถิ่น เป็นส่วนหนึ่งของระบบ Internationalization (i18n) และ Localization (l10n) เพื่อให้โปรแกรมต่าง ๆ สามารถที่จะแสดง และจัดการข้อมูลในแต่ละภาษาและท้องถิ่น ได้อย่างถูกต้องเหมาะสม Locale ต่าง ๆ ของแต่ละภาษาและท้องถิ่นจะมีลักษณะเป็น ส่วน ๆ ซึ่งสามารถเพิ่มเข้าไปในระบบ Localization ต่าง ๆ ได้ และแต่ละ Locale จะเป็น อิสระจากกัน รูปแบบข้อมูลท้องถิ่นอาจจะรวมไปถึงข้อมูลสำหรับจัดการข้อความที่ซับซ้อน เช่นการจัดเรียง การตัดคำ และอื่น ๆ
ระบบ Localization ใน Linux ส่วนใหญ่จะอาศัยระบบหลัก ๆ คือ POSIX Locale ซึ่งอยู่ใน C Library เช่น GLIBC ซึ่งใน POSIX Locale การทำงานจะใช้ค่าตัวแปรระบบ (LC_...) ซึ่ง จะประกอบด้วยส่วนต่าง ๆ ดังนี้
อีกระบบที่นิยมใช้คือ ISO/IEC 14652 ซึ่งเป็นส่วนต่อขยายจาก POSIX LOCALE ซึ่งประกอบด้วย
ซึ่งสำหรับ ภาษาไทย ก็มี Locale อยู่ในชื่อ th_TH ปัจจุบันและ ใช้ได้ใน รหัสอีกษร TIS-620 (ISO/IEC 8859-11) และ UTF-8
การใช้งานปกติสามารถใช้งานได้โดยกำหนด ตัวแปรระบบ LANG เป็น th_TH หรือตัวแปร Localization ที่ต้องการ ซึ่งปกติจะใช้ รหัสตัวอักษร TIS-620 ถ้าต้องการใช้รหัสตัวอักษร อื่นให้กำหนดโดยใส่ . ตามด้วยรหัสตัวอีกษรที่ต้องการ ในปัจจุบัน ที่ใช้ได้คือ TIS-620 และ UTF-8
สำหรับข้อมูลเกี่ยวกับ Thai Locale เพิ่มเติมสามารถดูได้ที่ http://www.links.nectec.or.th/~thep/th-locale/ โดยคุณ เทพพิทักษ์ การุณบุญญานันท์ (ซึ่งปัจจุบันเป็นผู้ ดูแล Thai Locale ทั้งใน POSIX และ ISO Locale ของ GLIBC ด้วย)
ข้อมูลเกี่ยวกับมาตรฐาน IT ของไทย (และอื่น ๆ) IT Standards on Pubnet Information Servers, NECTEC.
$Id: Thai-HOWTO.html,v 1.5 2002-03-05 17:12:47 sf_alpha Exp $
Linux Distribution ที่ออกแบบมาสำหรับภาษาไทย หรือออกแบบมาให้ใช้งานกับภาษาไทยได้ สำหรับการกำหนดค่าภาษาไทยและการใช้แบบตัวอักษรภาษาไทยใน Distribution ต่าง ๆ สามารถ ดูได้ในหัวข้อต่อ ๆ ไปของเอกสารนี้ และสำหรับ X-Windows สามารถดูข้อมูลเพิ่มเติมได้จาก เวบไซต์ http://www.linuxeasy.f2s.com ซึ่งจะมีคำอธิบายและรูปภาพประกอบสำหรับแต่ละ Distribution หลัก ๆ ด้วย
Linux-TLE (“ลินุกซ์ทะเล”) ชื่อเต็ม ๆ ของ Linux-TLE คือ Linux Thai Language Extensions Linux-TLE เดิมนั้นจะเป็น Linux Distribution ซึ่งได้รวม TE (Thai Extension) ไว้แล้ว เพื่อให้สามารถสนับ สนุนภาษาไทยได้ แต่ในรุ่นหลัง ๆ Linux-TLE จะถูกออกแบบมาเฉพาะสำหรับภาษาไทย ที่ออกแบบมาสำหรับ เดรื่องคอมพิวเตอร์ตั้งโต๊ะ (Desktop) เพื่อคนไทยโดยเฉพาะ ( ซึ่งก็คือ Linux-TLE 4.0 รุ่นล่าสุด ขณะเขียน HOWTO ฉบับนี้) Linux-TLE จะประกอบด้วยโปรแกรมมากมาย ที่สนับสนุนภาษาไทย และสามารถงานกับภาษาไทย ได้เกือบจะสมบูรณ์อีกด้วย
Linux-TLE ได้รับการพัฒนาโดยทีม Thai Linux Working Group โดยการสนับสนุนของ ศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ หรือ เนคเทค (NECTEC - National Electronics and Computer Technology Center)
Linux-TLE สามารภ ดาวโหลดได้ที่ ftp://ftp.nectec.or.th/pub/thailinux/iso/ สำหรับข้อมูลอื่น ๆ และ รายละเอียดของ Linux-TLE รวมทั้งข้อมูลการ Update สามารถติดตามได้ที่ Thai Linux Working Group : Linux-TLE
ZiiF Desktop Linux เป็น Distribution อีกตัวหนึ่งที่ออกแบบสำหรับคนไทย และใช้ภาษาไทยได้เช่นกัน ซึ่งพัฒนาโดย บริษัท Zion Interface จำกัด รุ่นล่าสุด (ขณะเขียน Howto ฉบับนี้) คือ ZiiF Desktop 7.0
รายละเอียดเพิ่มเติมดูที่ http://www.ziif.com/ ครับ
ZiiF Desktop 7.0 เป็นระบบปฏิบัติการ Linux สำหรับ Desktop เพื่อคนไทยเวอร์ชั่นใหม่ที่ยังคงเน้น การใช้งานภาษาไทยกับเอกสาร งานพิมพ์ งานกราฟิค Internet Application, Multimedia และเกมส์ โดยมีวัตถุประสงค์ที่จะเผยแพร่การใช้งาน Linux และ Open Source Software และเพื่อให้ Linux เป็นทางเลือกสำหรับนักเรียน นักศึกษา และผู้สนใจ หาความรู้ทางด้าน Software อย่างถูกต้องในราคาที่ยอมรับได้
ไม่มีข้อมูลเลย !!! (แม้แต่ในเวบ) ข้อมูลของ Kaiwal Linux ดูได้จาก http:/www.kaiwalsoftware.com
ข้อมูลของ Burapha Linux ดูได้จาก http://alphabox.compsci.buu.ac.th/
Mandrake เป็น Linux distribution ยอดนิยมตัวหนึ่ง ซึ่งในรุ่นใหม่ ๆ คือ 8.1 สำหรับในรุ่นนี้ โปรแกรมสำหรับกำหนดค่าต่าง ๆ นั้นสามารภใช้ภาษาไทยได้ และ โปรแกรมสำหรับกำหนดค่าต่าง ๆ ก็มีออยู่พร้อมสรรพ อีกทั้งยังทำงานบน X-Windows สำหรับแบบตัวอักษรจะมีน้อย ก็อาจจะต้องเพิ่มด้วยตนเอง ซึ่งก็สามารถ คัดลอกแบบตัวอักษรมาจาก Microsoft Windows ได้โดยตรง (ถ้ามีลิขสิทธิ์ ถูกต้อง)
ข้อมูลเพิ่มเติมของ Mandrake Linux ดูได้จาก http://www.linux-mandrake.com สำหรับการกำหนดค่าภาษาไทยดูได้จาก
เดิม Thai Extension เป็นส่วนหนึ่งของโครงการ "สื่อไทย" (ZzzThai) เริ่มต้นโดยกลุ่มนักศึกษาไทยที่ University of Electro-communications (UEC) ประเทศญี่ปุ่น ซึ่งมีความพยายามที่จะใช้ภาษาไทยในหลาย ๆ computer platform โดยการพัฒนาโปรแกรม ส่วนขยายต่าง ๆ รวมถึงจัดทำเอกสารแนะแนวทาง และฟอนต์ให้แก่บุคคลทั่วไป โดยบุคคลเหล่านั้นยังสามารถแจกจ่ายโปรแกรม ฟอนต์ หรือส่วนประกอบใด ๆ ที่เกี่ยวข้องต่อไปได้ ซึ่งถือเป็นประโยชน์อย่างยิ่ง
Thai Extensions (TE เป็นส่วนเพิ่มเติมของ Linux เพื่อเพิ่มการสนับสนุนภาษาไทย ในส่วน console และ X Window ซึ่ง TE ตัวดั้งเดิม (TE-Jan22) นั้นถูกพัฒนาโดยคุณ พูลลาภ วีระธนาบุตร และ คุณ ไพศาล เตชะจารุวงศ์
ต่อมา Thai Linux Working Group จึงขอนำแนวทางของ Thai Extension มาใช้ โดยใช้ผลพลอยได้ จากการพัฒนา Linux-TLE ซึ่งได้รวบรวมโปรแกรม และ กำหนดค่าบางอย่าง แล้วทำเป็น แพคเกจ (package) และ รวบรวมไว้ สำหรับ Linux Distribution หลัก ๆ ที่ใช้กันกว้างขวาง ซึ่งยังไม่สามารถใช้ ภาษาไทยได้อย่างสมบูรณ์ เช่น RedHat Linux 7.x Mandrake 8.0 Debian และอื่น ๆ ซึ่ง TE เหล่านี้สามารถติดตั้งและใช้งานได้ัทันที แต่อาจจะมีรายละเอียดบางอย่าง ซึ่งต้องอาศัยการกำหนดค่า และแก้ไขเองอยู่บ้าง
สำหรับ Thai Extension สามารถ ดาวโหลดได้จาก ftp://ftp.nectec.or.th/pub/thailinux/software/TE ข้อมูลอื่น ๆ และ รายละเอียดของ TE รวมทั้งข้อมูลการ Update ติดตามได้ที่ Thai Linux Working Group : Thai Extensions
สำหรับการติดตั้ง ควรอ่าน ไฟล์ README หรือ INSTALL ก่อนลงมือติดตั้ง เพราะไฟล์ดังกล่าวจะบอกถึงวิธีการติดตั้งและการกำหนดค่าบางอย่างเอง ด้วย ซึ่งรายละเอียดเพิ่มเติมเช่นการกำหนดค่าของ Linux และ โปรแกรมต่าง ๆ สามารภดูได้จาก HOWTO ฉบับนี้ ซึ่งจะกล่าวต่อไป
TE นั้นไม่สามารถทำขึ้นสำหรับ Distribution ทุกตัวแน่นอน ถ้า Linux Distrubiton ที่เราใช้อยู่ ไม่มี TE ที่จัดทำขึ้นมาเฉพาะให้ เราอาจจะ ดาวโหลด โปรแกรมบางส่วน หรือ Source Code ของโปรแกรม และ ข้อมูล ไฟล์ต่าง ๆ จาก Thai Linux Working Group หรือเอามาจาก แพคเกจของ Distribution ที่ไกล้เคียง มาใช้ได้ แต่อาจต้องมีการแก้ไข (Hack) ตัวโปรแกรมบางส่วนเพื่อให้สามารถใช้งาน กับระบบของเราได้ และทำงาน Build ใหม่ ซึ่งก็ต้องอาศัยความรู้ความสามารถพอสมควร
อย่างไรก็ตามคุณก็สามารถถามผู้เชี่ยวชาญเกี่ยวกับ Linux และ TE ได้จาก Forum ของ Thai Linux Working Group และ Forum ของ ThailinuxCafe มีผู้เจน Linux หลายคนพร้อมจะให้ คำตอบเกี่ยวกับปัญหาของคุณนะครับ หรือมีข้อเสนอแนะอะไรก็ยินดีครับ ยิ่งถ้าคุณปรับ TE และทำเป็น แพคเกจมา และให้เราเผยแพร่ได้ยิ่งดี คนไทยอีกหลายล้านคนรอคุณอยู่ ตอนนี้คนทำมีแค่หยิบมืิอเดียวครับ
สำหรับ Thai Extension, Software ภาษาไทย ต่าง ๆ และ Source Code สามารถ ดาวโหลดได้จาก ftp://ftp.nectec.or.th/pub/thailinux/software สำหรับข้อมูลอื่น ๆ และ รายละเอียดของ TE รวมทั้งข้อมูลการ Update ติดตามได้ที่ Thai Linux Working Group : Thai Extensions
$Id: Thai-HOWTO.html,v 1.5 2002-03-05 17:12:47 sf_alpha Exp $
ส่วนนี้จะพูดถึงการกำหนดค่าเกี่ยวกับ Linux Console เช่น การตั้งแบบตัวอักษร (FONT), ACM, SFM, แป้นพิมพ์ และอื่น ๆ รวมถึงการกำหนดค่าให้ใช้งานภาษาไทยบน โปรแกรมบางตัวที่ทำงานบน Console ด้วย
Linux Console Tools เป็น แพคเกจซึ่งประกอบด้วยโปรแกรมสำหรับ จัดการและกำหนดค่าเกี่ยวกับ Linux Console ทั้ง จอภาพ และ แป้นพิมพ์ ซึ่งการกำหนดค่าต่าง ๆ ต้องผ่าน โปรแกรมของ Linux Console Tools
สิ่งที่จำเป้นต้องรู้จักอักตัวคือ Linux Console Data ซึ่งเป็นส่วนหนึ่งของ Linux Console Tools ซึ่งจะเป็นไฟล์ข้อมูลต่าง ๆ สำหรับใช้งานกับ Linux Console Tools ซึ่งไฟล์เหล่านี้จะอยู่ใน ห้อง Linux Console Tools Data Root ซึ่งจะแทนด้วย $LCTROOT ในหัวข้อต่อ ๆ ไปของ เอกสารนี้ ซึ่งจะแตกต่างกันไปตามแต่ละ distribution เช่น
Thai Linux Console Data ซึ่งเป็นแพคเกจ ที่มีไฟล์ต่าง ที่จำเป็นสำหรับใช้งานภาษาไทย อยู่แล้วสามารถ ดาวโหลดได้จาก Thai Support fot Linux Console การใช้งาน Thai Linux Console Data โดยทั่วไป ให้ ดาวโหลด แำพคเก console-data-thai (console-data-thai--xxxxx.tar.gz และ แตกลงในห้อง $LCTROOT (โดยใช้คำสั่ง tar -xzvf console-data-xxxxx.tar.gz $LCTROOT ) และยังมี package ของ Linux Console Tools ซึ่งได้รับการแพตซ์ให้ใช้งาน keysyms ในรหัสอักษร TIS-620 ได้ ซึ่งรายละเอียดเพิ่มเติม สามารถดูได้ที่ เวบไซต์ด้านบนครับ
ถ้าไม่มี แพคเกจของ Console Data สำหรับ Linux Distribution ที้ใช้อยู่ ก็สามารถเลือก ดาวโหลดไฟล์ต่าง ๆ ที่จำเป็นมาใช้ได้เช่นกัน ซึ่งรายละเอียด จะกล่าวต่อไป
สำหรับผู้ที่ใช้ Linux Distribution ที้ใช้ RPM (RedHat Package Manager) เช่น RedHat, Mandrake คุณสามารถดาวโหลด แพคเกจ RPM ของ Console Tools สำหรับ distribution นั้น ๆ (ถ้ามี) และติดตั้งแบบ upgrade โดย rpm -U console-tools-xxxxx.i386.rpm ได้จากเวบไซต์ ด้านบน ซึ่งแพคเกจนี้จะมาพร้อมกับ Linux Console Tools ที่แพทซ์ Thai keysym แล้ว รวมทั้ง Thai Console Data ด้วย
ควรอ่านให้จบก่อนลงมือทำ เพื่อความเข้าใจและป้องกันปัญหาที่อาจ จะเกิดขึ้นได้ คำแนะนำที่เป็นประโยชน์มักจะอยู่หลัง ๆ ครับ :-)
สำหรับ Linux Console บนจอภาำพ (Screen Console หรือ Virtual Console) สามารถที่เปลี่ยน แบบตัวอักษรบนหน้าจอได้ สำหรับ VGA Text หรือ SVGA/VGA Framebuffer Console แต่อย่างไรก็ตามการแสดงผลยังไม่สมบูรณ์ เนื่องจาก Linux Kernel นั้นไม่สนุบสนุนระบบเขียนข้อความที่ซับซ้อนแต่ย่างใด (ซึ่งภาษา ไทยก็เป็นภาษาที่มีความซับซ้อนในการเขียน) การแสดงผลตัวอักษร จึงจะเขียนในบรรทัดเีดียวกัน ไม่ว่าจะเป็น พยันชนะ วรรณยุกต์ สระ เช่น วิ่งทุกที่ จะเขียนเป็น ว ิ ่ งท ุกท ี ่ ครับ
สำหรับ แพคเกจ Thai Linux Console Data จะมี แบบตัวอักษรที่เขียนขึ้นเฉพาะ สำหรับใช้งานภาษาไทย และรองรับ TIS-620 ทั้งหมด รหัสตัวอักษรของ แบบตัวอักษรนี้ว่า TIS-620-X ซึ่งมีการ เพิ่มตัวอักษรสำหรับวาดกรอบลงไปด้วย และได้ทำการใส่ตารางสำหรับเทียบ กับ Unicode หรือเรียกว่า Screen Font Map (SFM) ไว้แล้ว
เพื่อให้การแสดงผลในระบบ 8bit หรือ ASCII ถูกต้องด้วย ต้องมีการใช้ ตารางเทียบ อักษรสำหรับแอพพลิเคชั่น หรือเรียกว่า Application Charset Map (ACM) เพื่อใช้ใน การแปลงอักษรแบบ 8bit เป็น Unicode และแสดงผลกับ แบบตัวอักษรที่ใช้ตาราง Unicode ได้ถูกต้องด้วย ซึ่ง แบบตัวอักษรและไฟล์ ACM จะมาพร้อมกับ แพคเกจ Thai Linux console data แล้วเช่นกัน
ถ้าไม่ได้ติดตั้ง แพคเกจ Thai Console Data ก็สามารถดาวโหลดไฟล์ได้จากเวบไซต์ ที่กล่าวมาแล้ว สำหรับไฟล์แบบตัวอักษรให้นำไปไว้ใน ไดเรกทอรี่ $LCTROOT/consolechars และนำไฟล์ ACM ไปไว้ใน ไดเรกทอรี่ $LCTROOT/consoletrans
ในการเรียกใช้แบบตัวอักษรและ ACM ให้ใช้คำสั่ง consolechars -f <font> -m <ACM> เช่นถ้าต้องการเรียกใช้แบบตัวอักษรจากไฟล์ tis-phaisarn.f16.psf.gz และACM จากไฟล์ tis620.acm.gz ก็จะใช้คำสั่ง consolechars -f tis-phaisarn.f16 -m tis620
คำสั่งนี้จะเรียกใช้งาน แบบตัวอักษรจากไฟล์ tis-phaisarn.f16.psf.gz และ ACM จากไฟล์ tis620.acm.gz ในคราวเดียว ซึ่งไฟล์ font จะอยู่ในห้อง $LCTROOT/consolefonts และ ACM จะอยู่ใน $LCTROOT/consoletrans ซึ่งเป็นห้องที่โปรแกรมกำหนดไว้ (ซึ่งขึ้นอยู่กับแต่ละ distribution ดังที่กล่าวมาแล้ว สำหร£ับรายละเอียดอื่น ๆ ของ consolechars ดูที่ consolechars man pages และเวบไซต์ที่กล่าวมาแล้วครับ)
ในการใช้รูปแบบข้อมูลสำหรับภาษาไทย (Thai Locale) ในการแสดงผล ต้องทำการประกาศตัวแปรระบบ LANG เป็น "th_TH" โดยใช้คำสั่ง export LANG="th_TH" เพื่อกำหนดให้ใช้ภาษาไทย
โปรแกรมต่าง ๆ ที่ โปรแกรมที่เป็นสากล (Internationalization, i18n) และ สามารถใช้รูปแบบข้อมูลที่เหมาะสมกับท้องถิ่น (Localization,l10n) จะแสดงผลเป็นภาษาไทย และใช้รูปแบบข้อมูลที่ควรจะเป็นในภาษาไทย ตามที่กำหนดไว้ (รวมทั้งโปรแกรมบน X-Windows) ซึ่งในที่นี้ ต้องใช้แบบตัวอักษรภาษาไทย รวมทั้ง ACM ด้วย ใน Console เพื่อให้แสดงผลได้ถูกต้อง (หลังจากกำหนดแล้วสามารถทดลองได้ โดยใช้คำสั่ง date เพื่อดูวันที่แล้วเวลา) การกำหนด นี้ อาจใช้ในการ บอกโปรแกรมต่าง ๆ ให้ใช้รูปแบบ แป้นพิมพ์เป็นภาษาไทย สำหรับบางโปรแกรมด้วย
[sf_alpha@benja /]# date อา. 27 พ.ย. 2544 [sf_alpha@benja /]#
Linux Console จะใช้ keymaps ในการเทียบและแปลง รหัสที่ได้รับจาก แป้นพิมพ์ (Keyboard Scan Code) เปลี่ยนเป็นหมายเลขรหัสคำสั่งของแป้นพิมพ์สำหรับ Linux Kernel สำหรับ โปรแกรมที่ทำการจัดการเกี่ยวกับ Keymaps ก็คือ loadkeys ซึ่งเป็นส่วนหนึ่งของแพคเกจ Linux Console Tools
สำหรับไฟล์ keymaps นั้นปกติจะใช้นามสกุล .kmap ซึ่งภายในจะประกอบด้วย รหัสของ ปุ่มกดจากแป้นพิมพ์ (Keycode) และ รหัสของปุ่มกดเสริม (Key Modifiers) ต่าง ๆ และ สัญลักษณ์ ที้ใช้หมายเลขแทนคำสั่งของแป้นพิมพ์สำหรับ Kernel เรียกว่า keysyms ซึ่งเมื่อมีการเรียก keymaps มาใช้งาน loadkeys ก็จะทำการแปลงไฟล์และสัญลักษณ์เป็นรหัสและข้อมูลเพื่อส่งให้กับ kernel
keymaps จะมีอยู่ หลายแบบ ปกติแล้ว Linux ทั้ว ๆ ไปจะใช้ได้เฉพาะ keymaps ที่ใช้ keysyms ของรหัสอักษร ISO-8859-1 สำหรับ keysyms ของรหัสอักษรแบบ TIS-620 จะใช้ได้กับ Linux ที่ติดตั้ง Linux Console Tools ที่ได้รับการ แพตซ์ ให้ใช้งาน keysyms สำหรับ TIS-620 ได้แล้วเท่านั้น ซึ่งสามารถ ดาวโหลดได้จากเวบไซต์ด้านบนเช่นกัน แต่อย่างไรก็ตาม keymaps นี้ยังไม่สามารถใช้งาน ในโหมด Unicode ได้ keymaps เหล่านี้จะใช้ปุ่ม AltGr หรือ Right-Alt ในการเปลี่ยนภาษา และอาจเป็นปุ่มอื่น ขึ้นอยู่กับรายละเอียดของแต่ละ ไฟล์ keymaps ด้วย
ถ้าได้ติดตั้ง Thai Linux Console Data Package ที่กล่าวมาในหัวข้อก่อนหน้านนี้แล้ว ก็จะมีไฟล์ keymaps สำหรับ แป้นพิมพ์ ตามมาตรฐาน TIS-820 2538 (มอก. 820 2538) อยู่แล้ว คือ tis820-38.kmap.gz (ซึ่งใช้ รหัสอักษร ISO-8859-1) ซึ่งถ้าไม่ได้ติดตั้งก็ ดาวโหลด มาได้เช่นกัน แล้วนำไปไว้ในห้อง $LCTROOT/keymaps/i386/qwerty เราสามารถเรียนใช้งาน keymaps โดยใช้คำสั่ง loadkeys <Keymapfile> เช่นถ้าต้องการเรียกใช้ keymaps จากไฟล์ tis820-38.kmap.gz ให้ใช้คำสั่ง loadkeys tis820-38
คำ³สั¹งนี้จะเรียกใช้งาน keymaps จากไฟล์ tis-iso.kmap.gz ซึ่งไฟล์ keymaps จะอยู่ในห้อง $LCTROOT/keymaps/i386/qwerty/ ซึ่งเป็นห้องที่โปรแกรม กำหนดไว้ (ซึ่งขึ้นอยู่กับแต่ละ distribution ดังที่กล่าวมาแล้ว)
สำหรับการใช้งาน Unicode คือการปรั?บระบบให้การแสดงผล และแป้นพิมพ์ ทั้งหมด อยู่ในสถานะ Unicode ซึ่งโดยปกติแล้ว โปรแกรมต่าง ๆ บน Console จะไม่ได้ออก แบบมาสำหรับ Unicode จริงๆ แ่ต่จะใช้ ระบบ XLate แทน ซึ่งเป็นการส่งตัวอักษร Unicode ไปทานหน้าจอโดยใช้ตัวอักษร ระบบ ASCII ธรรมดา สำหรับในแป้นพิมพ์ นั้น การใช้งาน Unicode ยังใช้กับภาษาไทยไม่ได้ แต่ใช้ได้กับตัวอักษร Latin-1 (ISO-8859-1) เท่านั้น
การเข้าสู้โหมด Unicode จะใช้คำสั่ง unicode_start <screenfontfile> สำหรับการกับสู่โหมดปกติ (ASCII/XLate) ใช้คำสั่ง unicode_stop
VIM สามารถใช้งาน ภาษาไทยได้ทันที โดยใช้ encoding เดียวกับ ISO-8859 ในโหมด 8bit สำหรับ ในโหมด Unicode ต้องทำการกำหนด encoding ก่อนโดยใช้คำสั่ง (ใน VIM) :set encoding=utf-8 สำหรับ gvim หรือ VIM ที่ทำงานบน X-Windows (GUI) ให้ใช้คำสั่ง :set guifont=-misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1 เพื่อเรียกใช้ แบบตัวอักษรสำหรับ Unicode แต่สำหรับ Unicode ก็ยังไม่มี Keymaps ที่จะสนับสนุน Unicode ทำให้ยังไม่สามารถใช้งานได้
โดยปกติแล้ว Emacs จะเปลี่ยน Language Environment ตาม Locale ที่ตั้งไว้ ในตัวแปรระบบ LANG=... แต่ก็สามารถเปลี่ยน เปลี่ยน Language Environment เป็น Thai ในการแกไ้ขเอกสาร ภาษาไทย โดยเลือกจาก Menu หรือใช้ คำสัง M-x (alt-x) ส่วนการพิมพ์ ภาษาไทยในโหมด 8bit ทำได้ทันทีเช่นกัน แต่สำหรับ Unicode ก็ยังไม่มี Keymaps ที่จะสนับสนุน Unicode ทำให้ยังไม่สามารถใช้งานได้
ปัจจบัน Unicode เข้ามามีบทบาทมากขึ้น การใช้งาน Unicode สำหรับ Mail จึงเกิดขึ้นตามไปด้วย ทำให้การส่ง e-mail ในรูปแบบต่าง ๆ หันมาใช้ Unicode โดยส่งในรูปแบบของ UTF-8 หรือ UCS ซึ่ง ใ้ช้รหัสแบบ 8 บิต ซึ่งสามารถเขียนจดหมาย หลาย ๆ ภาษาส่งไป ในจดหมายได้ แต่อย่างไรก็ตาม การใช้งาน Unicode บน Console ทำได้ยาก การใช้งานภาษาไทยบน console จึงต้องใช้ รหัสตัวอักษร 8 bit หรือใช้ 7bit แทน สำหรับ PINE สามารถใช้ TIS-620 ซึ่งเป็น 8bit หรืออยู่ในรูป แบบ “Quoted Printable” แืทนก็ได้
การกำหนดค่า Character Set ใน Pine ให้ใส่บรรทัด ต่อไปนี้ในไฟล์ ~/.pinerc
character-set=TIS-620หรือ กำหนดใน เมนูของ Setup โปรแกรม PINE ก็ได้
ในการเรียกใช้งานคำสั่งของ Linux Console Tools จะพบว่า
สำหรับ บาง distribution ที้ใช SysVinit อาจจะมี สคริปต์สำหรับจัดการเรื่องภาษา ซึ่งจะมี และมีไฟล์ /etc/sysconfig/i18n (เช่น RedHat, Mandrake) ซึ่งสามารถแก้ไขไฟล์ /etc/sysconfig/i18n และเปลี่ยนค่า ต่าง ๆ เพื่อให้ระบบแสดงผลเป็นภาษาไทย และเรียกใช้งานแบบอักษรภาษาไทยด้วย ดังตัวอย่าง
LANG="th_TH" # Thai Locale SYSFONTACM="tis620" # System ACM SYSFONT="tis-phaisarn.f16" # System Font (Console) ... ...
และสามารถแก้ไขไฟล์ /etc/sysconfig/keyboard เพื่อกำหนด keymaps ของแป้นพิมพ์ที่จะใช้ได้เช่นกัน ดังตัวอย่าง
KEYTABLE="th-tis-38win.latin1" # Thai TIS-820 2538 # (Latin1 Keysyms) Windows Keyboardถ้าใช้ console-tools ที่แพตช์ Thai keysyms แล้ว อาจจะใช้ th-tis-38win.tis620 ก็ได้ และในบาง distribution สามารถใช้คำสั่ง kbdconfig กำำหนดไดเช่นกัน
หลังจากแก้ไขแล้ว เมื่อ เริ่มระบบใหม่ (Boot) ก็จะมีการเรียกใช้งาน แบตัอักษร และ ACM สำหรับแสดงผล และตั้งให้แสดงผมข้อมูลเป็นภาษาไทย และ เรียก keymaps มาใช้งาน แต่อย่างไรก็ตาม ACM จะไม่ทำงานในโหมด multiuser (หลังจาก getty แล้ว ACM จะไม่ทำาน แต่อาจจเพิ่ม คำสั่งในการ เรียกใช้ ACM หรือ แบบตัวอักษร ในไฟล์ script ขณะ login เช่น .bash_profile สำหรับ บาง distribution สามารถใช้คำสั่ง setsysfont ในการ เรียกใช้ แบบตัวอักษรและ ACM ที่ตั้งไว้ได้)
$Id: Thai-HOWTO.html,v 1.5 2002-03-05 17:12:47 sf_alpha Exp $
สำหรับหัวข้อนี้จะอธิบายการกำหนดค่าภาษาไทยสำหรับ X-Windows รวมทั้งโปรแกรมบน Windows และ Desktop หรือ Windows Manager ต่าง ๆ และการติดตั้ง แบบตัวอักษร สำหรับ กำหนดค่าภาษาไทยและการใช้แบบตัวอักษรภาษาไทยใน Distribution หลัก ๆ สามารถดูข้อมูลเพิ่มเติมได้จาก เวบไซต์ http://www.linuxeasy.f2s.com ซึ่งจะมีคำอธิบายและรูปภาพประกอบสำหรับแต่ละ Distribution ด้วย
X Windows สนับสนุนการใช้้ แบบตัวอักษรหลายชนิด โดนเฉพาะรุ่นใหม่ ๆ นั้นสามารถใช้งาน แบบตัวอักษรที่เป็น True Type ไ้ด้ด้วย (ฟอนต์ที่ใช้บน Microsoft Windows) แต่อย่างไรก็ตามการใช้ภาษาไทยก็ยังทำได้ไม่ดีนัก เนื่องจากโปรแกรมต่าง ๆ บน X-Windows ยังใช้งานรหัสตัวอักษรภาษาไทย เช่น TIS-620 ไม่ได้
สำหรับ แบบตัวอักษรภาษาไทยสำหรับ ลีนุกซ์ สามารถ ดาวโหลดได้จาก http://ftp.nectec.or.th/pub/Thailinux/software/thaifonts และยังมี แบบตัวอักษรที่ทำเป็นแพคเกจแล้ว ซึ่งอยู่ใน TE (Thai Extenstion) สำหรับบาง distribution ด้วย ซึ่งเมื่อติดตั้งแล้ว อาจสามารถข้ามขั้นตอนการติดตั้ง และกำหนดค่าที่เหลือได้ (ดูข้อมูลใน Thai Extension)
สำหรับในขั้นแรก ต้องมีไฟล์รหัสอักษรของ tis-620-0 ก่อน โดย ไฟล์ดังกล่าว จะใช้ชื่อ iso-8859-11.enc แทน ซึ่งปกติจะอยู่ใน ไดเรกทอรี่ /usr/X11R6/lib/X11/fonts/encodings ถ้าไม่มีสามารถ ดาวโหลดได้จาก http://linux.thai.net/sf_alpha/thai-xfonts/ สำหรับ XFree86 ต่ำว่า 4.2.0 ต้องทำการ download ไฟล์ดังกล่าวไปแทนที่ไฟล์เดิม ด้วย เพราะจะมีปัญหาในสร้างรายการตัวอักษร ในภาษาไทย
เมื่อมีการติดตั้ง encoding เ้ข้าไปใหม่ ควรจะมีการ update ไฟล์ encoding.dir ส่วนกลาง ด้วย โดยเข้าไปในไดเรกทอรี่ /usr/X11R6/lib/X11/fonts/encodings แล้วใช้คำสั่ง mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings เมื่อเรียบร้อยแล้วไฟล์ encodings.dir จะถูกสร้างใหม่ เพื่อใช้ในกรณีที่ไดเรกทอรี่ของ แบบตัวอักษร ไม่ได้กำหนด file encodings.dir ไว้ด้วย
[sf_alpha@benja /]# cp /mnt/floppy/*.enc /usr/X11R6/lib/X11/fonts/encodings [sf_alpha@benja /]# cd /usr/X11R6/lib/X11/fonts/encodings [sf_alpha@benja encodings]# mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings
สำหรับ รหัสตัวอักษรสำหรับแบบตัวอักษรบน X-Windows จะมี 3 ตัวคือ tis-620-0, tis-620-1 และ tis-620-2 ซึ่ง tis-620-0 เป็น แบบตัวอักษร ตามมาตรฐาน TIS-620 ปกติ สำหรับ tis-620-1 เป็นฟอนต์ที่ใช้กับเครื่อง macintosh และ tis-620-2 ใช้สำหรับ Microsoft Windows เพื่อช่วยให้ Windows บางรุ่นซึ่งไม่ได้ออกแบบมา สำหรับภาษาไทยสามารถแสดง ภาษาไทยได้ (สวยงาม) สำหรับ ไฟล์รหัสตัวอักษรสำหรับฟอนต์ที้ใช้ tis-620-1 และ tis-620-2 สามารถดาวโหลดได้จาก เวบไซต์ด้านบนเช่นกัน
สำหรับแบบตัวอักษรชนิดต่าง ๆ มีวิธีการติดตั้งดังนี้
แบบตัวอักษรชนิด Bitmapped (pcf,bdf,...). ให้เข้าไปในห้องที่เก็บ font แล้วใช้คำสั่ง mkfontdir <fontencodingir> เพื่อสร้างไฟล์ fonts.dir แล encodings.dir เช่น
[sf_alpha@benja /]# cd /usr/share/X11/fonts/th/thai [sf_alpha@benja thai]# mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings
แบบตัวอักษรชนิด Postscript Type 1. ให้เข้าไปในห้องที่เก็บ font แล้วใช้คำส่ง type1inst ก่อ แล้วจึง mkfontdir <fontencodingir> เพื่อสร้างไฟล์ fonts.dir และ encodings.dir เช่น
[sf_alpha@benja /]# cd /usr/share/X11/fonts/th/type1 [sf_alpha@benja type1]# type1inst [sf_alpha@benja type1]# mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings
แบบตัวอักษรชนิด True Type (TTF). ถ้าต้องการใช้แบบตัวอักษร TrueType จำเป็นต้อง ให้เข้าไปในห้องที่เก็บ font แล้วใช้คำสั่ง เพื่อสร้าง encodings.dir สำหรับ ttmkfdir ก่อน แล้วตามด้วยคำสั่ง ttmkfdir -e /usr/X11R6/lib/X11/fonts/encodings/encodings.dir -o fonts.scale เพื่อสร้างรายการชื่อและขนาดของรูปแบบตัวอักษร TrueType แล้วจึงใช้คำสั่ง mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings เพื่อสร้างไฟล์ fonts.dir เช่น
[sf_alpha@benja /]# cd /usr/share/X11/fonts/th/TrueType [sf_alpha@benja TrueType]# ttmkfdir -e /usr/X11R6/lib/X11/fonts/encodings/encodings.dir \ -o fonts.scale [sf_alpha@benja TrueType]# mkfontdir -e /usr/X11R6/lib/X11/fonts/encodings
สำหรับ ttmkfdir ต้องเป็น Version 2 ขึ้นไป (ตรวจสอบได้โดยใช้คำสั่ง ttmkfdir --versions ) ซึ่งหาได้จาก package freetype ในรุ่นใหม่ ๆ สำหรับบาง Distribution ที่ใช้ ttmkfdir 1 จะไม่สามารถใช้ option -e ได้
ถ้าลองใช้คำสั่ง ttmkfdir แล้ว ในไฟล์ fonts.scale ไม่มีรหัส TIS-620 อาจจะเกิดจากไฟล์ รหัสตัวอักษร (.enc) ที่ มีอยู่นั้นเป็นไฟล์ที่ไม่สมบูรณ์ (ใน XFree86 < 4.2.0) ให้ ดาวโหลดไฟล์ .enc มาใหม่จากเวบไซต์ด้านบน แล้วนำไปไว้แทนไฟล์เดิม ก่อน แล้วทำตาม ขั้นตอนการติดตั้ง แบบตัวอักษร TrueType ใหม่อีกครั้ง
สำหรับระบบที่ใช้ X Font Server ในไฟล์ /etc/X11/XF86Config-4 สำหรับ XFree86 4.x.x หรือ /etc/X11/XF86Config สำหรับ XFree86 3.x.x จะพบบรรทัด FontPath "UNIX:/7000" (ถ้าไม่มีให้ดู การกำหนดค่่าแบบตัวอักษร (Font) สำหรับระบบที่ ไม่ใ้ด้ใช้ X Font Server (XFS)) ถ้ามีให้แก้ไขไฟล์ /etc/X11/fs/config แล้วเพิ่ม ไดเรกทอรี่ของ แบบตัวอักษรที่เราใส่ไว้ เพิ่มเข้าไปหลังบรรทัด catalogue= (ขั้นด้วย ,) เช่น (ถ้ามี font แบบ unscale ต้องใส่ directory ที่มี :unscaled ต่อท้าย เพื่มไปด้วย)
catalogue=/usr/share/X11/fonts/default/misc, ..., ..., /usr/share/X11/fonts/th/misc:unscaled, /usr/share/X11/fonts/th/misc, /usr/share/X11/fonts/th/TrueType, /usr/share/X11/fonts/th/type1
ถ้าเป็น RedHat หรือ Mandrake (และอื่น ๆ ที่มี chkfontpath) อาจจะใช้ chkfontpath --add <FontDir> ในการเพิ่ม แบบตัวอักษร chkfontpath --remove <FontDir> ในการยกเลิกการใช้ แบบตัวอักษร ก็ได้
จากนั้น ให้ restart X Font Server ใหม่ สำหรับระบบที้ใช้ SysV ก็ใช้คำสั่ง /etc/rc.d/init.d/xfs restart (ในบาง distribution สามารถใช้ service xfs restart ได้)
ถ้ามีการใช้ FreeType ต้องทำการกำหนดค่า แบบตัวอักษร สำหรับ FreeType ด้วย ซึ่งจะกล่าวต่อไป
สำหรับระบบที่ไม่ใ้ด้ใช้ X Font Server (XFS) หลังจากเตรียม รูปแบบตัวอักษร เรียบร้อยแล้วเราสามารถทดลองใช้ Font ได้ทันทีถ้าอยู่บน X-Windows โดยการใช้คำสั่ง xset fp+ <FontDir> และ xset fp rehash โดย FontDir คือไดเรกทอรี่ที่เราใส่แบบตัวอักษร ในตอนแรก (หรืออาจจะใช้ `pwd` ถ้าอยู่ใน ไดเรกทอรี่ที่มี แบบตัวอักษรนั้้น ) เช่น
[sf_alpha@benja X11]# cd /usr/share/X11/fonts/th/TrueType [sf_alpha@benja thaittf]# xset fp+ `pwd` [sf_alpha@benja thaittf]# xset fp rehash
ในการกำหนดให้ X สามารถเรียกใช้งาน แบบตัวอักษรที่เพิ่มเข้าไป เมื่อเริ่มการทำงาน ให้เพิ่มบรรทัด FontPath "<FontDir>" ในไฟล์ /etc/X11/XF86Config-4 สำหรับ XFree86 4.x.x หรือ /etc/X11/XF86Config สำหรับ XFree86 3.x.x ใน Section "Files" เช่นดังตัวอย่าง
Section "Files" ... FontPath "..." FontPath "/usr/share/X11/fonts/th/TrueType" FontPath "/usr/share/X11/fonts/th/type1" ... EndSection
ถ้ามีการใช้ FreeType ต้องทำการกำหนดค่า แบบตัวอักษร สำหรับ FreeType ด้วย ซึ่งจะกล่าวต่อไป
สำหรับแอพพลิเคชั่นบางตัวที่ใช้ FreeType Module ของ X-Windows ในการแสดงผล แบบตัวอักษร TrueType, Post Script Type1 และอื่น ๆ เช่น KDE เมื่อมีการใช้ Anti-Aliasing ซึ่งถ้าใช้ต้องกำหนดค่าแบบตัวอักษรให้กับ Module นี้ด้วย โดยแก้ไขไฟล์ /etc/X11/Xftconfig และเพิ่มบรรทัด dir " <fontdir> " ดังเช่นตัวอย่าง
dir "/usr/X11R6/lib/X11/fonts/Type1" ... ... dir "/usr/share/fonts/th/TrueType" dir "/usr/share/fonts/th/misc"
การใช้รูปแบบข้อมูลสำหรับภาษาไทย (Thai Locale) ในการแสดงผล สำหรับ X-Windows ในโปรแกรมพื้นฐาน เหมือนกับบน Console คือ ต้องทำการประกาศตัวแปรระบบ ดังที่กล่าวมาแล้วในหัวข้อ การแสดงผลในรูปแบบข้อมูลสำหรับภาษาไทย (Thai Locale)
xkbmap ทำงานคล้ายกับ Keymaps ที่กล่าวมาแล้ว แต่มีความสามารถ กว่า Keymaps บน Console เพราะมีการแยกระหว่าง map ของภาษาต่าง ๆ และสามารถเปลี่ยนไปมาได้ xkbmap ของภาษาไทย ใน X11R6 เดิม มีเฉพาะที่ใช้ keysym ของ English และ Latin 1 ซึ่งก็ทำงานได้บน X
หลังจากนั้น Pablo Saratxaga <pablo@mandrakesoft.com> ได้สร้าง keysyms สำหรับภาษาไทยขึ้นสำหรับ XFree 4.0.1d แต่ก็ทำให้บางโปรแกรม ไม่สามารถพิมพ์ภาษาไทยได้ ตอนหลังจึงมีการใช้ keysym สำหรับ xkbmap ถึง 3 ตัว คือ TIS-620 และ อีก 2 ตัวข้างต้น และหลังจาก XFree 4.0.2 ก็มีการใช้ XIM ร่วมด้วย ทำให้สามารถตรวจสอบการพิมพ์ได้
ในการใช้งาน แป้นพิมพ์บน X-Windows เพื่อให้พิมพ์ภาษาไทยได้ใช้คำสั่ง setxkbmap th เพื่อเรียน ไฟล์ X-Keyboard Map ของภาษาไทย มาใช้งาน สำหรับปุ่มที่ใช้ใน การเปลี่ยนภาษาคือ
สำหรับ Desktop Application บางตัวจะมีระบบจัดการ แป้นพิมพ์ของตัวเอง เช่น KDE ซึ่งให้ดูรายละเอียดของแต่ละ Desktop Application ด้านล่าง ครับ
ถ้าต้องการให้สามารถพิมพ์ภาษาไทยได้ทุกครั้งที่ใช้ X-Windows ให้แก้ไขบรรทัด Option "xkblayout" ... เป็น Option "xkblayout" "th" ในไฟล์ /etc/X11/XF86Config-4 สำหรับ XFree86 4.x.x หรือ /etc/X11/XF86Config สำหรับ XFree86 3.x.x ใน Section "InputDevice" เช่นดังตัวอย่าง
Section "InputDevice" ... Option "XkbLayout" "th" ... EndSection
ในบาง Desktop Environment เช่น KDE อาจจะมีระบบจัดการเกี่ยวกับ keyboard ของตัวเอง รายละเีอียดให้ดูในการกำหนดค่าของ Desktop Environment นั้น ๆ ด้วย (KDE ดูใน การกำหนดค่าภาษาไทยใน KDE)
สำหรับการกำหนดค่าของ XIM นั้นใช้สำหรับตรวจสอบ การกดคีย์ภาษาไทย ทำได้โดย
ประกาศตัวแปรระบบ (Export) XMODIFIERS เป็น @im= <mode> โดย mode คือ ระดับความเคร่งครัดของการตรวจสอบการกดปุ่ม มี 3 แบบ ดังนี้
อย่างไรก็ตามการตรวจสอบโดย XIM ทำได้บางโปรแกรมเท่านัน และยังไม่สมบูรณ์นัก ข้อมูลเพิ่มเติมเกี่ยวกับ Input Method ของ X-Windows อ่านได้ที่ XFree86 Thai Supports : Input http://www.links.nectec.or.th/~thep/th-xwindow/index.htm#Input
เพื่อให้การใช้งานสมบูรณ์ต้อง กำหนด ให้ใช้รูปแบบข้อมูลสำหรับภาษาไทย (Thai Locale) แล้ว (ดูรายละเอียดใน การแสดงผลในรูปแบบข้อมูลสำหรับภาษาไทย)
ในการใช้โปรแกรม เทอร์มินัล (terminal) xiterm+thai หรือ txiterm สามารถเรียกใช้ได้จากคำสั่ง xiterm หรือ txiterm ในการเปลี่ยนภาษานั้นเหมือนที่กล่าวไว้ใน XKB แต่สามารถใช้ Ctrl-Space ในการเปลี่ยนภาษาได้ (แต่ XIM จะไม่ทำงาน)
พารามิเตอร์ต่าง ๆ และการเรียกใช้โปรแกรม txiterm จากบรรทัดคำสั่ง (Command Line)
xiterm [-tspace <n> ] [-tkb <kbmode> ] [-tim <immode> ]
Option ต่าง ๆ สำหรับ txiterm
การกำหนดค่าของ X Resources ของ xiterm
แก้ไขไฟล์ ~/.Xresources หรือ ~/.Xdefaults แ้ล้วเพิ่มหรือแก้ไขบรรทัดต่อไปนี้
thai_space: <n> thai_keyboard: <kbmode> thai_im: <immode> cursorColor: <color> cursorColorThai: <color>
สำหรับ <cursorColor> คือ สีของ Cursor เมื่อใช้ภาษาอังกฤษ และ <cursorColorThai> คือ สีของ Cursor เมื่อใช้ภาษาไทย thai_space thai_keyboard และ thai_im ให้ดูที่ Option ของ txiterm ใน -tspace -tkb และ -tim ตามลำดับ (ด้านบน)
สำหรับ ข้อมูลเพิ่มเติม ดูใน xiterm man pages ...
สำหรับ Netscape และ Mozilla ควรใช้ Netscape 6.1 หรือ Mozilla 0.9.2 ขึ้นไป เพื่อสำหรับการใช้งานภาษาไทย ในการกำหนดค่าภาษาไทยที่จำเป็นสำหรับ Netscape และ Mozilla ให้เข้าไปที่ เมนู Edit->Preferences จากนั้นกำหนดค่าในส่วนต่าง ๆ ในแถบรูปแบบต้นไม้ด้านซ้าย ดังนี้ (หรือตามต้องการ)
Appearances
Fonts
ในปุ่มเลือก Fonts For เลือก Thai จากนั้นเลือกฟอนต์ต่าง ๆ ตาม ที่ต้องการ ในช่อง serif, sans-serif, cursive, fantasy, monospace ซึ่งเป็นรูปแบบตัวอักษรมาตรฐาน
สำหรับ Proportional Font (อาจไม่มีใน บาง version) ใช้ในการกำหนด รูปแบบตัวอักษรมาตรฐานที่จะใช้ในเอกสารที่ไม่กำหนดแบบตัวอักษร มาตรฐานที่จะใช้าให้ ส่วนรายละเอียดอื่น ๆ นั้นดูที่ Help ครับ
Navigator
Languages
ในปุ่มเลือก Default Character coding ให้ ในช่อง Character coding เลือก TIS-620 เพื่อให้ Navigator แสดงเอกสารโดยใช้รูปแบบตัวอักษร สำหรับ TIS-620 และรหัสตัวอักษร TIS-620 เป็นค่าปริยาย ถ้าเอกสารนั้น ไม่ระบบรหัสตัวอักษรที่ใช้
Mail & Newsgroups
Message Display
ในปุ่มเลือก Character coding ให้ ในช่อง Language เลือก TIS-620 เพื่อให้ Mails & Newsgroups Reader แสดง จดหมาย โดยใช้รูปแบบตัวอักษรสำหรับ TIS-620 และใช้ รหัสตัวอักษร TIS-620 เป็นค่าปริยาย หากจดหมายนั้น ไม่ระบุรหัสตัวอักษรที่ใช้
Message Composition
ในปุ่มเลือก Character coding ให้ ในช่อง Compose Messages เลือก TIS-620 เพื่อให้ Mails & Newsgroups Reader ส่ง จดหมาย โดยใช้รหัสตัวอักษร TIS-620
การเปลี่ยนรหัสตัวอักษรขณะอ่าน เวบไซต์ ข่าว หรือ จดหมาย สามารถเปลี่ยนได้จาก ให้ไปที่เมนู View -> Character coding และเลือกรหัสตัวอักษรที่ต้องการ สำหรับคำแนะนำเมื่ออ่านเอกสารหรือจดหมายไดไม่ออก ดูได้ที่ การเปลี่ยนรหัสตัวอักษรเมื่ออ่านข้อความไม่ออก สำหรับ Browser และ Mail & News Client ในการเขียนจดหมายหรือส่งข่าวบนกระดานข่าว สามารถเปลี่ยนรหัสตัวอักษรได้จากเมนู เดียวกันนี้เช่นกัน ส่วน รายละเอียดอื่น ๆ โปรดดูใน Help ของโปรแกรมครับ
คุณจะต้องตั้ง LYX ให้ใช้อักษรไทยก่อน สำหรับ ตั้งแต่ LYX 1.1.6 คุณสามารถทำได้โดยเข้าไปที่ Edit - > Preferences - > Look & Feel tab - > Screen Fonts tab และเลือก แบบตัวอักษรไทย สำหรับ Roman Sans Serif และ Typewriter และใช้แบบตัวอักษรที้มีรหัสตัวอักษร (Encoding) เป็น TIS-620
สำหรับการกำหนดค่าของ Lyx ในการใช้แป้นพิมพ์ ให้ไปที่ Edit - > Preferences - > Look & Feel tab - > Screen Fonts tab และเลือก Keyboard Map และกำหนด keymap สำหรับ 1st keymap ให้เป็น null และ 2nd keymap ให้เป็น thai-kedmanee จากนั้นให้แก้ไฟล์ ~/.lyx/preference แล้วเพิ่ม \bind "C-backslash" "keymap-toggle" เข้าไปเพื่อกำหนดให้ใช้ Ctrl-\ในการเปลี่ยภาษา
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ภาษาไืทนบน LyX ดูได้จาก LyX-Thai-MicroHOWTO (Thai) โดยคุณ ชนพ ศิลปอนันต์ <chanop@debian.org> และ LyX รุ่นใหม่ ๆ ที่ http://dynax.anu.edu.au/
การกำหนดค่าภาษาไทยสำหรับ KDE โดยทั้วไป ซึ่งต้องทำเป็นอักดับแรก มีขั้นตอนดังนี้
ไปที่ Personalization -> Country & Language
ไปที่ Look & Feel -> Fonts
การกำหนดค่าภาษาไทยสำหรับ Konqueror Web Browser ให้เข้าไปที่ KDE Control Center ใน Web Browset -> Konqueror หรือเข้าโปรแกรม Konqueror แล้วเลือก Menu Setting -> Configure Konqueror
ถ้าการแสดงผลบนเวบไซต์ภาษาไทยอ่านไม่ออก ให้อ่านคำแนะนำจาก การเปลี่ยนรหัสตัวอักษรเมื่ออ่านข้อความไม่ออก สำหรับ Browser และ Mail & News Client ครับ
การกำหนดค่าภาษาไทยสำหรับ โปรแกรม Kde อื่น ๆ จะคล้าย ๆ กัน ให้เข้าไปที่ Menu Setting -> Configure .... แล้วลองหาดูว่ามีส่วนใดของโปรแกรมให้กำหนด หรือ เพิ่ม ภาษา (Language) รหัสตัวอักษร (Charset) หรือ ค่าปริยายของรหัสตัวอักษร (Default Encoding) ถ้ามี ให้เลือก ภาษา ไทย (Thai) และ Charset เป็น TIS-620
สำหรับ Gnome นั้น ระบบการรับข้อมูลจากแป้นพิมพ์ กำหนดได้จาก Xkbmap ปกติ (ด้านบน) ส่วนการแสดงผลอื่น ๆ ต้องกำหนดจาก Control Center
Abiword เป็น Word Processor สำหรับ Gnome ซึ่ง Abiword มีความสามารถสูง และยัง สามารถเปิดไฟล์ในรูปแบบต่าง ๆ ได้ รวมทั้ง Microsoft Word 7.0 ซึ่งใช้กันทั้วไปบน Microsoft Office สำหรับ Abiword ยังมีระบบจัดการแบบตัวอักษรของตัวเอง ซึ่งทำให้ ไม่จำเป็นต้องอาศัยการกำหนดภาษาไทยบน Gnome (ซึ่งยังไม่สนับสนุนระบบ i18n เ่ท่าไหร่) และ Abiword ในรุ่นใหม่ ๆ สามารถใช้ X Font Server ได้เช่นกัน สำหระบ Abiword ใช้ภาษาไทยได้ใน version 0.9.4 ขึ้นไปครับ
การติดตั้ง แบบตัวอักษรบน Abiword ทำได้ดังนี้ (ถ้าใช้ X-Font Server และกำหนดค่า FreeType (/etc/X11/Xftconfig) แล้วไม่จำเป็นต้องติดตั้งเพิ่ม)
จากนั้นต้องทำการแก้ไฟล์ ~/.AbiSuite/AbiWord.Profile แล้วเพิ่ม attribute RemapGlyphsMasterSwitch="0" ใน custom scheme เพื่อแก้ปัญหาการ map สำหรับ ตัวที่อยู่ ในระดับบนและล่าง
ถ้าเปิดเอกสาร หรือ จดหมาย ใดแล้วอ่านไม่ออก ให้ทำเปลี่ยนรหัสตัวอักษร โดยที่
โปรแกรม Mozilla ในบางรุ่นจะมี เมนู View -> Character coding -> Customize ... สำหรับ นำรหัสตัวอักษรที่ใช้บ่อย ๆ มาไว้ใน View -> Character coding ได้ ก็ควรจะ เพิ่ม รหัสอักษร Thai (TIS-620) และ Unicode (UTF-8) ไว้เพื่อความสะดวกในการสลับรหัสตัวอักษรด้วย
$Id: Thai-HOWTO.html,v 1.5 2002-03-05 17:12:47 sf_alpha Exp $
การใช้ LaTeX สำหรับภาษาไทย มีขั้นตอนต่าง ๆ โดยสังเขปดังนี้
ในส่วนหัวของเอกสาร ให้เพิ่ม \usepackage[thai]{babel} เข้าไปด้วย
ตัวอย่างของเอกสาร TeTeX
\documentclass[a4paper]{article} \usepackage[thai]{babel} \begin{document} สวัสดีครับ \end{document}
เมื่อจะนำเอกสารไปใช้งาน ต้องตัดคำก่อนโดยใช้โปรแกรม swath โดยใช้คำสั่ง swath < filename.tex > filename.ttex
$Id: Thai-HOWTO.html,v 1.5 2002-03-05 17:12:47 sf_alpha Exp $
$Id: Thai-HOWTO.html,v 1.5 2002-03-05 17:12:47 sf_alpha Exp $