1 ;; GUR2-OTF.flt -- Font Layout Table for gur2 OpenType fonts
2 ;; Copyright (C) 2010 AIST (H15PRO112)
3 ;; See the end for copying conditions.
5 (font layouter gur2-otf nil
7 (font (nil nil unicode-bmp :otf=gur2)))
11 ;;; For gur2 OpenType fonts to draw the Gurmukhi script.
14 (0x0A00 0x0A7F ?X) ; generic
15 (0x0A00 ?Z) ; internal use
16 (0x0A01 0x0A02 ?a) ; SIGN ADAK BINDI .. BINDI
17 (0x0A03 ?A) ; SIGN VISARGA
18 (0x0A05 0x0A14 ?V) ; LETTER A .. AU
19 (0x0A15 0x0A38 ?C) ; LETTER KA .. SA
20 (0x0A3C ?n) ; SIGN NUKTA
21 (0x0A3E ?p) ; VOWEL SIGN AA
22 (0x0A3F ?m) ; VOWEL SIGN I
23 (0x0A40 ?p) ; VOWEL SIGN II
24 (0x0A41 0x0A42 ?b) ; VOWEL SIGN U .. UU
25 (0x0A47 0x0A4C ?u) ; VOWEL SIGN EE .. AU
26 (0x0A4D ?H) ; SIGN VIRAMA
27 ;; (0x0A51 ?) ; SIGN UDAAT
28 (0x0A59 0x0A5E ?C) ; LETTER KHHA .. FA
31 ;; (0x0A75 ?) ; SIGN YAKASH
35 (0x25CC ?X) ; DOTTED CIRCLE
45 ((0x0A32 0x0A3C) 0x0A33)
46 ((0x0A38 0x0A3C) 0x0A36)
47 ((0x0A16 0x0A3C) 0x0A59)
48 ((0x0A17 0x0A3C) 0x0A5A)
49 ((0x0A1C 0x0A3C) 0x0A5B)
50 ((0x0A2B 0x0A3C) 0x0A5E)
55 ;; Syllable identification
59 ;; Consonant-based syllables
60 ("(Cn?J?HJ?)*Cn?(H[NJ]?|m?u?b?p?n?)a?A?"
63 ;; Syllables with an independent vowel
64 ("Vn?(J?HC)?m?u?b?p?n?a?A?"
67 ;; Combining marks are displayed with a DOTTED CIRCLE.
68 ("(m)|(n|H|u|b|p|a|A|JHC)"
69 < (1 =) 0x25CC (2 :otf=gur2=blwf,pstf+) >)
75 ;; Basic shaping forms and matra reordering
79 ;; Explicit halant forms
80 (" ([CnHJ]+)(HN?a?A?) "
81 (1 :otf?gur2=locl,nukt,akhn,blwf,pstf+)
82 | (1 shaping) (2 = *) |)
86 (" ([CnHJV]+)(mn?)?(un?)?(bn?)?(pn?)?(a?A?) "
87 (1 :otf?gur2=locl,nukt,akhn,blwf,pstf+)
88 | (2 = *) (1 shaping) (4 = *) (3 = *) (5 = *) (6 = *) |)
95 ("([CnHJP]*[CV]n?)((J?PP)+)$"
96 (1 :otf=gur2=locl,nukt,akhn,blwf,cjct+) (2 :otf=gur2=pstf+))
98 (0 :otf=gur2=locl,nukt,akhn,blwf,cjct+))))
102 ;; Final reordering (Move pre-base matra after the last halant)
107 (" (mn?)([^ ]+HJ?)([^H ]+) "
108 | (2 = *) (1 = *) (3 = *) |)
114 ;; Nukta for matra and presentation forms
119 | (1 :otf=gur2=nukt,pres,abvs,blws,psts,haln,calt+) |)
140 (1 :otf=gur2=+kern,dist,abvm,blwm))
145 ;; Copyright (C) 2010
146 ;; National Institute of Advanced Industrial Science and Technology (AIST)
147 ;; Registration Number H15PRO112
149 ;; This file is part of the m17n database; a sub-part of the m17n
152 ;; The m17n library is free software; you can redistribute it and/or
153 ;; modify it under the terms of the GNU Lesser General Public License
154 ;; as published by the Free Software Foundation; either version 2.1 of
155 ;; the License, or (at your option) any later version.
157 ;; The m17n library is distributed in the hope that it will be useful,
158 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
159 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
160 ;; Lesser General Public License for more details.
162 ;; You should have received a copy of the GNU Lesser General Public
163 ;; License along with the m17n library; if not, write to the Free
164 ;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
165 ;; Boston, MA 02110-1301, USA.