• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="UTF-8" ?>
2<!DOCTYPE supplementalData SYSTEM "../../common/dtd/ldmlSupplemental.dtd">
3<!--
4Copyright © 1991-2016 Unicode, Inc.
5CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
6For terms of use, see http://www.unicode.org/copyright.html
7-->
8<supplementalData>
9	<version number="$Revision: 12385 $"/>
10	<transforms>
11		<transform source="und_FONIPA" target="ar" direction="forward" alias="ar-t-und-fonipa">
12		  <tRule><![CDATA[
13# Vowels
14# ------
15# In these rules, we produce ي و ا both for short and for long vowels.
16# This would be wrong for writing Arabic, but when transliterating
17# foreign words and names, it is strongly preferred to vowel marks.
18# However, we emit short schwa [ə] and a few other, schwa-like vowels.
19
20$IVowel = [i ɪ e {e̞}];
21$UVowel = [y {ɨ} {ʉ} ɯ u ʏ {ɪ̈} {ʊ̈} {ɯ̽} {ʊ} ø ɤ o {ø̞} {ɤ̞} {o̞} ɞ ɔ w {w̥} ʍ ʷ];
22$AVowel = [ɛ œ ɜ ʌ æ ɐ a ɶ {ä} {ɒ̈} ɑ ɒ];
23$SchwaVowel = [ɘ ɵ ə {ɵ̞}];
24$Vowel = [$IVowel $UVowel $AVowel $SchwaVowel];
25$Click = [ʘ ɋ ǀ ʇ ǃ ʗ ǂ ʄ ǁ ʖ];
26$Boundary =  [^[:L:][:M:][:N:]];
27
28::NFD;
29[ʰ ʱ ʼ  ̃  ̰  ̋  ́  ̄  ̀  ̏  ̌  ̂ ˥ ˦ ˧ ˨ ˩ ꜜ ꜛ ↗ ↘  ͡  ͜  ̯] → ;
30ʲ → j;
31ᵐ → m;
32ⁿ → n;
33ᵑ → ŋ;
34::NFC;
35
36# TODO: Diphthongs probably need more work.
37
38# Romanian [sekujesk] → [sekujask], for emitting سيكوياسك not سيكويسك
39$UVowel [j $IVowel] [e {e̞} $SchwaVowel] → uia;
40
41# Kazakh Аягөз [ɑjɑɡy̯ʉz] → [ɑjɑɡiuz], to emit TODO
42yʉ → iu;
43
44::NULL;
45
46# Vowels
47$Boundary {ʔ? $IVowel ː} → إِي;
48$Boundary {ʔ? $IVowel} → إِ;
49{$IVowel ʔ} $Boundary → ئ;
50{$IVowel ː ʔ} $Boundary → يء;
51{$IVowel ː ʔ} [$Vowel] → ئ;
52$IVowel ː? → ي;
53
54$Boundary {ʔ? $UVowel ː} → أو;
55$Boundary {ʔ? $UVowel} → أ;
56{$UVowel ʔ} $Boundary → ؤ;
57{$UVowel ː ʔ} $Boundary → وء;
58$UVowel ː? → و;
59
60$Boundary {ʔ? $AVowel ː} → آ;
61$Boundary {ʔ? $AVowel} → أ;
62{$AVowel ʔ} $Boundary → أ;
63{$AVowel ː ʔ} $Boundary → اء;
64$AVowel ː? ʔ $AVowel ː? → اءا;
65$AVowel ː? → ا;
66
67$Boundary {ʔ? $SchwaVowel ː} → إِي;
68$Boundary {ʔ? $SchwaVowel} → أ;
69$SchwaVowel ː → ي;
70$SchwaVowel → ;
71
72# TODO: Handle glottal stop.
73ʔ → ;
74
75# Shadda for long (geminated) consonants
76ː → ّ;
77
78# Affricates
79[{t͡ʃ} ʧ] → تْش;
80
81# Clicks
82[ɡ g ɠ k] $Click → كْش;
83$Click → تْش;
84
85# Nasal stops
86[{m̥} m ɱ] → م;
87[{n̼̊} {n̼} {n̥} n {ɳ̊} ɳ {ɲ̊} {ɲ̥} ɲ] → ن;
88[{ŋ̊} ŋ {ɴ̥} ɴ] k → نك;
89[{ŋ̊} ŋ {ɴ̥} ɴ] [ɡ g ɠ]? → نْغ;
90
91# Non-nasal stops
92[p b {p̪} {b̪} ɓ] → ب;
93[{d̼} d ɗ ᶑ] → د;
94[{t̼} t] → ت;
95[ʈ] → ط;
96[ɖ] → ض;
97c → تْش;
98ɟ → دج;
99k → ك;
100[ɡ g ɠ] → غ;
101[q ɢ ʡ ʛ] → ق;
102
103# Sibilant fricatives
104s → س;
105z → ز;
106[ʃ ʂ ɕ ʄ] → ش;
107[ʒ ʐ ʑ] → ج;
108
109# Non-sibilant fricatives
110[ɸ f v] → ف;
111β → ب;
112[{θ̼} θ {θ̱}] → ث;
113[{ð̼} ð {ð̠}] → ذ;
114ç → ش;
115ʝ $IVowel? ː? → ي;
116[x χ] → خ;
117[ɣ ʁ] → غ;
118ħ → ح;
119ʕ → ع;
120[h ɦ {ʔ̞}] → ه;
121
122# Approximants, trills, flaps
123ʋ → و;
124ʙ → بر;
125{r̝} → رش;
126[{ɹ̥} {ɹ} {ɻ̊} {ɻ} {ɾ̥} ɾ {ɽ̊} ɽ {r̼} {r̥} r] → ر;
127[{ʀ̥} ʀ] → غ;
128ʜ → ح;
129ʢ → ع;
130j $IVowel? ː? → ي;
131
132# Laterals
133ɬ → شْل;
134ɮ → جْل;
135{[{ʎ̥} ʎ]} [^ $IVowel j ʝ] → لي;
136[{l̼} {l̥} l {ɭ̊} ɭ {ʎ̥} ʎ] → ل;
137[ʟ {ʟ̠}] → غ;
138
139# Independent pass for misc cleanup.
140::NULL;
141
142# Strip off syllable markers
143\. → ;
144
145# Sequences of three or more ووو look very confusing; we shorten them.
146# Polish Darłowo [darwɔvɔ] → داروو → داروووو
147ووو+ → وو;
148			]]></tRule>
149		</transform>
150	</transforms>
151</supplementalData>
152