diff options
-rw-r--r-- | src/lib/modifiers/mute.ml | 4 | ||||
-rw-r--r-- | src/lib/prononciation.mly | 3 | ||||
-rw-r--r-- | src/test/test.ml | 1 |
3 files changed, 6 insertions, 2 deletions
diff --git a/src/lib/modifiers/mute.ml b/src/lib/modifiers/mute.ml index e23965f..b89fda7 100644 --- a/src/lib/modifiers/mute.ml +++ b/src/lib/modifiers/mute.ml @@ -1,8 +1,10 @@ open StdLabels + (** Mute the last consonant if there is no voyel in the syllabus. This modifier is only applied in the first step, and not repeated anymore. -*)let process +*) +let process : 'a Sig.modifier = fun init -> let ((v, c) , ending) = init in diff --git a/src/lib/prononciation.mly b/src/lib/prononciation.mly index fdb1298..65e203c 100644 --- a/src/lib/prononciation.mly +++ b/src/lib/prononciation.mly @@ -53,7 +53,6 @@ %token EOL %nonassoc Low -%left R %right High %start<Tokens.token list> main @@ -87,6 +86,7 @@ letters | D { D :: [] } | D D { D :: [] } | F { F :: [] } + | F F { Nothing :: F :: [] } | G { G :: [] } | G I { J :: I :: [] } | G E { J :: letter_e $2 :: [] } @@ -116,6 +116,7 @@ letters | Q U { K :: [] } | R { R :: [] } + | R R { Nothing :: R :: [] } | S { SZ :: [] } | S S { Nothing :: S :: [] } | S H { X :: [] } diff --git a/src/test/test.ml b/src/test/test.ml index 497e150..2964127 100644 --- a/src/test/test.ml +++ b/src/test/test.ml @@ -70,6 +70,7 @@ let tests = ; "croire", "kR[wa]R°" ; "demeure", "d2m9R°" ; "ébrouas", "ebRua(s)" + ; "effroi", "EfRwa" ; "em|magasinais","@magazinE(s)" ; "essai", "EsE" ; "extra", "EkstRa" |