wordlist 0.1.1 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (152) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/ruby.yml +28 -0
  3. data/.gitignore +6 -3
  4. data/ChangeLog.md +55 -1
  5. data/Gemfile +15 -0
  6. data/LICENSE.txt +1 -3
  7. data/README.md +301 -60
  8. data/Rakefile +7 -32
  9. data/benchmarks.rb +115 -0
  10. data/bin/wordlist +4 -7
  11. data/data/stop_words/ar.txt +104 -0
  12. data/data/stop_words/bg.txt +259 -0
  13. data/data/stop_words/bn.txt +363 -0
  14. data/data/stop_words/ca.txt +126 -0
  15. data/data/stop_words/cs.txt +138 -0
  16. data/data/stop_words/da.txt +101 -0
  17. data/data/stop_words/de.txt +129 -0
  18. data/data/stop_words/el.txt +79 -0
  19. data/data/stop_words/en.txt +175 -0
  20. data/data/stop_words/es.txt +178 -0
  21. data/data/stop_words/eu.txt +98 -0
  22. data/data/stop_words/fa.txt +332 -0
  23. data/data/stop_words/fi.txt +747 -0
  24. data/data/stop_words/fr.txt +116 -0
  25. data/data/stop_words/ga.txt +109 -0
  26. data/data/stop_words/gl.txt +160 -0
  27. data/data/stop_words/he.txt +499 -0
  28. data/data/stop_words/hi.txt +97 -0
  29. data/data/stop_words/hr.txt +179 -0
  30. data/data/stop_words/hu.txt +35 -0
  31. data/data/stop_words/hy.txt +45 -0
  32. data/data/stop_words/id.txt +357 -0
  33. data/data/stop_words/it.txt +134 -0
  34. data/data/stop_words/ja.txt +44 -0
  35. data/data/stop_words/ko.txt +677 -0
  36. data/data/stop_words/ku.txt +63 -0
  37. data/data/stop_words/lt.txt +507 -0
  38. data/data/stop_words/lv.txt +163 -0
  39. data/data/stop_words/mr.txt +99 -0
  40. data/data/stop_words/nl.txt +48 -0
  41. data/data/stop_words/no.txt +172 -0
  42. data/data/stop_words/pl.txt +138 -0
  43. data/data/stop_words/pt.txt +147 -0
  44. data/data/stop_words/ro.txt +281 -0
  45. data/data/stop_words/ru.txt +421 -0
  46. data/data/stop_words/sk.txt +173 -0
  47. data/data/stop_words/sv.txt +386 -0
  48. data/data/stop_words/th.txt +115 -0
  49. data/data/stop_words/tr.txt +114 -0
  50. data/data/stop_words/uk.txt +28 -0
  51. data/data/stop_words/ur.txt +513 -0
  52. data/data/stop_words/zh.txt +125 -0
  53. data/gemspec.yml +13 -12
  54. data/lib/wordlist/abstract_wordlist.rb +25 -0
  55. data/lib/wordlist/builder.rb +172 -138
  56. data/lib/wordlist/cli.rb +459 -0
  57. data/lib/wordlist/compression/reader.rb +72 -0
  58. data/lib/wordlist/compression/writer.rb +80 -0
  59. data/lib/wordlist/exceptions.rb +31 -0
  60. data/lib/wordlist/file.rb +177 -0
  61. data/lib/wordlist/format.rb +39 -0
  62. data/lib/wordlist/lexer/lang.rb +34 -0
  63. data/lib/wordlist/lexer/stop_words.rb +69 -0
  64. data/lib/wordlist/lexer.rb +221 -0
  65. data/lib/wordlist/list_methods.rb +462 -0
  66. data/lib/wordlist/modifiers/capitalize.rb +46 -0
  67. data/lib/wordlist/modifiers/downcase.rb +46 -0
  68. data/lib/wordlist/modifiers/gsub.rb +52 -0
  69. data/lib/wordlist/modifiers/modifier.rb +44 -0
  70. data/lib/wordlist/modifiers/mutate.rb +134 -0
  71. data/lib/wordlist/modifiers/mutate_case.rb +26 -0
  72. data/lib/wordlist/modifiers/sub.rb +98 -0
  73. data/lib/wordlist/modifiers/tr.rb +72 -0
  74. data/lib/wordlist/modifiers/upcase.rb +46 -0
  75. data/lib/wordlist/modifiers.rb +9 -0
  76. data/lib/wordlist/operators/binary_operator.rb +39 -0
  77. data/lib/wordlist/operators/concat.rb +48 -0
  78. data/lib/wordlist/operators/intersect.rb +56 -0
  79. data/lib/wordlist/operators/operator.rb +29 -0
  80. data/lib/wordlist/operators/power.rb +73 -0
  81. data/lib/wordlist/operators/product.rb +51 -0
  82. data/lib/wordlist/operators/subtract.rb +55 -0
  83. data/lib/wordlist/operators/unary_operator.rb +30 -0
  84. data/lib/wordlist/operators/union.rb +62 -0
  85. data/lib/wordlist/operators/unique.rb +53 -0
  86. data/lib/wordlist/operators.rb +8 -0
  87. data/lib/wordlist/unique_filter.rb +41 -61
  88. data/lib/wordlist/version.rb +4 -2
  89. data/lib/wordlist/words.rb +72 -0
  90. data/lib/wordlist.rb +104 -2
  91. data/spec/abstract_list_spec.rb +18 -0
  92. data/spec/builder_spec.rb +220 -76
  93. data/spec/cli_spec.rb +802 -0
  94. data/spec/compression/reader_spec.rb +137 -0
  95. data/spec/compression/writer_spec.rb +194 -0
  96. data/spec/file_spec.rb +269 -0
  97. data/spec/fixtures/wordlist.txt +15 -0
  98. data/spec/fixtures/wordlist.txt.bz2 +0 -0
  99. data/spec/fixtures/wordlist.txt.gz +0 -0
  100. data/spec/fixtures/wordlist.txt.xz +0 -0
  101. data/spec/fixtures/wordlist_with_ambiguous_format +3 -0
  102. data/spec/fixtures/wordlist_with_comments.txt +19 -0
  103. data/spec/fixtures/wordlist_with_empty_lines.txt +19 -0
  104. data/spec/format_spec.rb +50 -0
  105. data/spec/helpers/text.rb +3 -3
  106. data/spec/helpers/wordlist.rb +2 -2
  107. data/spec/lexer/lang_spec.rb +70 -0
  108. data/spec/lexer/stop_words_spec.rb +77 -0
  109. data/spec/lexer_spec.rb +718 -0
  110. data/spec/list_methods_spec.rb +181 -0
  111. data/spec/modifiers/capitalize_spec.rb +27 -0
  112. data/spec/modifiers/downcase_spec.rb +27 -0
  113. data/spec/modifiers/gsub_spec.rb +59 -0
  114. data/spec/modifiers/modifier_spec.rb +20 -0
  115. data/spec/modifiers/mutate_case_spec.rb +46 -0
  116. data/spec/modifiers/mutate_spec.rb +39 -0
  117. data/spec/modifiers/sub_spec.rb +98 -0
  118. data/spec/modifiers/tr_spec.rb +46 -0
  119. data/spec/modifiers/upcase_spec.rb +27 -0
  120. data/spec/operators/binary_operator_spec.rb +19 -0
  121. data/spec/operators/concat_spec.rb +26 -0
  122. data/spec/operators/intersect_spec.rb +37 -0
  123. data/spec/operators/operator_spec.rb +16 -0
  124. data/spec/operators/power_spec.rb +57 -0
  125. data/spec/operators/product_spec.rb +39 -0
  126. data/spec/operators/subtract_spec.rb +37 -0
  127. data/spec/operators/unary_operator_spec.rb +14 -0
  128. data/spec/operators/union_spec.rb +37 -0
  129. data/spec/operators/unique_spec.rb +25 -0
  130. data/spec/spec_helper.rb +2 -1
  131. data/spec/unique_filter_spec.rb +108 -18
  132. data/spec/wordlist_spec.rb +55 -3
  133. data/spec/words_spec.rb +41 -0
  134. data/wordlist.gemspec +1 -0
  135. metadata +164 -126
  136. data/lib/wordlist/builders/website.rb +0 -216
  137. data/lib/wordlist/builders.rb +0 -1
  138. data/lib/wordlist/flat_file.rb +0 -47
  139. data/lib/wordlist/list.rb +0 -162
  140. data/lib/wordlist/mutator.rb +0 -113
  141. data/lib/wordlist/parsers.rb +0 -74
  142. data/lib/wordlist/runners/list.rb +0 -116
  143. data/lib/wordlist/runners/runner.rb +0 -67
  144. data/lib/wordlist/runners.rb +0 -2
  145. data/scripts/benchmark +0 -59
  146. data/scripts/text/comedy_of_errors.txt +0 -4011
  147. data/spec/classes/parser_class.rb +0 -7
  148. data/spec/classes/test_list.rb +0 -9
  149. data/spec/flat_file_spec.rb +0 -25
  150. data/spec/list_spec.rb +0 -58
  151. data/spec/mutator_spec.rb +0 -43
  152. data/spec/parsers_spec.rb +0 -118
