diff --git a/CHANGELOG.md b/CHANGELOG.md
index 876f73a..37929ba 100755
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,9 +1,8 @@
# verbecc Changelog
-- 1.9.6 [25 December 2023]
+- 1.9.6 [26 December 2023]
- Improved Catalan Support
- - Added more missing templates (1)
- - TODO: Still missing 5 templates for 9 out of 8616 verbs
+ - Added remaining missing templates for all 8616 verbs
- See `test_inflector_ca.test_all_verbs_have_templates`
- 1.9.5 [24 December 2023]
diff --git a/tests/test_inflector_ca.py b/tests/test_inflector_ca.py
index 2bb863e..6e5edf6 100755
--- a/tests/test_inflector_ca.py
+++ b/tests/test_inflector_ca.py
@@ -7,14 +7,11 @@
cg = Conjugator(lang="ca")
-# TODO: Fix all of these missing templates
-@pytest.mark.skip("known failure")
def test_all_verbs_have_templates():
- """Have not finished adding templates for all verbs, so this should fail"""
verbs = cg.get_verbs()
assert len(verbs) == 8616
template_names = cg.get_template_names()
- assert len(template_names) == 63
+ assert len(template_names) == 66
missing_verbs = []
missing_templates = set()
for verb in verbs:
@@ -2639,8 +2636,8 @@ def test_find_verb_by_infinitive():
"ella premor",
"nosaltres premorim",
"vosaltres premoriu",
- "elles premoren"
- ]
+ "elles premoren",
+ ],
),
(
"conviure",
@@ -2654,8 +2651,8 @@ def test_find_verb_by_infinitive():
"ella conviu",
"nosaltres convivim",
"vosaltres conviviu",
- "elles conviuen"
- ]
+ "elles conviuen",
+ ],
),
(
"conviure",
@@ -2669,8 +2666,8 @@ def test_find_verb_by_infinitive():
"ella convivia",
"nosaltres convivíem",
"vosaltres convivíeu",
- "elles convivien"
- ]
+ "elles convivien",
+ ],
),
(
"conviure",
@@ -2684,9 +2681,208 @@ def test_find_verb_by_infinitive():
"ella convisqué",
"nosaltres convisquérem",
"vosaltres convisquéreu",
- "elles convisqueren"
- ]
- )
+ "elles convisqueren",
+ ],
+ ),
+ (
+ "vèncer",
+ "indicatiu",
+ "present",
+ False,
+ "f",
+ [
+ "jo venço",
+ "tu vences",
+ "ella venç",
+ "nosaltres vencem",
+ "vosaltres venceu",
+ "elles vencen",
+ ],
+ ),
+ (
+ "vèncer",
+ "imperatiu",
+ "imperatiu-present",
+ False,
+ "m",
+ ["venç", "venci", "vencem", "venceu", "vencin"],
+ ),
+ (
+ "vèncer",
+ "particip",
+ "particip",
+ False,
+ "f",
+ ["vençut", "vençuda", "vençuts", "vençudes"],
+ ),
+ (
+ "vèncer",
+ "infinitiu",
+ "infinitiu-present",
+ False,
+ "m",
+ ["vèncer"],
+ ),
+ (
+ "vèncer",
+ "gerundi",
+ "gerundi",
+ False,
+ "m",
+ ["vencent"],
+ ),
+ (
+ "cerndre",
+ "indicatiu",
+ "present",
+ False,
+ "f",
+ [
+ "jo cerno",
+ "tu cerns",
+ "ella cern",
+ "nosaltres cernem",
+ "vosaltres cerneu",
+ "elles cernen",
+ ],
+ ),
+ (
+ "oir",
+ "indicatiu",
+ "present",
+ False,
+ "f",
+ [
+ "jo oeixo",
+ "tu oeixes",
+ "ella oeix",
+ "nosaltres oïm",
+ "vosaltres oïu",
+ "elles oeixen",
+ ],
+ ),
+ (
+ "oir",
+ "indicatiu",
+ "imperfet",
+ False,
+ "f",
+ [
+ "jo oïa",
+ "tu oïes",
+ "ella oïa",
+ "nosaltres oíem",
+ "vosaltres oíeu",
+ "elles oïen",
+ ],
+ ),
+ (
+ "oir",
+ "indicatiu",
+ "passat-simple",
+ False,
+ "f",
+ [
+ "jo oí",
+ "tu oïres",
+ "ella oí",
+ "nosaltres oírem",
+ "vosaltres oíreu",
+ "elles oïren",
+ ],
+ ),
+ (
+ "oir",
+ "indicatiu",
+ "futur",
+ False,
+ "f",
+ [
+ "jo oiré",
+ "tu oiràs",
+ "ella oirà",
+ "nosaltres oirem",
+ "vosaltres oireu",
+ "elles oiran",
+ ],
+ ),
+ (
+ "oir",
+ "subjuntiu",
+ "present",
+ False,
+ "f",
+ [
+ "jo oeixi",
+ "tu oeixis",
+ "ella oeixi",
+ "nosaltres oïm",
+ "vosaltres oïu",
+ "elles oeixin",
+ ],
+ ),
+ (
+ "oir",
+ "subjuntiu",
+ "imperfet",
+ False,
+ "f",
+ [
+ "jo oís",
+ "tu oïssis",
+ "ella oís",
+ "nosaltres oíssim",
+ "vosaltres oíssiu",
+ "elles oïssin",
+ ],
+ ),
+ (
+ "oir",
+ "condicional",
+ "present",
+ False,
+ "f",
+ [
+ "jo oiria",
+ "tu oiries",
+ "ella oiria",
+ "nosaltres oiríem",
+ "vosaltres oiríeu",
+ "elles oirien",
+ ],
+ ),
+ (
+ "oir",
+ "particip",
+ "particip",
+ False,
+ "f",
+ ["oït", "oïda", "oïts", "oïdes"],
+ ),
+ (
+ "oir",
+ "infinitiu",
+ "infinitiu-present",
+ False,
+ "m",
+ ["oir"],
+ ),
+ (
+ "oir",
+ "gerundi",
+ "gerundi",
+ False,
+ "m",
+ ["oint"],
+ ),
+ (
+ "oir",
+ "imperatiu",
+ "imperatiu-present",
+ False,
+ "m",
+ ["oeix", "oeixi", "oïm", "oïu", "oeixin"],
+ ),
],
)
def test_inflector_ca_conjugate_mood_tense(
diff --git a/verbecc/data/conjugations-ca.xml b/verbecc/data/conjugations-ca.xml
index c406a37..f74f3b1 100755
--- a/verbecc/data/conjugations-ca.xml
+++ b/verbecc/data/conjugations-ca.xml
@@ -737,94 +737,187 @@ Only difference is the participles
-
+
- bo
- ps
- p
- bem
- beu
- ben
+ o
+ -ps
+ -p
+ em
+ eu
+ en
- bia
- bies
- bia
- bíem
- bíeu
- bien
+ ia
+ ies
+ ia
+ íem
+ íeu
+ ien
- bí
- beres
- bé
- bérem
- béreu
- beren
+ í
+ eres
+ é
+ érem
+ éreu
+ eren
- bré
- bràs
- brà
- brem
- breu
- bran
+ ré
+ ràs
+ rà
+ rem
+ reu
+ ran
- bi
- bis
- bi
- bem
- beu
- bin
+ i
+ is
+ i
+ em
+ eu
+ in
- bés
- bessis
- bés
- béssim
- béssiu
- bessin
+ és
+ essis
+ és
+ éssim
+ éssiu
+ essin
- p
- bi
- bem
- beu
- bin
+ -p
+ i
+ em
+ eu
+ in
- bria
- bries
- bria
- bríem
- bríeu
- brien
+ ria
+ ries
+ ria
+ ríem
+ ríeu
+ rien
- bre
+ re
- bent
+ ent
- but
- buda
- buts
- budes
+ ut
+ uda
+ uts
+ udes
+
+
+
+
+
+
+
+
+ o
+ s
+
+ em
+ eu
+ en
+
+
+ ia
+ ies
+ ia
+ íem
+ íeu
+ ien
+
+
+ í
+ eres
+ é
+ érem
+ éreu
+ eren
+
+
+ ré
+ ràs
+ rà
+ rem
+ reu
+ ran
+
+
+
+
+ i
+ is
+ i
+ em
+ eu
+ in
+
+
+ és
+ essis
+ és
+ éssim
+ éssiu
+ essin
+
+
+
+
+ -p
+ i
+ em
+ eu
+ in
+
+
+
+
+ ria
+ ries
+ ria
+ ríem
+ ríeu
+ rien
+
+
+
+
+ re
+
+
+
+
+ ent
+
+
+
+
+ ut
+ uda
+ uts
+ udes
@@ -1016,6 +1109,99 @@ Note: this verb is only conjugated in the third-person.
+
+
+
+
+ -ço
+ es
+ -ç
+ em
+ eu
+ en
+
+
+ ia
+ ies
+ ia
+ íem
+ íeu
+ ien
+
+
+ í
+ eres
+ é
+ érem
+ éreu
+ eren
+
+
+ eré
+ eràs
+ erà
+ erem
+ ereu
+ eran
+
+
+
+
+ i
+ is
+ i
+ em
+ eu
+ in
+
+
+ és
+ essis
+ és
+ éssim
+ éssiu
+ essin
+
+
+
+
+ -ç
+ i
+ em
+ eu
+ in
+
+
+
+
+ eria
+ eries
+ eria
+ eríem
+ eríeu
+ erien
+
+
+
+
+ er
+
+
+
+
+ ent
+
+
+
+
+ -çut
+ -çuda
+ -çuts
+ -çudes
+
+
+
+
@@ -5902,6 +6088,101 @@ This is the second-largest group of regular verbs in the Catalan language
+
+
+
+
+ eixo
+ eixes
+ eix
+ ïm
+ ïu
+ eixen
+
+
+ ïa
+ ïes
+ ïa
+ íem
+ íeu
+ ïen
+
+
+ í
+ ïres
+ í
+ írem
+ íreu
+ ïren
+
+
+ iré
+ iràs
+ irà
+ irem
+ ireu
+ iran
+
+
+
+
+ eixi
+ eixis
+ eixi
+ ïm
+ ïu
+ eixin
+
+
+ ís
+ ïssis
+ ís
+ íssim
+ íssiu
+ ïssin
+
+
+
+
+ eix
+ eixi
+ ïm
+ ïu
+ eixin
+
+
+
+
+ iria
+ iries
+ iria
+ iríem
+ iríeu
+ irien
+
+
+
+
+ ir
+
+
+
+
+ int
+
+
+
+
+ ït
+ ïda
+ ïts
+ ïdes
+
+
+
+
diff --git a/verbecc/data/verbs-ca.xml b/verbecc/data/verbs-ca.xml
index 4033f00..c4b1e22 100755
--- a/verbecc/data/verbs-ca.xml
+++ b/verbecc/data/verbs-ca.xml
@@ -677,7 +677,7 @@
apellarcant:ar
apel·larcant:ar
apequinarcant:ar
-apercebrere:bre
+apercebrereb:re
aperduarevacu:ar
apergaminarcant:ar
apesararcant:ar
@@ -1329,7 +1329,7 @@
butxaquejarenve:jar
cabassejarenve:jar
cabdellarcant:ar
-caberre:bre
+caberreb:re
cabestrarcant:ar
cabestrejarenve:jar
cabeçarcomen:çar
@@ -1338,7 +1338,7 @@
caboriejarenve:jar
cabotejarenve:jar
cabrafigarpreg:ar
-cabrere:bre
+cabrereb:re
cabrejarenve:jar
cabridarcant:ar
cabriolarcant:ar
@@ -1538,7 +1538,7 @@
cerciorarcant:ar
cerclarcant:ar
cercolarcant:ar
-cerndreté:mer
+cerndrecern:dresift
certificartren:car
cessarcant:ar
cianurarcant:ar
@@ -1727,7 +1727,7 @@
comunirserv:ir
concassarcant:ar
concatenarcant:ar
-concebrere:bre
+concebrereb:re
concedirserv:ir
concelebrarcant:ar
concentrarcant:ar
@@ -1907,7 +1907,7 @@
conviurev:iurelive together
convocartren:car
convulsarcant:ar
-convèncerv:èncer
+convèncervènc:er
conxarcant:ar
conxorxarcant:ar
conèixerconèix:er
@@ -2069,7 +2069,7 @@
decapitarcant:ar
decatirserv:ir
decaure:caure
-decebrere:bre
+decebrereb:re
decidirserv:ir
declamarcant:ar
declararcant:ar
@@ -4332,7 +4332,7 @@
entrenarcant:ar
entrenyellarcant:ar
entrenyorarcant:ar
-entreobrirobr:rir
+entreobrirobr:ir
entreoiro:ir
entrepassegarpreg:ar
entreplouremou:re
@@ -4672,7 +4672,7 @@
escridarcant:ar
escridassarcant:ar
escripturarcant:ar
-escriurer:iuire
+escriurer:iure
escrostarcant:ar
escrostissarcant:ar
escrostonarcant:ar
@@ -6512,7 +6512,7 @@
ofrenarcant:ar
ofuscartren:car
oiaresglai:ar
-oirobe:ir
+oiro:irhear
oldrecol:dre
oliarcanvi:ar
olivarcant:ar
@@ -6678,7 +6678,7 @@
pelfarcant:ar
pellarcant:ar
pellicartren:car
-pellobrirobr:rir
+pellobrirobr:irpeel off
pellpartirserv:ir
pelltrencartren:car
pellucartren:car
@@ -6702,7 +6702,7 @@
perbocartren:car
perbullirdorm:ir
percaçarcomen:çar
-percebrere:bre
+percebrereb:re
percolarcant:ar
percudirment:irhit
perdonarcant:ar
@@ -7199,7 +7199,7 @@
rebotegarpreg:ar
rebotirserv:ir
rebotreperd:re
-rebrere:bre
+rebrereb:re
rebregarpreg:ar
rebrollarcant:ar
rebrostarcant:ar
@@ -7479,7 +7479,7 @@
renyoquejarenve:jar
renàixern:àixer
renéixern:àixer
-reobrirobr:rir
+reobrirobr:ir
reocuparcant:ar
reomplirompl:ir
reordenarcant:ar
@@ -7677,7 +7677,7 @@
revoltarcant:ar
revoltillarcant:ar
revolucionarcant:ar
-revèncerv:èncer
+revèncervènc:er
reüllarcant:ar
riallejarenve:jar
riberejarenve:jar
@@ -8594,7 +8594,7 @@
vulcanitzarcant:ar
vulgaritzarcant:ar
vulnerarcant:ar
-vèncerperd:re
+vèncervènc:er
xacartren:car
xafarcant:ar
xafardejarenve:jar