Grammalecte  Check-in [c43c446a59]

Overview
Comment:merge trunk
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | multid
Files: files | file ages | folders
SHA3-256: c43c446a59df13f923b4da519e1f1cc68f733b2ea4666e3c542fad36a17fe3f8
User & Date: olr on 2018-03-02 13:00:15
Other Links: branch diff | manifest | tags
Context
2018-03-02
14:59
[fx] main panel: conjugueur button + new logo check-in: e1b18c2783 user: olr tags: fx, multid
13:00
merge trunk check-in: c43c446a59 user: olr tags: multid
12:37
[fr] faux positif: quelqu’un lire check-in: 328b580ec1 user: olr tags: fr, trunk
2018-02-28
18:43
[lo] use user dictionary check-in: 3879004037 user: olr tags: lo, multid
Changes

Modified gc_lang/fr/rules.grx from [d209c32a20] to [dd5439265c].

  2008   2008   __[i](d_tu_verbe)__
  2009   2009       tu +(?:l(?:es? +|la +|’)|[nv]ous +|)({w_1}) @@$
  2010   2010       <<- morph(word(-1), ":Cs", False, True) and not morph(\1, ":(?:Oo|X)", False) =>> select(\1, ":[123][sp]")
  2011   2011   __[s](d_nom_propre_verbe)__
  2012   2012       ([A-ZÉÈ]{w_1}) +({w_1})  @@0,$
  2013   2013       <<- morph(\1, ":M") and \2.islower() and morphex(\2, ":[123][sg]", ":Q") and morph(\2, ":N", False) and morph(word(-1), ":Cs", False, True)
  2014   2014       =>> select(\2, ":[123][sp]")
         2015  +    <<- morph(\1, ":M", False) and morphex(\2, ":[123]s|>(?:[nmts]e|nous|vous) ", ":A") and isStart() =>> =select(\1, ":M")
  2015   2016   __[i](d_que_combien_pourquoi_en_y_verbe)__
  2016   2017       (?:que?|combien|pourquoi) +(?:en +|y +|)({w_3}) @@$
  2017   2018       <<- =>> exclude(\1, ":E")
  2018   2019   
  2019   2020   # groupe nominal
  2020   2021   __[i](d_aucun_non_verbe)__
  2021   2022       aucun +({w_4}) @@$
