kotoshu 0.3.0

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 (210) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/.rubocop.yml +18 -0
  4. data/CHANGELOG.md +182 -0
  5. data/CLAUDE.md +172 -0
  6. data/CODE_OF_CONDUCT.md +132 -0
  7. data/LICENSE +31 -0
  8. data/README.adoc +955 -0
  9. data/Rakefile +12 -0
  10. data/SECURITY.md +93 -0
  11. data/examples/01_basic_word_checking.rb +38 -0
  12. data/examples/02_text_document_checking.rb +77 -0
  13. data/examples/03_dictionary_backends.rb +137 -0
  14. data/examples/04_trie_data_structure.rb +146 -0
  15. data/examples/05_suggestion_algorithms.rb +239 -0
  16. data/examples/06_configuration_advanced.rb +287 -0
  17. data/examples/07_multi_language_dictionaries.rb +278 -0
  18. data/exe/kotoshu +6 -0
  19. data/lib/kotoshu/algorithms/capitalization.rb +276 -0
  20. data/lib/kotoshu/algorithms/lookup.rb +876 -0
  21. data/lib/kotoshu/algorithms/ngram_suggest.rb +270 -0
  22. data/lib/kotoshu/algorithms/permutations.rb +283 -0
  23. data/lib/kotoshu/algorithms/phonet_suggest.rb +167 -0
  24. data/lib/kotoshu/algorithms/suggest.rb +575 -0
  25. data/lib/kotoshu/algorithms.rb +14 -0
  26. data/lib/kotoshu/analyzers/semantic_analyzer.rb +295 -0
  27. data/lib/kotoshu/cache/base_cache.rb +596 -0
  28. data/lib/kotoshu/cache/cache.rb +91 -0
  29. data/lib/kotoshu/cache/frequency_cache.rb +224 -0
  30. data/lib/kotoshu/cache/language_cache.rb +454 -0
  31. data/lib/kotoshu/cache/lookup_cache.rb +166 -0
  32. data/lib/kotoshu/cache/model_cache.rb +513 -0
  33. data/lib/kotoshu/cache/suggestion_cache.rb +113 -0
  34. data/lib/kotoshu/cache.rb +40 -0
  35. data/lib/kotoshu/cli/auto_setup.rb +71 -0
  36. data/lib/kotoshu/cli/batch_reporter.rb +315 -0
  37. data/lib/kotoshu/cli/cache_command.rb +356 -0
  38. data/lib/kotoshu/cli/display_formatter.rb +431 -0
  39. data/lib/kotoshu/cli/errors.rb +36 -0
  40. data/lib/kotoshu/cli/interactive_reviewer.rb +319 -0
  41. data/lib/kotoshu/cli/language_resolver.rb +91 -0
  42. data/lib/kotoshu/cli/navigation_manager.rb +272 -0
  43. data/lib/kotoshu/cli/progress_reporter.rb +114 -0
  44. data/lib/kotoshu/cli/status_report.rb +130 -0
  45. data/lib/kotoshu/cli.rb +627 -0
  46. data/lib/kotoshu/commands/cache_command.rb +424 -0
  47. data/lib/kotoshu/commands/check_command.rb +312 -0
  48. data/lib/kotoshu/commands/model_command.rb +295 -0
  49. data/lib/kotoshu/components/passthrough_spell_checker.rb +72 -0
  50. data/lib/kotoshu/components/pos_tagger.rb +98 -0
  51. data/lib/kotoshu/components/spell_checker.rb +73 -0
  52. data/lib/kotoshu/components/synthesizer.rb +60 -0
  53. data/lib/kotoshu/components/tokenizer.rb +58 -0
  54. data/lib/kotoshu/components/whitespace_tokenizer.rb +96 -0
  55. data/lib/kotoshu/configuration/builder.rb +209 -0
  56. data/lib/kotoshu/configuration/resolver.rb +124 -0
  57. data/lib/kotoshu/configuration.rb +702 -0
  58. data/lib/kotoshu/core/exceptions.rb +165 -0
  59. data/lib/kotoshu/core/indexed_dictionary.rb +291 -0
  60. data/lib/kotoshu/core/models/affix_rule.rb +260 -0
  61. data/lib/kotoshu/core/models/result/document_result.rb +263 -0
  62. data/lib/kotoshu/core/models/result/word_result.rb +203 -0
  63. data/lib/kotoshu/core/models/word.rb +142 -0
  64. data/lib/kotoshu/core/trie/builder.rb +119 -0
  65. data/lib/kotoshu/core/trie/node.rb +94 -0
  66. data/lib/kotoshu/core/trie/trie.rb +249 -0
  67. data/lib/kotoshu/core.rb +28 -0
  68. data/lib/kotoshu/data/common_words/de.yml +1800 -0
  69. data/lib/kotoshu/data/common_words/en.yml +1215 -0
  70. data/lib/kotoshu/data/common_words/es.yml +750 -0
  71. data/lib/kotoshu/data/common_words/fr.yml +1015 -0
  72. data/lib/kotoshu/data/common_words/pt.yml +870 -0
  73. data/lib/kotoshu/data/common_words/ru.yml +484 -0
  74. data/lib/kotoshu/data/common_words_loader.rb +152 -0
  75. data/lib/kotoshu/data_structures/bloom_filter.rb +176 -0
  76. data/lib/kotoshu/debug_logger.rb +146 -0
  77. data/lib/kotoshu/debug_mode.rb +134 -0
  78. data/lib/kotoshu/defaults.rb +86 -0
  79. data/lib/kotoshu/dictionaries/catalog.rb +817 -0
  80. data/lib/kotoshu/dictionary/base.rb +237 -0
  81. data/lib/kotoshu/dictionary/cspell.rb +254 -0
  82. data/lib/kotoshu/dictionary/custom.rb +224 -0
  83. data/lib/kotoshu/dictionary/hunspell.rb +526 -0
  84. data/lib/kotoshu/dictionary/plain_text.rb +282 -0
  85. data/lib/kotoshu/dictionary/repository.rb +248 -0
  86. data/lib/kotoshu/dictionary/unified.rb +260 -0
  87. data/lib/kotoshu/dictionary/unix_words.rb +218 -0
  88. data/lib/kotoshu/documents/asciidoc_document.rb +441 -0
  89. data/lib/kotoshu/documents/document.rb +229 -0
  90. data/lib/kotoshu/documents/location.rb +139 -0
  91. data/lib/kotoshu/documents/markdown_document.rb +389 -0
  92. data/lib/kotoshu/documents/plain_text_document.rb +147 -0
  93. data/lib/kotoshu/embeddings/embedding_pipeline.rb +244 -0
  94. data/lib/kotoshu/embeddings/lru_cache.rb +233 -0
  95. data/lib/kotoshu/embeddings/onnx_runtime_model.rb +388 -0
  96. data/lib/kotoshu/embeddings/protocol.rb +83 -0
  97. data/lib/kotoshu/embeddings/protocols.rb +17 -0
  98. data/lib/kotoshu/embeddings/registry.rb +182 -0
  99. data/lib/kotoshu/embeddings/search.rb +192 -0
  100. data/lib/kotoshu/embeddings/similarity_engine.rb +248 -0
  101. data/lib/kotoshu/embeddings/similarity_search.rb +331 -0
  102. data/lib/kotoshu/embeddings/vocabulary.rb +257 -0
  103. data/lib/kotoshu/embeddings.rb +97 -0
  104. data/lib/kotoshu/fluent_checker.rb +91 -0
  105. data/lib/kotoshu/grammar/pattern_matchers/base_matcher.rb +48 -0
  106. data/lib/kotoshu/grammar/pattern_matchers/double_negative_matcher.rb +105 -0
  107. data/lib/kotoshu/grammar/pattern_matchers/possessive_context_matcher.rb +77 -0
  108. data/lib/kotoshu/grammar/pattern_matchers/vowel_sound_matcher.rb +83 -0
  109. data/lib/kotoshu/grammar/rule.rb +95 -0
  110. data/lib/kotoshu/grammar/rule_engine.rb +111 -0
  111. data/lib/kotoshu/grammar/rule_loader.rb +31 -0
  112. data/lib/kotoshu/grammar.rb +18 -0
  113. data/lib/kotoshu/integrity/audit_log.rb +88 -0
  114. data/lib/kotoshu/integrity/manifest.rb +117 -0
  115. data/lib/kotoshu/integrity/net_http.rb +46 -0
  116. data/lib/kotoshu/integrity.rb +25 -0
  117. data/lib/kotoshu/keyboard/layout.rb +115 -0
  118. data/lib/kotoshu/keyboard/layouts/azerty.rb +57 -0
  119. data/lib/kotoshu/keyboard/layouts/dvorak.rb +56 -0
  120. data/lib/kotoshu/keyboard/layouts/jcuken.rb +59 -0
  121. data/lib/kotoshu/keyboard/layouts/qwerty.rb +54 -0
  122. data/lib/kotoshu/keyboard/layouts/qwertz.rb +57 -0
  123. data/lib/kotoshu/keyboard/registry.rb +146 -0
  124. data/lib/kotoshu/keyboard.rb +60 -0
  125. data/lib/kotoshu/language/detector.rb +242 -0
  126. data/lib/kotoshu/language/identifier.rb +378 -0
  127. data/lib/kotoshu/language/languages/base.rb +256 -0
  128. data/lib/kotoshu/language/normalizer/base.rb +137 -0
  129. data/lib/kotoshu/language/registry.rb +147 -0
  130. data/lib/kotoshu/language/resources/ar/common_words.txt +6753 -0
  131. data/lib/kotoshu/language/resources/ar/confusion_sets.txt +11 -0
  132. data/lib/kotoshu/language/resources/de/common_words.txt +10003 -0
  133. data/lib/kotoshu/language/resources/de/confusion_sets.txt +246 -0
  134. data/lib/kotoshu/language/resources/en/common_words.txt +9979 -0
  135. data/lib/kotoshu/language/resources/en/confusion_sets.txt +871 -0
  136. data/lib/kotoshu/language/resources/es/common_words.txt +9992 -0
  137. data/lib/kotoshu/language/resources/es/confusion_sets.txt +17 -0
  138. data/lib/kotoshu/language/resources/fr/common_words.txt +9993 -0
  139. data/lib/kotoshu/language/resources/fr/confusion_sets.txt +76 -0
  140. data/lib/kotoshu/language/resources/pt/common_words.txt +9977 -0
  141. data/lib/kotoshu/language/resources/pt/confusion_sets.txt +18 -0
  142. data/lib/kotoshu/language/resources/ru/common_words.txt +9951 -0
  143. data/lib/kotoshu/language/resources/ru/confusion_sets.txt +5 -0
  144. data/lib/kotoshu/language/tokenizer/base.rb +170 -0
  145. data/lib/kotoshu/language/tokenizer/french_tokenizer.rb +170 -0
  146. data/lib/kotoshu/language/tokenizer/german_tokenizer.rb +41 -0
  147. data/lib/kotoshu/language/tokenizer/japanese_tokenizer.rb +60 -0
  148. data/lib/kotoshu/language/tokenizer/latin_tokenizer.rb +141 -0
  149. data/lib/kotoshu/language/tokenizer/portuguese_tokenizer.rb +160 -0
  150. data/lib/kotoshu/language/tokenizer/russian_tokenizer.rb +95 -0
  151. data/lib/kotoshu/language/tokenizer/spanish_tokenizer.rb +122 -0
  152. data/lib/kotoshu/language.rb +99 -0
  153. data/lib/kotoshu/languages/de/language.rb +546 -0
  154. data/lib/kotoshu/languages/en/language.rb +448 -0
  155. data/lib/kotoshu/languages/es/language.rb +459 -0
  156. data/lib/kotoshu/languages/fr/language.rb +493 -0
  157. data/lib/kotoshu/languages/ja/language.rb +477 -0
  158. data/lib/kotoshu/languages/pt/language.rb +423 -0
  159. data/lib/kotoshu/languages/ru/language.rb +404 -0
  160. data/lib/kotoshu/languages.rb +43 -0
  161. data/lib/kotoshu/metrics_collector.rb +222 -0
  162. data/lib/kotoshu/metrics_module.rb +110 -0
  163. data/lib/kotoshu/models/context.rb +119 -0
  164. data/lib/kotoshu/models/embedding_model.rb +182 -0
  165. data/lib/kotoshu/models/fasttext_model.rb +220 -0
  166. data/lib/kotoshu/models/nearest_neighbor.rb +87 -0
  167. data/lib/kotoshu/models/onnx_model.rb +333 -0
  168. data/lib/kotoshu/models/semantic_error.rb +165 -0
  169. data/lib/kotoshu/models/suggestion.rb +106 -0
  170. data/lib/kotoshu/models/word_embedding.rb +107 -0
  171. data/lib/kotoshu/paths.rb +53 -0
  172. data/lib/kotoshu/personal_dictionary.rb +94 -0
  173. data/lib/kotoshu/plugins/plugin.rb +61 -0
  174. data/lib/kotoshu/plugins/registry.rb +120 -0
  175. data/lib/kotoshu/project_config.rb +76 -0
  176. data/lib/kotoshu/readers/aff_data.rb +356 -0
  177. data/lib/kotoshu/readers/aff_reader.rb +375 -0
  178. data/lib/kotoshu/readers/condition_checker.rb +142 -0
  179. data/lib/kotoshu/readers/dic_reader.rb +118 -0
  180. data/lib/kotoshu/readers/file_reader.rb +347 -0
  181. data/lib/kotoshu/readers/lookup_builder.rb +299 -0
  182. data/lib/kotoshu/readers/readers.rb +6 -0
  183. data/lib/kotoshu/readers.rb +9 -0
  184. data/lib/kotoshu/resource_bundle.rb +30 -0
  185. data/lib/kotoshu/resource_manager.rb +295 -0
  186. data/lib/kotoshu/results/result.rb +165 -0
  187. data/lib/kotoshu/scripts/fasttext_to_onnx.py +275 -0
  188. data/lib/kotoshu/source_registry.rb +74 -0
  189. data/lib/kotoshu/spellchecker/parallel_checker.rb +90 -0
  190. data/lib/kotoshu/spellchecker.rb +298 -0
  191. data/lib/kotoshu/string_metrics.rb +153 -0
  192. data/lib/kotoshu/suggestions/context.rb +55 -0
  193. data/lib/kotoshu/suggestions/generator.rb +175 -0
  194. data/lib/kotoshu/suggestions/pipeline.rb +135 -0
  195. data/lib/kotoshu/suggestions/strategies/base_strategy.rb +296 -0
  196. data/lib/kotoshu/suggestions/strategies/composite_strategy.rb +140 -0
  197. data/lib/kotoshu/suggestions/strategies/edit_distance_strategy.rb +671 -0
  198. data/lib/kotoshu/suggestions/strategies/keyboard_proximity_strategy.rb +228 -0
  199. data/lib/kotoshu/suggestions/strategies/ngram_strategy.rb +130 -0
  200. data/lib/kotoshu/suggestions/strategies/phonetic_strategy.rb +329 -0
  201. data/lib/kotoshu/suggestions/strategies/semantic_strategy.rb +316 -0
  202. data/lib/kotoshu/suggestions/strategies/symspell_strategy.rb +275 -0
  203. data/lib/kotoshu/suggestions/suggestion.rb +174 -0
  204. data/lib/kotoshu/suggestions/suggestion_set.rb +238 -0
  205. data/lib/kotoshu/version.rb +5 -0
  206. data/lib/kotoshu.rb +493 -0
  207. data/script/validate_all_dictionaries.rb +444 -0
  208. data/sig/kotoshu.rbs +4 -0
  209. data/test_oop.rb +79 -0
  210. metadata +298 -0
