Overview
Comment: | [fr] ajustements |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk | fr |
Files: | files | file ages | folders |
SHA3-256: |
86f3ad46f8a638888b70895fa5b4d218 |
User & Date: | olr on 2020-02-19 16:33:54 |
Other Links: | manifest | tags |
Context
2020-02-29
| ||
10:03 | [fr] ajustements check-in: dd45484a6e user: olr tags: trunk, fr | |
2020-02-19
| ||
16:33 | [fr] ajustements check-in: 86f3ad46f8 user: olr tags: trunk, fr | |
2020-02-18
| ||
00:21 | [fr] typo nombres romains (annulée), +ajustements check-in: c5e22a2cb4 user: olr tags: trunk, fr | |
Changes
Modified gc_lang/fr/rules.grx from [99f4eb211e] to [d07fc36f0c].
1 2 3 4 | # # RÈGLES DE GRAMMAIRE FRANÇAISE POUR GRAMMALECTE # par Olivier R. # | | < < < > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | # # RÈGLES DE GRAMMAIRE FRANÇAISE POUR GRAMMALECTE # par Olivier R. # # Copyright © 2011-2020. # # This file is part of Grammalecte. # # Grammalecte is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # Grammalecte is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Grammalecte. If not, see <http://www.gnu.org/licenses/> # # DOCUMENTATION # [++] : séparateur des règles pour le paragraphe et des règles pour la phrase. # Types d’action: # ->> erreur # ~>> préprocesseur de texte # =>> désambiguïsateur # RÈGLES PAR EXPRESSIONS RÉGULIÈRES # Expressions régulières en Python : http://docs.python.org/library/re.html # Groups positioning code for JavaScript: # Always begins by @@ # 0 ... n left boundary position from left # $ right boundary # w word boundaries # * something somewhere # ** something somewhere after previous group # >x:_ within group x, _ is group position code within group x # Fin d’interprétation du fichier avec une ligne commençant par #END # ERREURS COURANTES # http://fr.wikipedia.org/wiki/Wikip%C3%A9dia:Fautes_d%27orthographe/Courantes !! !! |
︙ | ︙ | |||
1464 1465 1466 1467 1468 1469 1470 | ## Trait d’union conditionnel __[i]/ocr(tu_trait_union_conditionnel)__ ({w1})‑({w1}) @@0,$ <<- ->> \1\2|\1-\2 # Trait d’union conditionnel. Erreur de numérisation ? TEST: __ocr__ c’est {{anti‑américain}} | < < < < < < < < < < < < < < | 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 | ## Trait d’union conditionnel __[i]/ocr(tu_trait_union_conditionnel)__ ({w1})‑({w1}) @@0,$ <<- ->> \1\2|\1-\2 # Trait d’union conditionnel. Erreur de numérisation ? TEST: __ocr__ c’est {{anti‑américain}} ## Caractères rares __<s>/ocr(ocr_caractères_rares)__ \w*[{}<>&*#£]+\w* <<- \0 != "<" and \0 != ">" ->> _ # Erreur de numérisation ? Cette chaîne contient un caractère de fréquence rare. __<s>/ocr(ocr_doublons_caractères_rares)__ |
︙ | ︙ | |||
1986 1987 1988 1989 1990 1991 1992 | 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"]) plein [de|d’] @:[AN] | | | 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 | 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"]) 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 <<- ~>> ␣ <<- =>> define(\1, [":A:e:i"]) |
︙ | ︙ | |||
2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 | ## lettres isolées __ocr_lettres_isolées__ [n|m|t|s|j|l|c|ç|d] *WORD <<- /ocr/ re.search("^[aâeéèêiîouyh]", \2) -1:.2>> \1’ # Lettre isolée. Erreur de numérisation ? TEST: __ocr__ {{J }}arrive demain # virgules __ocr_virgules__ [il|le|la|l’|les|de|d’|ne|n’|me|m’|te|t’|se|s’|à|ce|cet|cette|mon|ma|ta|sa|mes|tes|ses|nos|vos|quelque|quelques|au|aux] , <<- /ocr/ space_after(\1, 0, 0) and not \1.isupper() or value(\1, "|à|") ->> \1 # Erreur de numérisation ? Virgule superflue ? TEST: __ocr__ Pierre entre pour {{se,}} rapprocher de L | > > > > > > > > > > > > > > > | 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 | ## lettres isolées __ocr_lettres_isolées__ [n|m|t|s|j|l|c|ç|d] *WORD <<- /ocr/ re.search("^[aâeéèêiîouyh]", \2) -1:.2>> \1’ # Lettre isolée. Erreur de numérisation ? TEST: __ocr__ {{J }}arrive demain # Note: l’option “mapos” cherche les apostrophes manquantes après les lettres l, d, n, m, t, s, j, c, ç __ocr_lettres_isolées2!2__ [á|â|ä|b|c|ç|d|e|é|è|ê|ë|f|g|h|i|í|ì|î|ï|j|k|l|m|n|o|ó|ò|ô|ö|p|q|r|s|t|u|ú|ù|û|ü|v|w|x|z] <<- not before("\\d[ ]+$") and not (\1.isupper() and value(>1, "|.|<end>|")) ->> _ # Lettre isolée : erreur de numérisation ? TEST: __ocr__ des verres luisent sur {{i}} le bureau blanc. TEST: __ocr__ la voix, {{e}} est celle de… TEST: __ocr__ ressemble {{h}} une fenêtre de serre. TEST: __ocr__ Ça a duré 3 h. TEST: __ocr__ c’est alors que je suis fort. TEST: __ocr__ X TEST: __ocr__ V. # virgules __ocr_virgules__ [il|le|la|l’|les|de|d’|ne|n’|me|m’|te|t’|se|s’|à|ce|cet|cette|mon|ma|ta|sa|mes|tes|ses|nos|vos|quelque|quelques|au|aux] , <<- /ocr/ space_after(\1, 0, 0) and not \1.isupper() or value(\1, "|à|") ->> \1 # Erreur de numérisation ? Virgule superflue ? TEST: __ocr__ Pierre entre pour {{se,}} rapprocher de L |
︙ | ︙ | |||
12977 12978 12979 12980 12981 12982 12983 12984 12985 12986 12987 12988 12989 12990 | pour les uns @:¬:[AQ].*:[me]:[pi] pour les autres @:¬:[AQ].*:[pi] <<- ~1:3>> * [le|un|ce|mon|ton|son] putain [de|d’] @:[NA].*:[me] <<- ~2:3>> * tambour battant tambours battants <<- morph(<1, ":(?:V|N:f)", ":G") ~>> * tête baissée <<- morph(<1, ":[NV]", ":D.*:[fe]:[si]") ~>> * | > > > | 12979 12980 12981 12982 12983 12984 12985 12986 12987 12988 12989 12990 12991 12992 12993 12994 12995 | pour les uns @:¬:[AQ].*:[me]:[pi] pour les autres @:¬:[AQ].*:[pi] <<- ~1:3>> * [le|un|ce|mon|ton|son] putain [de|d’] @:[NA].*:[me] <<- ~2:3>> * quand même @:[AW]¬:D <<- ~1:2>> * tambour battant tambours battants <<- morph(<1, ":(?:V|N:f)", ":G") ~>> * tête baissée <<- morph(<1, ":[NV]", ":D.*:[fe]:[si]") ~>> * |
︙ | ︙ | |||
13691 13692 13693 13694 13695 13696 13697 | >avoir ?[pas|jamais|plus|guère|point]¿ un [moment|instant] >avoir ?[pas|jamais|plus|guère|point]¿ un minimum >avoir ?[pas|jamais|plus|guère|point]¿ un peu >avoir ?[pas|jamais|plus|guère|point]¿ un petit peu >avoir ?[pas|jamais|plus|guère|point]¿ un tout petit peu <<- morph(>1, ":[QY]") ~2:0>> * | | | | | 13696 13697 13698 13699 13700 13701 13702 13703 13704 13705 13706 13707 13708 13709 13710 13711 13712 13713 13714 13715 13716 13717 13718 13719 13720 13721 13722 13723 13724 13725 13726 13727 13728 13729 13730 13731 | >avoir ?[pas|jamais|plus|guère|point]¿ un [moment|instant] >avoir ?[pas|jamais|plus|guère|point]¿ un minimum >avoir ?[pas|jamais|plus|guère|point]¿ un peu >avoir ?[pas|jamais|plus|guère|point]¿ un petit peu >avoir ?[pas|jamais|plus|guère|point]¿ un tout petit peu <<- morph(>1, ":[QY]") ~2:0>> * >avoir [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent] >avoir bon [dos|fond] >avoir bon pied ?,¿ bon œil >avoir carte blanche >avoir forme [humaine|animale] >avoir partie [gagnée|liée] >avoir voix au chapitre <<- ~2:0>> ␣ <<- =>> define(\2, [":LV"]) >avoir [pas|jamais|plus|guère|point] [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent] >avoir [pas|jamais|plus|guère|point] bon [dos|fond] >avoir [pas|jamais|plus|guère|point] bon pied ?,¿ bon œil >avoir [pas|jamais|plus|guère|point] carte blanche >avoir [pas|jamais|plus|guère|point] forme [humaine|animale] >avoir [pas|jamais|plus|guère|point] partie [gagnée|liée] >avoir [pas|jamais|plus|guère|point] quartier libre >avoir [pas|jamais|plus|guère|point] voix au chapitre <<- ~3:0>> ␣ <<- =>> define(\3, [":LV"]) >avoir ?[pas|jamais|plus|guère|point]¿ [tous|toutes] les $:B [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent] >avoir ?[pas|jamais|plus|guère|point]¿ [tous|toutes] les $:B @:(?:Q|V1.*:Y) <<- ~2:-2>> * n’ >avoir que $:Q <<- ~3>> * n’ >avoir que $:W $:Q |
︙ | ︙ | |||
13744 13745 13746 13747 13748 13749 13750 | /VCint ?[pas|jamais|plus|guère|point]¿ un [moment|instant] /VCint ?[pas|jamais|plus|guère|point]¿ un minimum /VCint ?[pas|jamais|plus|guère|point]¿ un peu /VCint ?[pas|jamais|plus|guère|point]¿ un petit peu /VCint ?[pas|jamais|plus|guère|point]¿ un tout petit peu <<- morphVC(\1, ":V0a") and morph(>1, ":[QY]") ~2:0>> * | | | | | 13749 13750 13751 13752 13753 13754 13755 13756 13757 13758 13759 13760 13761 13762 13763 13764 13765 13766 13767 13768 13769 13770 13771 13772 13773 13774 13775 13776 13777 13778 13779 13780 13781 13782 13783 13784 | /VCint ?[pas|jamais|plus|guère|point]¿ un [moment|instant] /VCint ?[pas|jamais|plus|guère|point]¿ un minimum /VCint ?[pas|jamais|plus|guère|point]¿ un peu /VCint ?[pas|jamais|plus|guère|point]¿ un petit peu /VCint ?[pas|jamais|plus|guère|point]¿ un tout petit peu <<- morphVC(\1, ":V0a") and morph(>1, ":[QY]") ~2:0>> * /VCint [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent] /VCint bon [dos|fond] /VCint bon pied ?,¿ bon œil /VCint carte blanche /VCint forme [humaine|animale] /VCint partie [gagnée|liée] /VCint voix au chapitre <<- morphVC(\1, ":V0a") ~2:0>> ␣ <<- __also__ =>> define(\2, [":LV"]) /VCint [pas|jamais|plus|guère|point] [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent] /VCint [pas|jamais|plus|guère|point] bon [dos|fond] /VCint [pas|jamais|plus|guère|point] bon pied ?,¿ bon œil /VCint [pas|jamais|plus|guère|point] carte blanche /VCint [pas|jamais|plus|guère|point] forme [humaine|animale] /VCint [pas|jamais|plus|guère|point] partie [gagnée|liée] /VCint [pas|jamais|plus|guère|point] quartier libre /VCint [pas|jamais|plus|guère|point] voix au chapitre <<- morphVC(\1, ":V0a") ~3:0>> ␣ <<- __also__ =>> define(\3, [":LV"]) /VCint ?[pas|jamais|plus|guère|point]¿ [tous|toutes] les $:B [besoin|confiance|connaissance|conscience|crainte|envie|faim|honte|peur|peine|pitié|soif|vent] /VCint ?[pas|jamais|plus|guère|point]¿ [tous|toutes] les $:B @:(?:Q|V1.*:Y) <<- morphVC(\1, ":V0a") ~2:-2>> * __purge_après_verbe__ $:V ?pas¿ jour et nuit $:V ?pas¿ nuit et jour |
︙ | ︙ | |||
19560 19561 19562 19563 19564 19565 19566 19567 19568 19569 19570 19571 19572 19573 | TEST: C’est sans {{attaqué}} la journée. TEST: sans nous {{chassez}} de chez lui TEST: sans {{dérogez}} aux règles en vigueur dans cet établissement TEST: Il faut être sans préjugés. TEST: je craignais d’être pour toujours abandonnée !!!! Participes présents !! __conj_participe_présent__ [ne|lui|me|te|se|nous|vous] ~ants$ <<- /infi/ morph(\2, ":A") -2>> =\2[:-1] # Un participe présent est invariable.|http://fr.wiktionary.org/wiki/participe_pr%C3%A9sent | > > > > > > > | 19565 19566 19567 19568 19569 19570 19571 19572 19573 19574 19575 19576 19577 19578 19579 19580 19581 19582 19583 19584 19585 | TEST: C’est sans {{attaqué}} la journée. TEST: sans nous {{chassez}} de chez lui TEST: sans {{dérogez}} aux règles en vigueur dans cet établissement TEST: Il faut être sans préjugés. TEST: je craignais d’être pour toujours abandonnée __infi_locutions__ >sentir le vent tourné <<- /infi/ --1>> tourner # Locution “sentir le vent tourner ”. Utilisez l’infinitif. TEST: j’ai senti le vent {{tourné}} TEST: elles sentent le vent tourner en leur faveur. !!!! Participes présents !! __conj_participe_présent__ [ne|lui|me|te|se|nous|vous] ~ants$ <<- /infi/ morph(\2, ":A") -2>> =\2[:-1] # Un participe présent est invariable.|http://fr.wiktionary.org/wiki/participe_pr%C3%A9sent |
︙ | ︙ | |||
22281 22282 22283 22284 22285 22286 22287 22288 22289 22290 22291 22292 22293 22294 | TEST: Notez le peu de cas qui en est fait en général dans les médias TEST: deux fois par an, souligne le Dr Assouline TEST: Pesons le pour et le contre. TEST: Va la demander au concierge. TEST: Allons le questionner encore une fois. TEST: Sois le pire des salopards. TEST: L’Astrance brille de mille feux, écrit le Michelin 2010. __imp_union_en__ *WORD en <<- /imp/ space_after(\1, 1, 1) and morph(\1, ":E", ":[GM]|>(?:venir|aller|partir)/") and morph(>1, ":|<end>|>,", ":(?:N|A|Q|Y|M|P|H|T|D|Ov)|>(?:pour|plus|moins|mieux|peu|plupart|trop|très|une?)/") and morph(<1, ":Cc|<start>|>,") ->> \1-\2 # S’il s’agit d’un impératif, mettez un trait d’union.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4206 | > | 22293 22294 22295 22296 22297 22298 22299 22300 22301 22302 22303 22304 22305 22306 22307 | TEST: Notez le peu de cas qui en est fait en général dans les médias TEST: deux fois par an, souligne le Dr Assouline TEST: Pesons le pour et le contre. TEST: Va la demander au concierge. TEST: Allons le questionner encore une fois. TEST: Sois le pire des salopards. TEST: L’Astrance brille de mille feux, écrit le Michelin 2010. TEST: Faites le plein de culture en vous abonnant dès 1 € ! __imp_union_en__ *WORD en <<- /imp/ space_after(\1, 1, 1) and morph(\1, ":E", ":[GM]|>(?:venir|aller|partir)/") and morph(>1, ":|<end>|>,", ":(?:N|A|Q|Y|M|P|H|T|D|Ov)|>(?:pour|plus|moins|mieux|peu|plupart|trop|très|une?)/") and morph(<1, ":Cc|<start>|>,") ->> \1-\2 # S’il s’agit d’un impératif, mettez un trait d’union.|http://bdl.oqlf.gouv.qc.ca/bdl/gabarit_bdl.asp?id=4206 |
︙ | ︙ |