Overview
Comment: | [fr] faux positifs et ajustements |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk | fr |
Files: | files | file ages | folders |
SHA3-256: |
f1d1d013a154916dd7255b8428ecd8b3 |
User & Date: | olr on 2025-09-16 13:21:18 |
Other Links: | manifest | tags |
Context
2025-09-16
| ||
18:03 | [graphspell][fr] améliorations des suggestions ad hoc pour les ordinaux Leaf check-in: 1f3aef957f user: olr tags: trunk, fr, graphspell | |
13:21 | [fr] faux positifs et ajustements check-in: f1d1d013a1 user: olr tags: trunk, fr | |
12:20 | [build][fr] extra tests check-in: 0318bd422b user: olr tags: trunk, fr, build | |
Changes
Modified gc_lang/fr/rules.grx from [fe54e31307] to [24860a8326].
︙ | ︙ | |||
33512 33513 33514 33515 33516 33517 33518 33519 33520 33521 33522 33523 33524 33525 33526 33527 | !!!! Participes passés: COD précédant que !! !! !! __ppas_det_sing_COD_que_avoir__ >avoir dû ?[me|m’|te|t’|lui|nous|vous|leur]¿ $:Y <<- !2>> [un|le|ce|cet|tout] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[fp]¬:(?:G|W|É|[me]:[si]) [un|le|ce|cet|tout] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[fp]¬:(?:G|W|É|[me]:[si]) <<- /ppas/ morph(\2, ":[NA].*:[me]:[si]") --1>> =suggVerbPpas(\-1, ":m:s") && Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au masculin singulier.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais [une|la|cette|ma|ta|sa] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|É|[fe]:[si]) [une|la|cette|ma|ta|sa] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|É|[fe]:[si]) <<- /ppas/ morph(\2, ":[NA].*:[fe]", ">(?:fois|impression)/") and not morph(>1, ":(?:Y|Ov|D|M|LV|ÉV)|>qu[e’]/") | > > > > < < | 33512 33513 33514 33515 33516 33517 33518 33519 33520 33521 33522 33523 33524 33525 33526 33527 33528 33529 33530 33531 33532 33533 33534 33535 33536 33537 33538 | !!!! Participes passés: COD précédant que !! !! !! __ppas_det_sing_COD_que_avoir__ >avoir dû ?[me|m’|te|t’|lui|nous|vous|leur]¿ $:Y <<- !2>> >avoir [commencé|demandé|décidé|essayé|exigé|fini|imaginé|ordonné|oublié|recommencé|résolu|supplié|tenté|cru] [de|d’] >avoir [commencé|recommencé|réussi|pensé|échoué] à <<- !2>> ppas [un|le|ce|cet|tout] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[fp]¬:(?:G|W|É|[me]:[si]) [un|le|ce|cet|tout] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[fp]¬:(?:G|W|É|[me]:[si]) <<- /ppas/ morph(\2, ":[NA].*:[me]:[si]") --1>> =suggVerbPpas(\-1, ":m:s") && Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au masculin singulier.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais [une|la|cette|ma|ta|sa] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|É|[fe]:[si]) [une|la|cette|ma|ta|sa] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|É|[fe]:[si]) <<- /ppas/ morph(\2, ":[NA].*:[fe]", ">(?:fois|impression)/") and not morph(>1, ":(?:Y|Ov|D|M|LV|ÉV)|>qu[e’]/") --1>> =suggVerbPpas(\-1, ":f:s") && Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au féminin singulier.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais [l’|mon|ton|son|notre|votre|leur] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q¬:[GWÉ] [l’|mon|ton|son|notre|votre|leur] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q¬:[GWÉ] <<- /ppas/ not morph(>1, ":(?:Y|Ov|D|M|LV|ÉV)|>qu[e’]/") >>> <<- /ppas/ morph(\2, ":[NA].*:m", ":[fe]|>impression/") and morph(\-1, ":Q.*:[fp]", ":[me]:[si]") --1>> =suggVerbPpas(\-1, ":m:s") |
︙ | ︙ | |||
33593 33594 33595 33596 33597 33598 33599 | TEST: C’était l’une des questions que je lui avais demandé de poser. TEST: C’est en les suivant que j’ai découvert leur planque __ppas_det_plur_COD_que_avoir__ [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q¬:[GWÉ] [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q¬:[GWÉ] | | < < < | < < < | 33595 33596 33597 33598 33599 33600 33601 33602 33603 33604 33605 33606 33607 33608 33609 33610 33611 33612 33613 33614 33615 33616 33617 33618 33619 | TEST: C’était l’une des questions que je lui avais demandé de poser. TEST: C’est en les suivant que j’ai découvert leur planque __ppas_det_plur_COD_que_avoir__ [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q¬:[GWÉ] [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q¬:[GWÉ] <<- /ppas/ not morph(>1, ":(?:Y|Ov|D|M|LV|ÉV)") and morph(\2, ":[NA].*:[pi]") >>> <<- /ppas/ morph(\2, ":[NA].*:m", ":[fe]") and morph(\-1, ":Q.*:[fs]", ":[me]:[pi]") --1>> =suggVerbPpas(\-1, ":m:p") && Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au masculin pluriel.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais <<- /ppas/ __else__ and morph(\2, ":[NA].*:f", ":[me]") and morph(\-1, ":Q.*:[ms]", ":[fe]:[pi]") --1>> =suggVerbPpas(\-1, ":f:p") && Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au féminin pluriel.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais <<- /ppas/ __else__ and morph(\2, ":[NA].*:[pi]") and morph(\-1, ":Q.*:s", ":[pi]") --1>> =suggVerbPpas(\-1, ":p") && Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au pluriel.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais [certains|maints] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[fs]¬:[GWÉ] [certains|maints] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[fs]¬:[GWÉ] <<- /ppas/ not morph(>1, ":(?:Y|Ov|D|M|LV|ÉV)") and morph(\2, ":[NA].*:[me]:[pi]") --1>> =suggVerbPpas(\-1, ":m:p") && Si “\1 \2…” est bien le COD du participe passé “\-1”, celui-ci devrait être au masculin pluriel.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais [certaines|maintes] *WORD [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|$:M] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[ms]¬:[GWÉ] [certaines|maintes] *WORD [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[ms]¬:[GWÉ] <<- /ppas/ not morph(>1, ":(?:Y|Ov|D|M|LV|ÉV)") and not ((value(\-1, "|commencé|décidé|essayé|fini|imaginé|ordonné|oublié|recommencé|résolu|supplié|tenté|cru|") and value(>1, "|de|d’|")) or (value(\-1, "|commencé|recommencé|réussi|pensé|échoué|") and value(>1, "|à|"))) |
︙ | ︙ | |||
33699 33700 33701 33702 33703 33704 33705 | TEST: celui que nous avons pensé rétablir __ppas_celle_que_pronom_avoir__ celle [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ça|cela|ceci] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|É|[fe]:[si]) celle [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[m’|t’|nous|vous]¿ >avoir @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|É|[fe]:[si]) <<- /ppas/ not morph(>1, ":(?:Y|Ov|D|LV|ÉV)") | < < < < < < | 33695 33696 33697 33698 33699 33700 33701 33702 33703 33704 33705 33706 33707 33708 33709 33710 33711 33712 33713 33714 33715 33716 33717 33718 33719 33720 33721 33722 33723 33724 33725 33726 33727 33728 33729 33730 33731 33732 33733 | TEST: celui que nous avons pensé rétablir __ppas_celle_que_pronom_avoir__ celle [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ça|cela|ceci] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|É|[fe]:[si]) celle [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[m’|t’|nous|vous]¿ >avoir @:V[0-3]..t.*:Q.*:[mp]¬:(?:G|W|É|[fe]:[si]) <<- /ppas/ not morph(>1, ":(?:Y|Ov|D|LV|ÉV)") --1>> =suggVerbPpas(\-1, ":f:s") && Accord avec le COD “celle”. Le participe passé devrait être au féminin singulier.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais TEST: celle que nous avons {{oublié}} ->> oubliée TEST: celle que les services ont {{remplacé}} ->> remplacée TEST: celle qu’ils ont pensé remplacer __ppas_ceux_que_pronom_avoir__ ceux [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ça|cela|ceci] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[fs]¬:(?:G|W|É|[me]:[pi]) ceux [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[m’|t’|nous|vous]¿ >avoir @:V[0-3]..t.*:Q.*:[fs]¬:(?:G|W|É|[me]:[pi]) <<- /ppas/ not morph(>1, ":(?:Y|Ov|D|LV|ÉV)") --1>> =suggVerbPpas(\-1, ":m:p") && Accord avec le COD “ceux”. Le participe passé devrait être au masculin pluriel.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais TEST: ceux que vous avez {{attaqué}} ->> attaqués TEST: ceux que les grands ont {{mangé}} ->> mangés TEST: ceux que nous avons cru perdre. TEST: Ils poignardaient au milieu de la presse ceux qu’ils avaient résolu de tuer __ppas_celles_que_pronom_avoir__ celles [que|qu’] [je|j’|tu|il|elle|on|nous|vous|ils|elles|iel|iels|ça|cela|ceci] ?[ne|n’]¿ ?[lui|leur]¿ >avoir @:V[0-3]..t.*:Q.*:[ms]¬:(?:G|W|É|[fe]:[pi]) celles [que|qu’] $:D¬:R @:[NA] ?[ne|n’]¿ ?[m’|t’|nous|vous]¿ >avoir @:V[0-3]..t.*:Q.*:[ms]¬:(?:G|W|É|[fe]:[pi]) <<- /ppas/ not morph(>1, ":(?:Y|Ov|D|LV|ÉV)") --1>> =suggVerbPpas(\-1, ":f:p") && Accord avec le COD “celles”. Le participe passé devrait être au féminin pluriel.|http://fr.wikipedia.org/wiki/Accord_du_participe_pass%C3%A9_en_fran%C3%A7ais TEST: celles que nous avons {{détourné}} ->> détournées TEST: celles que le chien a {{mangé}} ->> mangées TEST: celles que nous avons oublié de prévenir TEST: celles que nous avons pensé détruire |
︙ | ︙ |
Modified gc_lang/fr/tests/test_wiktionary_citations.txt from [72491ca1dd] to [b352f4e2f4].
|
| | | 1 2 3 4 5 6 7 8 | # AVERTISSEMENT : # Ces citations ont été récupérées sur Wiktionnaire par un script. Certaines d’entre elles contiennent des erreurs grammaticales et orthographiques. Et ont été corrigées dans ce fichier, mais pas sur Wiktionnaire. Si vous récupérez à nouveau les citations sur Wiktionnaire, ces erreurs reviendront, à moins qu’elles n’aient été corrigées sur Wiktionnaire par les contributeurs de ce dictionnaire en ligne. Nous réservâmes aux nouveaux venus un accueil qui fut cordial et empressé, mais le temps n’était pas aux effusions et d’un commun avis, il fallait agir vite. Partout elle avait trouvé bon accueil, prompt assentiment, mais elle se propose d’aller plus outre. Notre hôte, absent au moment de notre arrivée, ne tarde pas à paraître et me fait l’accueil auquel je m’attendais de sa part. À l’accueil, ils t’expliqueront comment aller à son bureau. Le Maire rappelle au conseil municipal que l’accueil périscolaire aura lieu à la rentrée de septembre 2008–2009 dans la salle de réunions et le petit local attenant. |
︙ | ︙ |
Modified make.py from [f482d01042] to [03f1f86c56].
︙ | ︙ | |||
355 356 357 358 359 360 361 | sDescription = dVars['dic_personal_description'] lex_build.build(spfLexSrc, dVars['lang'], dVars['lang_name'], sfDictDst, bJavaScript, sDicName, sDescription, "", dVars['stemming_method'], int(dVars['fsa_method'])) def extraTest (sLang): "test grammar checker with files in <gc_lang/xx/tests>" if os.path.isdir(f"gc_lang/{sLang}/tests"): | | | 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 | sDescription = dVars['dic_personal_description'] lex_build.build(spfLexSrc, dVars['lang'], dVars['lang_name'], sfDictDst, bJavaScript, sDicName, sDescription, "", dVars['stemming_method'], int(dVars['fsa_method'])) def extraTest (sLang): "test grammar checker with files in <gc_lang/xx/tests>" if os.path.isdir(f"gc_lang/{sLang}/tests"): print(f">>>>>>>>>> EXTRA TESTS: parsing texts in <gc_lang/{sLang}/tests>\n") grammalecte = importlib.import_module("grammalecte") oGrammarChecker = grammalecte.GrammarChecker(sLang) for sf in os.listdir(f"gc_lang/{sLang}/tests"): if sf.startswith("test_") and sf.endswith(".txt"): spf = f"gc_lang/{sLang}/tests/" + sf with open(spf, "r", encoding="utf-8") as hSrc: print(f"\n>>>>>>>>>> TEST TEXT: {spf} <<<<<<<<<<\n") |
︙ | ︙ |