Overview
Comment: | [fr] conversion: regex rules -> graph rules |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | fr | rg |
Files: | files | file ages | folders |
SHA3-256: |
59eec1ef7bab5fcbd4ce59993e05ebe2 |
User & Date: | olr on 2018-07-26 08:13:36 |
Other Links: | branch diff | manifest | tags |
Context
2018-07-26
| ||
08:31 | [core] gc engine: use stored morphologies in tokens if they exist check-in: eecbc6012a user: olr tags: core, rg | |
08:13 | [fr] conversion: regex rules -> graph rules check-in: 59eec1ef7b user: olr tags: fr, rg | |
08:13 | [core] gc engine: define_from() update check-in: 86ac7fe88a user: olr tags: core, rg | |
Changes
Modified gc_lang/fr/rules.grx from [95ebaaa4fc] to [7d831c71bf].
︙ | ︙ | |||
7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916 7917 7918 7919 | TEST: cette femme-là {{étaient}} partout. __simplification_des_nombres__ [vingt|trente|quarante|cinquante|soixante|soixante-dix|septante|quatre-vingt|octante|huitante|quatre-vingt-dix|nonante|mille] et [un|une|onze] <<- ~>> \1-et-\3|| <<- ~2:3>> * [deux|trois|quatre|cinq|six|sept|huit|neuf|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf] cents @:[NAQ].*:[pi]¬:(?:G|3p) <<- ~1:2>> ␣ [deux|trois|quatre|cinq|six|sept|huit|neuf] ?cent¿ mille cent mille <<- ~>> ␣ __purge_des_nombres__ [les|des|ces|mes|tes|ses|nos|vos|leurs] quelque @:B @:[NA].*:[pi]¬:(?:G|3p) [les|des|ces|mes|tes|ses|nos|vos|leurs] quelque ~\d+ @:[NA].*:[pi]¬:(?:G|3p) <<- ~2:3>> * [à|de|d’] @:B pour cent <<- ~>> * | > > > < | 7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916 7917 7918 7919 7920 7921 7922 7923 7924 7925 7926 7927 7928 7929 | TEST: cette femme-là {{étaient}} partout. __simplification_des_nombres__ [vingt|trente|quarante|cinquante|soixante|soixante-dix|septante|quatre-vingt|octante|huitante|quatre-vingt-dix|nonante|mille] et [un|une|onze] <<- ~>> \1-et-\3|| <<- ~2:3>> * <<- =>> define(\1, [":B:e:p"]) [deux|trois|quatre|cinq|six|sept|huit|neuf|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf] cents @:[NAQ].*:[pi]¬:(?:G|3p) <<- ~1:2>> ␣ <<- =>> define(\1, [":B:e:p"]) [deux|trois|quatre|cinq|six|sept|huit|neuf] ?cent¿ mille cent mille <<- ~>> ␣ <<- =>> define(\1, [":B:e:p"]) __purge_des_nombres__ [les|des|ces|mes|tes|ses|nos|vos|leurs] quelque @:B @:[NA].*:[pi]¬:(?:G|3p) [les|des|ces|mes|tes|ses|nos|vos|leurs] quelque ~\d+ @:[NA].*:[pi]¬:(?:G|3p) <<- ~2:3>> * [à|de|d’] @:B pour cent <<- ~>> * [à|de|d’] une heure ?[deux|trois|quatre|cinq|six|sept|huit|neuf|dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf|vingt|vingt-et-un|vingt-et-une|vingt-deux|vingt-trois|vingt-quatre|vingt-cinq|vingt-six|vingt-sept|vingt-huit|vingt-neuf|trente|trente-et-un|trente-et-une|trente-deux|trente-trois|trente-quatre|trente-cinq|trente-six|trente-sept|trente-huit|trente-neuf|quarante|quarante-et-un|quarante-et-une|quarante-deux|quarante-trois|quarante-quatre|quarante-cinq|quarante-six|quarante-sept|quarante-huit|quarante-neuf|cinquante|cinquante-et-un|cinquante-et-une|cinquante-deux|cinquante-trois|cinquante-quatre|cinquante-cinq|cinquante-six|cinquante-sept|cinquante-huit|cinquante-neuf]¿ [à|de|d’] [deux|trois|quatre|cinq|six|sept|huit|neuf|dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf|vingt|vingt-et-une|vingt-deux|vingt-trois|vingt-quatre] heures ?[deux|trois|quatre|cinq|six|sept|huit|neuf|dix|onze|douze|treize|quatorze|quinze|seize|dix-sept|dix-huit|dix-neuf|vingt|vingt-et-un|vingt-et-une|vingt-deux|vingt-trois|vingt-quatre|vingt-cinq|vingt-six|vingt-sept|vingt-huit|vingt-neuf|trente|trente-et-un|trente-et-une|trente-deux|trente-trois|trente-quatre|trente-cinq|trente-six|trente-sept|trente-huit|trente-neuf|quarante|quarante-et-un|quarante-et-une|quarante-deux|quarante-trois|quarante-quatre|quarante-cinq|quarante-six|quarante-sept|quarante-huit|quarante-neuf|cinquante|cinquante-et-un|cinquante-et-une|cinquante-deux|cinquante-trois|cinquante-quatre|cinquante-cinq|cinquante-six|cinquante-sept|cinquante-huit|cinquante-neuf]¿ <<- ~>> * __purge_conditionnelle__ |
︙ | ︙ | |||
8845 8846 8847 8848 8849 8850 8851 | TEST: __redon2__ Les mêmes causes produisent/produisant les mêmes effets. (répétition) @@@@ @@@@ @@@@ @@@@ | | | 8847 8848 8849 8850 8851 8852 8853 8854 8855 8856 8857 8858 8859 8860 8861 | TEST: __redon2__ Les mêmes causes produisent/produisant les mêmes effets. (répétition) @@@@ @@@@ @@@@ @@@@ @@@@GRAPH: groupes_nominaux _ @@@@ @@@@ @@@@ @@@@ !! !! |
︙ | ︙ | |||
9091 9092 9093 9094 9095 9096 9097 9098 9099 9100 9101 9102 9103 9104 | -1>> quelques # Il manque un “s” à « quelque » ou « \2 » doit être au singulier. TEST: {{Quelque}} amis ## Pluriels épicènes ## Autres pluriels __gn_certains_accord__ certains *WORD <<- /gn/ morph(\2, ":[NAQ].*:f", ":[emGWP]") -1>> certaines # Accord de genre erroné : « \2 » est féminin. <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasPlur(\2, True) # Accord de genre erroné : « \1 » est un déterminant masculin. | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 9093 9094 9095 9096 9097 9098 9099 9100 9101 9102 9103 9104 9105 9106 9107 9108 9109 9110 9111 9112 9113 9114 9115 9116 9117 9118 9119 9120 9121 9122 9123 9124 9125 9126 9127 9128 9129 9130 9131 9132 9133 9134 9135 9136 9137 9138 9139 9140 9141 9142 9143 9144 9145 9146 9147 9148 9149 9150 9151 9152 9153 9154 9155 9156 9157 9158 9159 9160 9161 9162 9163 9164 9165 9166 9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 | -1>> quelques # Il manque un “s” à « quelque » ou « \2 » doit être au singulier. TEST: {{Quelque}} amis ## Pluriels épicènes __gn_les_accord__ , les *WORD <<- /gn/ ( morph(\3, ":[NAQ].*:s", "*") and not (value(>1, "|et|ou|") and morph(>2, ":[NAQ]")) ) or \3 in aREGULARPLURAL -3>> =suggPlur(\3) # Accord de nombre erroné : « \3 » devrait être au pluriel. *WORD les *WORD <<- /gn/ morph(\2, ":D") and ( morph(\3, ":[NAQ].*:s", "*") or (morph(\3, ":[NAQ].*:s", ":[pi]|>avoir") and morph(\1, ":[RC]", ">(?:e[tn]|ou)/") and not (morph(\1, ":Rv") and morph(\3, ":Y"))) ) and not (value(>1, "|et|ou|") and morph(>2, ":[NAQ]")) -3>> =suggPlur(\3) # Accord de nombre erroné : « \3 » devrait être au pluriel. <start> les *WORD <<- /gn/ ( morph(\3, ":[NAQ].*:s", ":[ipYPGW]") and not (value(>1, "|et|ou|") and morph(>2, ":[NAQ]")) ) or \3 in aREGULARPLURAL -3>> =suggPlur(\3) # Accord de nombre erroné : « \3 » devrait être au pluriel. TEST: ils viennent, les {{petit}} TEST: Les {{tiret}} ->> tirets TEST: Les plus {{grand}} hommes. ->> grands TEST: les {{véhicule}} ->> véhicules TEST: Les {{démoralisation}}. ->> démoralisations TEST: dans les {{usine}} ->> usines __gn_leurs_accord__ leurs *WORD <<- /gn/ (morph(\2, ":[NAQ].*:s", ":(?:[ipGW]|[123][sp])") and not (value(>1, "|et|ou|") and morph(>2, ":[NAQ]"))) or \2 in aREGULARPLURAL -2>> =suggPlur(\2) # Accord de nombre erroné avec « \1 » : « \2 » devrait être au pluriel. <<- /gn/ __also__ -1>> leur # Accord de nombre erroné avec « \2 ». TEST: {{leurs}} {{action}} TEST: {{leur}} {{données}} __gn_det_pluriel_accord__ [des|mes|tes|ses|nos|vos|quelques|lesdits|moult] *WORD <<- (morph(\2, ":[NAQ].*:s", ":[ipGW]") and not (value(>1, "|et|ou|") and morph(>2, ":[NAQ]"))) or \2 in aREGULARPLURAL -2>> =suggPlur(\2) # Accord de nombre erroné : « \2 » devrait être au pluriel. TEST: des {{pain}} ->> pains TEST: Quelques {{homme}}. ->> hommes TEST: plusieurs {{femme}} sont venues. TEST: une personne ou plusieurs ayant décidé de façon déterminée et coordonnée de faire cuire la grenouille __gn_ces_aux_pluriel_accord__ [ces|aux] *WORD <<- (morph(\2, ":[NAQ].*:s", ":[ipGW]") and not (value(>1, "|et|ou|") and morph(>2, ":[NAQ]"))) or \2 in aREGULARPLURAL -2>> =suggPlur(\2) # Accord de nombre erroné : « \2 » devrait être au pluriel. <<- __also__ and morph(\2, ">[bcdfglklmnpqrstvwxz].*:m", ":f") >>> <<- \1.endswith("x") or \1.endswith("X") -1>> au # Accord de nombre erroné : « \2 » est au pluriel. <<- __else__ -1>> ce # Accord de nombre erroné : « \2 » est au pluriel. TEST: {{ces}} {{détournement}} de fonds et ces vols TEST: ces {{étudiant}} sont légion. TEST: je vais {{aux}} {{cinéma}} TEST: il l’a donné aux {{étudiant}} __gn_plusieurs_accord__ plusieurs *WORD <<- (morph(\2, ":[NAQ].*:s", ":[ipGWP]") and not (value(>1, "|et|ou|") and morph(>2, ":[NAQ]"))) or \2 in aREGULARPLURAL -2>> =suggPlur(\2) # Accord de nombre erroné : « \2 » devrait être au pluriel. TEST: plusieurs {{foi}} par jour. ## Autres pluriels __gn_certains_accord__ certains *WORD <<- /gn/ morph(\2, ":[NAQ].*:f", ":[emGWP]") -1>> certaines # Accord de genre erroné : « \2 » est féminin. <<- /gn/ __also__ and hasMasForm(\2) -2>> =suggMasPlur(\2, True) # Accord de genre erroné : « \1 » est un déterminant masculin. |
︙ | ︙ | |||
9126 9127 9128 9129 9130 9131 9132 9133 | TEST: Certaines {{danse}} TEST: Certains {{chien}} TEST: {{certains}} des {{nouvelles}} sont à côté de la plaque. TEST: {{certaines}} des hommes TEST: Un problème rapporté par certains est l’incapacité à trouver un partenaire | < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < | > | | | | | | | | | | | < < < < < < < | | > | | | | > > > > > > > | 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208 9209 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 9223 9224 9225 9226 9227 9228 9229 9230 9231 9232 9233 9234 9235 9236 9237 9238 9239 9240 9241 9242 9243 9244 9245 9246 9247 9248 9249 9250 9251 9252 9253 9254 9255 9256 9257 9258 9259 9260 9261 9262 9263 9264 9265 | TEST: Certaines {{danse}} TEST: Certains {{chien}} TEST: {{certains}} des {{nouvelles}} sont à côté de la plaque. TEST: {{certaines}} des hommes TEST: Un problème rapporté par certains est l’incapacité à trouver un partenaire ## Cas particuliers __gn_det_plur_cas_particuliers__ [ces|des|mes|tes|ses|nos|vos|leurs|quelques] [même|point|son|ton] <<- /gn/ -2>> \1s # Accord de nombre erroné : mettez au pluriel. TEST: des {{son}} que nous entendons jour et nuit. TEST: j’entends ces {{même}} âneries tous les jours ## Pluriel des groupes __gn_nombre_de_accord__ nombre [de|d’] *WORD <<- /gn/ (morph(\3, ":[NAQ].*:s", ":[ip]|>o(?:nde|xydation|r)/") and morph(<1, ":(?:G|[123][sp])|<start>", ":[AD]")) or \3 in aREGULARPLURAL -3>> =suggPlur(\3) # Ici, « nombre de » devrait probablement être suivi d’un pluriel. TEST: Je connais nombre d’{{emmerdeur}} et aucun n’est pire que lui. __gn_det_groupe_de_accord__ [un|une|le|la|ce|cette|mon|ton|son|ma|ta|sa|les|ces|des|mes|tes|ses|nos|vos|leurs|quelques] [>centaine|>millier|>million|>milliard|>dixaine|>douzaine|>multitude|>horde] [de|d’] *WORD <<- /gn/ morph(\4, ":[NAQ].*:s", ":[ip]") or \4 in aREGULARPLURAL -4>> =suggPlur(\4) # Avec des « \2 \3 \4 », mettre au pluriel. TEST: des centaines de {{bête}} à cornes passèrent devant nous. ->> bêtes TEST: une multitude d’{{homme}} ->> hommes ## quelque adverbe __gn_quelque_adverbe__ quelques ~^\d+$ <<- /gn/ -1>> quelque # Devant un nombre, « quelque » est un adverbe, donc invariable. quelques @:B <<- /gn/ \2 != "cents" -1>> quelque # Devant un nombre, « quelque » est un adverbe, donc invariable. TEST: Elle a eu {{quelques}} 300 réponses à sa petite-annonce. TEST: Il commande {{quelques}} trois cents hommes. TEST: {{Quelques}} 120 hommes ->> Quelque TEST: {{Quelques}} deux cents hommes. ->> Quelque TEST: les quelque 2,5 millions d’habitants TEST: les quelque 12 000 stations-service @@@@ @@@@END_GRAPH _ @@@@ ## Nombres __[i]/gn(gn_nombre_lettres_accord)__ (d(?:eux|ix|ouze)|tr(?:ois|eize)|qua(?:tre(?:-vingt(?:s|-dix)|)|torze|rante)|cinq(?:uante|)|six|sept(?:ante|)|huit(?:ante|)|onze|quinze|seize|vingt|trente|soixante(?:-dix|)|cents?|octante|nonante) +({w_2}) @@0,$ <<- (morph(\2, ":[NAQ].*:s") |
︙ | ︙ | |||
15245 15246 15247 15248 15249 15250 15251 | @@@@ @@@@ @@@@ @@@@ | | > | 15233 15234 15235 15236 15237 15238 15239 15240 15241 15242 15243 15244 15245 15246 15247 15248 15249 15250 15251 15252 | @@@@ @@@@ @@@@ @@@@ @@@@GRAPH: last_graph _ @@@@ @@@@ @@@@ @@@@ !! !! !!!! Modes verbaux !! !! !! |
︙ | ︙ |