1 ;; ARAB.flt -- Font Layout Table for Arabic font (Unicode encoding)
2 ;; Copyright (C) 2003, 2004
3 ;; National Institute of Advanced Industrial Science and Technology (AIST)
4 ;; Registration Number H15PRO112
6 ;; This file is part of the m17n database; a sub-part of the m17n
9 ;; The m17n library is free software; you can redistribute it and/or
10 ;; modify it under the terms of the GNU Lesser General Public License
11 ;; as published by the Free Software Foundation; either version 2.1 of
12 ;; the License, or (at your option) any later version.
14 ;; The m17n library is distributed in the hope that it will be useful,
15 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
16 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 ;; Lesser General Public License for more details.
19 ;; You should have received a copy of the GNU Lesser General Public
20 ;; License along with the m17n library; if not, write to the Free
21 ;; Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
26 ;;; For Arabic fonts of Unicode encoding to draw Arabic script.
28 ;; phase 1: Kazakh high hamza
37 (0xFB50 0xFDFF ?x) ; Arabic Presentation Froms-A
38 (0xFE70 0xFEFC ?x) ; Arabic Presentation Froms-B
49 (1 < 0x0674 rmhamza >)
63 (0x0600 0x06FF ?x) ; general
64 (0x0622 ?a) ; alef madda
65 (0x0623 ?b) ; alef hamza above
66 (0x0625 ?c) ; alef hamza below
69 (0x064B 0x0655 ?t) ; combinings
70 (0x0670 ?t) ; combining
71 (0x06D6 0x06ED ?t) ; combinings
106 ;; D: Dual-joining (beh, teh, etc. & zwj)
107 ;; R: Right-joining (alef, dal, thal, reh, zain)
108 ;; U: Non-joining (Hamza, etc. & zwnj)
109 ;; T: Transparent (combining marks)
110 ;; P: Already in Arabic Presentation Form A & B
175 ("(.)(T*)(.*)" ; == (D)(T*)(U.*)
199 ("(.)(T*)(.*)" ; == (D)(T*)(U.*)
204 ("(.)(T*)(.*)" ; == (R)(T*)(.*)
217 ("(.)(T*)(.*)" ; == (D)(T*)(U.*)
222 ("(.)(T*)(.*)" ; == ([RU])(T*)(.*)
229 ((range 0x060C 0x060F) =)
269 ((range 0x0660 0x066D) =)
316 ((range 0x06F0 0x06F9) =)
523 ((0x0651 0x0650) tc+bc 0x064E tc+bc 0x0651) ; shadda + kasra
524 ((0x0651 0x064D) tc+bc 0x064B tc+bc 0x0651) ; shadda + kasratan
525 ((range 0x0610 0x0615) tc+bc =)
532 ((range 0x0651 0x0654) tc+bc =)
538 ((range 0x06D6 0x06DC) tc+bc =)
539 ((range 0x06DF 0x06E2) tc+bc =)