Grammalecte  Check-in [12dd6264d6]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:merge trunk
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | comdic
Files: files | file ages | folders
SHA3-256:12dd6264d689b30fc49d2c9555571faefbc9a6d1bf4c85667f5b3ef5262d2eb3
User & Date: olr 2019-02-13 21:37:17
Context
2019-02-22
10:59
[fr] tests supplémentaires check-in: e2afd07d43 user: olr tags: comdic, fr
2019-02-13
21:37
merge trunk check-in: 12dd6264d6 user: olr tags: comdic
20:03
[fx] observePage update: don’t add menu if option.textarea doesn’t require it check-in: 35b97b66b5 user: olr tags: fx, trunk
19:53
[fx] dictionaries manager: update check-in: 50fe201fc1 user: olr tags: comdic, fx
Changes

Changes to gc_lang/fr/rules.grx.

 11184  11184           <<- ~1:3>> *
 11185  11185   
 11186  11186       en de multiples occasions  @¬:A.*:[fe]:[pi]
 11187  11187           <<- ~1:4>> *
 11188  11188   
 11189  11189       entre autres choses  @¬:A.*:[fe]:[pi]
 11190  11190           <<- ~1:3>> *
        11191  +
 11191  11192   
 11192  11193       [quelques|plusieurs] [secondes|minutes|heures|journées|semaines|années|décennies]  @¬:A.*:[fe]:[pi]
 11193  11194           <<- ~1:2>> *
        11195  +
        11196  +    de [quelques|plusieurs] [secondes|minutes|heures|journées|semaines|années|décennies]  @¬:A.*:[fe]:[pi]
        11197  +        <<- ~1:3>> *
 11194  11198   
 11195  11199       de nombreuses [secondes|minutes|heures|journées|semaines|années|décennies]  @¬:A.*:[fe]:[pi]
 11196  11200           <<- ~1:3>> *
 11197  11201   
 11198  11202       [quelques|plusieurs] [instants|moments|jours|mois|ans|siècles]  @¬:A.*:[me]:[pi]
 11199  11203           <<- ~1:2>> *
        11204  +
        11205  +    de [quelques|plusieurs] [instants|moments|jours|mois|ans|siècles]  @¬:A.*:[me]:[pi]
        11206  +        <<- ~1:3>> *
 11200  11207   
 11201  11208       de nombreux [instants|moments|jours|mois|ans|siècles]  @¬:A.*:[me]:[pi]
 11202  11209           <<- ~1:3>> *
 11203  11210   
 11204  11211       pour partie  @:¬:A.*:f:s
 11205  11212           <<- ~1:2>> *
 11206  11213   
................................................................................
 11463  11470   TEST: En colère, les ambulanciers une nouvelle fois mobilisés contre une réforme qui met en péril leur activité
 11464  11471   TEST: Au-delà des réponses qu’a tenté d’apporter cette semaine le président, le mouvement des “gilets jaunes” marque un tournant dans la vie politique et sociale de la France.
 11465  11472   TEST: S’y inventent de nouvelles solidarités, s’y expérimentent des joies politiques dont on avait perdu le goût et la découverte qu’on peut désobéir ensemble.
 11466  11473   TEST: Les femmes, quant à elles, ont aussi tendance à sous-estimer le harcèlement dont elles sont dans leur globalité victimes
 11467  11474   TEST: Elles ont avec constance démontré l’inanité de leur politique.
 11468  11475   TEST: On l’a mauvaise, j’peux vous l’dire.
 11469  11476   TEST: Défigurée, travestie, dans tous les cas contestée.
        11477  +TEST: Une file d’attente de plusieurs heures s’étire au rez-de-chaussée
 11470  11478   
 11471  11479   
 11472  11480   
 11473  11481   @@@@
 11474  11482   @@@@
 11475  11483   @@@@
 11476  11484   @@@@