@@ -0,0 +1,63 @@
1
+ و
2
+ کە
3
+ ی
4
+ کرد
5
+ ئەوەی
6
+ سەر
7
+ دوو
8
+ هەروەها
9
+ لەو
10
+ دەکات
11
+ چەند
12
+ هەر
13
+ ئەو
14
+ ئەم
15
+ من
16
+ ئێمە
17
+ تۆ
18
+ ئێوە
19
+ ئەو
20
+ ئەوان
21
+ بە
22
+ پێ
23
+ بەبێ
24
+ بەدەم
25
+ بەلای
26
+ بەپێی
27
+ بەرلە
28
+ بەرەوی
29
+ بەرەوە
30
+ بەردەم
31
+ بێ
32
+ بێجگە
33
+ بۆ
34
+ دە
35
+ تێ
36
+ دەگەڵ
37
+ دوای
38
+ جگە
39
+ لە
40
+ لێ
41
+ لەبەر
42
+ لەبەینی
43
+ لەبابەت
44
+ لەبارەی
45
+ لەباتی
46
+ لەبن
47
+ لەبرێتی
48
+ لەدەم
49
+ لەگەڵ
50
+ لەلایەن
51
+ لەناو
52
+ لەنێو
53
+ لەپێناوی
54
+ لەرەوی
55
+ لەرێ
56
+ لەرێگا
57
+ لەسەر
58
+ لەژێر
59
+ ناو
60
+ نێوان
61
+ پاش
62
+ پێش
63
+ وەک
@@ -0,0 +1,507 @@
1
+ á
2
+ ákypai
3
+ ástriþai
4
+ ðájá
5
+ ðalia
6
+ ðe
7
+ ðiàjà
8
+ ðiàja
9
+ ðiàsias
10
+ ðiøjø
11
+ ðiøjø
12
+ ði
13
+ ðiaisiais
14
+ ðiajai
15
+ ðiajam
16
+ ðiajame
17
+ ðiapus
18
+ ðiedvi
19
+ ðieji
20
+ ðiesiems
21
+ ðioji
22
+ ðiojo
23
+ ðiojoje
24
+ ðiokia
25
+ ðioks
26
+ ðiosiomis
27
+ ðiosioms
28
+ ðiosios
29
+ ðiosios
30
+ ðiosiose
31
+ ðis
32
+ ðisai
33
+ ðit
34
+ ðita
35
+ ðitas
36
+ ðitiedvi
37
+ ðitokia
38
+ ðitoks
39
+ ðituodu
40
+ ðiuodu
41
+ ðiuoju
42
+ ðiuosiuose
43
+ ðiuosius
44
+ ðtai
45
+ þemiau
46
+
47
+ abi
48
+ abidvi
49
+ abiejø
50
+ abiejose
51
+ abiejuose
52
+ abiem
53
+ abigaliai
54
+ abipus
55
+ abu
56
+ abudu
57
+ ai
58
+ anàjà
59
+ anàjá
60
+ anàja
61
+ anàsias
62
+ anøjø
63
+ anøjø
64
+ ana
65
+ ana
66
+ anaiptol
67
+ anaisiais
68
+ anajai
69
+ anajam
70
+ anajame
71
+ anapus
72
+ anas
73
+ anasai
74
+ anasis
75
+ anei
76
+ aniedvi
77
+ anieji
78
+ aniesiems
79
+ anoji
80
+ anojo
81
+ anojoje
82
+ anokia
83
+ anoks
84
+ anosiomis
85
+ anosioms
86
+ anosios
87
+ anosios
88
+ anosiose
89
+ anot
90
+ ant
91
+ antai
92
+ anuodu
93
+ anuoju
94
+ anuosiuose
95
+ anuosius
96
+ apie
97
+ aplink
98
+ ar
99
+ ar
100
+ arba
101
+ argi
102
+ arti
103
+ aukðèiau
104
+ be
105
+ be
106
+ bei
107
+ beje
108
+ bemaþ
109
+ bent
110
+ bet
111
+ betgi
112
+ beveik
113
+ dëka
114
+ dël
115
+ dëlei
116
+ dëlto
117
+ dar
118
+ dargi
119
+ daugmaþ
120
+ deja
121
+ ech
122
+ et
123
+ gal
124
+ galbût
125
+ galgi
126
+ gan
127
+ gana
128
+ gi
129
+ greta
130
+
131
+ iðilgai
132
+ iðvis
133
+ idant
134
+ iki
135
+ iki
136
+ ir
137
+ irgi
138
+ it
139
+ itin
140
+ jàjà
141
+ jàja
142
+ jàsias
143
+ jájá
144
+ jøjø
145
+ jøjø
146
+ jûsø
147
+ jûs
148
+ jûsiðkë
149
+ jûsiðkis
150
+ jaisiais
151
+ jajai
152
+ jajam
153
+ jajame
154
+ jei
155
+ jeigu
156
+ ji
157
+ jiedu
158
+ jiedvi
159
+ jieji
160
+ jiesiems
161
+ jinai
162
+ jis
163
+ jisai
164
+ jog
165
+ joji
166
+ jojo
167
+ jojoje
168
+ jokia
169
+ joks
170
+ josiomis
171
+ josioms
172
+ josios
173
+ josios
174
+ josiose
175
+ judu
176
+ judvi
177
+ juk
178
+ jumis
179
+ jums
180
+ jumyse
181
+ juodu
182
+ juoju
183
+ juosiuose
184
+ juosius
185
+ jus
186
+ kaþin
187
+ kaþkas
188
+ kaþkatra
189
+ kaþkatras
190
+ kaþkokia
191
+ kaþkoks
192
+ kaþkuri
193
+ kaþkuris
194
+ kad
195
+ kada
196
+ kadangi
197
+ kai
198
+ kaip
199
+ kaip
200
+ kaipgi
201
+ kas
202
+ katra
203
+ katras
204
+ katriedvi
205
+ katruodu
206
+ kiaurai
207
+ kiek
208
+ kiekvienas
209
+ kieno
210
+ kita
211
+ kitas
212
+ kitokia
213
+ kitoks
214
+ kodël
215
+ kokia
216
+ koks
217
+ kol
218
+ kolei
219
+ kone
220
+ kuomet
221
+ kur
222
+ kurgi
223
+ kuri
224
+ kuriedvi
225
+ kuris
226
+ kuriuodu
227
+ lai
228
+ lig
229
+ ligi
230
+ link
231
+ lyg
232
+ mûsø
233
+ mûsiðkë
234
+ mûsiðkis
235
+ maþdaug
236
+ maþne
237
+ manàjà
238
+ manàjá
239
+ manàja
240
+ manàsias
241
+ manæs
242
+ manøjø
243
+ manøjø
244
+ man
245
+ manaisiais
246
+ manajai
247
+ manajam
248
+ manajame
249
+ manas
250
+ manasai
251
+ manasis
252
+ mane
253
+ maniðkë
254
+ maniðkis
255
+ manieji
256
+ maniesiems
257
+ manim
258
+ manimi
259
+ mano
260
+ manoji
261
+ manojo
262
+ manojoje
263
+ manosiomis
264
+ manosioms
265
+ manosios
266
+ manosios
267
+ manosiose
268
+ manuoju
269
+ manuosiuose
270
+ manuosius
271
+ manyje
272
+ mat
273
+ mes
274
+ mudu
275
+ mudvi
276
+ mumis
277
+ mums
278
+ mumyse
279
+ mus
280
+
281
+ na
282
+ nagi
283
+ ne
284
+ nebe
285
+ nebent
286
+ nebent
287
+ negi
288
+ negu
289
+ nei
290
+ nei
291
+ nejau
292
+ nejaugi
293
+ nekaip
294
+ nelyginant
295
+ nes
296
+ net
297
+ netgi
298
+ netoli
299
+ neva
300
+ nors
301
+ nors
302
+ nuo
303
+ o
304
+ ogi
305
+ ogi
306
+ oi
307
+ paèiø
308
+ paèiais
309
+ paèiam
310
+ paèiame
311
+ paèiu
312
+ paèiuose
313
+ paèius
314
+ paeiliui
315
+ pagal
316
+ pakeliui
317
+ palaipsniui
318
+ palei
319
+ pas
320
+ pasak
321
+ paskos
322
+ paskui
323
+ paskum
324
+ patá
325
+ pat
326
+ pati
327
+ patiems
328
+ paties
329
+ pats
330
+ patys
331
+ per
332
+ per
333
+ pernelyg
334
+ pirm
335
+ pirma
336
+ pirmiau
337
+ po
338
+ prieð
339
+ prieðais
340
+ prie
341
+ pro
342
+ pusiau
343
+ rasi
344
+ rodos
345
+ sau
346
+ savàjà
347
+ savàjá
348
+ savàja
349
+ savàsias
350
+ savæs
351
+ savøjø
352
+ savøjø
353
+ savaisiais
354
+ savajai
355
+ savajam
356
+ savajame
357
+ savas
358
+ savasai
359
+ savasis
360
+ save
361
+ saviðkë
362
+ saviðkis
363
+ savieji
364
+ saviesiems
365
+ savimi
366
+ savo
367
+ savoji
368
+ savojo
369
+ savojoje
370
+ savosiomis
371
+ savosioms
372
+ savosios
373
+ savosios
374
+ savosiose
375
+ savuoju
376
+ savuosiuose
377
+ savuosius
378
+ savyje
379
+ skersai
380
+ skradþiai
381
+ staèiai
382
+ su
383
+ sulig
384
+ tàjà
385
+ tàjá
386
+ tàja
387
+ tàsias
388
+ tøjø
389
+ tøjø
390
+ tûlas
391
+ taèiau
392
+ ta
393
+ tad
394
+ tai
395
+ tai
396
+ taigi
397
+ taigi
398
+ taip
399
+ taipogi
400
+ taisiais
401
+ tajai
402
+ tajam
403
+ tajame
404
+ tamsta
405
+ tarp
406
+ tarsi
407
+ tarsi
408
+ tartum
409
+ tartum
410
+ tarytum
411
+ tas
412
+ tasai
413
+ tau
414
+ tavàjà
415
+ tavàjá
416
+ tavàja
417
+ tavàsias
418
+ tavæs
419
+ tavøjø
420
+ tavøjø
421
+ tavaisiais
422
+ tavajai
423
+ tavajam
424
+ tavajame
425
+ tavas
426
+ tavasai
427
+ tavasis
428
+ tave
429
+ taviðkë
430
+ taviðkis
431
+ tavieji
432
+ taviesiems
433
+ tavimi
434
+ tavo
435
+ tavoji
436
+ tavojo
437
+ tavojoje
438
+ tavosiomis
439
+ tavosioms
440
+ tavosios
441
+ tavosios
442
+ tavosiose
443
+ tavuoju
444
+ tavuosiuose
445
+ tavuosius
446
+ tavyje
447
+ te
448
+ tegu
449
+ tegu
450
+ tegul
451
+ tegul
452
+ tiedvi
453
+ tieji
454
+ ties
455
+ tiesiems
456
+ tiesiog
457
+ tik
458
+ tik
459
+ tikriausiai
460
+ tiktai
461
+ tiktai
462
+ toji
463
+ tojo
464
+ tojoje
465
+ tokia
466
+ toks
467
+ tol
468
+ tolei
469
+ toliau
470
+ tosiomis
471
+ tosioms
472
+ tosios
473
+ tosios
474
+ tosiose
475
+ tu
476
+ tuodu
477
+ tuoju
478
+ tuosiuose
479
+ tuosius
480
+ turbût
481
+
482
+ uþtat
483
+ uþvis
484
+ vël
485
+ vëlgi
486
+ va
487
+ vai
488
+ viduj
489
+ vidury
490
+ vien
491
+ vienas
492
+ vienokia
493
+ vienoks
494
+ vietoj
495
+ virð
496
+ virðuj
497
+ virðum
498
+ vis
499
+ vis dëlto
500
+ visa
501
+ visas
502
+ visgi
503
+ visokia
504
+ visoks
505
+ vos
506
+ vos
507
+ ypaè
@@ -0,0 +1,163 @@
1
+ ārpus
2
+ šaipus
3
+ aiz
4
+ ap
5
+ apakš
6
+ apakšpus
7
+ arī
8
+ ar
9
+ ar
10
+ augšpus
11
+ būšu
12
+ būs
13
+ būsi
14
+ būsiet
15
+ būsim
16
+ būt
17
+ bet
18
+ bez
19
+ bijām
20
+ bijāt
21
+ bija
22
+ biji
23
+ biju
24
+ caur
25
+ dēļ
26
+ diemžēl
27
+ diezin
28
+ droši
29
+ esam
30
+ esat
31
+ esi
32
+ esmu
33
+ gan
34
+ gar
35
+ iekām
36
+ iekāms
37
+ iekš
38
+ iekšpus
39
+ iekam
40
+ iekams
41
+ ik
42
+ ir
43
+ it
44
+ itin
45
+ iz
46
+
47
+ ja
48
+ jau
49
+ jebšu
50
+ jeb
51
+ jel
52
+ jo
53
+
54
+ kļūšu
55
+ kļūs
56
+ kļūsi
57
+ kļūsiet
58
+ kļūsim
59
+ kļūst
60
+ kļūstam
61
+ kļūstat
62
+ kļūsti
63
+ kļūstu
64
+ kļūt
65
+ kļuvām
66
+ kļuvāt
67
+ kļuva
68
+ kļuvi
69
+ kļuvu
70
+ ka
71
+ kamēr
72
+ kaut
73
+ kolīdz
74
+ kopš
75
+ līdz
76
+ līdzko
77
+ labad
78
+ lai
79
+ lejpus
80
+
81
+ ne
82
+ nebūt
83
+ nedz
84
+ nekā
85
+ nevis
86
+ nezin
87
+ no
88
+ nu
89
+ otrpus
90
+ pār
91
+ pēc
92
+ pa
93
+ par
94
+ pat
95
+ pie
96
+ pirms
97
+ pret
98
+ priekš
99
+ starp
100
+
101
+ tādēļ
102
+ tālab
103
+ tāpēc
104
+ taču
105
+ tad
106
+ tak
107
+ tapāt
108
+ tapšu
109
+ tapi
110
+ taps
111
+ tapsi
112
+ tapsiet
113
+ tapsim
114
+ tapt
115
+ te
116
+ tiec
117
+ tiek
118
+ tiekam
119
+ tiekat
120
+ tieku
121
+ tikām
122
+ tikāt
123
+ tikšu
124
+ tik
125
+ tika
126
+ tikai
127
+ tiki
128
+ tikko
129
+ tiklīdz
130
+ tiklab
131
+ tiks
132
+ tiksiet
133
+ tiksim
134
+ tikt
135
+ tiku
136
+ tikvien
137
+ tomēr
138
+ topat
139
+ turpretī
140
+ turpretim
141
+ un
142
+ uz
143
+ vai
144
+ varēšu
145
+ varējām
146
+ varējāt
147
+ varēja
148
+ varēji
149
+ varēju
150
+ varēs
151
+ varēsi
152
+ varēsiet
153
+ varēsim
154
+ varēt
155
+ var
156
+ varat
157
+ viņpus
158
+ vien
159
+ vien
160
+ virs
161
+ virspus
162
+ vis
163
+ zem