;; KHMR-MULE.flt -- Font Layout Table for Khmer (mule font) ;; Copyright (C) 2003, 2004 ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H15PRO112 ;; This file is part of the m17n database; a sub-part of the m17n ;; library. ;; The m17n library is free software; you can redistribute it and/or ;; modify it under the terms of the GNU Lesser General Public License ;; as published by the Free Software Foundation; either version 2.1 of ;; the License, or (at your option) any later version. ;; The m17n library is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;; Lesser General Public License for more details. ;; You should have received a copy of the GNU Lesser General Public ;; License along with the m17n library; if not, write to the Free ;; Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA ;; 02111-1307, USA. ;;;
  • KHMR-MULE.flt ;;; ;;; For Khmer fonts of mule encoding to draw Khmer script. The font is ;;; available at: (category (0x1780 0x17A2 ?C) ;; C: CONSONANT (except R and KHMER LETTER LA) (0x179A ?R) ;; R: KHMER LETTER RO (0x17A1 ?E) ;; E: ELSE (0x17A3 0x17A4 ?E) (0x17A5 0x17B3 ?V) ;; V: INDEPENDENT VOWEL (except Q) (0x17A7 ?Q) ;; Q: CONJUNCT VOWEL QU, RY, QE (0x17AB ?Q) (0x17AF ?Q) (0x17B2 ?C) (0x17B4 0x17FF ?E) (0x17B6 0x17C5 ?v) ;; v: DEPENDENT VOWEL (0x17C6 ?S) ;; S: COMBINING SIGN (0x17C9 0x17CA ?s) ;; s: SHIFT (0x17CB 0x17D3 ?S) (0x17D2 ?c) ;; c: KHMER SIGN COENG (function as virama) ) (generator (0 (cond ("[CR](c[CRQ])?(cR)?s?v?S?" (cond (".(c[CRQ])(cR)?s?v?S?" < | ("(.)c(.)(c(.))?" (1 independent) (2 conjunct) (4 conjunct)) vowel-and-sign * | > ) ("[CR][svS][svS]*" < | independent vowel-and-sign * | > ) ("." independent))) ("." independent)) *) (independent (cond ((0x17D8) 0xD4 0x9B 0xD4) ((range 0x1780 0x17FF) 0x80))) (conjunct (cond ((0x1783) Br.Bc 0x43) ((0x1788) Br.Bc 0x48) ((0x178D) Br.Bc 0x4D) ((0x1794) Br.Bc 0x54) ((0x1799) Br.Bc 0x59) ((0x179A) Bl20bc =) ("VR" = tr<20br =) ("." =)) *)) (category (0x00 0xFF ?E) ;; E: else (0x40 0x6F ?c) ;; c: conjunct CONSONANT (0x49 ?n) ;; n: conjunct KHMER LETTER NYO (0x59 ?y) ;; y: conjunct KHMER LETTER YO (0x80 0xA2 ?C) ;; C: first CONSONANT (0x89 ?N) ;; N: first KHMER LETTER NYO (0xB2 ?Q) ;; Q: KHMER INDEPENDENT VOWEL QOO TYPE TWO (0xC9 0xD1 ?S)) (generator (0 (cond (" [^ ][^ ][^ ]* " < = (cond ("N[cny]" 0x27 ((0x49) bc-tc 0x28) =) ("Qy" 0x2B)) = * > ) ("[^ ]*" = * )) *)) (category (0x00 0x7F ?n) ;; n: width:normal height:normal depth:deep (0x04 0x05 ?V) ;; V: right part of KHMER VOWEL SIGN YA and IE (0x26 ?w) ;; w: width:wide height:normal depth:deep (0x27 ?W) ;; W: width:wide height:normal depth:normal (0x28 ?w) (0x2A ?w) (0x2C ?N) ;; N: width:normal height:normal depth:normal (0x43 ?w) (0x48 0x49 ?w) (0x4D 0x4E ?w) (0x5A ?r) ;; r: conjunct KHMER LETTER RO (0x60 ?w) (0x80 0xFF ?N) (0x83 ?W) (0x84 ?T) ;; T: width:normal height:high depth:normal (0x87 ?T) (0x88 0x89 ?W) (0x8A 0x8B ?T) (0x8D 0x8E ?W) (0x90 ?T) (0x95 ?T) (0x99 ?W) (0x9B ?W) (0x9F 0xA0 ?W) (0xA6 ?W)) (generator (0 (cond (" ([^ ]*) " < (1 (cond ("(Wnr)([^V]*)(V)?(.*)" = *) ("(Tnr)([^V]*)(V)?(.*)" (1 = = ((0x5A) Bl) ("[^ ]*" = *)) *) (deep-YA-IE ((range 0x04 0x05) Br.Bc 0x24)) (high-deep-YA-IE ((range 0x04 0x05) Br.Bc 0x34)) (high-YA-IE ((range 0x04 0x05) Br.bc 0x14))) ;; Local Variables: ;; mode: lisp ;; End: