forked from dmort27/epitran
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdiv-Thaa.txt
51 lines (31 loc) · 1.17 KB
/
div-Thaa.txt
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
::vowel:: = a|aː|i|iː|u|uː|e|eː|o|o̞ː
::consonant:: = h|ʂ|n|ɾ|b|ɭ|k|ʋ|m|f|d̪|t̪|l|ɡ|ɲ|s|ɖ|z|ʈ|j|p|d͡ʒ|t͡ʃ|θ|ħ|x|ð|ʒ|ʃ|sˤ|dˤ|tˤ|ðˤ|ʕ|ɣ|q|w|ɳ
% ---------------------------------------------------
% General cleanup
% Remove nulls
∅ -> 0 / _
% Unsounded Raa
ɾ -> 0 / (::vowel::) _ (::consonant::)
(::vowel::)ɾ -> əː / _ (#|::consonant::)
% Unsounded Gaaf
ɡ -> 0 / (::vowel::) _ (#|::consonant::)
% ---------------------------------------------------
% Thaa sukun rules, mapped to <TS>
% Relies on preceding vowel
% preceeded by other vowels, behaves like <AS>
% must cascade those rules after
<TS> -> <AS> / (i|iː|e|eː) _
<TS> -> i<AS> / (::vowel::) _
% fallback
<TS> -> jʔ / _
% ---------------------------------------------------
% alif and shaviyani sukun rules, mapped to <AS>
% nasalise if followed by haa, alif(vowel)
<AS> -> ŋ / _ \s?(::vowel::|h)
% Next consonant will geminate
% Still needs some work
(?P<sw1><AS>)\s?(?P<sw2>::consonant::) -> 0 / _
<AS> -> : / (::consonant::) _ (::vowel::)
% alif sukun is supposed to drop a coda /k/ at _ # sometimes
% at boundary which we ignore fallback to a stop instead
<AS> -> ʔ / _