................................................................................
  4913   4914   __[i](p_demain)__               (?:après-|avant |)demain(?: matin| soir| après-midi|) <<- ~>> *
  4914   4915   __[i](p_don_Juan)__             (don) Juan @@0 <<- ~1>> *
  4915   4916   __[i](p_du_même_ordre_coup)__   du même (?:ordre|coup) <<- ~>> *
  4916   4917   __[i](p_en_nombre_années)__     en \d\d+(?: ans| années|) <<- ~>> *
  4917   4918   __[i](p_en_cours)__             en cours(?! d[e’]) <<- ~>> *
  4918   4919   __[i](p_en_pronom)__            en (?:[mt]oi|eux|elles?) <<- ~>> *
  4919   4920   __[i](p_en_qqch1)__             en (?:aparté|apparence|arrière|avance|avant|cachette|ceci|cela|clair|commun|conséquence|continu|contrepartie|définitive|détail|direct|douce|effet|émoi|filigrane|général|goguette|hâte|majorité|outre|pâmoison|parallèle|partie|particulier|permanence|personne|pratique|prime|privé|principe|priorité|public|réalité|retour|revanche|rien|rogne|route|secret|silence|somme|suspens|théorie|trompe-l’œil|vain|vérité|ville|vitesse) <<- ~>> *
  4920         -__[i](p_en_qqch2)__             en (?:aucun(?: cas|e (?:circonstance|façon|manière))|bon(?: état|ne (?:compagnie|et due forme|posture|santé(?: physique| mentale|)|voie))|bout de course|cas d(?:e (?:besoin|doute)|’urgence)|chacune? d(?:e [nv]ous|’(?:eux|elles))|chair et en os|chute libre|comparution immédiate|connaissance de cause|coupe réglée|cours de route|d’autres (?:circonstances|termes|temps)|de telles circonstances|début d(?:e (?:journée|matinée|soirée)|’après-midi)|définitive|dehors de (?:tout|)(?:ça|cela|ceci)|dents de scie|dernier (?:lieu|recours|ressort)|désespoir de cause|détention provisoire|direction d(?:u (?:nord|sud)(?:-est|-ouest|)|e l’(?:est|ouest))|état (?:de (?:choc(?: circulatoire|)|marche)|d’ébriété(?: avancée|))|excellent état|file indienne|fin d(?:e (?:compte|journée|matinée|soirée)|’après-midi)|forte (?:baisse|hausse)|gage de bonne foi|garde à vue(?: prolongée|)|grand(?: nombre|e (?:difficulté|majorité|partie|pompe))|haut lieu|l’occurrence|lieu sûr|ligne de (?:compte|mire)|mains propres|mauvais(?: état|e (?:posture|santé))|même temps|milieu d(?:e (?:journée|matinée|soirée)|’après-midi)|nombre (?:plus que |)suffisant|partant de zéro|plein(?: air| cœur| jour|e (?:gueule|figure|forme|poire|nuit|tronche))|perte de vitesse|peu de temps|piteux état|point de mire|position de (?:force|faiblesse)|premi(?:er lieu|ère (?:instance|ligne))|pure perte|quantité (?:plus que |)suffisante|quelque sorte|queue de peloton|rangs serrés|rase campagne|règle générale|roue libre|sens inverse|si peu de temps|sous-main|tête à tête|temps (?:et en heure|normal|opportun|ordinaire|utile|voulu)|termes choisis|toile de fond|tous (?:les cas|sens)|tout (?:bien tout honneur|cas|genre|lieu|et pour tout|état de cause|premier lieu|sens|temps)|toute(?: (?:bonne foi|circonstance|connaissance de cause|confiance|discrétion|franchise|hâte|impartialité|impunité|innocence|légalité|liberté|logique|sécurité|simplicité)|s circonstances)|un (?:clin d’œil|rien de temps)|une autre occasion|vase clos|voie de développement|y réfléchissant bien) <<- ~>> *
         4921  +__[i](p_en_qqch2)__             en (?:aucun(?: cas|e (?:circonstance|façon|manière))|bon(?: état|ne (?:compagnie|et due forme|posture|santé(?: physique| mentale|)|voie))|bout de course|cas d(?:e (?:besoin|doute)|’urgence)|chacune? d(?:e [nv]ous|’(?:eux|elles))|chair et en os|chute libre|comparution immédiate|connaissance de cause|coupe réglée|cours de route|d’autres (?:circonstances|termes|temps)|de telles circonstances|début d(?:e (?:journée|matinée|soirée)|’après-midi)|définitive|dehors de (?:tout|)(?:ça|cela|ceci)|dents de scie|dernier (?:lieu|recours|ressort)|désespoir de cause|détention provisoire|direction d(?:u (?:nord|sud)(?:-est|-ouest|)|e l’(?:est|ouest))|état (?:de (?:choc(?: circulatoire|)|marche)|d’ébriété(?: avancée|))|excellent état|file indienne|fin d(?:e (?:compte|journée|matinée|soirée)|’après-midi)|forte (?:baisse|hausse)|gage de bonne foi|garde à vue(?: prolongée|)|grand(?: nombre|e (?:difficulté|majorité|partie|pompe))|haut lieu|l’occurrence|lieu sûr|ligne de (?:compte|mire)|mains propres|mauvais(?: état|e (?:posture|santé))|même temps|milieu d(?:e (?:journée|matinée|soirée)|’après-midi)|nombre (?:plus que |)suffisant|partant de zéro|plein(?: air| cœur| jour|e (?:gueule|figure|forme|poire|nuit|tronche))|perte de vitesse|peu de temps|piteux état|point d(?:e mire|’orgue)|position de (?:force|faiblesse)|premi(?:er lieu|ère (?:instance|ligne))|pure perte|quantité (?:plus que |)suffisante|quelque sorte|queue de peloton|rangs serrés|rase campagne|règle générale|roue libre|sens inverse|si peu de temps|sous-main|tête à tête|temps (?:et en heure|normal|opportun|ordinaire|utile|voulu)|termes choisis|toile de fond|tous (?:les cas|sens)|tout (?:bien tout honneur|cas|genre|lieu|et pour tout|état de cause|premier lieu|sens|temps)|toute(?: (?:bonne foi|circonstance|connaissance de cause|confiance|discrétion|franchise|hâte|impartialité|impunité|innocence|légalité|liberté|logique|sécurité|simplicité)|s circonstances)|un (?:clin d’œil|rien de temps)|une autre occasion|vase clos|voie de développement|y réfléchissant bien) <<- ~>> *
  4921   4922   __[i](p_en_mois_dernier)__      en (?:janvier|février|mars|avril|mai|jui(?:n|llet)|ao[ûu]t|septembre|octobre|novembre|décembre) dernier <<- ~>> *
  4922   4923   __[i](p_en_dat_mas_qqch)__      en (?:[mts]on|leur|[nv]otre) (?:âme et conscience|for intérieur|nom propre) <<- ~>> *
  4923   4924   __[i](p_en_ce_qqch)__           en ce(?: (?:moment|temps-là|qui (?:[mt]e|l(?:es?|a)|[nv]ous) concern(?:e|ait))|t instant) <<- ~>> *
  4924   4925   __[i](p_encore_qqch)__          encore (?:une fois|et (?:encore|toujours)) <<- ~>> *
  4925   4926   __[i](p_envers_qqch)__          envers (?:autrui|et contre tout|les uns et les autres|tout le monde) <<- ~>> *
  4926   4927   __[i](p_entre_qqch)__           entre (?:(?:[mt]oi|lui|elles?|[nv]ous|eux) et (?:[mt]oi|lui|elles?|[nv]ous|eux)|de (?:bonnes|mauvaises) mains|l’une? et l’autre|les uns et les autres|quat(?:re[- ]z-?yeux|’ z-?yeux)) <<- ~>> *
  4927   4928   __[i](p_entre_date)__           entre (?:janvier|février|mars|avril|mai|juin|juillet|ao[ûu]t|septembre|octobre|novembre|décembre) (?:\d\d{1,3} |)et (?:janvier|février|mars|avril|mai|juin|juillet|ao[ûu]t|septembre|octobre|novembre|décembre)(?: \d\d{1,3}|) <<- ~>> *
