(FONT-SPEC): Fix typo.
[m17n/m17n-db.git] / FLT / SYRC-OTF.flt
1 ;; SYRC-OTF.flt -- Font Layout Table for Syriac OpenType font
2 ;; Copyright (C) 2004, 2007  AIST (H15PRO112)
3 ;; See the end for copying conditions.
4
5 (font layouter syrc-otf nil
6       (font (nil nil unicode-bmp :otf=syrc)))
7
8 ;;; <li> SYRC-OTF.flt
9 ;;;
10 ;;; For Syriac OpenType fonts to draw the Syriac script.
11
12 ;; Step 1: Initial, medial, or final.
13
14 (category
15  ;; D: Dual-joining
16  ;; R: Right-joining
17  ;; U: Non-joining
18  ;; T: Transparent
19  ;; A: ALAPH
20  ;; r: DALATH, RISH, DOTLESS DALATH RISH
21
22  (0x0700 0x071F ?U)
23  (0x0710        ?A)
24  (0x0711        ?T)
25  (0x0712 0x072E ?D)
26  (0x0715 0x0716 ?r)
27  (0x0717 0x0719 ?R)
28  (0x071E        ?R)
29  (0x0728        ?R)
30  (0x072A        ?r)
31  (0x072C        ?R)
32  (0x072F        ?R)
33  (0x0730 0x074A ?T)
34  (0x074D        ?R)
35  (0x074E 0x074F ?D)
36
37  (0x0303        ?T)
38  (0x0330        ?T)
39  (0x0304        ?T)
40  (0x0331        ?T)
41  (0x0307        ?T)
42  (0x0323        ?T)
43  (0x0308        ?T)
44  (0x030A        ?T)
45  (0x0325        ?T)
46  (0x0324        ?T)
47  (0x032D        ?T)
48  (0x032E        ?T)
49
50  (0x064B 0x0655 ?T)
51  (0x0670        ?T)
52
53  (0x200C        ?U)
54  (0x200D        ?D)
55  )
56
57 (generator
58  (0
59   (cond
60    ("(r)(T*)(.*)"
61     (1 otf:syrc=isol)
62     (2 = *)
63     (3 dalath-rish))
64
65    ("(D)(T*)([DRAr].*)"
66     (1 otf:syrc=init)
67     (2 = *)
68     (3 join))
69
70    ("(T+)(.*)"
71     (1 = *)
72     (2 disjoin))
73
74    ("(.)(T*)(.*)"
75     (1 otf:syrc=isol)
76     (2 = *)
77     (3 disjoin))))
78
79  (join
80   (cond
81    ("(r)(T*)(.*)"
82     (1 otf:syrc=fina)
83     (2 = *)
84     (3 dalath-rish))
85
86    ("(D)(T*)([DRrA].*)"
87     (1 otf:syrc=medi)
88     (2 = *)
89     (3 join))
90
91    ("(.)(T*)(.*)"
92     (1 otf:syrc=fina)
93     (2 = *)
94     (3 disjoin))))
95
96  (disjoin
97   (cond
98    ("(D)(T*)([DRAr].*)"
99     (1 otf:syrc=init)
100     (2 = *)
101     (3 join))
102
103    ("(r)(T*)(.*)"
104     (1 otf:syrc=isol)
105     (2 = *)
106     (3 dalath-rish))
107
108    ("(A)(T*)([DRAr].*)"
109     (1 otf:syrc=med2)
110     (2 = *)
111     (3 disjoin))
112
113    ("(A)(T*)(.*)"
114     (1 otf:syrc=fin2)
115     (2 = *)
116     (3 disjoin))
117
118    ("(.)(T*)(.*)"
119     (1 otf:syrc=isol)
120     (2 = *)
121     (3 disjoin))))
122
123  (dalath-rish
124   (cond
125    ("(D)(T*)([DRAr].*)"
126     (1 otf:syrc=init)
127     (2 = *)
128     (3 join))
129
130    ("(r)(T*)(.*)"
131     (1 otf:syrc=isol)
132     (2 = *)
133     (3 dalath-rish))
134
135    ("(A)(T*)([DRAr].*)"
136     (1 otf:syrc=med2)
137     (2 = *)
138     (3 disjoin))
139
140    ("(A)(T*)(.*)"
141     (1 otf:syrc=fin3)
142     (2 = *)
143     (3 disjoin))
144
145    ("(.)(T*)(.*)"
146     (1 otf:syrc=isol)
147     (2 = *)
148     (3 disjoin)))))
149
150 ;; Step 2: Other GSUB features (ligatures, etc.)
151
152 (generator
153  (0
154   otf:syrc=rlig,calt,liga,dlig))
155
156 ;; Step 3: GPOS features.
157
158 (generator
159  (0
160   otf:syrc=))
161
162 ;; Copyright (C) 2004, 2007
163 ;;   National Institute of Advanced Industrial Science and Technology (AIST)
164 ;;   Registration Number H15PRO112
165
166 ;; This file is part of the m17n database; a sub-part of the m17n
167 ;; library.
168
169 ;; The m17n library is free software; you can redistribute it and/or
170 ;; modify it under the terms of the GNU Lesser General Public License
171 ;; as published by the Free Software Foundation; either version 2.1 of
172 ;; the License, or (at your option) any later version.
173
174 ;; The m17n library is distributed in the hope that it will be useful,
175 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
176 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
177 ;; Lesser General Public License for more details.
178
179 ;; You should have received a copy of the GNU Lesser General Public
180 ;; License along with the m17n library; if not, write to the Free
181 ;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
182 ;; Boston, MA 02110-1301, USA.
183
184 ;; Local Variables:
185 ;; mode: lisp
186 ;; End: