wordlist 0.1.1 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (148) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/ruby.yml +27 -0
  3. data/.gitignore +6 -3
  4. data/ChangeLog.md +45 -1
  5. data/Gemfile +13 -0
  6. data/LICENSE.txt +1 -3
  7. data/README.md +266 -61
  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 +4 -10
  54. data/lib/wordlist/abstract_wordlist.rb +24 -0
  55. data/lib/wordlist/builder.rb +170 -138
  56. data/lib/wordlist/cli.rb +458 -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 +176 -0
  61. data/lib/wordlist/format.rb +38 -0
  62. data/lib/wordlist/lexer/lang.rb +32 -0
  63. data/lib/wordlist/lexer/stop_words.rb +68 -0
  64. data/lib/wordlist/lexer.rb +218 -0
  65. data/lib/wordlist/list_methods.rb +462 -0
  66. data/lib/wordlist/modifiers/capitalize.rb +45 -0
  67. data/lib/wordlist/modifiers/downcase.rb +45 -0
  68. data/lib/wordlist/modifiers/gsub.rb +51 -0
  69. data/lib/wordlist/modifiers/modifier.rb +44 -0
  70. data/lib/wordlist/modifiers/mutate.rb +133 -0
  71. data/lib/wordlist/modifiers/mutate_case.rb +25 -0
  72. data/lib/wordlist/modifiers/sub.rb +97 -0
  73. data/lib/wordlist/modifiers/tr.rb +71 -0
  74. data/lib/wordlist/modifiers/upcase.rb +45 -0
  75. data/lib/wordlist/modifiers.rb +8 -0
  76. data/lib/wordlist/operators/binary_operator.rb +38 -0
  77. data/lib/wordlist/operators/concat.rb +47 -0
  78. data/lib/wordlist/operators/intersect.rb +55 -0
  79. data/lib/wordlist/operators/operator.rb +29 -0
  80. data/lib/wordlist/operators/power.rb +72 -0
  81. data/lib/wordlist/operators/product.rb +50 -0
  82. data/lib/wordlist/operators/subtract.rb +54 -0
  83. data/lib/wordlist/operators/unary_operator.rb +29 -0
  84. data/lib/wordlist/operators/union.rb +61 -0
  85. data/lib/wordlist/operators/unique.rb +52 -0
  86. data/lib/wordlist/operators.rb +7 -0
  87. data/lib/wordlist/unique_filter.rb +40 -61
  88. data/lib/wordlist/version.rb +1 -1
  89. data/lib/wordlist/words.rb +71 -0
  90. data/lib/wordlist.rb +103 -2
  91. data/spec/abstract_list_spec.rb +18 -0
  92. data/spec/builder_spec.rb +220 -76
  93. data/spec/cli_spec.rb +801 -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 +258 -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 +652 -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/union_spec.rb +37 -0
  128. data/spec/operators/unique_spec.rb +25 -0
  129. data/spec/spec_helper.rb +2 -1
  130. data/spec/unique_filter_spec.rb +108 -18
  131. data/spec/wordlist_spec.rb +55 -3
  132. data/spec/words_spec.rb +41 -0
  133. metadata +183 -120
  134. data/lib/wordlist/builders/website.rb +0 -216
  135. data/lib/wordlist/builders.rb +0 -1
  136. data/lib/wordlist/flat_file.rb +0 -47
  137. data/lib/wordlist/list.rb +0 -162
  138. data/lib/wordlist/mutator.rb +0 -113
  139. data/lib/wordlist/parsers.rb +0 -74
  140. data/lib/wordlist/runners/list.rb +0 -116
  141. data/lib/wordlist/runners/runner.rb +0 -67
  142. data/lib/wordlist/runners.rb +0 -2
  143. data/scripts/benchmark +0 -59
  144. data/scripts/text/comedy_of_errors.txt +0 -4011
  145. data/spec/flat_file_spec.rb +0 -25
  146. data/spec/list_spec.rb +0 -58
  147. data/spec/mutator_spec.rb +0 -43
  148. data/spec/parsers_spec.rb +0 -118
