@valueerror/ltjs-lang-fr 0.0.0-stage → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/LICENSE +232 -0
  2. package/NOTICE +9 -0
  3. package/README.md +25 -2
  4. package/index.js +24 -0
  5. package/licenses/LGPL-2.1.txt +504 -0
  6. package/licenses/french-pos-dict.pom.xml +115 -0
  7. package/licenses/resource_fr_README_lexique.txt +30 -0
  8. package/licenses/resource_fr_hunspell_README_fr.txt +73 -0
  9. package/package.json +60 -4
  10. package/resource-root.js +4 -0
  11. package/resources/META-INF/org/languagetool/language-module.properties +1 -0
  12. package/resources/org/languagetool/resource/fr/README_lexique.txt +30 -0
  13. package/resources/org/languagetool/resource/fr/added.txt +477 -0
  14. package/resources/org/languagetool/resource/fr/added_custom.txt +4 -0
  15. package/resources/org/languagetool/resource/fr/compounds.txt +1443 -0
  16. package/resources/org/languagetool/resource/fr/confusion_sets.txt +76 -0
  17. package/resources/org/languagetool/resource/fr/disambiguation.xml +11391 -0
  18. package/resources/org/languagetool/resource/fr/fr.sor +162 -0
  19. package/resources/org/languagetool/resource/fr/french.dict +0 -0
  20. package/resources/org/languagetool/resource/fr/french.info +20 -0
  21. package/resources/org/languagetool/resource/fr/french_synth.dict +0 -0
  22. package/resources/org/languagetool/resource/fr/french_synth.info +4 -0
  23. package/resources/org/languagetool/resource/fr/french_tags.txt +268 -0
  24. package/resources/org/languagetool/resource/fr/hunspell/README_fr.txt +73 -0
  25. package/resources/org/languagetool/resource/fr/hunspell/ignore.txt +1551 -0
  26. package/resources/org/languagetool/resource/fr/hunspell/prohibit.txt +3 -0
  27. package/resources/org/languagetool/resource/fr/hunspell/spelling.txt +34735 -0
  28. package/resources/org/languagetool/resource/fr/hunspell/spelling_custom.txt +1 -0
  29. package/resources/org/languagetool/resource/fr/hyphenated_words.txt +12864 -0
  30. package/resources/org/languagetool/resource/fr/multiwords.txt +4886 -0
  31. package/resources/org/languagetool/resource/fr/removed.txt +5 -0
  32. package/resources/org/languagetool/resource/fr/removed_custom.txt +4 -0
  33. package/resources/org/languagetool/rules/fr/grammar.xml +151570 -0
  34. package/resources/org/languagetool/rules/fr/remote-rule-filters.xml +820 -0
  35. package/resources/org/languagetool/rules/fr/replace.txt +39 -0
  36. package/resources/org/languagetool/rules/fr/replace_custom.txt +7 -0
  37. package/resources/org/languagetool/rules/fr/style.xml +22790 -0
  38. package/resources/org/languagetool/rules/fr/synonyms.txt +203 -0
  39. package/src/lang/fr/language/BelgianFrench.js +38 -0
  40. package/src/lang/fr/language/CanadianFrench.js +38 -0
  41. package/src/lang/fr/language/French.js +478 -0
  42. package/src/lang/fr/language/SwissFrench.js +38 -0
  43. package/src/lang/fr/language/id2prioFrench.js +102 -0
  44. package/src/lang/fr/rules/AdvancedSynthesizerFilter.js +12 -0
  45. package/src/lang/fr/rules/CompoundRule.js +47 -0
  46. package/src/lang/fr/rules/DMYDateCheckFilter.js +31 -0
  47. package/src/lang/fr/rules/DateCheckFilter.js +35 -0
  48. package/src/lang/fr/rules/DateFilterHelper.js +55 -0
  49. package/src/lang/fr/rules/FindSuggestionsFilter.js +80 -0
  50. package/src/lang/fr/rules/FrenchLazy.js +9 -0
  51. package/src/lang/fr/rules/FrenchMultitokenSpeller.js +15 -0
  52. package/src/lang/fr/rules/FrenchNumberInWordFilter.js +29 -0
  53. package/src/lang/fr/rules/FrenchPartialPosTagFilter.js +29 -0
  54. package/src/lang/fr/rules/FrenchRepeatedWordsRule.js +76 -0
  55. package/src/lang/fr/rules/FrenchSuppressMisspelledSuggestionsFilter.js +12 -0
  56. package/src/lang/fr/rules/InterrogativeVerbFilter.js +159 -0
  57. package/src/lang/fr/rules/MakeContractionsFilter.js +32 -0
  58. package/src/lang/fr/rules/MorfologikFrenchSpellerRule.js +262 -0
  59. package/src/lang/fr/rules/NewYearDateFilter.js +30 -0
  60. package/src/lang/fr/rules/PostponedAdjectiveConcordanceFilter.js +512 -0
  61. package/src/lang/fr/rules/QuestionWhitespaceRule.js +171 -0
  62. package/src/lang/fr/rules/QuestionWhitespaceStrictRule.js +38 -0
  63. package/src/lang/fr/rules/SimpleReplaceRule.js +63 -0
  64. package/src/lang/fr/rules/SuggestionsFilter.js +29 -0
  65. package/src/lang/fr/rules/WordWithDeterminerFilter.js +168 -0
  66. package/src/lang/fr/synthesis/FrenchSynthesizer.js +36 -0
  67. package/src/lang/fr/tagging/FrenchHybridDisambiguator.js +28 -0
  68. package/src/lang/fr/tagging/FrenchTagger.js +176 -0
  69. package/src/lang/fr/tokenizers/FrenchWordTokenizer.js +164 -0
