From 0d27d7c0b8126f08ccbe31e4af495c3528807345 Mon Sep 17 00:00:00 2001 From: handa Date: Sat, 26 Nov 2005 02:07:40 +0000 Subject: [PATCH] Improve handling of tall consonants and vowel AM. --- LAOO-ALICE.flt | 107 +++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 74 insertions(+), 33 deletions(-) diff --git a/LAOO-ALICE.flt b/LAOO-ALICE.flt index 3f3f66a..43397cc 100644 --- a/LAOO-ALICE.flt +++ b/LAOO-ALICE.flt @@ -1,5 +1,5 @@ ;; LAOO-ALICE.flt -- Font Layout Table for Lao (Alice font) -;; Copyright (C) 2003, 2004 +;; Copyright (C) 2003, 2004, 2005 ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H15PRO112 @@ -31,15 +31,15 @@ ;;; (category - ;; C: CONSONANT (except c and s) + ;; C: CONSONANT (except for c and s) ;; c: TALL CONSONANT ;; s: LAO SEMIVOWEL SIGN LO + ;; A: VOWEL AM ;; V: VOWEL UPPER ;; v: VOWEL LOWER ;; T: TONE - ;; I: INDEPENDENT - ;; - (0x0E80 0x0EDF ?I) + ;; I: INDEPENDENT VOWEL (except for A) + ;; S: SIGN (0x0E81 0x0E82 ?C) (0x0E84 ?C) (0x0E87 0x0E88 ?C) @@ -56,27 +56,37 @@ (0x0EA7 ?C) (0x0EAA 0x0EAB ?C) (0x0EAD 0x0EAE ?C) + (0x0EAF ?S) + (0x0EB0 ?I) (0x0EB1 ?V) + (0x0EB2 ?I) + (0x0EB3 ?A) (0x0EB4 0x0EB7 ?V) (0x0EB8 0x0EB9 ?v) (0x0EBB ?V) (0x0EBC ?s) + (0x0EBD ?I) + (0x0EC0 0x0EC4 ?I) + (0x0EC6 ?S) (0x0EC8 0x0ECC ?T) - (0x0ECD ?V)) + (0x0ECD ?V) + (0x0EDC 0x0EDD ?C)) (generator (0 (cond - ("cs?(VT?|v?T)" - < - ("(cs?)" independent semi-vowel) - ("VT?" composed-non-relative composed-non-relative *) - (".*" composed-non-relative *) - > ) + ("(Cs?)(T?A)" + < (1 independent semi-vowel) (2 am-after-normal-c) > ) + ("(cs?)(T?A)" + < (1 independent semi-vowel) (2 am-after-tall-c) > ) ("Cs?[vV]?T?" - < independent semi-vowel composed-non-relative * > ) - ("[^Cs]*" - independent *)) + < independent semi-vowel vowel-tone-after-c * > ) + ("cs?[vV]?T?" + < independent semi-vowel Br ) + ("[sVvTA]" + [ isolated-dependent ]) + ("." + independent)) *) (independent @@ -112,6 +122,7 @@ ((0x0EB0) 0xBD) ((0x0EB2) 0xBE) ((0x0EB3) 0xBF) + ((0x0EB4) [ 0xF2 ]) ((0x0EBD) 0xBC) ((0x0EC0) 0xC0) ((0x0EC1) 0xC1) @@ -123,27 +134,57 @@ ((0x0EDC) 0xCE) ((0x0EDD) 0xCF))) - (composed-relative + (semi-vowel + ((0x0EBC) 0xF9)) + + (am-after-normal-c (cond - ((0x0EB1) tc+bc 0xF1) - ((0x0EB4) tc+bc 0xF2) - ((0x0EB5) tc+bc 0xF3) - ((0x0EB6) tc+bc 0xF4) - ((0x0EB7) tc+bc 0xF5) - ((0x0EB8) bc+tc 0xF7) - ((0x0EB9) bc+tc 0xF8) - ((0x0EBB) tc+bc 0xF6) - ((0x0EC8) tc+bc 0xC8) - ((0x0EC9) tc+bc 0xC9) - ((0x0ECA) tc+bc 0xCA) - ((0x0ECB) tc+bc 0xCB) - ((0x0ECC) tc+bc 0xCC) - ((0x0ECD) tc+bc 0xD6))) + ((0x0EB3) 0xED) + ((0x0EC8 0x0EB3) 0xEE) + ((0x0EC9 0x0EB3) 0xEF) + ((0x0ECA 0x0EB3) 0xFC 0xED) + ((0x0ECB 0x0EB3) 0xFD 0xED) + ((0x0ECC 0x0EB3) 0xFE 0xED))) - (semi-vowel - ((0x0EBC) Br.Bl 0xF9)) + (am-after-tall-c + (cond + ((0x0EB3) 0xD6 0xBE) + ((0x0EC8 0x0EB3) 0xD2 0xBE) + ((0x0EC9 0x0EB3) 0xD3 0xBE) + ((0x0ECA 0x0EB3) 0xFC 0xF0 0xBE) + ((0x0ECB 0x0EB3) 0xFD 0xF0 0xBE) + ((0x0ECC 0x0EB3) 0xFE 0xF0 0xBE))) + + (vowel-tone-after-c + (cond + ((0x0EB1 0x0EC8) 0x84) + ((0x0EB1 0x0EC9) 0x98) + ((0x0EB1) 0xD7) + ((0x0EB4 0x0EC8) 0x85) + ((0x0EB4 0x0EC9) 0x99) + ((0x0EB4) 0xD8) + ((0x0EB5 0x0EC8) 0x86) + ((0x0EB5 0x0EC9) 0x9A) + ((0x0EB5) 0xD9) + ((0x0EB6 0x0EC8) 0x87) + ((0x0EB6 0x0EC9) 0x9B) + ((0x0EB6) 0xDA) + ((0x0EB7 0x0EC8) 0x88) + ((0x0EB7 0x0EC9) 0x9C) + ((0x0EB7) 0xDB) + ((0x0EB8) 0xF7) + ((0x0EB9) 0xF8) + ((0x0EBB 0x0EC8) 0x89) + ((0x0EBB 0x0EC9) 0x9D) + ((0x0EBB) 0xDC) + ((0x0EC8) tr+bl 0xC8) + ((0x0EC9) tr+bl 0xC9) + ((0x0ECA) tr+bl 0xCA) + ((0x0ECB) tr+bl 0xCB) + ((0x0ECC) tr+bl 0xCC) + ((0x0ECD) 0xD6))) - (composed-non-relative + (isolated-dependent (cond ((0x0EB1) 0xF1) ((0x0EB4) 0xF2) -- 1.7.10.4