Index: gc_core/py/lang_core/gc_functions.py ================================================================== --- gc_core/py/lang_core/gc_functions.py +++ gc_core/py/lang_core/gc_functions.py @@ -157,16 +157,18 @@ def g_info (dToken): "for debugging: retrieve info of word" if not dToken: echo("> no token") return True + for sKey, val in dToken.items(): + echo(sKey + ":" + str(val)) lMorph = dToken["lMorph"] if "lMorph" in dToken else _oSpellChecker.getMorph(dToken["sValue"]) if not lMorph: echo("> not in dictionary: " + dToken["sValue"]) return True - for sKey, val in dToken.items(): - echo(sKey + ":" + str(val)) + for sMorph in lMorph: + echo(sMorph) return True def g_value (dToken, sValues, nLeft=None, nRight=None): "test if is in sValues (each value should be separated with |)" Index: gc_lang/fr/dictionnaire/orthographe/FRANCAIS.dic ================================================================== --- gc_lang/fr/dictionnaire/orthographe/FRANCAIS.dic +++ gc_lang/fr/dictionnaire/orthographe/FRANCAIS.dic @@ -4990,11 +4990,11 @@ applaudimètre/S.() po:nom is:mas di:* fq:4 applaudir/f0p+() po:v2_itnq__a di:* fq:7 applaudissement/S.() po:nom is:mas di:* fq:6 applaudisseur/Fs() po:nom di:* fq:4 Apple/L'D'Q' po:npr is:epi is:inv se:soc se:info di:* fq:5 -applet/S.() po:nom is:mas et:angl di:* fq:4 +applet/S.() po:nom is:fem et:angl di:* fq:4 applette/S.() po:nom is:fem lx:néo se:info et:angl di:* fq:2 appli/S.() po:nom is:fem lx:abr se:info di:* fq:5 applicabilité/S.() po:nom is:fem di:* fq:6 applicable/S.() po:adj is:epi di:* fq:7 applicage/S.() po:nom is:mas di:* fq:3 @@ -51366,10 +51366,11 @@ mémorisable/S.() po:adj is:epi di:* fq:4 mémorisation/S.() po:nom is:fem di:* fq:6 mémoriser/a0p+() po:v1_it___zz di:* fq:6 Memphis/L'D'Q' po:npr is:epi is:inv se:cité di:* fq:6 m’en po:err di:* fq:0 +m’y po:err di:* fq:0 menaçant/F.() po:adj di:* fq:6 menace/S.() po:nom is:fem di:* fq:7 menacer/a0p+() po:v1_it___zz di:* fq:7 ménade/S.() po:nom is:fem se:myth et:grec di:* fq:4 ménage/S.() po:nom is:mas di:* fq:7 @@ -79461,10 +79462,11 @@ temporiser/a0p+() po:v1_it___zz di:* fq:6 temporo-pariétal/W.() po:adj se:anat di:* fq:2 temps/L'D'Q' po:nom is:mas is:inv se:temps et:lat di:* fq:9 temps-réel/L'D'Q' po:nom is:mas is:sg di:* fq:3 t’en po:err di:* fq:0 +t’y po:err di:* fq:0 tenable/S.() po:adj is:epi di:* fq:5 tenace/S.() po:adj is:epi di:* fq:6 tenacement/L'D'Q' po:adv di:* fq:5 ténacité/S.() po:nom is:fem di:* fq:6 tenaille/S.() po:nom is:fem di:* fq:5 @@ -86981,10 +86983,11 @@ photophérèse/S.() po:nom is:fem se:méd di:* phytoplasme/S.() po:nom is:mas se:bio et:grec di:* plaçable/S.() po:adj is:epi di:* pluricentenaire/S.() po:adj is:epi se:temps di:* proxiphotographie/S.() po:nom is:fem se:image di:* +recréditer/a0p+() po:v1__t___zz di:* résumable/S.() po:adj is:epi se:litt di:* résurrecteur/Fc() po:adj se:reli di:* riparien/F+() po:adj se:géogr di:* ripisylve/S.() po:nom is:fem se:sylvi di:* ronin/S.() po:nom is:mas se:hist et:jap di:* Index: gc_lang/fr/modules/tests_modules.py ================================================================== --- gc_lang/fr/modules/tests_modules.py +++ gc_lang/fr/modules/tests_modules.py @@ -41,19 +41,19 @@ def test_lookup_failed (self): for sWord in ["Branche", "BRANCHE", "BranchE", "BRanche", "BRAnCHE", "émilie"]: self.assertFalse(self.oSpellChecker.lookup(sWord), sWord) def test_isvalidtoken (self): - for sWord in ["Branche", "branche", "BRANCHE", "Émilie", "ÉMILIE", "aujourd'hui", "aujourd’hui", "Aujourd'hui", "Aujourd’hui", "je-suis-vraiment-fatigué", ""]: + for sWord in ["Branche", "branche", "BRANCHE", "Émilie", "ÉMILIE", "aujourd'hui", "aujourd’hui", "Aujourd'hui", "Aujourd’hui", "je-suis-vraiment-fatigué", "donne-m’en", "tiens-t’y"]: self.assertTrue(self.oSpellChecker.isValidToken(sWord), sWord) def test_isvalid (self): - for sWord in ["Branche", "branche", "BRANCHE", "Émilie", "ÉMILIE", "aujourd’hui", "Aujourd’hui"]: + for sWord in ["Branche", "branche", "BRANCHE", "Émilie", "ÉMILIE", "aujourd’hui", "Aujourd’hui", "M’EN", "T’Y"]: self.assertTrue(self.oSpellChecker.isValid(sWord), sWord) def test_isvalid_failed (self): - for sWord in ["BranchE", "BRanche", "BRAnCHE", "émilie", "éMILIE", "émiLie", "aujourd'hui", "Aujourd'hui", ]: + for sWord in ["BranchE", "BRanche", "BRAnCHE", "émilie", "éMILIE", "émiLie", "aujourd'hui", "Aujourd'hui"]: self.assertFalse(self.oSpellChecker.isValid(sWord), sWord) def test_suggest (self): for sWrong, sSugg in [ ("chassis", "châssis"),