................................................................................
 14489  14497   
 14490  14498       >savoir [grès|grés]
 14491  14499           <<- /conf/ -2>> gré                                     # Confusion. Locution “savoir gré” pour manifester sa satisfaction.|https://fr.wiktionary.org/wiki/savoir_gr%C3%A9
 14492  14500   
 14493  14501       >prendre en [grès|grés]
 14494  14502           <<- /conf/ -3>> gré                                     # Confusion. Locution “prendre en gré” pour dire “recevoir avec résignation”.|https://fr.wiktionary.org/wiki/prendre_en_gr%C3%A9
 14495  14503   
        14504  +    >être [>gré|grès]
        14505  +        <<- /conf/ -1>> _                                       # Confusion probable. On dit “savoir gré” et non “être gré”. Ou bien, écrivez “être reconnaissant”.|https://fr.wiktionary.org/wiki/savoir_gr%C3%A9
        14506  +        <<- /conf/ -2>> reconnaissant                           # Confusion probable. On dit “savoir gré” et non “être gré”. Ou bien, écrivez “être reconnaissant”.|https://fr.wiktionary.org/wiki/savoir_gr%C3%A9
        14507  +
 14496  14508   TEST: il en sera fait à votre {{grès}}
 14497  14509   TEST: Il est venu contre son {{grès}}.
 14498  14510   TEST: Il viendra de bon {{grès}} ou de mauvais {{grès}}.
 14499  14511   TEST: Errer au {{grès}} des vents.
 14500  14512   TEST: Errer au {{grès}} du vent.
 14501  14513   TEST: Il acceptera de {{grès}} ou de force.
 14502  14514   TEST: nous vaincrons, {{bon grès mal grès}}
 14503  14515   TEST: Il faut prendre en {{grès}} les afflictions que Dieu nous envoie.
        14516  +TEST: Je lui en {{suis}} {{gré}}.
 14504  14517   
 14505  14518   
 14506  14519   # jeune / jeûne
 14507  14520   __conf_jeûne_jeune__
 14508  14521       >jeune du [carême|ramadan]
 14509  14522       >jeune [alimentaire|eucharistique|rituel|sacramentel]
 14510  14523           <<- /conf/ -1>> =\1.replace("u", "û").replace("U", "Û")         # Confusion. Pour les privations alimentaires, écrivez “jeûne”.|https://fr.wiktionary.org/wiki/je%C3%BBne
................................................................................
 14998  15011   
 14999  15012   # tâche / tache (de chocolat / rousseur / vin / sang / café / gras / graisse / huile / etc.)
 15000  15013   __conf_tache_tâche__
 15001  15014       >tâche  [de|d’]  @:N¬:[GMY]|>(?:contrôle|fonds?|envergure|ampleur|importance|départ|surveillance|supervision)/
 15002  15015           <<- /conf/ not before("[aA]ccompl|[dD]él[éè]gu") -1>> =\1.replace("â", "a").replace("Â", "A")
 15003  15016           # Confusion probable. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.
 15004  15017   
 15005         -    >tâche  [>indélébile|>rouge|>verte|>noire|>bleue|>jaune|>grise|>blanche|>brune|>pourpre|>chocolat|>mauve|>fushia|>violette|>rose|>claire|>sombre|>solaire]
        15018  +    >tâche  [>indélébile|>rouge|>verte|>noire|>bleue|>jaune|>grise|>blanche|>brune|>pourpre|>chocolat|>mauve|>fushia|>violette|>rose|>claire|>sombre|>solaire|>cuivrée]
 15006  15019           <<- /conf/ -1>> =\1.replace("â", "a").replace("Â", "A")
 15007  15020           # Confusion. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.
 15008  15021   
 15009  15022       >tâche sur @:D [>bermuda|>blouse|>blouson|bois|bras|>caleçon|>canapé|>carrelage|>chemise|>chemisier|>col|>conscience|corps|>costume|>cravate|>cuir|>culotte|CV|>dent|>doigt|document|dos|>fauteuil|>feuille|>front|>habit|>jambe|>jean|>joue|>jupe|>jupon|>lèvre|>linge|>livre|>livret|>maillot|>main|>marbre|>meuble|>moquette|>mur|>nappe|nez|>ongle|>papier|>parquet|>pantalon|>peau|pénis|>photo|>photographie|>pied|>pull|>réputation|>robe|>sexe|>siège|>slip|>sol|>t-shirt|>teeshirt|>tee-shirt|>tapis|>tête|>tissu|>veste|>vêtement|>visage]
 15010  15023           <<- /conf/ -1>> =\1.replace("â", "a").replace("Â", "A")
 15011  15024           # Confusion. Une tâche est un travail à accomplir. Pour une salissure, une altération, une marque, une coloration… employez “tache”.
 15012  15025   