@@ -0,0 +1,1015 @@
1
+ # French common words by frequency
2
+ # Source: French Wikipedia Corpus, FrWiktionary
3
+ # Last updated: 2025-01-15
4
+
5
+ metadata:
6
+ language: fr
7
+ source: French Wikipedia Corpus, FrWiktionary
8
+ source_url: https://en.wiktionary.org/wiki/Wiktionary:Frequency_lists/French
9
+ total_words: 84310
10
+ last_updated: 2025-01-15
11
+ license: CC-BY-SA 4.0
12
+
13
+ tiers:
14
+ top_50:
15
+ - de
16
+ - le
17
+ - la
18
+ - les
19
+ - à
20
+ - et
21
+ - en
22
+ - un
23
+ - être
24
+ - avoir
25
+ - il
26
+ - ne
27
+ - je
28
+ - son
29
+ - que
30
+ - se
31
+ - qui
32
+ - dans
33
+ - ce
34
+ - pour
35
+ - pas
36
+ - plus
37
+ - par
38
+ - sur
39
+ - on
40
+ - faire
41
+ - avec
42
+ - tout
43
+ - comme
44
+ - mais
45
+ - nous
46
+ - vous
47
+ - ou
48
+ - si
49
+ - leur
50
+ - y
51
+ - dire
52
+ - elle
53
+ - au
54
+ - des
55
+ - du
56
+ - on
57
+ - ce
58
+ - cet
59
+ - cette
60
+ - ces
61
+ - mes
62
+ - tes
63
+ - ses
64
+ - nos
65
+ - vos
66
+ - leurs
67
+ - mon
68
+ - ton
69
+ - ma
70
+ - ta
71
+ - sa
72
+ - mes
73
+ - tes
74
+ - ses
75
+ - notre
76
+ - votre
77
+ - leur
78
+
79
+ top_200:
80
+ - où
81
+ - le
82
+ - la
83
+ - les
84
+ - un
85
+ - une
86
+ - des
87
+ - du
88
+ - de la
89
+ - aux
90
+ - à la
91
+ - au
92
+ - je
93
+ - tu
94
+ - il
95
+ - elle
96
+ - nous
97
+ - vous
98
+ - ils
99
+ - elles
100
+ - on
101
+ - ce
102
+ - ceci
103
+ - cela
104
+ - ça
105
+ - c'est
106
+ - il est
107
+ - elle est
108
+ - ils sont
109
+ - elles sont
110
+ - j'ai
111
+ - tu as
112
+ - il a
113
+ - elle a
114
+ - nous avons
115
+ - vous avez
116
+ - ils ont
117
+ - elles ont
118
+ - je suis
119
+ - tu es
120
+ - il est
121
+ - elle est
122
+ - nous sommes
123
+ - vous êtes
124
+ - ils sont
125
+ - elles sont
126
+ - j'étais
127
+ - tu étais
128
+ - il était
129
+ - elle était
130
+ - nous étions
131
+ - vous étiez
132
+ - ils étaient
133
+ - elles étaient
134
+ - je fus
135
+ - tu fus
136
+ - il fut
137
+ - elle fut
138
+ - nous fûmes
139
+ - vous fûtes
140
+ - ils furent
141
+ - elles furent
142
+ - je serai
143
+ - tu seras
144
+ - il sera
145
+ - elle sera
146
+ - nous serons
147
+ - vous serez
148
+ - ils seront
149
+ - elles seront
150
+ - je serais
151
+ - tu serais
152
+ - il serait
153
+ - elle serait
154
+ - nous serions
155
+ - vous seriez
156
+ - ils seraient
157
+ - elles seraient
158
+ - soit
159
+ - sois
160
+ - soit
161
+ - soyons
162
+ - soyez
163
+ - soient
164
+ - fusse
165
+ - fusses
166
+ - fût
167
+ - fussions
168
+ - fussiez
169
+ - fussent
170
+ - étant
171
+ - été
172
+ - avoir
173
+ - eu
174
+ - eue
175
+ - eus
176
+ - eues
177
+ - ayant
178
+ - j'ai
179
+ - tu as
180
+ - il a
181
+ - elle a
182
+ - nous avons
183
+ - vous avez
184
+ - ils ont
185
+ - elles ont
186
+ - j'eus
187
+ - tu eus
188
+ - il eut
189
+ - elle eut
190
+ - nous eûmes
191
+ - vous eûtes
192
+ - ils eurent
193
+ - elles eurent
194
+ - j'aurai
195
+ - tu auras
196
+ - il aura
197
+ - elle aura
198
+ - nous aurons
199
+ - vous aurez
200
+ - ils auront
201
+ - elles auront
202
+ - j'aurais
203
+ - tu aurais
204
+ - il aurait
205
+ - elle aurait
206
+ - nous aurions
207
+ - vous auriez
208
+ - ils auraient
209
+ - elles auraient
210
+ - aie
211
+ - aies
212
+ - ait
213
+ - ayons
214
+ - ayez
215
+ - aient
216
+ - eusse
217
+ - eusses
218
+ - eût
219
+ - eussions
220
+ - eussiez
221
+ - eussent
222
+
223
+ top_1000:
224
+ - très
225
+ - plus
226
+ - moins
227
+ - trop
228
+ - assez
229
+ - tellement
230
+ - tellement
231
+ - aussi
232
+ - comme
233
+ - tel
234
+ - telle
235
+ - tels
236
+ - telles
237
+ - même
238
+ - mieux
239
+ - pire
240
+ - meilleur
241
+ - moindre
242
+ - bon
243
+ - mauvais
244
+ - bien
245
+ - mal
246
+ - vite
247
+ - lentement
248
+ - vite
249
+ - rapidement
250
+ - doucement
251
+ - facilement
252
+ - difficilement
253
+ - probablement
254
+ - possible
255
+ - impossible
256
+ - certain
257
+ - probable
258
+ - peut-être
259
+ - sans doute
260
+ - certainement
261
+ - sûrement
262
+ - évidemment
263
+ - naturellement
264
+ - bien sûr
265
+ - of course
266
+ - en effet
267
+ - effectivement
268
+ - en réalité
269
+ - en fait
270
+ - par contre
271
+ - au contraire
272
+ - par ailleurs
273
+ - d'ailleurs
274
+ - en outre
275
+ - de plus
276
+ - en plus
277
+ - aussi
278
+ - également
279
+ - pareillement
280
+ - de même
281
+ - non seulement
282
+ - mais aussi
283
+ - et aussi
284
+ - ni
285
+ - soit
286
+ - ou
287
+ - soit
288
+ - c'est-à-dire
289
+ - autrement dit
290
+ - en d'autres termes
291
+ - par exemple
292
+ - notamment
293
+ - en particulier
294
+ - surtout
295
+ - principalement
296
+ - essentiellement
297
+ - fondamentalement
298
+ - avant tout
299
+ - d'abord
300
+ - premièrement
301
+ - ensuite
302
+ - puis
303
+ - après
304
+ - après
305
+ - avant
306
+ - pendant
307
+ - pendant
308
+ - durant
309
+ - depuis
310
+ - dès
311
+ - jusqu'à
312
+ - jusqu'à ce que
313
+ - maintenant
314
+ - à présent
315
+ - aujourd'hui
316
+ - demain
317
+ - hier
318
+ - bientôt
319
+ - tôt
320
+ - tard
321
+ - jamais
322
+ - toujours
323
+ - souvent
324
+ - rarement
325
+ - parfois
326
+ - quelquefois
327
+ - de temps en temps
328
+ - de temps en temps
329
+ - en ce moment
330
+ - à ce moment-là
331
+ - à l'époque
332
+ - autrefois
333
+ - jadis
334
+ - naguère
335
+ - soudain
336
+ - soudainement
337
+ - brusquement
338
+ - progressivement
339
+ - lentement
340
+ - graduellement
341
+ - rapidement
342
+ - vite
343
+ - immédiatement
344
+ - tout de suite
345
+ - directement
346
+ - indirectement
347
+ - personnellement
348
+ - individuellement
349
+ - collectivement
350
+ - ensemble
351
+ - séparément
352
+ - ensemble
353
+ - seul
354
+ - seulement
355
+ - uniquement
356
+ - juste
357
+ - simplement
358
+ - purement
359
+ - entièrement
360
+ - complètement
361
+ - totalement
362
+ - absolument
363
+ - vraiment
364
+ - réellement
365
+ - effectivement
366
+ - effectivement
367
+ - vraiment
368
+ - certainement
369
+ - probablement
370
+ - évidemment
371
+ - malheureusement
372
+ - heureusement
373
+ - opportunity
374
+ - hasard
375
+ - par hasard
376
+ - accidentellement
377
+ - intentionnellement
378
+ - exprès
379
+ - délibérément
380
+ - consciemment
381
+ - inconsciemment
382
+ - volontairement
383
+ - involontairement
384
+ - librement
385
+ - forcément
386
+ - obligatoirement
387
+ - nécessairement
388
+ - éventuellement
389
+ - potentiellement
390
+ - théoriquement
391
+ - pratiquement
392
+ - techniquement
393
+ - logiquement
394
+ - raisonnablement
395
+ - sensément
396
+ - intelligemment
397
+ - sagement
398
+ - follement
399
+ - courageusement
400
+ - lâchement
401
+ - honnêtement
402
+ - franchement
403
+ - sincèrement
404
+ - véritablement
405
+ - faussement
406
+ - mensongèrement
407
+ - innocent
408
+ - coupable
409
+ - fautif
410
+ - responsable
411
+ - raison
412
+ - cause
413
+ - but
414
+ - but
415
+ - objective
416
+ - but
417
+ - fin
418
+ - dessein
419
+ - projet
420
+ - plan
421
+ - programme
422
+ - schedule
423
+ - calendrier
424
+ - horaire
425
+ - timing
426
+ - moment
427
+ - opportunity
428
+ - occasion
429
+ - chance
430
+ - opportunity
431
+ - risque
432
+ - danger
433
+ - menace
434
+ - hazard
435
+ - peril
436
+ - sécurité
437
+ - sûreté
438
+ - protection
439
+ - defense
440
+ - garde
441
+ - sauvegarde
442
+ - abri
443
+ - refuge
444
+ - shelter
445
+ - asylum
446
+ - refuge
447
+ - sanctuary
448
+ - sanctuaire
449
+ - haven
450
+ - port
451
+ - home
452
+ - maison
453
+ - household
454
+ - ménage
455
+ - family
456
+ - famille
457
+ - house
458
+ - maison
459
+ - building
460
+ - bâtiment
461
+ - room
462
+ - chambre
463
+ - space
464
+ - espace
465
+ - place
466
+ - lieu
467
+ - location
468
+ - emplacement
469
+ - position
470
+ - position
471
+ - situation
472
+ - situation
473
+ - environment
474
+ - environnement
475
+ - surroundings
476
+ - environs
477
+ - contexte
478
+ - context
479
+ - contexte
480
+ - circumstances
481
+ - circonstances
482
+ - conditions
483
+ - conditions
484
+ - state
485
+ - état
486
+ - status
487
+ - statut
488
+ - mode
489
+ - mode
490
+ - way
491
+ - façon
492
+ - manner
493
+ - manière
494
+ - method
495
+ - méthode
496
+ - technique
497
+ - technique
498
+ - strategy
499
+ - stratégie
500
+ - approach
501
+ - approche
502
+ - solution
503
+ - solution
504
+ - answer
505
+ - réponse
506
+ - result
507
+ - résultat
508
+ - outcome
509
+ - issue
510
+ - consequence
511
+ - conséquence
512
+ - effect
513
+ - effet
514
+ - impact
515
+ - impact
516
+ - influence
517
+ - influence
518
+ - change
519
+ - changement
520
+ - difference
521
+ - différence
522
+ - similarity
523
+ - similitude
524
+ - resemblance
525
+ - ressemblance
526
+ - analogy
527
+ - analogie
528
+ - comparison
529
+ - comparaison
530
+ - contrast
531
+ - contraste
532
+ - opposition
533
+ - opposition
534
+ - conflict
535
+ - conflit
536
+ - disagreement
537
+ - désaccord
538
+ - dispute
539
+ - dispute
540
+ - argument
541
+ - argument
542
+ - debate
543
+ - débat
544
+ - discussion
545
+ - discussion
546
+ - negotiation
547
+ - négociation
548
+ - settlement
549
+ - règlement
550
+ - resolution
551
+ - résolution
552
+ - agreement
553
+ - accord
554
+ - contract
555
+ - contrat
556
+ - deal
557
+ - affaire
558
+ - promise
559
+ - promesse
560
+ - commitment
561
+ - engagement
562
+ - obligation
563
+ - obligation
564
+ - duty
565
+ - devoir
566
+ - responsibility
567
+ - responsabilité
568
+ - blame
569
+ - faute
570
+ - fault
571
+ - défaut
572
+ - mistake
573
+ - erreur
574
+ - error
575
+ - erreur
576
+ - success
577
+ - succès
578
+ - failure
579
+ - échec
580
+ - victory
581
+ - victoire
582
+ - defeat
583
+ - défaite
584
+ - gain
585
+ - gain
586
+ - loss
587
+ - perte
588
+ - profit
589
+ - profit
590
+ - advantage
591
+ - avantage
592
+ - benefit
593
+ - avantage
594
+ - disadvantage
595
+ - désavantage
596
+ - drawback
597
+ - inconvénient
598
+ - pro
599
+ - pro
600
+ - con
601
+ - contre
602
+ - plus
603
+ - plus
604
+ - minus
605
+ - moins
606
+ - positive
607
+ - positif
608
+ - negative
609
+ - négatif
610
+ - good
611
+ - bon
612
+ - bad
613
+ - mauvais
614
+ - better
615
+ - meilleur
616
+ - worse
617
+ - pire
618
+ - best
619
+ - meilleur
620
+ - worst
621
+ - pire
622
+ - true
623
+ - vrai
624
+ - false
625
+ - faux
626
+ - real
627
+ - réel
628
+ - unreal
629
+ - irréel
630
+ - genuine
631
+ - authentique
632
+ - fake
633
+ - faux
634
+ - artificial
635
+ - artificiel
636
+ - natural
637
+ - naturel
638
+ - normal
639
+ - normal
640
+ - abnormal
641
+ - anormal
642
+ - standard
643
+ - standard
644
+ - exceptional
645
+ - exceptionnel
646
+ - ordinary
647
+ - ordinaire
648
+ - extraordinary
649
+ - extraordinaire
650
+ - common
651
+ - commun
652
+ - uncommon
653
+ - rare
654
+ - typical
655
+ - typique
656
+ - atypical
657
+ - atypique
658
+ - regular
659
+ - régulier
660
+ - irregular
661
+ - irrégulier
662
+ - usual
663
+ - habituel
664
+ - unusual
665
+ - inhabituel
666
+ - expected
667
+ - attendu
668
+ - unexpected
669
+ - inattendu
670
+ - predictable
671
+ - prévisible
672
+ - unpredictable
673
+ - imprévisible
674
+ - certain
675
+ - certain
676
+ - uncertain
677
+ - incertain
678
+ - definite
679
+ - défini
680
+ - indefinite
681
+ - indéfini
682
+ - clear
683
+ - clair
684
+ - unclear
685
+ - obscur
686
+ - obvious
687
+ - évident
688
+ - hidden
689
+ - caché
690
+ - visible
691
+ - visible
692
+ - invisible
693
+ - invisible
694
+ - transparent
695
+ - transparent
696
+ - opaque
697
+ - opaque
698
+ - open
699
+ - ouvert
700
+ - closed
701
+ - fermé
702
+ - public
703
+ - public
704
+ - private
705
+ - privé
706
+ - general
707
+ - général
708
+ - specific
709
+ - spécifique
710
+ - broad
711
+ - large
712
+ - narrow
713
+ - étroit
714
+ - wide
715
+ - large
716
+ - deep
717
+ - profond
718
+ - shallow
719
+ - peu profond
720
+ - high
721
+ - haut
722
+ - low
723
+ - bas
724
+ - big
725
+ - grand
726
+ - small
727
+ - petit
728
+ - large
729
+ - grand
730
+ - little
731
+ - petit
732
+ - huge
733
+ - énorme
734
+ - tiny
735
+ - minuscule
736
+ - fast
737
+ - rapide
738
+ - slow
739
+ - lent
740
+ - quick
741
+ - rapide
742
+ - swift
743
+ - rapide
744
+ - rapid
745
+ - rapide
746
+ - speedy
747
+ - rapide
748
+ - hasty
749
+ - hâtif
750
+ - gradual
751
+ - graduel
752
+ - steady
753
+ - stable
754
+ - constant
755
+ - constant
756
+ - variable
757
+ - variable
758
+ - flexible
759
+ - flexible
760
+ - rigid
761
+ - rigide
762
+ - strong
763
+ - fort
764
+ - weak
765
+ - faible
766
+ - powerful
767
+ - puissant
768
+ - powerless
769
+ - sans pouvoir
770
+ - heavy
771
+ - lourd
772
+ - light
773
+ - léger
774
+ - dark
775
+ - sombre
776
+ - bright
777
+ - brillant
778
+ - early
779
+ - tôt
780
+ - late
781
+ - tard
782
+ - timely
783
+ - ponctuel
784
+ - sudden
785
+ - soudain
786
+ - abrupt
787
+ - brusque
788
+ - gradual
789
+ - progressif
790
+ - smooth
791
+ - doux
792
+ - rough
793
+ - rugueux
794
+ - soft
795
+ - doux
796
+ - hard
797
+ - dur
798
+ - wet
799
+ - mouillé
800
+ - dry
801
+ - sec
802
+ - hot
803
+ - chaud
804
+ - cold
805
+ - froid
806
+ - warm
807
+ - chaud
808
+ - cool
809
+ - frais
810
+ - full
811
+ - plein
812
+ - empty
813
+ - vide
814
+ - complete
815
+ - complet
816
+ - incomplete
817
+ - incomplet
818
+ - whole
819
+ - entier
820
+ - partial
821
+ - partiel
822
+ - total
823
+ - total
824
+ - new
825
+ - nouveau
826
+ - old
827
+ - vieux
828
+ - young
829
+ - jeune
830
+ - fresh
831
+ - frais
832
+ - stale
833
+ - rassis
834
+ - clean
835
+ - propre
836
+ - dirty
837
+ - sale
838
+ - pure
839
+ - pur
840
+ - impure
841
+ - impur
842
+ - beautiful
843
+ - beau
844
+ - ugly
845
+ - laid
846
+ - pretty
847
+ - joli
848
+ - handsome
849
+ - beau
850
+ - attractive
851
+ - attirant
852
+ - repulsive
853
+ - répulsif
854
+ - good-looking
855
+ - beau
856
+ - plain
857
+ - ordinaire
858
+ - rich
859
+ - riche
860
+ - poor
861
+ - pauvre
862
+ - expensive
863
+ - cher
864
+ - cheap
865
+ - bon marché
866
+ - valuable
867
+ - précieux
868
+ - worthless
869
+ - sans valeur
870
+ - important
871
+ - important
872
+ - unimportant
873
+ - sans importance
874
+ - significant
875
+ - significatif
876
+ - insignificant
877
+ - insignifiant
878
+ - relevant
879
+ - pertinent
880
+ - irrelevant
881
+ - non pertinent
882
+ - essential
883
+ - essentiel
884
+ - non-essential
885
+ - non essentiel
886
+ - necessary
887
+ - nécessaire
888
+ - unnecessary
889
+ - inutile
890
+ - useful
891
+ - utile
892
+ - useless
893
+ - inutile
894
+ - helpful
895
+ - utile
896
+ - harmful
897
+ - nuisible
898
+ - beneficial
899
+ - bénéfique
900
+ - damaging
901
+ - endommageable
902
+ - positive
903
+ - positif
904
+ - negative
905
+ - négatif
906
+ - favorable
907
+ - favorable
908
+ - unfavorable
909
+ - défavorable
910
+ - fortunate
911
+ - chanceux
912
+ - unfortunate
913
+ - malchanceux
914
+ - lucky
915
+ - chanceux
916
+ - unlucky
917
+ - malchanceux
918
+ - happy
919
+ - heureux
920
+ - unhappy
921
+ - malheureux
922
+ - sad
923
+ - triste
924
+ - glad
925
+ - content
926
+ - sorry
927
+ - désolé
928
+ - angry
929
+ - en colère
930
+ - calm
931
+ - calme
932
+ - excited
933
+ - excité
934
+ - bored
935
+ - ennuyé
936
+ - interested
937
+ - intéressé
938
+ - uninterested
939
+ - désintéressé
940
+ - curious
941
+ - curieux
942
+ - indifferent
943
+ - indifférent
944
+ - amazed
945
+ - étonné
946
+ - surprised
947
+ - surpris
948
+ - shocked
949
+ - choqué
950
+ - frightened
951
+ - effrayé
952
+ - scared
953
+ - effrayé
954
+ - terrified
955
+ - terrifié
956
+ - brave
957
+ - courageux
958
+ - cowardly
959
+ - lâche
960
+ - confident
961
+ - confiant
962
+ - insecure
963
+ - incertain
964
+ - proud
965
+ - fier
966
+ - ashamed
967
+ - honteux
968
+ - jealous
969
+ - jaloux
970
+ - envious
971
+ - envieux
972
+ - generous
973
+ - généreux
974
+ - stingy
975
+ - avare
976
+ - kind
977
+ - gentil
978
+ - cruel
979
+ - cruel
980
+ - gentle
981
+ - doux
982
+ - rough
983
+ - brutal
984
+ - polite
985
+ - poli
986
+ - rude
987
+ - grossier
988
+ - friendly
989
+ - amical
990
+ - hostile
991
+ - hostile
992
+ - loyal
993
+ - loyal
994
+ - disloyal
995
+ - déloyal
996
+ - faithful
997
+ - fidèle
998
+ - unfaithful
999
+ - infidèle
1000
+ - honest
1001
+ - honnête
1002
+ - dishonest
1003
+ - malhonnête
1004
+ - sincere
1005
+ - sincère
1006
+ - insincere
1007
+ - insincère
1008
+ - modest
1009
+ - modeste
1010
+ - arrogant
1011
+ - arrogant
1012
+ - humble
1013
+ - humble
1014
+ - proud
1015
+ - fier