summaryrefslogtreecommitdiff
path: root/src/lib/prononciation.mly
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2021-08-29 12:11:24 +0200
committerSébastien Dailly <sebastien@chimrod.com>2021-08-29 12:11:24 +0200
commit6ccbcc2cadae41574e33226b9072a08354880d28 (patch)
treeaf36b9e593a3d36be9acdb1383b1cbd1d6f3abcc /src/lib/prononciation.mly
parent3b8c136ebdba7f4b5b4d6baad08d0a75c3b2dc86 (diff)
Update
Diffstat (limited to 'src/lib/prononciation.mly')
-rw-r--r--src/lib/prononciation.mly115
1 files changed, 60 insertions, 55 deletions
diff --git a/src/lib/prononciation.mly b/src/lib/prononciation.mly
index 6fe0d5f..09124a6 100644
--- a/src/lib/prononciation.mly
+++ b/src/lib/prononciation.mly
@@ -27,60 +27,65 @@ voyel:
letters:
- | { [] }
- | letters voyel { $2 :: $1 }
- | letters Space { Space :: $1 }
- | letters Sep { Sep :: $1 }
-
- | letters B { B :: $1 }
- | letters C { K :: $1 }
- | letters C H { X :: $1 }
- | letters C I { I :: S :: $1 }
- | letters C E { E :: S :: $1 }
- | letters C U I { I :: K :: $1 }
- | letters C U E { E :: K :: $1 }
- | letters D { D :: $1 }
- | letters D D { D :: $1 }
- | letters F { F :: $1 }
- | letters G { G :: $1 }
- | letters G I { I :: J :: $1 }
- | letters G E { E :: J :: $1 }
- | letters G U I { I :: G :: $1 }
- | letters G U E { E :: G :: $1 }
- | letters H { Sep :: $1 }
-
- | letters J { J :: $1 }
- | letters K { K :: $1 }
- | letters E L L { L :: E_AGRAVE :: $1 }
- | letters E L { L :: E :: $1 }
- | letters I L L { Y :: I :: $1 }
- | letters I L { L :: I :: $1 }
- | letters L { L :: $1 }
- | letters M { M :: $1 }
- | letters M M { M :: $1 }
- | letters N { N :: $1 }
- | letters N N { N :: $1 }
-
- | letters O I N { N :: I :: W :: $1 }
- | letters O I { A :: W :: $1 }
-
- | letters P { P :: $1 }
- | letters P H { F :: $1 }
-
- | letters Q U { K :: $1 }
-
- | letters R { R :: $1 }
- | letters S S { S :: $1 }
- | letters S H { X :: $1 }
- | letters S { SZ :: $1 }
- | letters T { T :: $1 }
-
- | letters V { V :: $1 }
- | letters W { W :: $1 }
- | letters X { S :: K :: $1 }
- | letters Y { Y :: $1 }
-
- | letters Z { Z :: $1 }
+ | voyel { $1 :: [] }
+ | Space { Space :: [] }
+ | Sep { Sep :: [] }
+
+ | B { B :: [] }
+ | C { K :: [] }
+ | C H { X :: [] }
+ | C I { S :: I :: [] }
+ | C E { S :: E :: [] }
+ | C U { K :: U :: [] }
+ | C U I { K :: I :: [] }
+ | C U E { K :: E :: [] }
+ | D { D :: [] }
+ | D D { D :: [] }
+ | F { F :: [] }
+ | G { G :: [] }
+ | G I { J :: I :: [] }
+ | G E { J :: E :: [] }
+ | G U { G :: U :: [] }
+ | G U I { G :: I :: [] }
+ | G U E { G :: E :: [] }
+ | H { Sep :: [] }
+
+ | J { J :: [] }
+ | K { K :: [] }
+ | E L { E :: L :: [] }
+ | E L L { E_AGRAVE :: L :: [] }
+ | I L { I :: L :: [] }
+ | I L L { I :: Y :: [] }
+ | L { L :: [] }
+ | M { M :: [] }
+ | M M { M :: [] }
+ | N { N :: [] }
+ | N N { N :: [] }
+
+ | O I { W :: A :: [] }
+ | O I N { W :: I :: N :: [] }
+
+ | P { P :: [] }
+ | P H { F :: [] }
+
+ | Q { K :: [] }
+ | Q U { K :: [] }
+
+ | R { R :: [] }
+ | S { SZ :: [] }
+ | S S { S :: [] }
+ | S H { X :: [] }
+ | T { T :: [] }
+
+ | V { V :: [] }
+ | W { W :: [] }
+ | X { K :: S :: [] }
+ | Y { Y :: [] }
+
+ | Z { Z :: [] }
+
+ending:
+ | EOL %prec Low { EOL::[] }
main:
- | letters EOL { EOL::$1 }
+ | append(flatten(letters*), ending) { $1 }