................................................................................
 15024  15037   TEST: c’est une tâche de grande envergure
 15025  15038   TEST: déléguer des tâches de sécurité publique à des machines autonomes
 15026  15039   TEST: tirer bénéfice de nouvelles données en fonction de la tâche de départ qui leur a été assignée
 15027  15040   TEST: Les « pervenches » fonctionnaires seraient alors affectées à d’autres tâches de surveillance, notamment au sein de la nouvelle brigade anti-insécurité.
 15028  15041   
 15029  15042   
 15030  15043   __conf_tâche_tache__
 15031         -    >tache [>ingrate|>dévalorisante|>valorisante]
        15044  +    tache [accomplie|dévalorisante|difforme|épuisante|exécutée|exténuante|fatigante|ingrate|menée|valorisante]
        15045  +    taches [accomplies|dévalorisantes|difformes|épuisantes|exécutées|exténuantes|fatigantes|ingrates|menées|valorisantes]
        15046  +    >tache >insoluble
        15047  +    >tache consistant à
 15032  15048           <<- /conf/ -1>> =\1.replace("a", "â").replace("A", "Â")
 15033  15049           # Confusion. Une tache est une salissure, une altération, une marque, une coloration… Pour parler d’un travail à accomplir, écrivez “tâche”.
 15034  15050   
 15035         -    [>abstenir|>accepter|>accomplir|>affecter|>effectuer|>entreprendre|>exécuter|>finir|>partager|>refaire|>refuser|>terminer]  @:D  >tache
        15051  +    [>abstenir|>accepter|>accomplir|>achever|>affecter|>effectuer|>entreprendre|>exécuter|>faciliter|>finir|>interrompre|>partager|>refaire|>refuser|>simplifier|>terminer]  @:D  >tache
 15036  15052       à la tache
 15037         -        <<- /conf/ -3>> =\3.replace("a", "â").replace("A", "Â")
        15053  +    [à|a] la hauteur de la tache
        15054  +        <<- /conf/ --1>> =\3.replace("a", "â").replace("A", "Â")
 15038  15055           # Confusion. Une tache est une salissure, une altération, une marque, une coloration… Pour parler d’un travail à accomplir, écrivez “tâche”.
 15039  15056   
 15040  15057       >tacher  [de|d’]  [ne|n’|me|m’|te|t’|se|s’]
 15041  15058       >tacher  [de|d’]  ?[le|la|l’|les|en|nous|vous|lui|leur|y]¿  @:Y
 15042  15059       >tacher  [de|d’]  [nous|vous]     [le|la|l’|les|en|y]       @:Y
 15043  15060       >tacher  [de|d’]  [le|la|l’|les]  [lui|leur|en|y]           @:Y
 15044  15061       >tacher  [de|d’]  [lui|leur]      en                        @:Y
 15045  15062           <<- /conf/ -1>> =\1.replace("a", "â").replace("A", "Â")
 15046  15063           # Confusion. Tache signifie faire une salissure, une altération, une marque, une coloration… Pour parler de l’accomplissement d’un travail, écrivez “tâcher”.
 15047  15064   
 15048  15065   TEST: Quelle {{tache}} ingrate.
 15049         -TEST: Une {{tache}} ingrate.
        15066  +TEST: Une {{tache}} valorisante.
 15050  15067   TEST: Elle se tue à la {{tache}}.
 15051  15068   TEST: Il a accompli la {{tache}} facilement.
 15052  15069   TEST: {{Tache}} de partir tôt.
 15053  15070   TEST: {{Tachez}} d’arriver à l’heure.
 15054  15071   TEST: {{Tache}} de ne pas faire trop de bruit.
 15055  15072   TEST: une tâche dévalorisante.
 15056  15073   TEST: peiner à la tâche.
