Overview
Comment: | merge trunk |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | gcerw |
Files: | files | file ages | folders |
SHA3-256: |
1c5bdb25b6914cab0ae4458c074041f5 |
User & Date: | olr on 2020-04-06 13:15:56 |
Other Links: | branch diff | manifest | tags |
Context
2020-04-06
| ||
18:24 | [core][py] remove lexicographer from gc engine check-in: e1254b8ae2 user: olr tags: core, gcerw | |
13:15 | merge trunk check-in: 1c5bdb25b6 user: olr tags: gcerw | |
12:43 | [fr] ajustements check-in: 749f9374be user: olr tags: trunk, fr | |
2020-04-05
| ||
08:39 | [core][cli][graphsell][lo][py] move lexicographer from gc engine to graphspell check-in: ba3c939f60 user: olr tags: cli, core, lo, graphspell, gcerw | |
Changes
Modified doc/build.md from [775996ca4c] to [2cc4d3d6c1].
1 2 3 4 5 6 7 | # How to build Grammalecte ## Required ## For building: | > | | | | | < | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | # Building Grammalecte # How to build Grammalecte ## Required ## For building: * Python 3.7+ > [download](https://www.python.org/) * NodeJS > [download](https://nodejs.org/) * npm (should be installed with NodeJS) * web-ext > [instructions](https://extensionworkshop.com/documentation/develop/getting-started-with-web-ext/) For testing: * Firefox Developer > [download](https://www.mozilla.org/en-US/firefox/developer/) * Thunderbird > [download](https://www.thunderbird.net/) ## Commands ## **Build a language** `make.py LANG` |
︙ | ︙ | |||
57 58 59 60 61 62 63 | > Install the LibreOffice extension. `-fx --firefox` > Launch Firefox Developper. > Unit tests can be launched from the menu (Tests section). | | | 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | > Install the LibreOffice extension. `-fx --firefox` > Launch Firefox Developper. > Unit tests can be launched from the menu (Tests section). `-fxn --firefox_nightly` > Launch Firefox Nightly. > Unit tests can be launched from the menu (Tests section). `-tb --thunderbird` > Launch Thunderbird. |
︙ | ︙ |
Modified gc_lang/fr/build.py from [bc942a4468] to [5f4b392f44].
︙ | ︙ | |||
49 50 51 52 53 54 55 | hZip = zipfile.ZipFile(spfZip, mode='w', compression=zipfile.ZIP_DEFLATED) _copyGrammalecteJSPackageInZipFile(hZip, sLang) for spf in ["LICENSE.txt", "LICENSE.fr.txt"]: hZip.write(spf) dVars = _createOptionsForThunderbird(dVars) helpers.addFolderToZipAndFileFile(hZip, "gc_lang/"+sLang+"/mailext", "", dVars, True) hZip.close() | | > | > | > > | | 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | hZip = zipfile.ZipFile(spfZip, mode='w', compression=zipfile.ZIP_DEFLATED) _copyGrammalecteJSPackageInZipFile(hZip, sLang) for spf in ["LICENSE.txt", "LICENSE.fr.txt"]: hZip.write(spf) dVars = _createOptionsForThunderbird(dVars) helpers.addFolderToZipAndFileFile(hZip, "gc_lang/"+sLang+"/mailext", "", dVars, True) hZip.close() #spExtension = dVars['win_tb_debug_extension_path'] if platform.system() == "Windows" else dVars['linux_tb_debug_extension_path'] #if os.path.isdir(spExtension): # file_util.copy_file(spfZip, spExtension + "/" + dVars['tb_identifier']+ ".xpi") # Filename for TB is just <identifier.xpi> # print(f"TB extension copied in <{spExtension}>") #spExtension = dVars['win_tb_beta_extension_path'] if platform.system() == "Windows" else dVars['linux_tb_beta_extension_path'] #if os.path.isdir(spExtension): # print(f"TB extension copied in <{spExtension}>") # file_util.copy_file(spfZip, spExtension + "/" + dVars['tb_identifier']+ ".xpi") # Filename for TB is just <identifier.xpi> def _createOptionsForThunderbird (dVars): dVars['sXULTabs'] = "" dVars['sXULTabPanels'] = "" # dialog options for sSection, lOpt in dVars['lStructOpt']: |
︙ | ︙ |
Modified gc_lang/fr/config.ini from [200e658429] to [9df20b99dc].
︙ | ︙ | |||
55 56 57 58 59 60 61 62 63 64 65 66 67 68 | # Thunderbird tb_identifier = French-GC-TB@grammalecte.net tb_name = Grammalecte [fr] win_tb_path = C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe win_tb_beta_path = C:\Program Files\Thunderbird Daily\thunderbird.exe linux_tb_path = /usr/bin/thunderbird linux_tb_beta_path = /usr/bin/thunderbird win_tb_debug_extension_path = D:\_temp\tb-debug.profile\extensions linux_tb_debug_extension_path = ~/tb-debug.profile/extensions win_tb_beta_extension_path = D:\_temp\tb-beta.profile\extensions linux_tb_beta_extension_path = ~/tb-beta.profile/extensions # Set Thunderbird folder in your PATH variable # Create a local profile: # thunderbird -CreateProfile "debug _build\tb-debug.profile" | > | 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | # Thunderbird tb_identifier = French-GC-TB@grammalecte.net tb_name = Grammalecte [fr] win_tb_path = C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe win_tb_beta_path = C:\Program Files\Thunderbird Daily\thunderbird.exe linux_tb_path = /usr/bin/thunderbird linux_tb_beta_path = /usr/bin/thunderbird # useless now win_tb_debug_extension_path = D:\_temp\tb-debug.profile\extensions linux_tb_debug_extension_path = ~/tb-debug.profile/extensions win_tb_beta_extension_path = D:\_temp\tb-beta.profile\extensions linux_tb_beta_extension_path = ~/tb-beta.profile/extensions # Set Thunderbird folder in your PATH variable # Create a local profile: # thunderbird -CreateProfile "debug _build\tb-debug.profile" |
︙ | ︙ |
Modified gc_lang/fr/rules.grx from [b2eeefb17a] to [21c94a6458].
︙ | ︙ | |||
1994 1995 1996 1997 1998 1999 2000 | en tant que *WORD <<- =>> exclude(\4, ":[123][sp]") en peine <<- =>> exclude(\2, ":V") | | | > > > | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 | en tant que *WORD <<- =>> exclude(\4, ":[123][sp]") en peine <<- =>> exclude(\2, ":V") m’ [dame|sieur] <<- ~>> ␣ nombre [de|d’|des] [@:[NA]|<end>|,] <<- not morph(<1, ":D") >>> <<- morph(<1, ":A.*:[me]:[si]") =>> add_morph(\1, [">nombre/:G:D"]) <<- __else__ =>> define(\1, [">nombre/:G:D"]) par *WORD <<- =>> exclude(\2, ":[123][sp]") plein [de|d’] @:[AN] <<- not morph(<1, ":D.*:m|>(?:être|(?:re|)devenir|rester|demeurer|sembler|para[iî]tre)/") =>> =define(\1, [":G"]) source [de|d’] <<- morph(<1, ">(?:être|(?:re|)devenir|rester|demeurer|sembler|para[iî]tre)/") =>> define(\1, [":LV"]) tout feu ?,¿ tout >flamme |
︙ | ︙ | |||
8122 8123 8124 8125 8126 8127 8128 | des [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|nous|vous|on|ceux|celles|celui|celle] <<- /conf/ not \1.isupper() and not \2.isupper() -1>> de|dès # Incohérence : les mots “\1” et “\2” ne devraient pas se succéder. <<- /conf/ __also__ and hasSimil(\2, ":[NA].*:[pi]") -2>> =suggSimil(\2, ":[NA].*:[pi]", True) # Confusion probable. Pour la préposition, écrivez “dès” ou “de”. des ~^\d{2,5}$ [<end>|,] des ~^\d{2,5}$ @:¬:[NA].*:[ip]|>(?:à|et|ou)/ | | > | 8125 8126 8127 8128 8129 8130 8131 8132 8133 8134 8135 8136 8137 8138 8139 8140 | des [ces|des|les|mes|ses|tes|nos|vos|ce|cet|cette|ma|ta|sa|mon|je|tu|il|ils|nous|vous|on|ceux|celles|celui|celle] <<- /conf/ not \1.isupper() and not \2.isupper() -1>> de|dès # Incohérence : les mots “\1” et “\2” ne devraient pas se succéder. <<- /conf/ __also__ and hasSimil(\2, ":[NA].*:[pi]") -2>> =suggSimil(\2, ":[NA].*:[pi]", True) # Confusion probable. Pour la préposition, écrivez “dès” ou “de”. des ~^\d{2,5}$ [<end>|,] des ~^\d{2,5}$ @:¬:[NA].*:[ip]|>(?:à|et|ou)/ <<- /conf/ not value(<1, "|%|") and not morph(<1, ":B|>(?:pourcent|barre|seuil|aucun|plusieurs|certaine?s|une?)/") -1>> dès # Confusion probable. Pour la préposition, écrivez “dès”.|https://fr.wiktionary.org/wiki/pr%C3%A8s [dés|des] *NUM ans [dés|des] $:B ans [dés|des] un an <<- /conf/ not morph(<1, ":R|>(?:approcher|anniversaire|cap|célébration|commémoration|occasion|passage|programme|terme|classe|autour|celui|ceux|celle|celles)/") and not value(>1, "|de|du|des|d’|") and not before("% +$") -1>> dès # Confusion probable. Pour la préposition, écrivez “dès”.|https://fr.wiktionary.org/wiki/pr%C3%A8s |
︙ | ︙ | |||
8199 8200 8201 8202 8203 8204 8205 8206 8207 8208 8209 8210 8211 8212 | TEST: sous le seuil des 10 % TEST: notre revue des 24 et 25 décembre TEST: J’ai des X230. TEST: Pour les enfants placés, l’angoisse du passage des 18 ans TEST: C’est la fin des 35 heures. TEST: 98 % des 18‑29 ans considéraient cela comme évident TEST: Gagnez trois dés lors d’un test # diagnostic / diagnotique // pronostic / pronostique // public / publique __conf_diagnostic_pronostique__ [ce|un|du|mon|notre|votre|quel] [diagnostique|pronostique|publique] <<- /conf/ -2>> =\2.replace("que", "c").replace("QUE", "C") # Confusion probable. Le nom s’écrit avec un “c”. | > > | 8203 8204 8205 8206 8207 8208 8209 8210 8211 8212 8213 8214 8215 8216 8217 8218 | TEST: sous le seuil des 10 % TEST: notre revue des 24 et 25 décembre TEST: J’ai des X230. TEST: Pour les enfants placés, l’angoisse du passage des 18 ans TEST: C’est la fin des 35 heures. TEST: 98 % des 18‑29 ans considéraient cela comme évident TEST: Gagnez trois dés lors d’un test TEST: aucun des 19 peuples concernés n’en veut TEST: un des 18 sera bientôt là. # diagnostic / diagnotique // pronostic / pronostique // public / publique __conf_diagnostic_pronostique__ [ce|un|du|mon|notre|votre|quel] [diagnostique|pronostique|publique] <<- /conf/ -2>> =\2.replace("que", "c").replace("QUE", "C") # Confusion probable. Le nom s’écrit avec un “c”. |
︙ | ︙ | |||
8742 8743 8744 8745 8746 8747 8748 | <<- /conf/ -2>> =\1.replace("û", "u") # Confusion. Le jeûne est une privation de nourriture.|https://fr.wiktionary.org/wiki/jeune TEST: Très {{jeûne}}, elle a su qu’elle ne voulait pas d’une vie ordinaire. # la / l’a __conf_il_elle_on_la_l_a_vconj__ | | | 8748 8749 8750 8751 8752 8753 8754 8755 8756 8757 8758 8759 8760 8761 8762 | <<- /conf/ -2>> =\1.replace("û", "u") # Confusion. Le jeûne est une privation de nourriture.|https://fr.wiktionary.org/wiki/jeune TEST: Très {{jeûne}}, elle a su qu’elle ne voulait pas d’une vie ordinaire. # la / l’a __conf_il_elle_on_la_l_a_vconj__ [il|elle|on|iel] ?[nous|vous]¿ l’ a ~^[bcdfghjklmnpqrstvwxz] <<- /conf/ morph(\-1, ":[123][sp]", ":[GQ]") --3:-2>> la # Confusion probable. Pour un pronom objet féminin, écrivez “la”. [ne|me|te|se] l’ a ~^[bcdfghjklmnpqrstvwxz] <<- /conf/ morph(\4, ":[123][sp]", ":[GQ]") -2:3>> la # Confusion probable. Pour un pronom objet féminin, écrivez “la”. ne [nous|vous] l’ a ~^[bcdfghjklmnpqrstvwxz] <<- /conf/ morph(\5, ":[123][sp]", ":[GQ]") -3:4>> la # Confusion probable. Pour un pronom objet féminin, écrivez “la”. |
︙ | ︙ | |||
9644 9645 9646 9647 9648 9649 9650 9651 9652 9653 9654 9655 9656 9657 | TEST: quel {{puis}} artésien ? TEST: de quel {{puis}} quantique parles-tu ? TEST: {{Puis de potentiel}} harmonique TEST: Beaucoup d’abord, ensuite plusieurs puis quelques-uns seulement. TEST: Il faut discrètement en creuser plusieurs puis arrêter aussitôt. TEST: Il vient tel quel puis semble avoir des doutes. TEST: avec un puis plusieurs autres. # quand / quant / qu’en __conf_quant_quand_qu_en__ quand à <<- /conf/ not morph(<1, ">(?:arriver|venir|à|revenir|partir|repartir|aller|de)/") and not after("^ +[mts]on tour[, ]") -1>> quant # Confusion probable. Quand = à quel moment. Quant à = à propos de.|https://fr.wiktionary.org/wiki/quant_%C3%A0 | > > > | 9650 9651 9652 9653 9654 9655 9656 9657 9658 9659 9660 9661 9662 9663 9664 9665 9666 | TEST: quel {{puis}} artésien ? TEST: de quel {{puis}} quantique parles-tu ? TEST: {{Puis de potentiel}} harmonique TEST: Beaucoup d’abord, ensuite plusieurs puis quelques-uns seulement. TEST: Il faut discrètement en creuser plusieurs puis arrêter aussitôt. TEST: Il vient tel quel puis semble avoir des doutes. TEST: avec un puis plusieurs autres. # quand / quant / qu’en __conf_quant_quand_qu_en__ quand à <<- /conf/ not morph(<1, ">(?:arriver|venir|à|revenir|partir|repartir|aller|de)/") and not after("^ +[mts]on tour[, ]") -1>> quant # Confusion probable. Quand = à quel moment. Quant à = à propos de.|https://fr.wiktionary.org/wiki/quant_%C3%A0 |
︙ | ︙ | |||
11215 11216 11217 11218 11219 11220 11221 | !! !! !!!! Adverbes de négation !! !! !! __neg_ne_manquant__ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | > > > | | | | | | | > | 11224 11225 11226 11227 11228 11229 11230 11231 11232 11233 11234 11235 11236 11237 11238 11239 11240 11241 11242 11243 11244 11245 11246 11247 11248 11249 11250 11251 11252 11253 11254 11255 11256 11257 11258 11259 11260 11261 11262 11263 11264 11265 11266 11267 11268 11269 11270 11271 11272 11273 11274 11275 11276 11277 11278 11279 11280 11281 11282 11283 11284 11285 11286 11287 11288 11289 11290 11291 11292 11293 | !! !! !!!! Adverbes de négation !! !! !! __neg_ne_manquant__ [<start>|,|(] je [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:1s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] tu [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:2s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [il|elle|on|iel] [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:3s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] nous [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:1p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] vous [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:2p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [ils|elles|iels] [le|la|l’|les|me|m’|te|t’|se|s’|nous|vous|lui|leur] @:3p¬:Ov [pas|rien|jamais|guère|point] <<- /neg/ -3>> ne \3 # Ne … \5 : il manque l’adverbe de négation. [<start>|,|(] [je|j’] [en|y] @:1s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] tu [en|y] @:2s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [il|elle|on|iel] [en|y] @:3s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] nous [en|y] @:1p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] vous [en|y] @:2p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [ils|elles|iels] [en|y] @:3p¬:Ov [pas|rien|jamais|guère|point] <<- /neg/ -3>> n’\3 # Ne … \5 : il manque l’adverbe de négation. [<start>|,|(] je [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y] @:1s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] tu [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y] @:2s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [il|elle|on|iel] [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y] @:3s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] nous [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y] @:1p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] vous [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y] @:2p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [ils|elles|iels] [me|m’|te|t’|se|s’|nous|vous] [le|la|l’|les|en|y] @:3p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] je [le|la|l’|les] [lui|leur|en|y] @:1s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] tu [le|la|l’|les] [lui|leur|en|y] @:2s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [il|elle|on|iel] [le|la|l’|les] [lui|leur|en|y] @:3s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] nous [le|la|l’|les] [lui|leur|en|y] @:1p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] vous [le|la|l’|les] [lui|leur|en|y] @:2p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [ils|elles|iels] [le|la|l’|les] [lui|leur|en|y] @:3p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] je [lui|leur] en @:1s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] tu [lui|leur] en @:2s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [il|elle|on|iel] [lui|leur] en @:3s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] nous [lui|leur] en @:1p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] vous [lui|leur] en @:2p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [ils|elles|iels] [lui|leur] en @:3p¬:Ov [pas|rien|jamais|guère|point] <<- /neg/ -3>> ne \3 # Ne … \6 : il manque l’adverbe de négation. [<start>|,|(] [je|j’] @:1s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] tu @:2s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [il|elle|on|iel] @:3s¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] nous @:1p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] vous @:2p¬:Ov [pas|rien|jamais|guère|point] [<start>|,|(] [ils|elles|iels] @:3p¬:Ov [pas|rien|jamais|guère|point] <<- /neg/ morph(\3, ">[aâeéêiîoôuœæ]") -3>> n’\3 # Ne … \4 : il manque l’adverbe de négation. <<- /neg/ __else__ -3>> ne \3 # Ne … \4 : il manque l’adverbe de négation. [<start>|,|(] [je|tu|il|elle|on|iel|nous|vous|ils|elles|iels] >avoir qu’ à <<- /neg/ -3>> n’\3 # Locution “n’avoir qu’à” : il manque l’adverbe de négation. TEST: __neg__ On {{a}} pas compris. ->> n’a TEST: __neg__ Il {{part}} pas encore. ->> ne part TEST: __neg__ On {{vous}} a pas compris. ->> ne vous TEST: __neg__ On {{en}} a pas. ->> n’en TEST: __neg__ Il {{y}} a jamais d’eau. ->> n’y TEST: __neg__ je {{deviendrai}} pas hargneux. ->> ne deviendrai TEST: __neg__ il {{le}} lui donne pas souvent. ->> ne le TEST: __neg__ il {{a}} qu’à venir demain ->> n’a !! !! !!!! Infinitif !! !! !! |
︙ | ︙ | |||
12114 12115 12116 12117 12118 12119 12120 | d’ ici ?[là|peu]¿ d’ ici peu de temps d’ ici quelques [secondes|minutes|heures|jours|mois|trimestres|semestres|années|décennies|siècles|millénaires] d’ intérêt général d’ ordinaire d’ origine [inconnue|douteuse|plébéienne|aristocratique] d’ ordre général | | | | 12127 12128 12129 12130 12131 12132 12133 12134 12135 12136 12137 12138 12139 12140 12141 12142 | d’ ici ?[là|peu]¿ d’ ici peu de temps d’ ici quelques [secondes|minutes|heures|jours|mois|trimestres|semestres|années|décennies|siècles|millénaires] d’ intérêt général d’ ordinaire d’ origine [inconnue|douteuse|plébéienne|aristocratique] d’ ordre général d’ où qu’ [il|elle|on|iel] vienne d’ où qu’ [ils|elles|iels] viennent d’ ouest en est d’ [ors|ores] et déjà d’ un autre côté d’ un [bout|jour] à l’ autre d’ un côté comme [de|d’] l’ autre d’ un commun accord d’ un pas [alerte|mesuré] |
︙ | ︙ | |||
12514 12515 12516 12517 12518 12519 12520 | jusqu’ à [mon|ton|son|notre|votre|leur] dernier souffle jusqu’ à [mon|ton|son|notre|votre|leur] dernier souffle [de|d’] vie jusqu’ à ce que mort s’ ensuive jusqu’ à ce que [j’|il|elle|on] en sache plus jusqu’ à ce que tu en saches plus jusqu’ à ce que nous en sachions plus jusqu’ à ce que vous en sachiez plus | | | 12527 12528 12529 12530 12531 12532 12533 12534 12535 12536 12537 12538 12539 12540 12541 | jusqu’ à [mon|ton|son|notre|votre|leur] dernier souffle jusqu’ à [mon|ton|son|notre|votre|leur] dernier souffle [de|d’] vie jusqu’ à ce que mort s’ ensuive jusqu’ à ce que [j’|il|elle|on] en sache plus jusqu’ à ce que tu en saches plus jusqu’ à ce que nous en sachions plus jusqu’ à ce que vous en sachiez plus jusqu’ à ce que [ils|elles|iels] en sachent plus jusque-là ?[de|d’]¿ là ?[de|d’]¿ là-bas ?[de|d’]¿ là-haut ?[de|d’]¿ là-dedans ?[de|d’]¿ là-dehors ?[de|d’]¿ là-derrière |
︙ | ︙ | |||
12686 12687 12688 12689 12690 12691 12692 | primo quand bien même quand bon [me|te|lui|nous|vous|leur] [semble|semblera|semblait] quant à [ça|cela|ceci] que [ça|ceci|cela] [me|te|lui|leur|nous|vous] plaise ou non que je [le|l’] veuille ou non que tu [le|l’] veuilles ou non | | | | 12699 12700 12701 12702 12703 12704 12705 12706 12707 12708 12709 12710 12711 12712 12713 12714 12715 12716 | primo quand bien même quand bon [me|te|lui|nous|vous|leur] [semble|semblera|semblait] quant à [ça|cela|ceci] que [ça|ceci|cela] [me|te|lui|leur|nous|vous] plaise ou non que je [le|l’] veuille ou non que tu [le|l’] veuilles ou non qu’ [il|elle|on|iel] [le|l’] veuille ou non que vous [le|l’] vouliez ou non que nous [le|l’] voulions ou non qu’ [ils|elles|iels] [le|l’] veuillent ou non qu’ à cela ne tienne quel qu’ en soit [le|l’] [moyen|prix|danger] quel qu’ en soit [le|l’] risque ?financier¿ quelle qu’ en soit la [cause|raison] quelque [part|temps] quelquefois quelques fois |
︙ | ︙ | |||
12736 12737 12738 12739 12740 12741 12742 | sans pour autant y prendre [garde|goût|gout] sans [me|te|lui|nous|vous|leur|y] prêter attention sans [que|qu’] je [le|l’] [sache|susse] sans [que|qu’] tu [le|l’] [saches|susses] sans [que|qu’] [il|elle|on|$:M] [le|l’] [sache|sût] sans [que|qu’] nous [le|l’] [sachions|sussions] sans [que|qu’] vous [le|l’] [sachiez|sussiez] | | | 12749 12750 12751 12752 12753 12754 12755 12756 12757 12758 12759 12760 12761 12762 12763 | sans pour autant y prendre [garde|goût|gout] sans [me|te|lui|nous|vous|leur|y] prêter attention sans [que|qu’] je [le|l’] [sache|susse] sans [que|qu’] tu [le|l’] [saches|susses] sans [que|qu’] [il|elle|on|$:M] [le|l’] [sache|sût] sans [que|qu’] nous [le|l’] [sachions|sussions] sans [que|qu’] vous [le|l’] [sachiez|sussiez] sans [que|qu’] [ils|elles|iels] [le|l’] [sachent|sussent] sans queue ni tête sans raison apparente sans vouloir [me|m’|te|t’|lui|nous|vous|leur] manquer de respect sans y [parvenir|réussir|réfléchir|songer|penser] sans y [réfléchir|songer|penser] à [deux|2] fois sans y faire attention sans y prendre [garde|goût|gout|ombrage] |
︙ | ︙ | |||
13306 13307 13308 13309 13310 13311 13312 | [plus|aussi] @:[AW] les [uns|unes] que les autres <<- ~3:0>> * pour autant [que|qu’] [je|il|elle|on] le sache pour autant [que|qu’] tu le saches pour autant [que|qu’] nous le sachions pour autant [que|qu’] vous le sachiez | | | | 13319 13320 13321 13322 13323 13324 13325 13326 13327 13328 13329 13330 13331 13332 13333 13334 13335 13336 13337 13338 13339 13340 | [plus|aussi] @:[AW] les [uns|unes] que les autres <<- ~3:0>> * pour autant [que|qu’] [je|il|elle|on] le sache pour autant [que|qu’] tu le saches pour autant [que|qu’] nous le sachions pour autant [que|qu’] vous le sachiez pour autant [que|qu’] [ils|elles|iels] le sachent <<- ~>> * pour autant [que|qu’] [je|il|elle|on] sache [,|@¬:Y|<end>] pour autant [que|qu’] tu saches [,|@¬:Y|<end>] pour autant [que|qu’] nous sachions [,|@¬:Y|<end>] pour autant [que|qu’] vous sachiez [,|@¬:Y|<end>] pour autant [que|qu’] [ils|elles|iels] sachent [,|@¬:Y|<end>] <<- ~1:5>> * pour cette raison [que|qu’] <<- ~1:3>> * pour les uns @:¬:[AQ].*:[me]:[pi] pour les autres @:¬:[AQ].*:[pi] |
︙ | ︙ | |||
13430 13431 13432 13433 13434 13435 13436 13437 13438 13439 13440 13441 13442 13443 | >cellule [de|d’] détention provisoire >centre d’ éducation [populaire|surveillée] >centre [de|d’] rétention ?[préventive|administrative]¿ >chair à [pâté|>canon] >chair [de|d’] poule >chambre à [coucher|gaz] >chambre [de|d’] [agriculture|hôte|hôtel|hôtes|commerce|compensation|décompression|dégrisement] [>chariot|>charriot] à [bagages|roulettes] >chasse à courre >chasse à l’ homme >chasse d’ eau >chasseur [de|d’] primes >chemin [de|d’] [traverse|fer] >chemise [de|d’] nuit | > | 13443 13444 13445 13446 13447 13448 13449 13450 13451 13452 13453 13454 13455 13456 13457 | >cellule [de|d’] détention provisoire >centre d’ éducation [populaire|surveillée] >centre [de|d’] rétention ?[préventive|administrative]¿ >chair à [pâté|>canon] >chair [de|d’] poule >chambre à [coucher|gaz] >chambre [de|d’] [agriculture|hôte|hôtel|hôtes|commerce|compensation|décompression|dégrisement] >chantier [de|d’] construction [>chariot|>charriot] à [bagages|roulettes] >chasse à courre >chasse à l’ homme >chasse d’ eau >chasseur [de|d’] primes >chemin [de|d’] [traverse|fer] >chemise [de|d’] nuit |
︙ | ︙ | |||
13465 13466 13467 13468 13469 13470 13471 13472 13473 13474 13475 13476 13477 13478 | >conférence [de|d’] presse >con comme la lune >con comme un balai >con comme une valise sans >poignée >conseiller d’ orientation [scolaire|professionnelle] >contrôle [de|d’] routine >convention [récepteur|générateur] >corbeille à >pain >corvéable à merci >coup [de|d’] [avance|balai|barre|bâton|bec|bélier|bite|blues|bol|botte|boule|boutoir|cœur|chaud|coude|couteau|dé|dent|déprime|éclat|épaule|épée|estoc|État|foudre|fil|froid|genou|grâce|>griffe|grisou|gueule|hache|hanche|jarnac|jeune|jus|klaxon|main|maître|maitre|marteau|massue|nostalgie|œil|patte|pied|poignard|poing|poker|pouce|pute|queue|rabot|rein|sabre|sabot|sang|savate|semonce|sifflet|soleil|surin|tête|théâtre|tonnerre|trique|torchon|vent|vieux] >coup [de|d’] baguette ?magique¿ >coup d’ épée dans l’ eau >coup d’ un soir >coup du sort | > | 13479 13480 13481 13482 13483 13484 13485 13486 13487 13488 13489 13490 13491 13492 13493 | >conférence [de|d’] presse >con comme la lune >con comme un balai >con comme une valise sans >poignée >conseiller d’ orientation [scolaire|professionnelle] >contrôle [de|d’] routine >convention [récepteur|générateur] >coque [de|d’] noix >corbeille à >pain >corvéable à merci >coup [de|d’] [avance|balai|barre|bâton|bec|bélier|bite|blues|bol|botte|boule|boutoir|cœur|chaud|coude|couteau|dé|dent|déprime|éclat|épaule|épée|estoc|État|foudre|fil|froid|genou|grâce|>griffe|grisou|gueule|hache|hanche|jarnac|jeune|jus|klaxon|main|maître|maitre|marteau|massue|nostalgie|œil|patte|pied|poignard|poing|poker|pouce|pute|queue|rabot|rein|sabre|sabot|sang|savate|semonce|sifflet|soleil|surin|tête|théâtre|tonnerre|trique|torchon|vent|vieux] >coup [de|d’] baguette ?magique¿ >coup d’ épée dans l’ eau >coup d’ un soir >coup du sort |
︙ | ︙ | |||
13499 13500 13501 13502 13503 13504 13505 | >donneur [de|d’] >leçon >dossier [de|d’] presse >droit comme un i >eau [de|d’] [bouleau|bleuet|chaux|coco|javel|jouvence|mer|parfum|pluie|seltz|source|vie] >eau [de|d’] noix [de|d’] coco >économie [de|d’] >bout [de|d’] >chandelle >éditeur [de|d’] presse | | | 13514 13515 13516 13517 13518 13519 13520 13521 13522 13523 13524 13525 13526 13527 13528 | >donneur [de|d’] >leçon >dossier [de|d’] presse >droit comme un i >eau [de|d’] [bouleau|bleuet|chaux|coco|javel|jouvence|mer|parfum|pluie|seltz|source|vie] >eau [de|d’] noix [de|d’] coco >économie [de|d’] >bout [de|d’] >chandelle >éditeur [de|d’] presse >effet [de|d’] bord >élément à charge >emploi du temps >enterrement [de|d’] vie [de|d’] garçon >enterrement [de|d’] vie [de|d’] jeune fille >entrée [de|d’] service >épée à deux mains >épingle à cravate |
︙ | ︙ | |||
13764 13765 13766 13767 13768 13769 13770 13771 13772 13773 13774 13775 13776 13777 13778 13779 13780 13781 13782 13783 13784 13785 13786 13787 13788 | >vecteur [>accélération|>position|>rotation|>vitesse] >véhicule [de|d’] location >vente à domicile >vente aux enchères >vérification [de|d’] routine vernis à ongles >verre à pied >voie [de|d’] [recours|perdition] >vol à l’ étalage >vol à la [sauvette|tire] >vol à main armée >volée [de|d’] bois vert >voiture [de|d’] location >zone [de|d’] confort >zone [de|d’] transit ?principal¿ <<- ~2:0>> * <<- =>> =select(\1, ":N") [daté+ses] du [1er|1ᵉʳ|1|01|2|02|3|03|4|04|5|05|6|06|7|07|8|08|9|09|10|11|12|13|14|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31] {mois} ?[prochain|passé|dernier|~^[0-9]{2,5}$]¿ >fou de rage ?[contenue|retenue]¿ >mort de trouille <<- ~2:0>> * [>homme|>femme|>cinéaste|>politicien|>acteur|>auteur|>sculpteur|>compositeur|>musicien|>groupe|>romancier|>peintre|>photographe|>sportif|>philosophe|>intellectuel|>polémiste] à succès [>homme|>femme] d’ >affaire à succès | > > | 13779 13780 13781 13782 13783 13784 13785 13786 13787 13788 13789 13790 13791 13792 13793 13794 13795 13796 13797 13798 13799 13800 13801 13802 13803 13804 13805 | >vecteur [>accélération|>position|>rotation|>vitesse] >véhicule [de|d’] location >vente à domicile >vente aux enchères >vérification [de|d’] routine vernis à ongles >verre à pied >virage à [*NUM|:B] degrés >voie [de|d’] [recours|perdition] >vol à l’ étalage >vol à la [sauvette|tire] >vol à main armée >volée [de|d’] bois vert >voiture [de|d’] location >zone [de|d’] confort >zone [de|d’] transit ?principal¿ <<- ~2:0>> * <<- =>> =select(\1, ":N") >court sur pattes [daté+ses] du [1er|1ᵉʳ|1|01|2|02|3|03|4|04|5|05|6|06|7|07|8|08|9|09|10|11|12|13|14|14|15|16|17|18|19|20|21|22|23|24|25|26|27|28|29|30|31] {mois} ?[prochain|passé|dernier|~^[0-9]{2,5}$]¿ >fou de rage ?[contenue|retenue]¿ >mort de trouille <<- ~2:0>> * [>homme|>femme|>cinéaste|>politicien|>acteur|>auteur|>sculpteur|>compositeur|>musicien|>groupe|>romancier|>peintre|>photographe|>sportif|>philosophe|>intellectuel|>polémiste] à succès [>homme|>femme] d’ >affaire à succès |
︙ | ︙ | |||
18211 18212 18213 18214 18215 18216 18217 | vous ?[ne|n’]¿ ?[nous|vous|les|le|la|l’]¿ ferrez $:Y <<- /conf/ not morph(<1, ":R") --2>> ferez # Confusion probable. Vous confondez le verbe “ferrer” avec le verbe “faire”. vous ?[ne|n’]¿ ?[nous|vous|les|le|la|l’]¿ ferriez $:Y <<- /conf/ not morph(<1, ":R") --2>> ferez # Confusion probable. Vous confondez le verbe “ferrer” avec le verbe “faire”. | | | | 18228 18229 18230 18231 18232 18233 18234 18235 18236 18237 18238 18239 18240 18241 18242 18243 18244 18245 | vous ?[ne|n’]¿ ?[nous|vous|les|le|la|l’]¿ ferrez $:Y <<- /conf/ not morph(<1, ":R") --2>> ferez # Confusion probable. Vous confondez le verbe “ferrer” avec le verbe “faire”. vous ?[ne|n’]¿ ?[nous|vous|les|le|la|l’]¿ ferriez $:Y <<- /conf/ not morph(<1, ":R") --2>> ferez # Confusion probable. Vous confondez le verbe “ferrer” avec le verbe “faire”. [ils|elles|iels] ?[ne|n’]¿ ?[nous|vous|les|le|la|l’]¿ ferront $:Y <<- /conf/ not morph(<1, ":R") --2>> feront # Confusion probable. Vous confondez le verbe “ferrer” avec le verbe “faire”. [ils|elles|iels] ?[ne|n’]¿ ?[nous|vous|les|le|la|l’]¿ ferraient $:Y <<- /conf/ not morph(<1, ":R") --2>> feraient # Confusion probable. Vous confondez le verbe “ferrer” avec le verbe “faire”. TEST: nous vous {{ferrons}} apparaître au générique TEST: nous vous {{ferrions}} prendre TEST: vous les {{ferrez}} pendre demain TEST: vous nous {{ferriez}} mourir de rire TEST: ils le {{ferront}} crever à petit feu |
︙ | ︙ | |||
18880 18881 18882 18883 18884 18885 18886 18887 18888 18889 18890 18891 18892 18893 18894 18895 18896 18897 18898 18899 18900 18901 18902 18903 | >coup de [>pâte|pat] <<- /conf/ -3>> patte # Confusion. Une pâte est une matière pâteuse. Pour désigner le membre d’un animal, écrivez “patte”. >retomber sur [mes|tes|ses|ces|nos|vos|leur|leurs] [>pâte|pat] <<- /conf/ --1>> pattes # Confusion. Une pâte est une matière pâteuse. Pour désigner le membre d’un animal, écrivez “patte”. TEST: Prépare la {{patte}} à tarte. TEST: Ils mangent souvent des {{pattes}} au thon. TEST: Des {{pattes}} alimentaires. TEST: Elles ont acheté de la {{patte}} à tartiner. TEST: La {{patte}} à pizza est plus épaisse que la pâte à crêpes. TEST: Elle adore la {{patte}} d’amande. TEST: Il est comme un coq en {{pattes}} là. TEST: Elle n’a jamais mis la main à la {{patte}}. TEST: donne-moi un coup de {{pâte}} TEST: elle retombe toujours sur ses {{pâtes}}. # péché / pêcher __conf_péché_pêcher2__ >pêcher par excès [de|d’] >pêcher par [insuffisance|omission|orgueil] <<- /conf/ -1>> pécher # Confusion : pêcher (capturer des poissons) ≠ pécher (faire un écart de conduite).|https://fr.wiktionary.org/wiki/p%C3%A9cher | > > > > | 18897 18898 18899 18900 18901 18902 18903 18904 18905 18906 18907 18908 18909 18910 18911 18912 18913 18914 18915 18916 18917 18918 18919 18920 18921 18922 18923 18924 | >coup de [>pâte|pat] <<- /conf/ -3>> patte # Confusion. Une pâte est une matière pâteuse. Pour désigner le membre d’un animal, écrivez “patte”. >retomber sur [mes|tes|ses|ces|nos|vos|leur|leurs] [>pâte|pat] <<- /conf/ --1>> pattes # Confusion. Une pâte est une matière pâteuse. Pour désigner le membre d’un animal, écrivez “patte”. >court sur [>pâte|pat] <<- /conf/ --1>> pattes # Confusion. Une pâte est une matière pâteuse. Pour désigner le membre d’un animal, écrivez “patte”. TEST: Prépare la {{patte}} à tarte. TEST: Ils mangent souvent des {{pattes}} au thon. TEST: Des {{pattes}} alimentaires. TEST: Elles ont acheté de la {{patte}} à tartiner. TEST: La {{patte}} à pizza est plus épaisse que la pâte à crêpes. TEST: Elle adore la {{patte}} d’amande. TEST: Il est comme un coq en {{pattes}} là. TEST: Elle n’a jamais mis la main à la {{patte}}. TEST: donne-moi un coup de {{pâte}} TEST: elle retombe toujours sur ses {{pâtes}}. TEST: il est court sur {{pâtes}} # péché / pêcher __conf_péché_pêcher2__ >pêcher par excès [de|d’] >pêcher par [insuffisance|omission|orgueil] <<- /conf/ -1>> pécher # Confusion : pêcher (capturer des poissons) ≠ pécher (faire un écart de conduite).|https://fr.wiktionary.org/wiki/p%C3%A9cher |
︙ | ︙ | |||
18992 18993 18994 18995 18996 18997 18998 18999 19000 19001 19002 19003 19004 19005 | TEST: la petite anecdote {{peu}} nous nuire. TEST: l’école primaire {{peu}} espérer recevoir de nouveaux moyens cette année TEST: un sale voyou {{peu}} {{marquer}} TEST: une petite personne {{peu}} {{inspirer}} TEST: mon meilleur ami {{peu}} {{remarquer}} par les profs TEST: L’ouvrage décrit très peu les divers modes d’actions. # peut-être / peut être __conf_peut_être2__ *WORD peut être <<- /conf/ space_after(\2, 1, 1) and morph(\1, ":V", ":[NAQGM]") -2:3>> peut-être # Confusion probable. Pour dire “possiblement”, écrivez “peut-être”. <start> peut être | > > > > > > > > > > > > | 19013 19014 19015 19016 19017 19018 19019 19020 19021 19022 19023 19024 19025 19026 19027 19028 19029 19030 19031 19032 19033 19034 19035 19036 19037 19038 | TEST: la petite anecdote {{peu}} nous nuire. TEST: l’école primaire {{peu}} espérer recevoir de nouveaux moyens cette année TEST: un sale voyou {{peu}} {{marquer}} TEST: une petite personne {{peu}} {{inspirer}} TEST: mon meilleur ami {{peu}} {{remarquer}} par les profs TEST: L’ouvrage décrit très peu les divers modes d’actions. __conf_qui_peu_vinfi__ qui peu [ne|n’|me|m’|te|t’|se|s’] qui peu [le|la|l’|les|en|nous|vous|lui|leur|y] $:Y qui peu [nous|vous] [le|la|l’|les|en|y] $:Y qui peu [le|la|l’|les] [lui|leur|en|y] $:Y qui peu [lui|leur|y] en $:Y qui peu $:Y <<- /conf/ -2>> peut # Confusion : le verbe pouvoir à la 3ᵉ personne du singulier s’écrit “peut”. TEST: c’est tout le système qui {{peu}} vaciller ->> peut # peut-être / peut être __conf_peut_être2__ *WORD peut être <<- /conf/ space_after(\2, 1, 1) and morph(\1, ":V", ":[NAQGM]") -2:3>> peut-être # Confusion probable. Pour dire “possiblement”, écrivez “peut-être”. <start> peut être |
︙ | ︙ | |||
19081 19082 19083 19084 19085 19086 19087 | <<- /conf/ --1>> puits # Confusion. Si vous parlez d’un trou fait pour puiser quelque chose (ou pour amener quelque chose), écrivez “puits”.|https://fr.wiktionary.org/wiki/puits TEST: Forage de son {{puis}} prévu demain TEST: Creuser un {{puis}}, pas si compliqué | | | > > | > > > > > > > > > > | 19114 19115 19116 19117 19118 19119 19120 19121 19122 19123 19124 19125 19126 19127 19128 19129 19130 19131 19132 19133 19134 19135 19136 19137 19138 19139 19140 19141 19142 19143 19144 | <<- /conf/ --1>> puits # Confusion. Si vous parlez d’un trou fait pour puiser quelque chose (ou pour amener quelque chose), écrivez “puits”.|https://fr.wiktionary.org/wiki/puits TEST: Forage de son {{puis}} prévu demain TEST: Creuser un {{puis}}, pas si compliqué # qu’à / cas / ca __conf_qu_à_cas__ n’ >avoir [cas|qua|ca] <<- /conf/ --1>> qu’à # Confusion. Locution : “n’avoir qu’à…” équivalente à “il suffit de…”. L’ensemble “qu’à” est la contraction de “que” suivi de la préposition verbale “à”.|https://fr.wiktionary.org/wiki/n%E2%80%99avoir_qu%E2%80%99%C3%A0 >avoir [cas|qua|ca] [ne|n’|me|m’|te|t’|se|s’] >avoir [cas|qua|ca] [le|la|l’|les|en|nous|vous|lui|leur|y] $:Y >avoir [cas|qua|ca] [nous|vous] [le|la|l’|les|en|y] $:Y >avoir [cas|qua|ca] [le|la|l’|les] [lui|leur|en|y] $:Y >avoir [cas|qua|ca] [lui|leur|y] en $:Y >avoir [cas|qua|ca] $:Y <<- /conf/ not value(<1, "|n’|") -2>> qu’à # Confusion. Locution : “n’avoir qu’à…” équivalente à “il suffit de…”. L’ensemble “qu’à” est la contraction de “que” suivi de la préposition verbale “à”.|https://fr.wiktionary.org/wiki/n%E2%80%99avoir_qu%E2%80%99%C3%A0 TEST: elles n’ont {{ca}} nous laisser tranquilles ->> qu’à TEST: ils ont {{qua}} s’en prendre à eux-mêmes ->> qu’à TEST: tu n’as {{cas}} prendre le train # quand même / comme même __conf_quand_même__ comme même [<end>|,] comme même @:(?:Os|C) |
︙ | ︙ | |||
25080 25081 25082 25083 25084 25085 25086 | <start> si nous >avoir $:Q $:D $:N ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <<- /vmode/ morph(\4, ":K") -4>> =suggVerbTense(\4, ":Iq", ":1p") # N’utilisez pas le conditionnel, mais l’imparfait. Exemple : « Si nous avions perdu, nous aurions recommencé. » <start> si vous >avoir $:Q ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <start> si vous >avoir $:Q $:D $:N ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <<- /vmode/ morph(\4, ":K") -4>> =suggVerbTense(\4, ":Iq", ":2p") # N’utilisez pas le conditionnel, mais l’imparfait. Exemple : « Si vous aviez perdu, vous auriez recommencé. » | | | | 25125 25126 25127 25128 25129 25130 25131 25132 25133 25134 25135 25136 25137 25138 25139 25140 | <start> si nous >avoir $:Q $:D $:N ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <<- /vmode/ morph(\4, ":K") -4>> =suggVerbTense(\4, ":Iq", ":1p") # N’utilisez pas le conditionnel, mais l’imparfait. Exemple : « Si nous avions perdu, nous aurions recommencé. » <start> si vous >avoir $:Q ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <start> si vous >avoir $:Q $:D $:N ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <<- /vmode/ morph(\4, ":K") -4>> =suggVerbTense(\4, ":Iq", ":2p") # N’utilisez pas le conditionnel, mais l’imparfait. Exemple : « Si vous aviez perdu, vous auriez recommencé. » <start> [si|s’] [ils|elles|iels] >avoir $:Q ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <start> [si|s’] [ils|elles|iels] >avoir $:Q $:D $:N ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <<- /vmode/ morph(\4, ":K") -4>> =suggVerbTense(\4, ":Iq", ":3p") # N’utilisez pas le conditionnel, mais l’imparfait. Exemple : « Si elles avaient perdu, elles auraient recommencé. » <start> si [le|la|l’|un|une|ce|cet|cette|mon|ton|son|notre|votre|leur] @:[NA].*:[si] >avoir $:Q ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <start> si [le|la|l’|un|une|ce|cet|cette|mon|ton|son|notre|votre|leur] @:[NA].*:[si] >avoir $:Q $:D $:N ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K <<- /vmode/ morph(\5, ":K") -5>> =suggVerbTense(\5, ":Iq", ":3s") # N’utilisez pas le conditionnel, mais l’imparfait. Exemple : « S’il avait perdu, il aurait recommencé. » <start> si [les|des|ces|mes|tes|ses|nos|vos|leurs|quelques|plusieurs|certains|certaines] @:[NA].*:[pi] >avoir $:Q ?,¿ [je|j’|tu|il|on|elle|nous|ce|vous|ils|elles|iel|iels] $:K |
︙ | ︙ |
Modified helpers.py from [871d0d4238] to [9aa31c58b5].
︙ | ︙ | |||
58 59 60 61 62 63 64 | "make an empty folder or erase its content if not empty" if not os.path.exists(sp): os.makedirs(sp, exist_ok=True) else: eraseFolder(sp) | | | > > > > > > | > | | 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | "make an empty folder or erase its content if not empty" if not os.path.exists(sp): os.makedirs(sp, exist_ok=True) else: eraseFolder(sp) def copyFolder (spSrc, spDst): "copy folder content from src to dst" try: shutil.copytree(spSrc, spDst) except OSError as e: if e.errno == errno.ENOTDIR: shutil.copy(spSrc, spDst) else: print("Error while copying folder <"+spSrc+"> to <"+spDst+">.") def moveFolderContent (spSrc, spDst, sPrefix="", bLog=False): "move folder content from <spSrc> to <spDst>: if files already exist in <spDst>, they are replaced. (not recursive)" try: if not os.path.isdir(spSrc): print("Folder <"+spSrc+"> not found. Can’t move files.") return if not os.path.isdir(spDst): print("Folder <"+spDst+"> not found. Can’t move files.") return for sf in os.listdir(spSrc): spfSrc = os.path.join(spSrc, sf) if os.path.isfile(spfSrc): spfDst = os.path.join(spDst, sPrefix + sf) shutil.move(spfSrc, spfDst) if bLog: print("file <" + spfSrc + "> moved to <"+spfDst+">") except Error as e: print("Error while moving folder <"+spSrc+"> to <"+spDst+">.") print(e) def fileFile (spf, dVars): "return file <spf> as a text filed with variables from <dVars>" return Template(open(spf, "r", encoding="utf-8").read()).safe_substitute(dVars) |
︙ | ︙ |