................................................................................
  5887   5888   __[i]/gn(gn_ledit_accord)__
  5888   5889       (ledit) +({w_2})  @@0,$
  5889   5890       <<- morphex(\2, ":[NAQ].*:f", ":[GWme]") -1>> ladite                                            # Accord de genre erroné : « \2 » est féminin.
  5890   5891       <<- __also__ and hasMasForm(\2) -2>> =suggMasSing(@, True)                                      # Accord de genre erroné : « \1 » est un déterminant masculin.
  5891   5892       <<- morphex(\2, ":[NAQ].*:p", ":[siGW]") -2>> =suggMasSing(@)                                   # Accord de nombre erroné : « \2 » devrait être au singulier.
  5892   5893   __[i]/gn(gn_un_accord)__
  5893   5894       (un) +({w_2})  @@0,$
  5894         -    <<- morphex(\2, ":[NAQ].*:f", ":(?:e|m|G|W|V0|3s)") -1>> une                                    # Accord de genre erroné : « \2 » est féminin.
         5895  +    <<- morphex(\2, ":[NAQ].*:f", ":(?:e|m|G|W|V0|3s|Y)") -1>> une                                    # Accord de genre erroné : « \2 » est féminin.
  5895   5896       <<- __also__ and hasMasForm(\2) -2>> =suggMasSing(@, True)                                      # Accord de genre erroné : « \1 » est un déterminant masculin.
  5896   5897       <<- morphex(\2, ":[NAQ].*:p", ":[siGW]") and not morph(word(-2), ":B", False) -2>> =suggMasSing(@) # Accord de nombre erroné : « \2 » devrait être au singulier.
  5897   5898   __[i]/gn(gn_un_des_accord)__
  5898   5899       (un) +des +({w_2})  @@0,$
  5899   5900       <<- morphex(\2, ":[NAQ].*:f", ":(?:e|m|G|W|V0|3s)") -1>> une                                    # Accord de genre erroné : « \2 » est féminin.
  5900   5901       <<- __also__ and hasMasForm(\2) -2>> =suggMasPlur(@, True)                                      # Accord de genre erroné : « \1 » est un déterminant masculin.
  5901   5902   __[i]/gn(gn_du_accord)__