................................................................................
 17369  17386   
 17370  17387   
 17371  17388   
 17372  17389   !!!! du / dû                                                                                      !!
 17373  17390   
 17374  17391   __ppas_avoir_dû_vinfi__
 17375  17392       >avoir  [du|dus|due|dues]  [le|la|les|l’|me|m’|te|t’|se|lui|s’|nous|vous|leur|@:Y]
 17376         -        <<- /ppas/ -2>> dû                                      # Participe passé de devoir : “dû”.
        17393  +        <<- /ppas/ \3 != "pouvoir" -2>> dû                      # Participe passé de devoir : “dû”.
 17377  17394   
 17378  17395       /VCint  [du|dus|due|dues]  [le|la|les|l’|me|m’|te|t’|se|lui|s’|nous|vous|leur|@:Y]
 17379         -        <<- /ppas/ -2>> dû                                      # Participe passé de devoir : “dû”.
        17396  +        <<- /ppas/ \3 != "pouvoir" -2>> dû                      # Participe passé de devoir : “dû”.
 17380  17397   
 17381  17398   TEST: Il a {{du}} leur prendre.
 17382  17399   TEST: J’ai {{du}} lui donner.
 17383  17400   TEST: J’ai {{du}} leur prendre.
 17384  17401   TEST: A-t-il {{du}} se résoudre à céder ?
 17385  17402   TEST: Aurait-il {{du}} {{prendre}} son repas plus tôt ?
        17403  +TEST: Les Français ont du pouvoir.
 17386  17404   
 17387  17405   
 17388  17406   __ppas_qui_être_dû__
 17389  17407       qui  ?[ne|n’]¿  [me|m’|te|t’|lui|nous|vous|leur]  >être  du
 17390  17408           <<- /ppas/ --1>> dû                                     # Confusion. Ce qui est dû.
 17391  17409   
 17392  17410   TEST: Voici ce qui t’est {{du}}.
................................................................................
 18582  18600   
 18583  18601       *WORD  ~.[td]$  [il|on]
 18584  18602           <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3s", ":[GNW]") and not value(\1, "|ce|il|elle|on|") and morph(>1, ":|<end>|,", ":3s")
 18585  18603           -2:3>> \2-\3                                                                                   # Forme interrogative ? Mettez un trait d’union.
 18586  18604   
 18587  18605   TEST: {{prend on}} le temps d’y réfléchir ?
 18588  18606   TEST: De quel droit {{vient il}} m’{{ennuyer}} ?
        18607  +TEST: Pourquoi le message de Jean {{était‐il}} très radical pour son époque ?
 18589  18608   
 18590  18609   
 18591  18610   __inte_union_elle__
 18592  18611       [<start>|,]  ~.[td]$  elle
 18593  18612           <<- /inte/ space_after(\2, 1, 1) and morph(\2, ":V.*:3s", ":[GW]") and morph(>1, ":|<end>|,", ":3s")
 18594  18613           -2:3>> \2-elle                                                                              # Forme interrogative ? Mettez un trait d’union.
 18595  18614   

