Overview
Comment: | Sync to trunk |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | nodejs |
Files: | files | file ages | folders |
SHA3-256: |
18924f57b4994604991398d7d6ca6834 |
User & Date: | IllusionPerdu on 2018-10-21 14:37:01 |
Other Links: | branch diff | manifest | tags |
Context
2018-10-21
| ||
14:58 | [js] Add getIgnoreRules check-in: fc3446bfc2 user: IllusionPerdu tags: nodejs | |
14:37 | Sync to trunk check-in: 18924f57b4 user: IllusionPerdu tags: nodejs | |
2018-10-20
| ||
12:52 | [fr] amélioration: quel +être +det check-in: 453f4dcb62 user: olr tags: trunk, fr | |
2018-10-17
| ||
16:07 | [njs] fix labels and few mistakes check-in: 23d95509f4 user: olr tags: njs, nodejs | |
Changes
Modified gc_lang/fr/rules.grx from [9051dbf326] to [64849e9ba2].
︙ | ︙ | |||
6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 | # Confusion probable. Écrivez “or” pour dire “néanmoins”. La préposition “hors” sert à dire “en dehors de” ou “excepté”.|https://fr.wiktionary.org/wiki/hors TEST: {{hors}}, nous y coryons malgré tout ce qu’on peut en dire. TEST: {{Hors}} il y a tant à faire depuis que nous sommes arrivés en ces lieux. TEST: Hors nous, personne ne sait ce qui s’est passé là-bas. TEST: Le peuple se sent hors jeu. # jeune / jeûne __conf_jeune__ très >jeûne <<- /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. | > > > > > > > > > | 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 | # Confusion probable. Écrivez “or” pour dire “néanmoins”. La préposition “hors” sert à dire “en dehors de” ou “excepté”.|https://fr.wiktionary.org/wiki/hors TEST: {{hors}}, nous y coryons malgré tout ce qu’on peut en dire. TEST: {{Hors}} il y a tant à faire depuis que nous sommes arrivés en ces lieux. TEST: Hors nous, personne ne sait ce qui s’est passé là-bas. TEST: Le peuple se sent hors jeu. # l’issue __conf_l_issue__ l’ issu <<- /conf/ -2>> issue # Confusion. Le nom “issue” est féminin. TEST: à l’{{issu}} de la partie. # jeune / jeûne __conf_jeune__ très >jeûne <<- /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. |
︙ | ︙ | |||
7350 7351 7352 7353 7354 7355 7356 | # voir / voire __conf_voir_voire__ voir [grand|petit|rouge] <<- %2>> voir @:A¬:[NGM] | | | 7359 7360 7361 7362 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 | # voir / voire __conf_voir_voire__ voir [grand|petit|rouge] <<- %2>> voir @:A¬:[NGM] <<- /conf/ not \2.istitle() and not morph(<1, ":O[os]|>(?:[ndmts]e|falloir|pouvoir|savoir|de|à)/") and not before("(?i)\\b[ndmts](?:e |’(?:en |y ))(?:pas |jamais |) *$") -1>> voir # Confusion probable : “voir” est un verbe concernant la perception visuelle. Pour signifier “et même possiblement”, écrivez :|https://fr.wiktionary.org/wiki/voire [comme|lorque|puisque|quand|que|quoique|si] (voire) [ni|et|par|pour|sans] (voire) [>aller|>falloir|>pouvoir|>vouloir] ?[guère|jamais|pas|plus|point|rien]¿ (voire) <<- /conf/ -1>> voir # Confusion probable : “voire” signifie “et même possiblement”. Pour le verbe, écrivez “voir”.|https://fr.wiktionary.org/wiki/voire |
︙ | ︙ | |||
7378 7379 7380 7381 7382 7383 7384 7385 7386 7387 7388 7389 7390 7391 | TEST: de fortes chances de se voir ruiné TEST: Quelle chance tu as eue de voir ruiné ce connard. TEST: l’immobilier a été ces dernières années l’investissement le plus rentable (voir graphique ci-dessous) TEST: elles sont pas mal ainsi, voire élégantes pourrait-on dire. TEST: il y en a peu, voire très peu. TEST: car elles pénètrent dans les poumons voire le système sanguin. TEST: des enfants malades, qui préfèrent souvent voir Dark Vador que des vieux clowns un peu flippants. # vieil / vieux __conf_vieil_vieux_euphonie__ vieux homme <<- /conf/ -1>> vieil # Euphonie. Utilisez “vieil” pour un nom masculin singulier commençant par une voyelle ou un h.|https://fr.wikipedia.org/wiki/Euphonie | > | 7387 7388 7389 7390 7391 7392 7393 7394 7395 7396 7397 7398 7399 7400 7401 | TEST: de fortes chances de se voir ruiné TEST: Quelle chance tu as eue de voir ruiné ce connard. TEST: l’immobilier a été ces dernières années l’investissement le plus rentable (voir graphique ci-dessous) TEST: elles sont pas mal ainsi, voire élégantes pourrait-on dire. TEST: il y en a peu, voire très peu. TEST: car elles pénètrent dans les poumons voire le système sanguin. TEST: des enfants malades, qui préfèrent souvent voir Dark Vador que des vieux clowns un peu flippants. TEST: les membres de l’équipage commencent à voir flou # vieil / vieux __conf_vieil_vieux_euphonie__ vieux homme <<- /conf/ -1>> vieil # Euphonie. Utilisez “vieil” pour un nom masculin singulier commençant par une voyelle ou un h.|https://fr.wikipedia.org/wiki/Euphonie |
︙ | ︙ | |||
11140 11141 11142 11143 11144 11145 11146 | __gn_quels_quelles_accord_être__ [quels|quelles] [est|étais|était|sera|serais|serait|fut|fût|fus] <<- /gn/ not value(<1, "|tels|telles|") -1>> =\1[:-1] # Accord de nombre erroné avec “\2”. __gn_quel_accord_être_sujet__ | | > > > > | > > > > > > | 11150 11151 11152 11153 11154 11155 11156 11157 11158 11159 11160 11161 11162 11163 11164 11165 11166 11167 11168 11169 11170 11171 11172 11173 11174 11175 11176 11177 11178 11179 11180 11181 11182 11183 11184 11185 11186 11187 11188 11189 11190 11191 11192 11193 11194 11195 11196 11197 11198 | __gn_quels_quelles_accord_être__ [quels|quelles] [est|étais|était|sera|serais|serait|fut|fût|fus] <<- /gn/ not value(<1, "|tels|telles|") -1>> =\1[:-1] # Accord de nombre erroné avec “\2”. __gn_quel_accord_être_sujet__ quel [est|était|seras|sera|serais|serait|fut|fût|fus] [la|cette|ma|ta|sa] *WORD <<- /gn/ not value(<1, "|tel|telle|") and morph(\4, ":[NA].*:[fe]", ":m") -1>> quelle # Accord de genre erroné avec « \3 \4 ». quel [est|était|seras|sera|serais|serait|fut|fût|fus] [mon|ton|son|notre|votre|leur] *WORD <<- /gn/ not value(<1, "|tel|telle|") and morph(\4, ":[NA].*:f", ":[me]") -1>> quelle # Accord de genre erroné avec « \3 \4 ». __gn_quelle_accord_être_sujet__ quelle [est|était|seras|sera|serais|serait|fut|fût|fus] [le|ce|cet] *WORD <<- /gn/ not value(<1, "|tel|telle|") and morph(\4, ":[NA].*:[me]", ":f") -1>> quel # Accord de genre erroné avec « \3 \4 ». quelle [est|était|seras|sera|serais|serait|fut|fût|fus] [mon|ton|son|notre|votre|leur] *WORD <<- /gn/ not value(<1, "|tel|telle|") and morph(\4, ":[NA].*:m", ":[fe]") -1>> quel # Accord de genre erroné avec « \3 \4 ». __gn_quels_accord_être_sujet__ quels [sont|étaient|seront|serons|seraient|furent|fussent] [les|ces|mes|tes|ses|nos|vos|leurs] *WORD <<- /gn/ not value(<1, "|tels|telles|") and morph(\4, ":[NA].*:f", ":[me]") -1>> quelles # Accord de genre erroné avec « \3 \4 ». __gn_quelles_accord_être_sujet__ quelles [sont|étaient|seront|serons|seraient|furent|fussent] [les|ces|mes|tes|ses|nos|vos|leurs] *WORD <<- /gn/ not value(<1, "|tels|telles|") and morph(\4, ":[NA].*:m", ":[fe]") -1>> quels # Accord de genre erroné avec « \3 \4 ». TEST: {{Quel}} sont ces hommes. ->> Quels TEST: {{Quel}} est cette force ? ->> Quelle TEST: {{Quelle}} est mon animal favori ? ->> Quel TEST: {{Quels}} sont ces femmes ? ->> Quelles TEST: {{Quelles}} est cette imbécillité ? ->> Quelle TEST: {{Quelles}} sont ces hommes ? ->> Quels TEST: {{Quel}} est la politique ? ->> Quelle TEST: {{Quelle}} est le politique ? ->> Quel TEST: Il s’agit de définir quelle est notre propre orientation. #### Quel(le) que soit … ## masculin requis |
︙ | ︙ | |||
12102 12103 12104 12105 12106 12107 12108 12109 12110 12111 12112 12113 12114 12115 12116 12117 | [>air|>aire] du [cénozoïque|digital|numérique|paléozoïque|pliocène|pétrole|primaire|secondaire|tertiaire|quaternaire] [>air|>aire] du big data <<- /conf/ -1>> ère # Confusion. L’aire est une surface. L’air est un gaz, une apparence ou une musique. Pour évoquen une époque, écrivez “ère”. l’ [aire|ère] du temps <<- /conf/ -2>> air # Confusion probable. Locution “l’air du temps”.|https://fr.wiktionary.org/wiki/%C3%AAtre_dans_l%E2%80%99air_du_temps TEST: L’{{aire}} du pétrole n’est pas encore terminée. TEST: Ce sera un jour dans l’{{ère}} du temps # auspice / hospice __conf_auspices_hospices__ sous [les|de|des|ces] ?*WORD¿ (hospices) <<- /conf/ -1>> auspices # Confusion probable. L’hospice est un centre de soins.|https://fr.wiktionary.org/wiki/auspice | > > > > | 12122 12123 12124 12125 12126 12127 12128 12129 12130 12131 12132 12133 12134 12135 12136 12137 12138 12139 12140 12141 | [>air|>aire] du [cénozoïque|digital|numérique|paléozoïque|pliocène|pétrole|primaire|secondaire|tertiaire|quaternaire] [>air|>aire] du big data <<- /conf/ -1>> ère # Confusion. L’aire est une surface. L’air est un gaz, une apparence ou une musique. Pour évoquen une époque, écrivez “ère”. l’ [aire|ère] du temps <<- /conf/ -2>> air # Confusion probable. Locution “l’air du temps”.|https://fr.wiktionary.org/wiki/%C3%AAtre_dans_l%E2%80%99air_du_temps >avoir l’ [aire|ère] [de|d’] <<- /conf/ -3>> air # Confusion probable. La locution “avoir l’air de” signifie “sembler”, “paraître”…|https://fr.wiktionary.org/wiki/avoir_l%E2%80%99air TEST: L’{{aire}} du pétrole n’est pas encore terminée. TEST: Ce sera un jour dans l’{{ère}} du temps TEST: il a l’{{aire}} d’un plouc. # auspice / hospice __conf_auspices_hospices__ sous [les|de|des|ces] ?*WORD¿ (hospices) <<- /conf/ -1>> auspices # Confusion probable. L’hospice est un centre de soins.|https://fr.wiktionary.org/wiki/auspice |
︙ | ︙ | |||
17053 17054 17055 17056 17057 17058 17059 17060 17061 17062 17063 17064 17065 17066 | TEST: Le moral des ménages au plus haut depuis 2007 TEST: Ce qu’ils nous ont fait TEST: Comment vous expliquez ça ? TEST: Comment vous expliquer ça ? TEST: le général n’en aura cure TEST: n’en avoir cure et faire comme si de rien n’était. TEST: Comme d’habitude, ils ont tout fait à l’arrache. !!! Tests historiques !! ## Version 0.5.14 TEST: par le léger tissu de rayonne qui les protégeait en ce moment. | > | 17077 17078 17079 17080 17081 17082 17083 17084 17085 17086 17087 17088 17089 17090 17091 | TEST: Le moral des ménages au plus haut depuis 2007 TEST: Ce qu’ils nous ont fait TEST: Comment vous expliquez ça ? TEST: Comment vous expliquer ça ? TEST: le général n’en aura cure TEST: n’en avoir cure et faire comme si de rien n’était. TEST: Comme d’habitude, ils ont tout fait à l’arrache. TEST: tout un système pour justifier que “nous” avons toujours raison et que nous ne pouvons jamais avoir tort. !!! Tests historiques !! ## Version 0.5.14 TEST: par le léger tissu de rayonne qui les protégeait en ce moment. |
︙ | ︙ |
Modified gc_lang/fr/webext/manifest.json from [b647bed430] to [5d7857a281].
︙ | ︙ | |||
112 113 114 115 116 117 118 | "default": "Ctrl+Shift+8" }, "description": "Ouvre l’éditeur lexical" } }, "web_accessible_resources": [ | | > > | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | "default": "Ctrl+Shift+8" }, "description": "Ouvre l’éditeur lexical" } }, "web_accessible_resources": [ "grammalecte/graphspell/_dictionaries/fr-allvars.json", "grammalecte/graphspell/_dictionaries/fr-classic.json", "grammalecte/graphspell/_dictionaries/fr-reform.json", "grammalecte/fr/conj_data.json", "grammalecte/fr/mfsp_data.json", "grammalecte/fr/phonet_data.json", "grammalecte/fr/tests_data.json", "img/logo-16.png" ], |
︙ | ︙ |
Modified graphspell-js/ibdawg.js from [820a95ea91] to [edb211270b].
︙ | ︙ | |||
144 145 146 147 148 149 150 | } if (!(this.nCompressionMethod == 1 || this.nCompressionMethod == 2 || this.nCompressionMethod == 3)) { throw RangeError("# Error. Unknown dictionary compression method: " + this.nCompressionMethod); } // <dChar> to get the value of an arc, <dCharVal> to get the char of an arc with its value this.dChar = helpers.objectToMap(this.dChar); this.dCharVal = this.dChar.gl_reverse(); | | | 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 | } if (!(this.nCompressionMethod == 1 || this.nCompressionMethod == 2 || this.nCompressionMethod == 3)) { throw RangeError("# Error. Unknown dictionary compression method: " + this.nCompressionMethod); } // <dChar> to get the value of an arc, <dCharVal> to get the char of an arc with its value this.dChar = helpers.objectToMap(this.dChar); this.dCharVal = this.dChar.gl_reverse(); this.a2grams = (this.l2grams) ? new Set(this.l2grams) : null; if (this.cStemming == "S") { this.funcStemming = str_transform.changeWordWithSuffixCode; } else if (this.cStemming == "A") { this.funcStemming = str_transform.changeWordWithAffixCode; } else { this.funcStemming = str_transform.noStemming; |
︙ | ︙ | |||
410 411 412 413 414 415 416 417 418 419 420 421 422 423 | } } } isNgramsOK (sChars) { if (sChars.length != 2) { return true; } return this.a2grams.has(sChars); } * _getCharArcs (iAddr) { // generator: yield all chars and addresses from node at address <iAddr> for (let [nVal, jAddr] of this._getArcs(iAddr)) { | > > > | 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 | } } } isNgramsOK (sChars) { if (sChars.length != 2) { return true; } if (!this.a2grams) { return true; } return this.a2grams.has(sChars); } * _getCharArcs (iAddr) { // generator: yield all chars and addresses from node at address <iAddr> for (let [nVal, jAddr] of this._getArcs(iAddr)) { |
︙ | ︙ |
Modified graphspell/ibdawg.py from [eceb83c9e7] to [59273fbe60].
︙ | ︙ | |||
186 187 188 189 190 191 192 | self.nBytesOffset = 1 # version 3 def _initJSON (self, oJSON): "initialize with a JSON text file" self.__dict__.update(oJSON) self.byDic = binascii.unhexlify(self.sByDic) self.dCharVal = { v: k for k, v in self.dChar.items() } | | | 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 | self.nBytesOffset = 1 # version 3 def _initJSON (self, oJSON): "initialize with a JSON text file" self.__dict__.update(oJSON) self.byDic = binascii.unhexlify(self.sByDic) self.dCharVal = { v: k for k, v in self.dChar.items() } self.a2grams = set(self.l2grams) if hasattr(self, 'l2grams') else None def getInfo (self): "return string about the IBDAWG" return " Language: {0.sLangName} Lang code: {0.sLangCode} Dictionary name: {0.sDicName}" \ " Compression method: {0.nCompressionMethod:>2} Date: {0.sDate} Stemming: {0.cStemming}FX\n" \ " Arcs values: {0.nArcVal:>10,} = {0.nChar:>5,} characters, {0.nAff:>6,} affixes, {0.nTag:>6,} tags\n" \ " Dictionary: {0.nEntry:>12,} entries, {0.nNode:>11,} nodes, {0.nArc:>11,} arcs\n" \ |
︙ | ︙ | |||
354 355 356 357 358 359 360 361 362 363 364 365 366 367 | elif len(sRemain) == 1: self._suggest(oSuggResult, "", nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, iAddr, sNewWord, True) # remove last char and go on for sRepl in cp.dFinal1.get(sRemain, ()): self._suggest(oSuggResult, sRepl, nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, iAddr, sNewWord, True) def isNgramsOK (self, sChars): if len(sChars) != 2: return True return sChars in self.a2grams #@timethis def suggest2 (self, sWord, nSuggLimit=10): "returns a set of suggestions for <sWord>" sWord = cp.spellingNormalization(sWord) | > > | 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 | elif len(sRemain) == 1: self._suggest(oSuggResult, "", nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, iAddr, sNewWord, True) # remove last char and go on for sRepl in cp.dFinal1.get(sRemain, ()): self._suggest(oSuggResult, sRepl, nMaxSwitch, nMaxDel, nMaxHardRepl, nMaxJump, nDist, nDeep+1, iAddr, sNewWord, True) def isNgramsOK (self, sChars): if len(sChars) != 2: return True if not self.a2grams: return True return sChars in self.a2grams #@timethis def suggest2 (self, sWord, nSuggLimit=10): "returns a set of suggestions for <sWord>" sWord = cp.spellingNormalization(sWord) |
︙ | ︙ |