@@ -0,0 +1,281 @@
1
+ acea
2
+ aceasta
3
+ această
4
+ aceea
5
+ acei
6
+ aceia
7
+ acel
8
+ acela
9
+ acele
10
+ acelea
11
+ acest
12
+ acesta
13
+ aceste
14
+ acestea
15
+ aceşti
16
+ aceştia
17
+ acolo
18
+ acord
19
+ acum
20
+ ai
21
+ aia
22
+ aibă
23
+ aici
24
+ al
25
+ ăla
26
+ ale
27
+ alea
28
+ ălea
29
+ altceva
30
+ altcineva
31
+ am
32
+ ar
33
+ are
34
+
35
+ aşadar
36
+ asemenea
37
+ asta
38
+ ăsta
39
+ astăzi
40
+ astea
41
+ ăstea
42
+ ăştia
43
+ asupra
44
+ aţi
45
+ au
46
+ avea
47
+ avem
48
+ aveţi
49
+ azi
50
+ bine
51
+ bucur
52
+ bună
53
+ ca
54
+
55
+ căci
56
+ când
57
+ care
58
+ cărei
59
+ căror
60
+ cărui
61
+ cât
62
+ câte
63
+ câţi
64
+ către
65
+ câtva
66
+ caut
67
+ ce
68
+ cel
69
+ ceva
70
+ chiar
71
+ cinci
72
+ cînd
73
+ cine
74
+ cineva
75
+ cît
76
+ cîte
77
+ cîţi
78
+ cîtva
79
+ contra
80
+ cu
81
+ cum
82
+ cumva
83
+ curând
84
+ curînd
85
+ da
86
+
87
+ dacă
88
+ dar
89
+ dată
90
+ datorită
91
+ dau
92
+ de
93
+ deci
94
+ deja
95
+ deoarece
96
+ departe
97
+ deşi
98
+ din
99
+ dinaintea
100
+ dintr-
101
+ dintre
102
+ doi
103
+ doilea
104
+ două
105
+ drept
106
+ după
107
+ ea
108
+ ei
109
+ el
110
+ ele
111
+ eram
112
+ este
113
+ eşti
114
+ eu
115
+ face
116
+ fără
117
+ fata
118
+ fi
119
+ fie
120
+ fiecare
121
+ fii
122
+ fim
123
+ fiţi
124
+ fiu
125
+ frumos
126
+ graţie
127
+ halbă
128
+ iar
129
+ ieri
130
+ îi
131
+ îl
132
+ îmi
133
+ împotriva
134
+ în
135
+ înainte
136
+ înaintea
137
+ încât
138
+ încît
139
+ încotro
140
+ între
141
+ întrucât
142
+ întrucît
143
+ îţi
144
+ la
145
+ lângă
146
+ le
147
+ li
148
+ lîngă
149
+ lor
150
+ lui
151
+
152
+ mai
153
+ mâine
154
+ mea
155
+ mei
156
+ mele
157
+ mereu
158
+ meu
159
+ mi
160
+ mie
161
+ mîine
162
+ mine
163
+ mult
164
+ multă
165
+ mulţi
166
+ mulţumesc
167
+ ne
168
+ nevoie
169
+ nicăieri
170
+ nici
171
+ nimeni
172
+ nimeri
173
+ nimic
174
+ nişte
175
+ noastră
176
+ noastre
177
+ noi
178
+ noroc
179
+ noştri
180
+ nostru
181
+ nouă
182
+ nu
183
+ opt
184
+ ori
185
+ oricând
186
+ oricare
187
+ oricât
188
+ orice
189
+ oricînd
190
+ oricine
191
+ oricît
192
+ oricum
193
+ oriunde
194
+ până
195
+ patra
196
+ patru
197
+ patrulea
198
+ pe
199
+ pentru
200
+ peste
201
+ pic
202
+ pînă
203
+ poate
204
+ pot
205
+ prea
206
+ prima
207
+ primul
208
+ prin
209
+ puţin
210
+ puţina
211
+ puţină
212
+ rog
213
+ sa
214
+
215
+ săi
216
+ sale
217
+ şapte
218
+ şase
219
+ sau
220
+ său
221
+ se
222
+ şi
223
+ sînt
224
+ sîntem
225
+ sînteţi
226
+ spate
227
+ spre
228
+ ştiu
229
+ sub
230
+ sunt
231
+ suntem
232
+ sunteţi
233
+ sută
234
+ ta
235
+ tăi
236
+ tale
237
+ tău
238
+ te
239
+ ţi
240
+ ţie
241
+ timp
242
+ tine
243
+ toată
244
+ toate
245
+ tot
246
+ toţi
247
+ totuşi
248
+ trei
249
+ treia
250
+ treilea
251
+ tu
252
+ un
253
+ una
254
+ unde
255
+ undeva
256
+ unei
257
+ uneia
258
+ unele
259
+ uneori
260
+ unii
261
+ unor
262
+ unora
263
+ unu
264
+ unui
265
+ unuia
266
+ unul
267
+
268
+ vi
269
+ voastră
270
+ voastre
271
+ voi
272
+ voştri
273
+ vostru
274
+ vouă
275
+ vreme
276
+ vreo
277
+ vreun
278
+ zece
279
+ zero
280
+ zi
281
+ zice
@@ -0,0 +1,421 @@
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
+ наиболее
64
+ недавно
65
+ миллионов
66
+ недалеко
67
+ между
68
+ низко
69
+ меля
70
+ нельзя
71
+ нибудь
72
+ непрерывно
73
+ наконец
74
+ никогда
75
+ никуда
76
+ нас
77
+ наш
78
+ нет
79
+ нею
80
+ неё
81
+ них
82
+ мира
83
+ наша
84
+ наше
85
+ наши
86
+ ничего
87
+ начала
88
+ нередко
89
+ несколько
90
+ обычно
91
+ опять
92
+ около
93
+ мы
94
+ ну
95
+ нх
96
+ от
97
+ отовсюду
98
+ особенно
99
+ нужно
100
+ очень
101
+ отсюда
102
+ в
103
+ во
104
+ вон
105
+ вниз
106
+ внизу
107
+ вокруг
108
+ вот
109
+ восемнадцать
110
+ восемнадцатый
111
+ восемь
112
+ восьмой
113
+ вверх
114
+ вам
115
+ вами
116
+ важное
117
+ важная
118
+ важные
119
+ важный
120
+ вдали
121
+ везде
122
+ ведь
123
+ вас
124
+ ваш
125
+ ваша
126
+ ваше
127
+ ваши
128
+ впрочем
129
+ весь
130
+ вдруг
131
+ вы
132
+ все
133
+ второй
134
+ всем
135
+ всеми
136
+ времени
137
+ время
138
+ всему
139
+ всего
140
+ всегда
141
+ всех
142
+ всею
143
+ всю
144
+ вся
145
+ всё
146
+ всюду
147
+ г
148
+ год
149
+ говорил
150
+ говорит
151
+ года
152
+ году
153
+ где
154
+ да
155
+ ее
156
+ за
157
+ из
158
+ ли
159
+ же
160
+ им
161
+ до
162
+ по
163
+ ими
164
+ под
165
+ иногда
166
+ довольно
167
+ именно
168
+ долго
169
+ позже
170
+ более
171
+ должно
172
+ пожалуйста
173
+ значит
174
+ иметь
175
+ больше
176
+ пока
177
+ ему
178
+ имя
179
+ пор
180
+ пора
181
+ потом
182
+ потому
183
+ после
184
+ почему
185
+ почти
186
+ посреди
187
+ ей
188
+ два
189
+ две
190
+ двенадцать
191
+ двенадцатый
192
+ двадцать
193
+ двадцатый
194
+ двух
195
+ его
196
+ дел
197
+ или
198
+ без
199
+ день
200
+ занят
201
+ занята
202
+ занято
203
+ заняты
204
+ действительно
205
+ давно
206
+ девятнадцать
207
+ девятнадцатый
208
+ девять
209
+ девятый
210
+ даже
211
+ алло
212
+ жизнь
213
+ далеко
214
+ близко
215
+ здесь
216
+ дальше
217
+ для
218
+ лет
219
+ зато
220
+ даром
221
+ первый
222
+ перед
223
+ затем
224
+ зачем
225
+ лишь
226
+ десять
227
+ десятый
228
+ ею
229
+ её
230
+ их
231
+ бы
232
+ еще
233
+ при
234
+ был
235
+ про
236
+ процентов
237
+ против
238
+ просто
239
+ бывает
240
+ бывь
241
+ если
242
+ люди
243
+ была
244
+ были
245
+ было
246
+ будем
247
+ будет
248
+ будете
249
+ будешь
250
+ прекрасно
251
+ буду
252
+ будь
253
+ будто
254
+ будут
255
+ ещё
256
+ пятнадцать
257
+ пятнадцатый
258
+ друго
259
+ другое
260
+ другой
261
+ другие
262
+ другая
263
+ других
264
+ есть
265
+ пять
266
+ быть
267
+ лучше
268
+ пятый
269
+ к
270
+ ком
271
+ конечно
272
+ кому
273
+ кого
274
+ когда
275
+ которой
276
+ которого
277
+ которая
278
+ которые
279
+ который
280
+ которых
281
+ кем
282
+ каждое
283
+ каждая
284
+ каждые
285
+ каждый
286
+ кажется
287
+ как
288
+ какой
289
+ какая
290
+ кто
291
+ кроме
292
+ куда
293
+ кругом
294
+ с
295
+ т
296
+ у
297
+ я
298
+ та
299
+ те
300
+ уж
301
+ со
302
+ то
303
+ том
304
+ снова
305
+ тому
306
+ совсем
307
+ того
308
+ тогда
309
+ тоже
310
+ собой
311
+ тобой
312
+ собою
313
+ тобою
314
+ сначала
315
+ только
316
+ уметь
317
+ тот
318
+ тою
319
+ хорошо
320
+ хотеть
321
+ хочешь
322
+ хоть
323
+ хотя
324
+ свое
325
+ свои
326
+ твой
327
+ своей
328
+ своего
329
+ своих
330
+ свою
331
+ твоя
332
+ твоё
333
+ раз
334
+ уже
335
+ сам
336
+ там
337
+ тем
338
+ чем
339
+ сама
340
+ сами
341
+ теми
342
+ само
343
+ рано
344
+ самом
345
+ самому
346
+ самой
347
+ самого
348
+ семнадцать
349
+ семнадцатый
350
+ самим
351
+ самими
352
+ самих
353
+ саму
354
+ семь
355
+ чему
356
+ раньше
357
+ сейчас
358
+ чего
359
+ сегодня
360
+ себе
361
+ тебе
362
+ сеаой
363
+ человек
364
+ разве
365
+ теперь
366
+ себя
367
+ тебя
368
+ седьмой
369
+ спасибо
370
+ слишком
371
+ так
372
+ такое
373
+ такой
374
+ такие
375
+ также
376
+ такая
377
+ сих
378
+ тех
379
+ чаще
380
+ четвертый
381
+ через
382
+ часто
383
+ шестой
384
+ шестнадцать
385
+ шестнадцатый
386
+ шесть
387
+ четыре
388
+ четырнадцать
389
+ четырнадцатый
390
+ сколько
391
+ сказал
392
+ сказала
393
+ сказать
394
+ ту
395
+ ты
396
+ три
397
+ эта
398
+ эти
399
+ что
400
+ это
401
+ чтоб
402
+ этом
403
+ этому
404
+ этой
405
+ этого
406
+ чтобы
407
+ этот
408
+ стал
409
+ туда
410
+ этим
411
+ этими
412
+ рядом
413
+ тринадцать
414
+ тринадцатый
415
+ этих
416
+ третий
417
+ тут
418
+ эту
419
+ суть
420
+ чуть
421
+ тысяч