diff options
Diffstat (limited to 'src/lib/modifiers')
| -rw-r--r-- | src/lib/modifiers/vocalize.ml | 7 | 
1 files changed, 6 insertions, 1 deletions
| diff --git a/src/lib/modifiers/vocalize.ml b/src/lib/modifiers/vocalize.ml index 6857718..dab36ed 100644 --- a/src/lib/modifiers/vocalize.ml +++ b/src/lib/modifiers/vocalize.ml @@ -10,10 +10,15 @@ let process      | None -> init      | Some op ->        (* The voyel may be none in case of ending word. In such case, we shall -         not trnasform the S into Z *) +         not transform the S into Z *)        let is_voyel = T.is_voyel v1 && T.is_voyel v2 in +        match is_voyel, op.Sig.opening, op.Sig.ending with        | true, hd::[], None when hd = T.sz ->          let c = Some { op with opening = [T.z] } in          (((v1, v2), c) , ending) +      | true, hd::n::[], None when hd = T.sz && T.is_voyel n-> +        (* The s is followed by a semi-voyel *) +        let c = Some { op with opening = [T.z; n] } in +        (((v1, v2), c) , ending)        | _ -> init | 