@@ -0,0 +1,203 @@
1
+ #important/J.*=crucial;influent;considérable;grave;essentiel
2
+ #comment: The entry for “important” doesn’t work for now. We should, for now, only make entries that start with consonant, with synonyms that only start with consonant. The functionality that converts d’ to de if the user replaces “d’importants dégâts” with “de graves dégâts” has yet to be built.
3
+ #beaucoup/A=tant;longuement;passionnément;tellement;fortement;certains;vraiment;
4
+ notamment/A=particulièrement;spécialement;singulièrement;surtout;spécifiquement;
5
+ #grand/A/J m s=spacieux;vaste;noble;puissant;considérable;sérieux;majeur;superbe;impressionnant;profond;long; // this adjective is just too complex. This would match “au grand dam”
6
+ #bon/J.*=plaisant;convenable;heureux;louable;nécessaire;gentil;brillant // bon is just too wide in its sense. Plus, it often precedes the noun, whereas most replacements come afterwards.
7
+ maintenant/A=présentement;ce jour-ci;désormais;à présent;
8
+ actuellement/A=présentement;ce jour;pour le moment
9
+ #beau/J.*=magnifique;sympathique;joli;superbe; // This would match “avoir beau + V inf”
10
+ #mauvais/J.*=pestilentiel;navrant;détestable;préjudiciable;dangereux;désagréable; // mauvais is just too wide in its sense. Plus, it often precedes the noun, whereas most replacements come afterwards.
11
+ sérieusement/A=solennellement;vraiment;réellement;
12
+ sûrement/A=certainement;assurément;précisément;totalement;parfaitement;
13
+ #cependant/A=néanmoins;toutefois;pourtant;malheureusement;
14
+ concrètement/A=pratiquement;matériellement;réellement;
15
+ #dynamique/J.*=proactif;actif;flexible;vivant;vaillant // can’t differentiate m vs s yet
16
+ génial/J.*=malin;phénoménal;fantastique;formidable;sublime;
17
+ principalement/A=essentiellement;fondamentalement;surtout;
18
+ #dangereux/J.*=hasardeux;risqué;préjudiciable;dramatique;compromettant;redoutable;menaçant;
19
+ #difficile/J.*=dur;ardu;délicat;pénible;compliqué;fâcheux; // can’t differentiate f vs m yet
20
+ facile/J.*=simple;commode;aisé;accessible;compréhensible;abordable;sociable;
21
+ généralement/A=habituellement;souvent;fréquemment;majoritairement;traditionnellement;
22
+ #utiliser/V.*=adopter;appliquer;employer;disposer;exploiter;manipuler;
23
+ #manger/V.*=dîner;déjeuner;savourer;dévorer;croquer;
24
+ #éviter/V.*=esquiver;fuir;éluder;éliminer;
25
+ #mais/C.*=cependant;pourtant;toutefois;néanmoins;en revanche;
26
+ #découvrir/V.*=constater;repérer;deviner;dévoiler;saisir;
27
+ #souhaiter/V.*=désirer;vouloir;convoiter;exprimer;réclamer;
28
+ #changer/V.*=modifier;transformer;révolutionner;évoluer;fluctuer;habiller différemment;
29
+ #choisir/V.*=sélectionner;désigner;nommer;préferer;prendre;
30
+ #acheter/V.*=payer;souscrire;négocier;investir;commander;
31
+ #étudier/V.*=examiner;approfondir;apprendre;explorer;inspecter;
32
+ #aborder/V.*=accoster;étudier;évoquer;entamer;
33
+ #conclure/V.*=terminer;décider;déduire;réduire;
34
+ #développer/V.*=propager;fortifier;croître;concevoir;tirer;
35
+ #développement/N.*=progrès;processus;perfectionnement
36
+ bouger/V.*=déplacer;remuer;partir;progresser;
37
+ #refaire/V.*=recommencer;renouveler;reproduire;répéter;faire à nouveau
38
+ démarrer/V.*=débuter;commencer;lancer;
39
+ #commencer/V.*=débuter;démarrer;lancer; // commencer à V inf no the same preposition
40
+ #terminer/V.*=finir;cesser;conclure;
41
+ #augmenter/V inf=accroître;amplifier;ajouter;élever;étendre;
42
+ diminuer/V.*=réduire;baisser;modérer;rabaisser;
43
+ pourtant/A=mais;cependant;néanmoins;toutefois;
44
+ #donc/A=ainsi;alors;en conséquence;de ce fait;
45
+ #créer/V.*=fonder;concevoir;réaliser;monter;provoquer;
46
+ #fabriquer/V.*=façonner;construire;produire;créer;réaliser;
47
+ #produire/V.*=concevoir;développer;réaliser;lancer;fabriquer;
48
+ #penser/V.*=croire;souhaiter;présumer;rêver;considérer;
49
+ #ensuite/A=après;a fortiori;
50
+ #solution/N.*=réponse;conclusion;fin;
51
+ excessivement/A=trop;exagérément;extrêmement;
52
+ énormement/A=excessivement;extrêmement;infiniment;absolument;
53
+ investigation/N.*=enquête;recherche;observation;
54
+ désappointé/J.*=déçu;dépité;
55
+ déçu/J.*=désappointé;dépité;
56
+ #difficulté/N.*=gêne;complication;contrainte;contrariété;
57
+ #situation/N.*=conjoncture;position;circonstance;disposition;
58
+ désavantages/N.*=désagrément;défaite;préjudice;détriment;
59
+ #qualité/N.*=propriété;caractéristique;compétence;capacité;
60
+ #importance/N.*=force;puissance;grandeur;conséquence;
61
+ #conséquence/N.*=conclusion;répercussion;séquelle;réaction;
62
+ différent/N.*=varié;divergent;contradictoire;multiple;distinct;
63
+ #réaliser/V.*=concevoir;créer;comprendre;perpétrer;constituer;
64
+ #fournir/V.*=proposer;présenter;produire;transmettre;
65
+ apparemment;/A=ainsi;contre toute attente;
66
+ effectivement;/A=ainsi;précisement;de toute évidence;absolument;
67
+ finalement;/A=pour conclure;ainsi;à vrai dire;en conclusion;enfin;
68
+ globalement;A=en général;dans l'ensemble;uniformément;
69
+ habituellement;/A=généralement;toujours;au quotidien;
70
+ initialement;/A=premièrement;tout d'abord;au début;pour commencer;
71
+ certainement/A=sûrement;assurément;précisément;probablement;parfaitement;
72
+ véritablement/A=assurément;précisément;totalement;parfaitement;
73
+ évidemment/A=assurément;précisément;totalement;parfaitement;bien sûr;
74
+ également/A=aussi;par ailleurs;ainsi;pareillement;de plus;
75
+ journalier/J.*=habituel;quotidien;
76
+ amener/V=apporter;accompagner;engendrer;induire;initier;
77
+ apporter/V=induire;engendrer;
78
+ probablement/A=sûrement;assurément;précisément;peut-être;
79
+ #directement/A=immédiatement;tout de suite;personnellement;
80
+ simplement/A=facilement;juste;uniquement;
81
+ tellement/A=vraiment;tant;assurément;si;
82
+ totalement/A=complètement;entièrement;vraiment;
83
+ uniquement/A=seulement;exclusivement;purement;
84
+ vraiment/A=réellement;absolument;complètement;très;extrêmement;
85
+ définitivement/A=pour toujours;à jamais;bien sûr;
86
+ essentiellement/A=principalement;en particulier;
87
+ personnellement/A=pour ma part;particulièrement;
88
+ facilement/A=simplement;aisément;amplement;naturellement;
89
+ justement/A=précisément;exactement;
90
+ prochainement/A=bientôt;à l'avenir;sous peu;
91
+ lentement/A=doucement;progressivement;petit à petit;
92
+ doucement/A=lentement;tendrement;minutieusement;faiblement;
93
+ faiblement/A=moindrement;légèrement;peu;
94
+ progressivement/A=lentement;petit à petit;graduellement;
95
+ presque/A=bientôt;quasiment;approximativement;
96
+ quasiment/A=presque;approximativement;
97
+ différemment/A=autrement;
98
+ entièrement/A=complètement;en tout;dans l'ensemble;
99
+ complètement/A=entièrement;absolument;
100
+ davantage/A=plus;plutôt;
101
+ surtout/A=notamment;plutôt;davantage;essentiellement;
102
+ auparavant/A=autrefois;jadis;précédemment;préalablement;
103
+ précédemment/A=auparavant;autrefois;préalablement;
104
+ préalablement/A=auparavant;autrefois;précédemment;
105
+ #déjà/A=précédemment;préalablement;réellement;si tôt;encore;
106
+ jadis/A=auparavant;autrefois;
107
+ autrefois/A=jadis;auparavant;
108
+ dorénavant/A=désormais;à présent;
109
+ désormais/A=dorénavant;à présent;
110
+ apparemment/A=sans doute;vraisemblablement;certainement;
111
+ vraisemblablement/A=apparemment;certainement;sans doute;
112
+ précisément/A=exactement;concrètement;justement;réellement;
113
+ exactement/A=précisément;concrètement;justement;réellement;
114
+ réellement/A=précisément;concrètement;exactement;vraisemblablement;
115
+ littéralement/A=exactement;précisément;formellement;
116
+ assurément/A=précisément;concrètement;bien sûr;vraisemblablement;
117
+ peut-être/A=sûrement;certainement;probablement;
118
+ toutefois/A=cependant;néanmoins;mais;
119
+ #certes/A=assurément;certainement;évidemment;bien sûr;
120
+ similaire/J.*=semblable;pareil;identique;proche;
121
+ semblable/J.*=pareil;identique;proche;similaire;
122
+ pareil/J.*=semblable;similaire;identique;proche;
123
+ #principe/N.*=précepte;fondement;
124
+ fondement/N.*=précepte;principe;
125
+ c'est-à-dire/A=autrement dit;à savoir;ainsi;donc;
126
+ immédiatement;A=tout de suite;maintenant;instantanément;
127
+ communJ.*=global;habituel;global;banal;
128
+ global/J.*=général;commun;banal;
129
+ excepté/P=sauf;à part;sans compter;
130
+ sauf/P=excepté;à part;sans compter;
131
+ parfois/A=occasionnellement;de temps en temps;
132
+ #manière/N.*=façon;tenue;démarche;conduite;
133
+ façon/N.*=manière;tenue;démarche;conduite;
134
+ sembler/V.*=paraître;
135
+ paraitre/V.*[^parue?s?]=sembler;supposer;croire;prétendre;
136
+ affirmer/V.*=alléguer;assurer;énoncer;exprimer;arguer;
137
+ fondamental/J.*=indispensable;impératif;nécessaire;primordial;
138
+ plusieurs/J.*=différent;divers;distinct;singuliers;
139
+ divers/J.*=varié;différent;hétéroclite;hétérogène;
140
+ quelques/D.*=plusieurs;divers;
141
+ #nombreux/J.*=divers;varié;multiple;maints;
142
+ souvent/A=fréquemment;généralement;continuellement;habituellement;
143
+ régulièrement/A=constamment;continuellement;quotidiennement;souvent;
144
+ #responsabilité/N.*=compétence;habilité;faute;
145
+ #compétence/N.*=responsabilité;capacité;qualité;
146
+ environ/A=approximativement;
147
+ malgré/A=sans compter;nonobstant;mis à part;
148
+ capacité/N.*=disposition;compétence;habileté;possibilité;potentialité;
149
+ fortement/A=fermement;puissamment;promptement;sensiblement;réellement;
150
+ significatif/J.*=notable;caractéristique;manifeste;typique;
151
+ #rapidement/A=promptement;vivement;dynamiquement;prochainement;vite;
152
+ récemment/A=naguère;dernièrement;bientôt;
153
+ fréquemment/A=souvent;généralement;continuellement;habituellement;
154
+ rarement/A=parfois;quelquefois;peu;modérément;
155
+ #impossible/J.*=irréel;invraisemblable;irréalisable;insensé;
156
+ remarquable/J.*=magnifique;merveilleux;superbe;ravissant;splendide;
157
+ nettement/A=précisément;catégoriquement;clairement;distinctement;simplement;
158
+ pratiquement/A=concrètement;presque;quasiment;
159
+ naturellement/A=facilement;simplement;commodément;couramment;foncièrement;
160
+ nécessairement/A=forcément;obligatoirement;inévitablement;automatiquement
161
+ purement/A=exclusivement;simplement;seulement;uniquement;
162
+ pleinement/A=sûrement;précisément;totalement;parfaitement;complètement;
163
+ spécifiquement/A=précisément;typiquement
164
+ typiquement/A=précisément;spécifiquement
165
+ durement/A=lourdement;pesamment;massivement;
166
+ massivement/A=lourdement;pesamment;
167
+ lourdement/A=pesamment;massivement;
168
+ résolument/A=bravement;brusquement;courageusement;vaillamment;vigoureusement;franchement;
169
+ inévitablement/A=immanquablement;inéluctablement;automatiquement;
170
+ immanquablement/A=inévitablement;inéluctablement;automatiquement;
171
+ inéluctablement/A=immanquablement;inévitablement;automatiquement;
172
+ possiblement/A=probablement;sûrement;
173
+ passablement/A=honnêtement;loyalement;assez;moyennement
174
+ honnêtement/A=honorablement;réellement;gravement;sérieusement;correctement;
175
+ fermement/A=fortement;vigoureusement;grandement;profondément;vivement
176
+ grandement/A=fortement;vigoureusement;grandement;profondément;vivement
177
+ exagérément/A=abusivement;excessivement;immodérément;outrageusement;
178
+ formidable/J.*=magnifique;brillant;remarquable;
179
+ horrible/J.*=abominable;effrayant;épouvantable;intolérable;
180
+ #excellent/J.*=exquis;extraordinaire;épatant;époustouflant;incomparable;
181
+ vrai/J.*=juste;réel;exact;
182
+ faux/J.*=erroné;irréel;incorrect;inexact;
183
+ exiger/V.*=ordonner;obliger;attendre;imposer;enjoindre;astreindre;
184
+ ordonner/V.*=exiger;obliger;attendre;imposer;enjoindre;astreindre;
185
+ obliger/V.*=exiger;ordonner;attendre;imposer;enjoindre;astreindre;
186
+ imposer/V.*=exiger;ordonner;attendre;enjoindre;astreindre;
187
+ encourager/V.*=approuver;estimer;inciter;aiguiller;
188
+ favoriser/V.*=privilégier;promouvoir;facilité;soutenir;dynamiser;
189
+ #proposer/V.*=suggérer;présenter;soumettre;conseiller;
190
+ #gérer/V.*=diriger;gouverner;guider;traiter;résoudre;
191
+ #répondre/V.*=satisfaire;correspondre;répliquer;réagir;
192
+ #éviter/V.*=éluder;échapper;esquiver;
193
+ #connaitre/V.*=concevoir;apprendre;considérer;discerner;juger;
194
+ joignable/J.*=accessible;disponible;
195
+ accessible/J.*=abordable;ouvert;engageant;opérationnel;actif;
196
+ enfin;/A=finalement;donc;ainsi;à vrai dire;en conclusion;
197
+ normalement/A=habituellement;souvent;convenablement;
198
+ satisfait/J.*=conquis;comblé;ravi;enchanté;
199
+ sympa/J.*=agréable;exquis;génial;
200
+ #accorder/V.*=adapter;attribuer;apporter;unifier;allouer;
201
+ annoncer/V.*=informer;apprendre;indiquer;
202
+ différer/V.*=reporter;remettre;reculer;diverger;
203
+ #vérifier/V.*=contrôler;certifier;déterminer;évaluer;
@@ -0,0 +1,38 @@
1
+ // Java: org.languagetool.language.BelgianFrench
2
+ import { RuntimeException, Throwable } from '@valueerror/ltjs-core/src/lib/java/errors.js';
3
+ import { registerClass } from '@valueerror/ltjs-core/src/core/resources/ClassBroker.js';
4
+ import { French } from './French.js';
5
+
6
+ let instantiationTrace = null; // Java: BelgianFrench#instantiationTrace
7
+
8
+ // Java: BelgianFrench
9
+ export class BelgianFrench extends French {
10
+ static FQCN = 'org.languagetool.language.BelgianFrench';
11
+
12
+ // Java: BelgianFrench#BelgianFrench()
13
+ constructor() {
14
+ super(true);
15
+ const trace = instantiationTrace;
16
+ if (trace !== null) {
17
+ throw new RuntimeException('Language was already instantiated, see the cause stacktrace below.', trace);
18
+ }
19
+ instantiationTrace = new Throwable();
20
+ }
21
+
22
+ // Java: BelgianFrench#getName()
23
+ getName() {
24
+ return 'French (Belgium)';
25
+ }
26
+
27
+ // Java: BelgianFrench#getCountries()
28
+ getCountries() {
29
+ return ['BE'];
30
+ }
31
+
32
+ // Java: BelgianFrench#getDefaultDisabledRulesForVariant()
33
+ getDefaultDisabledRulesForVariant() {
34
+ return ['DOUBLER_UNE_CLASSE'];
35
+ }
36
+ }
37
+
38
+ registerClass(BelgianFrench.FQCN, BelgianFrench);
@@ -0,0 +1,38 @@
1
+ // Java: org.languagetool.language.CanadianFrench
2
+ import { RuntimeException, Throwable } from '@valueerror/ltjs-core/src/lib/java/errors.js';
3
+ import { registerClass } from '@valueerror/ltjs-core/src/core/resources/ClassBroker.js';
4
+ import { French } from './French.js';
5
+
6
+ let instantiationTrace = null; // Java: CanadianFrench#instantiationTrace
7
+
8
+ // Java: CanadianFrench
9
+ export class CanadianFrench extends French {
10
+ static FQCN = 'org.languagetool.language.CanadianFrench';
11
+
12
+ // Java: CanadianFrench#CanadianFrench()
13
+ constructor() {
14
+ super(true);
15
+ const trace = instantiationTrace;
16
+ if (trace !== null) {
17
+ throw new RuntimeException('Language was already instantiated, see the cause stacktrace below.', trace);
18
+ }
19
+ instantiationTrace = new Throwable();
20
+ }
21
+
22
+ // Java: CanadianFrench#getName()
23
+ getName() {
24
+ return 'French (Canada)';
25
+ }
26
+
27
+ // Java: CanadianFrench#getCountries()
28
+ getCountries() {
29
+ return ['CA'];
30
+ }
31
+
32
+ // Java: CanadianFrench#getDefaultDisabledRulesForVariant()
33
+ getDefaultDisabledRulesForVariant() {
34
+ return ['DOUBLER_UNE_CLASSE'];
35
+ }
36
+ }
37
+
38
+ registerClass(CanadianFrench.FQCN, CanadianFrench);