summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fonts/amiri/sources/local.fea
blob: c924d96d819f49071322a1f7462c5f36bd4692e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
lookup loclPunct {
  sub period         by period.ara;
  sub guillemotleft  by guillemotleft.ara;
  sub guillemotright by guillemotright.ara;
  sub braceleft      by braceleft.ara;
  sub bar            by bar.ara;
  sub braceright     by braceright.ara;
  sub bracketleft    by bracketleft.ara;
  sub bracketright   by bracketright.ara;
  sub parenleft by   parenleft.ara;
  sub parenright     by parenright.ara;
} loclPunct;

lookup loclUrduDigits {
  sub [uni06F4 uni06F6 uni06F7] by [uni06F4.urd uni06F6.urd uni06F7.urd];
} loclUrduDigits;

lookup loclSindhiDigits {
  sub [uni06F6 uni06F7] by [uni06F6.urd uni06F7.urd];
} loclSindhiDigits;

feature locl {
  script arab;
  language ARA;
  lookup loclPunct;
  sub at by at.ara;

  language URD exclude_dflt;
  lookup loclUrduDigits;
  lookup loclPunct;

  language SND exclude_dflt;
  lookup loclSindhiDigits;
  lookup loclPunct;
} locl;


# some implementations (e.g ICU) does not support ‘locl’ feature for Arabic
# script, so we work around this by using ‘ccmp’ registered for the needed
# languages, which should essentially give the same result.
#
# XXX: always sync with ‘locl’ feature above

feature ccmp {
  script arab;
  language ARA;
  lookup loclPunct;
  sub at by at.ara;

  language URD exclude_dflt;
  lookup loclUrduDigits;
  lookup loclPunct;

  language SND exclude_dflt;
  lookup loclSindhiDigits;
  lookup loclPunct;
} ccmp;