-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapertium-nhw.nhw.twol
56 lines (37 loc) · 997 Bytes
/
apertium-nhw.nhw.twol
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
Alphabet
A B C D E F G H I J K L M N O P Q R S T U W X Y Z
a b c d e f g h i j k l m n o p q r s t u w x y z
%{i%}:i %{i%}:0
%{m%}:m %{m%}:0
%{M%}:m %{M%}:n
%{y%}:y %{y%}:x
%>:%> ;
Sets
Vow = A E I O U
a e i o u ;
Cns = b c d f g h j k l m n p q r s t w x y z ;
Rules
"Morpheme boundary"
%>:0 <=> _ ;
"inmi -> in pt I"
%{m%}:m <=> i n _ %{i%}: %>: Vow ;
"inmi -> in pt II"
%{i%}:i <=> i n %{m%}: _ %>: Vow ;
"in -> inmi pt I"
%{m%}:0 <=> i n _ %{i%}: %>: Cns ;
"in -> inmi pt II"
%{i%}:0 <=> i n %{m%}: _ %>: Cns ;
"m -> n word final and before t"
%{M%}:n <=> _ .#. ;
"m -> n before t"
%{M%}:n <=> _ %>: t ;
"i -> 0 in /k/ when followed by a V"
%{i%}:0 <=> %>: k _ %>: Vow ;
"i -> 0 in /k/ between V and C"
%{i%}:0 <=> [a | e | i] %>: k _ %>: Cns ;
"i -> i in /k/ otherwise"
%{i%}:i <=> [Cns | .#. | o] %>:? k _ %>: Cns ;
"{y}->x at EOW or if next morpheme starts with a consonant"
%{y%}:x <=> _ [.#. | %>: Cns] ;
"{y}->y elsewhere"
%{y%}:y <=> _ Vow ;