................................................................................
  5937   5938   TEST: {{un}} des {{chattes}}
  5938   5939   TEST: {{une}} des {{chats}}
  5939   5940   TEST: {{mon}} {{chienne}}
  5940   5941   TEST: cet {{oliviers}}
  5941   5942   TEST: ce {{claviers}}
  5942   5943   TEST: cette bouffe, c’est du {{chiens}}
  5943   5944   TEST: le ton monte.
         5945  +TEST: Ces enfants n’ont jamais vu quelqu’un lire.
  5944   5946   
  5945   5947   
  5946   5948   __<i]/gn(gn_la_accord1)__
  5947   5949       , +(la) +({w_2})  @@w,$
  5948   5950       <<- morphex(\2, ":[NAQ].*:m", ":(?:e|f|P|G|W|[1-3][sp]|Y)") -1>> le                             # Accord de genre erroné : « \2 » est masculin.
  5949   5951       <<- __also__ and hasFemForm(\2) -2>> =suggFemSing(@, True)                                      # Accord de genre erroné : « \1 » est un déterminant féminin.
  5950   5952       <<- __else__ and morph(\2, ":[NAQ].*:p") -2>> =suggFemSing(@)                                   # Accord de nombre erroné : « \2 » devrait être au singulier.
................................................................................
 10097  10099   TEST: Antoine n’est pas {{mariés}}.
 10098  10100   TEST: Antoine est peut-être {{fatiguée}}.
 10099  10101   TEST: Éric n’est pas très {{fatiguée}}.
 10100  10102   TEST: Martine est {{marié}}.
 10101  10103   TEST: Martine n’est pas {{marié}}.
 10102  10104   TEST: Martine est très {{intelligent}}.
 10103  10105   TEST: Martine n’est pas très {{intelligent}}.
        10106  +TEST: Pierre est {{dominée}} par son adversaire.
 10104  10107   
 10105  10108   
 10106  10109   
 10107  10110   !!!! Accords avec l’adjectif précédant le pronom                                                    
 10108  10111   
 10109  10112   __[i]/ppas(ppas_adj_accord_je_tu)__
 10110  10113       ^ *({w_2}s),? (je?|tu)  @@*,$

Modified make.py from [7d5ef1d4bd] to [b9941a6809].

   451    451   
   452    452               # Thunderbird
   453    453               if xArgs.thunderbird:
   454    454                   os.system("thunderbird -jsconsole -P debug")
   455    455           else:
   456    456               print("Folder not found: gc_lang/"+sLang)
   457    457   
          458  +    oNow = datetime.datetime.now()
          459  +    print("============== MAKE GRAMMALECTE [finished] at {0.hour:>2} h {0.minute:>2} min {0.second:>2} s ==============".format(oNow))
          460  +
   458    461   
   459    462   if __name__ == '__main__':
   460    463       main()