;; ARAB-OTF.flt -- Font Layout Table for Arabic OpenType font
-;; Copyright (C) 2004, 2006, 2007
-;; 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.
+;; Copyright (C) 2004, 2006, 2007 AIST (H15PRO112)
+;; See the end for copying conditions.
-;; 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.
+(font layouter arab-otf nil
+ (font (nil nil unicode-bmp :otf=arab=init,medi,fina,liga+mark)))
;;; <li> ARAB-OTF.flt
;;;
;;; For Arabic OpenType fonts to draw the Arabic script.
-(font layouter arab-otf nil
- (font (nil nil unicode-bmp :otf=arab=init,medi,fina,liga+mark)))
-
;; Step 0: Move Kazakh high hamza.
(category
;; (generator
;; (0
-;; otf:arab=ccmp))
+;; otf:arab=ccmp+))
;; Step 2: Initial, medial, or final.
(cond
("(.)(T*)([DR].*)"
<
- (1 otf:arab=init)
+ (1 otf:arab=init+)
(2 = *)
>
(3 join))
("(.)(T*)(.*)" ; == (D)(T*)(U.*)
<
- (1 otf:arab=isol)
+ (1 otf:arab=isol+)
(2 = *)
>
(3 disjoin))))
("([RU])(T*)(.*)"
<
- (1 otf:arab=isol)
+ (1 otf:arab=isol+)
(2 = *)
>
(3 disjoin))
(cond
("(.)(T*)([DR].*)"
<
- (1 otf:arab=medi)
+ (1 otf:arab=medi+)
(2 = *)
>
(3 join))
("(.)(T*)(.*)" ; == (D)(T*)(U.*)
<
- (1 otf:arab=fina)
+ (1 otf:arab=fina+)
(2 = *)
>
(3 disjoin))))
("(.)(T*)(.*)"
<
- (1 otf:arab=fina)
+ (1 otf:arab=fina+)
(2 = *)
>
(3 disjoin))))
(cond
("(.)(T*)([DR].*)"
<
- (1 otf:arab=init)
+ (1 otf:arab=init+)
(2 = *)
>
(3 join))
("(.)(T*)(.*)" ; == (D)(T*)(U.*)
<
- (1 otf:arab=isol)
+ (1 otf:arab=isol+)
(2 = *)
>
(3 disjoin))))
("(.)(T*)(.*)" ; == ([RU])(T*)(.*)
<
- (1 otf:arab=isol)
+ (1 otf:arab=isol+)
(2 = *)
>
(3 disjoin)))))
-;; Step 3: Other GSUB features (ligatures, etc.)
+;; Step 3: Other OTF features.
(generator
(0
- otf:arab=rlig,calt,liga,dlig,cswh,mset))
+ otf:arab=rlig,calt,liga,dlig,cswh,mset+curs,kern,mark,mkmk))
-;; Step 4: GPOS features.
+;; Copyright (C) 2004, 2006, 2007
+;; National Institute of Advanced Industrial Science and Technology (AIST)
+;; Registration Number H15PRO112
-(generator
- (0
- otf:arab=))
+;; 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.
;; Local Variables:
;; mode: lisp