Changes to gc_lang/fr/webext/content_scripts/init.js.

    55     55       oMessageBox: null,
    56     56   
    57     57       xRightClickedNode: null,
    58     58   
    59     59       xObserver: null,
    60     60   
    61     61       sExtensionUrl: null,
           62  +
           63  +    oOptions: null,
    62     64   
    63     65       listenRightClick: function () {
    64     66           // Node where a right click is done
    65     67           // Bug report: https://bugzilla.mozilla.org/show_bug.cgi?id=1325814
    66     68           document.addEventListener('contextmenu', function (xEvent) {
    67     69               this.xRightClickedNode = xEvent.target;
    68     70           }.bind(this), true);
................................................................................
    76     78           if (bChrome) {
    77     79               browser.storage.local.get("ui_options", this._createMenus.bind(this));
    78     80               return;
    79     81           }
    80     82           browser.storage.local.get("ui_options").then(this._createMenus.bind(this), showError);
    81     83       },
    82     84   
    83         -    _createMenus: function (dOptions) {
    84         -        if (dOptions.hasOwnProperty("ui_options")) {
    85         -            dOptions = dOptions.ui_options;
    86         -            if (dOptions.textarea) {
           85  +    _createMenus: function (oOptions) {
           86  +        if (oOptions.hasOwnProperty("ui_options")) {
           87  +            this.oOptions = oOptions.ui_options;
           88  +            if (this.oOptions.textarea) {
    87     89                   for (let xNode of document.getElementsByTagName("textarea")) {
    88     90                       if (xNode.style.display !== "none" && xNode.style.visibility !== "hidden" && xNode.getAttribute("spellcheck") !== "false") {
    89     91                           this.lMenu.push(new GrammalecteMenu(this.nMenu, xNode));
    90     92                           this.nMenu += 1;
    91     93                       }
    92     94                   }
    93     95               }
    94         -            if (dOptions.editablenode) {
           96  +            if (this.oOptions.editablenode) {
    95     97                   for (let xNode of document.querySelectorAll("[contenteditable]")) {
    96     98                       this.lMenu.push(new GrammalecteMenu(this.nMenu, xNode));
    97     99                       this.nMenu += 1;
    98    100                   }
    99    101               }
   100    102           }
   101    103       },
................................................................................
   102    104   
   103    105       observePage: function () {
   104    106           //    When a textarea is added via jascript we add the menu
   105    107           this.xObserver = new MutationObserver(function (mutations) {
   106    108               mutations.forEach(function (mutation) {
   107    109                   for (let i = 0;  i < mutation.addedNodes.length;  i++){
   108    110                       if (mutation.addedNodes[i].tagName == "TEXTAREA") {
   109         -                        oGrammalecte.lMenu.push(new GrammalecteMenu(oGrammalecte.nMenu, mutation.addedNodes[i]));
   110         -                        oGrammalecte.nMenu += 1;
          111  +                        if (this.oOptions === null || this.oOptions.textarea) {
          112  +                            oGrammalecte.lMenu.push(new GrammalecteMenu(oGrammalecte.nMenu, mutation.addedNodes[i]));
          113  +                            oGrammalecte.nMenu += 1;
          114  +                        }
   111    115                       } else if (mutation.addedNodes[i].getElementsByTagName) {
   112         -                        for (let xNode of mutation.addedNodes[i].getElementsByTagName("textarea")) {
   113         -                            oGrammalecte.lMenu.push(new GrammalecteMenu(oGrammalecte.nMenu, xNode));
   114         -                            oGrammalecte.nMenu += 1;
          116  +                        if (this.oOptions === null || this.oOptions.textarea) {
          117  +                            for (let xNode of mutation.addedNodes[i].getElementsByTagName("textarea")) {
          118  +                                oGrammalecte.lMenu.push(new GrammalecteMenu(oGrammalecte.nMenu, xNode));
          119  +                                oGrammalecte.nMenu += 1;
          120  +                            }
   115    121                           }
   116    122                       }
   117    123                   }
   118    124               });
   119    125           });
   120    126           this.xObserver.observe(document.body, {
   121    127               childList: true,