summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fonts/amiri/sources/local.fea
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/fonts/amiri/sources/local.fea')
-rw-r--r--Master/texmf-dist/doc/fonts/amiri/sources/local.fea65
1 files changed, 51 insertions, 14 deletions
diff --git a/Master/texmf-dist/doc/fonts/amiri/sources/local.fea b/Master/texmf-dist/doc/fonts/amiri/sources/local.fea
index 43dd7cba29f..c924d96d819 100644
--- a/Master/texmf-dist/doc/fonts/amiri/sources/local.fea
+++ b/Master/texmf-dist/doc/fonts/amiri/sources/local.fea
@@ -1,20 +1,57 @@
-feature locl {
- sub period by period.ara;
- sub guillemotleft by guillemotleft.ara;
- sub guillemotright by guillemotright.ara;
-} locl;
+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 dflt;
- sub at by at.ara;
+ 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;
-# localised Urdu and Sindhi digits
-feature 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 URD exclude_dflt;
- sub [uni06F4 uni06F6 uni06F7] by [uni06F4.urd uni06F6.urd uni06F7.urd];
- language SND exclude_dflt;
- sub [uni06F6 uni06F7] by [uni06F6.urd uni06F7.urd];
-} locl;
+ 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;