สถานะการสนับสนุนภาษาไทยใน GNU/Linux/X
Status of Thai Support in GNU/Linux/X
Contents

  -  The Thai Locale Projects
       
  
-  glibc 2.1.1
       
         -  TIS-620 charmap/repertoiremap 
-  th_TH.TIS-620 POSIX Locale (all categories) 
 
-  glibc 2.2.2
       
         -  Buddhist Era in LC_TIME 
-  (experimental) ISO/IEC 14652 locale categories 
 
 
 
  -  X11R6
       
         -  Library-model Thai XIM based on WTT 2.0 
 
-  X11R6.1
       
         -  Thai XKB map with Latin hack 
-  XIM defect in translating special keys 
-  Workaround with LC_CTYPE disabling or by setting 
              XMODIFIERS="@im=none" 
 
-  Thai XIM structure
        
 
-  XFree86 4.0.1d
       
         -  New Thai XKB map in accordance with
              <X11/keysymdefs.h> 
-  Thai XIM did not translate keys properly 
-  Workaround with European XIM by creating a blank
              th_TH/Compose file 
 
-  XFree86 4.0.1g
       
         -  Thai XIM keymap translation fixed 
 
-  XFree86 4.0.3
       
  
-  XFree86 4.0.99.1 (branch for 4.1.0)
       
         -  XIM bug fix (same as 4.0.3) 
-  Context-sensitive re-conversion introduced 
 
-  XFree86 4.0.99.2
       
         -  The th_TH/Compose workaround removed
       
 
  -  xterm + th_TH.UTF-8 locale
       
         -  Local encoding (TIS-620) automatically converted to UTF-8 
 
-  yudit
       
         -  Multilingual Unicode editor (Thai input method out of the box)
                 
 
 
  -  Concerns
       
         -  Thai input sequence check is context-sensitive 
-  Requires XNStringConversionCallback support by
              toolkits and applications 
-  Minimal requirement: XIMStringConversionRetrieval
              operation with XIMBackwardChar direction 
-  Currently falls back by buffering one previous character in
              the XIC, which will be outdated by cursor movements
              and backspaces 
-  xiterm+thai 1.04pre2 as a first one to support the callback 
-  GTK+
              
                -  XIM already supported by GDK 
-  Has a positive response in supporting the callback
                     (after GTK+ 2.0) 
-  Cell-based cursor movement (New) 
 
-  Qt
              
                -  XIM already supported in version 2.3.0 
-  Keyboard focusing not complete, Thai XIM not active,
                     however :-( 
 
 
-  Advanced Feature
       
         -  Thai input sequence correction by means of the 
              XIMStringConversionSubstitution operation of
              the callback
       
 
-  Problems
       
         -  Imprecise definition in the Xlib Programming Manual 
 

  -  X11R6
       
         -  th_TH.TACTIS locale 
-  TIS620.2533-1 encoding 
 
-  New Font Set Convention
       
         -  tis620-0 : Plain TIS-620 
-  tis620-1 : MacIntosh Extension to TIS-620 
-  tis620-2 : Windows Extension to TIS-620 
 
-  XFree86 4.0.99.1
       
         -  th_TH.TIS620 locale 
-  TIS620-0 encoding 
 
-  XFree86 4.0.99.1 'freetype' module & font server
       
         -  Glyph map for iso8859-11, tis620-0, tis620.2529-1,
              tis620.2533-1, tis620.2533-0 encodings 
 
-  XFree86 4.1.0
       
         -  tis620-2 is under submission (New) 
-  tis620-1 left to work out 
 
-  GNOME 1.4
       
         -  GTK+ 1.4
              
         
-  Gnome Print 1.4
              
                -  Appears to have Unicode support, but no Thai fonts
                     incorporated yet 
 
 
-  GNOME 2.0
       
         -  GTK+ 2.0
              
                -  (Pango) tis620-0/1/2, tis620.2529-1, tis620.2533-0
                     recognized 
 
 
-  KDE 2
       
         -  Qt 2.2.3
              
                -  tis620-0, iso8859-11 recognized 
 
 
  -  TIS620 BDF fonts
       
         -  Manop : monospace fonts with negative-offset glyphs 
-  Phaisarn : proportional fonts, monospace fonts with
              negative-offset glyphs 
-  Yenbut : proportional font, monospace fonts with
              negative-offset glyphs 
-  ETL : true charcell fonts 
-  NECTEC : monospace fonts with negative-offset glyphs 
 
-  Type1 fonts
       
         -  DearBook : DB ThaiText (proportional) 
-  Omega/NECTEC : Norasi (proportional) 
 
-  ISO10646 BDF fonts
       
         -  XFree86 : true charcell fonts (fixed), proportional fonts
              (ClearlyU) 
 
-  TrueType fonts
       
         -  Omega/NECTEC : Norasi, Garuda (proportional) 
-  Non-free : many Windows fonts available 
 
Thai Fonts Concerns
  -  Fake CharCell/Monospace fonts (with negative-offset glyphs)
       could be eliminated if CharCell rendering is properly supported
       by applications 
-  Discrimination between treatments of CharCell, Monospace and
       Proportional fonts in rendering engines 
  -  Stacking of combining characters
       
         -  Proportional fonts : use negative-offset glyphs 
-  Monospace fonts : no stacking 
-  CharCell fonts : special treatments on combining characters 
    
 
-  Cell clustering
       
         -  The handling of invalid character sequences 
    
 
-  Shaping
       
         -  tis620-0 fonts : do nothing 
-  tis620-1 fonts : use MacThai glyph variation 
-  tis620-2 fonts : use WindowsThai glyph variation 
    
 
-  Word Breaking
       
         -  Thai is known to have no word delimitor 
-  Word-breaking engine is necessary for line wrapping 
 
Status of Thai Rendering Supports
  -  X11/XFree86
       
         -  XOM in X11R6.6 (XomCTL promised by li18nux) 
 
-  GTK+ 2.0 : Pango
       
         -  WTT 2.0 clustering & stacking (proportional font assumed)
              
-  Normal rendering with iso10646 fonts 
-  Shaping for tis620-0, tis620-1, tis620-2 fonts 
-  Thai word breaking API defined with blank implementation 
    
 
-  Qt 2.2.3
       
         -  Stacking with proportional fonts (based on XFontSet)
       
 
-  xterm
       
         -  Stacking with CharCell fonts (Unicode supported) 
    
 
-  xiterm+thai
       
         -  Stacking with fake monospace fonts (+negative-offset glyphs) 
 
-  GNU Emacs
       
         -  Stacking with CharCell fonts 
-  Shaping with dynamic glyph composition 
-  Thai word breaking supported 
 
  -  Thai LaTeX support based on Babel
       
         -  Stacking with proportional fonts 
-  Shaping with TeX virtual fonts 
-  Thai word breaking with filters 
-  San Serif and Roman font families provided 
-  Teletype font lacking 
 
-  Omega
       
         -  At least as good as Babel, plus special kerning across
              word boundaries 
 
  -  Thai Wordbreak filters
       
         -  cttex (wordbreak filter + shaping for LaTeX) 
-  swath (Smart Word Analysis for THai) (wordbreak filter
              for Babel-based Thai LaTeX, recently made to work with
              Omega) 
 
-  Thai Wordbreak library
       
         -  libInThai (C++ Word Iterator) 
 
-  Thai Wordbreak support in applications
       
         -  Mozilla (rule-based) 
-  GNU Emacs (dictionary-based)
       
 
This slide is constantly updated at 
ftp://ftp.nectec.or.th/pub/thailinux/cvs/docs/thaisupp/