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,99 @@
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
+ व्यकत
@@ -0,0 +1,48 @@
1
+ aan
2
+ af
3
+ al
4
+ als
5
+ bij
6
+ dan
7
+ dat
8
+ die
9
+ dit
10
+ een
11
+ en
12
+ er
13
+ had
14
+ heb
15
+ hem
16
+ het
17
+ hij
18
+ hoe
19
+ hun
20
+ ik
21
+ in
22
+ is
23
+ je
24
+ kan
25
+ me
26
+ men
27
+ met
28
+ mij
29
+ nog
30
+ nu
31
+ of
32
+ ons
33
+ ook
34
+ te
35
+ tot
36
+ uit
37
+ van
38
+ was
39
+ wat
40
+ we
41
+ wel
42
+ wij
43
+ zal
44
+ ze
45
+ zei
46
+ zij
47
+ zo
48
+ zou
@@ -0,0 +1,172 @@
1
+ å
2
+ alle
3
+ at
4
+ av
5
+ både
6
+ båe
7
+ bare
8
+ begge
9
+ ble
10
+ blei
11
+ bli
12
+ blir
13
+ blitt
14
+
15
+ da
16
+ de
17
+ deg
18
+ dei
19
+ deim
20
+ deira
21
+ deires
22
+ dem
23
+ den
24
+ denne
25
+ der
26
+ dere
27
+ deres
28
+ det
29
+ dette
30
+ di
31
+ din
32
+ disse
33
+ ditt
34
+ du
35
+ dykk
36
+ dykkar
37
+ eg
38
+ ein
39
+ eit
40
+ eitt
41
+ eller
42
+ elles
43
+ en
44
+ enn
45
+ er
46
+ et
47
+ ett
48
+ etter
49
+ før
50
+ for
51
+ fordi
52
+ fra
53
+ ha
54
+ hadde
55
+ han
56
+ hans
57
+ har
58
+ hennar
59
+ henne
60
+ hennes
61
+ her
62
+ hjå
63
+ ho
64
+ hoe
65
+ honom
66
+ hoss
67
+ hossen
68
+ hun
69
+ hva
70
+ hvem
71
+ hver
72
+ hvilke
73
+ hvilken
74
+ hvis
75
+ hvor
76
+ hvordan
77
+ hvorfor
78
+ i
79
+ ikke
80
+ ikkje
81
+ ingen
82
+ ingi
83
+ inkje
84
+ inn
85
+ inni
86
+ ja
87
+ jeg
88
+ kan
89
+ kom
90
+ korleis
91
+ korso
92
+ kun
93
+ kunne
94
+ kva
95
+ kvar
96
+ kvarhelst
97
+ kven
98
+ kvi
99
+ kvifor
100
+ man
101
+ mange
102
+ me
103
+ med
104
+ medan
105
+ meg
106
+ meget
107
+ mellom
108
+ men
109
+ mi
110
+ min
111
+ mine
112
+ mitt
113
+ mot
114
+ mykje
115
+
116
+ når
117
+ ned
118
+ no
119
+ noe
120
+ noen
121
+ noka
122
+ noko
123
+ nokon
124
+ nokor
125
+ nokre
126
+ og
127
+ også
128
+ om
129
+ opp
130
+ oss
131
+ over
132
+
133
+
134
+ sånn
135
+ samme
136
+ seg
137
+ selv
138
+ si
139
+ sia
140
+ sidan
141
+ siden
142
+ sin
143
+ sine
144
+ sitt
145
+ sjøl
146
+ skal
147
+ skulle
148
+ slik
149
+ so
150
+ som
151
+ somme
152
+ somt
153
+ til
154
+ um
155
+ upp
156
+ ut
157
+ uten
158
+ vår
159
+ være
160
+ vært
161
+ var
162
+ vart
163
+ varte
164
+ ved
165
+ vere
166
+ verte
167
+ vi
168
+ vil
169
+ ville
170
+ vore
171
+ vors
172
+ vort
@@ -0,0 +1,138 @@
1
+ ach
2
+ aj
3
+ albo
4
+ bardzo
5
+ bez
6
+ bo
7
+ być
8
+ ci
9
+ cię
10
+ ciebie
11
+ co
12
+ czy
13
+ daleko
14
+ dla
15
+ dlaczego
16
+ dlatego
17
+ do
18
+ dobrze
19
+ dokąd
20
+ dość
21
+ dużo
22
+ dwa
23
+ dwaj
24
+ dwie
25
+ dwoje
26
+ dziś
27
+ dzisiaj
28
+ gdyby
29
+ gdzie
30
+ go
31
+ ich
32
+ ile
33
+ im
34
+ inny
35
+ ja
36
+
37
+ jak
38
+ jakby
39
+ jaki
40
+ je
41
+ jeden
42
+ jedna
43
+ jedno
44
+ jego
45
+ jej
46
+ jemu
47
+ jeśli
48
+ jest
49
+ jestem
50
+ jeżeli
51
+ już
52
+ każdy
53
+ kiedy
54
+ kierunku
55
+ kto
56
+ ku
57
+ lub
58
+ ma
59
+ mają
60
+ mam
61
+ mi
62
+ mną
63
+ mnie
64
+ moi
65
+ mój
66
+ moja
67
+ moje
68
+ może
69
+ mu
70
+ my
71
+ na
72
+ nam
73
+ nami
74
+ nas
75
+ nasi
76
+ nasz
77
+ nasza
78
+ nasze
79
+ natychmiast
80
+ nią
81
+ nic
82
+ nich
83
+ nie
84
+ niego
85
+ niej
86
+ niemu
87
+ nigdy
88
+ nim
89
+ nimi
90
+ niż
91
+ obok
92
+ od
93
+ około
94
+ on
95
+ ona
96
+ one
97
+ oni
98
+ ono
99
+ owszem
100
+ po
101
+ pod
102
+ ponieważ
103
+ przed
104
+ przedtem
105
+
106
+ sam
107
+ sama
108
+ się
109
+ skąd
110
+ tak
111
+ taki
112
+ tam
113
+ ten
114
+ to
115
+ tobą
116
+ tobie
117
+ tu
118
+ tutaj
119
+ twoi
120
+ twój
121
+ twoja
122
+ twoje
123
+ ty
124
+ wam
125
+ wami
126
+ was
127
+ wasi
128
+ wasz
129
+ wasza
130
+ wasze
131
+ we
132
+ więc
133
+ wszystko
134
+ wtedy
135
+ wy
136
+ żaden
137
+ zawsze
138
+ że
@@ -0,0 +1,147 @@
1
+ último
2
+ é
3
+ acerca
4
+ agora
5
+ algmas
6
+ alguns
7
+ ali
8
+ ambos
9
+ antes
10
+ apontar
11
+ aquela
12
+ aquelas
13
+ aquele
14
+ aqueles
15
+ aqui
16
+ atrás
17
+ bem
18
+ bom
19
+ cada
20
+ caminho
21
+ cima
22
+ com
23
+ como
24
+ comprido
25
+ conhecido
26
+ corrente
27
+ das
28
+ debaixo
29
+ dentro
30
+ desde
31
+ desligado
32
+ deve
33
+ devem
34
+ deverá
35
+ direita
36
+ diz
37
+ dizer
38
+ dois
39
+ dos
40
+ e
41
+ ela
42
+ ele
43
+ eles
44
+ em
45
+ enquanto
46
+ então
47
+ está
48
+ estão
49
+ estado
50
+ estar
51
+ estará
52
+ este
53
+ estes
54
+ esteve
55
+ estive
56
+ estivemos
57
+ estiveram
58
+ eu
59
+ fará
60
+ faz
61
+ fazer
62
+ fazia
63
+ fez
64
+ fim
65
+ foi
66
+ fora
67
+ horas
68
+ iniciar
69
+ inicio
70
+ ir
71
+ irá
72
+ ista
73
+ iste
74
+ isto
75
+ ligado
76
+ maioria
77
+ maiorias
78
+ mais
79
+ mas
80
+ mesmo
81
+ meu
82
+ muito
83
+ muitos
84
+ nós
85
+ não
86
+ nome
87
+ nosso
88
+ novo
89
+ o
90
+ onde
91
+ os
92
+ ou
93
+ outro
94
+ para
95
+ parte
96
+ pegar
97
+ pelo
98
+ pessoas
99
+ pode
100
+ poderá
101
+ podia
102
+ por
103
+ porque
104
+ povo
105
+ promeiro
106
+ quê
107
+ qual
108
+ qualquer
109
+ quando
110
+ quem
111
+ quieto
112
+ são
113
+ saber
114
+ sem
115
+ ser
116
+ seu
117
+ somente
118
+ têm
119
+ tal
120
+ também
121
+ tem
122
+ tempo
123
+ tenho
124
+ tentar
125
+ tentaram
126
+ tente
127
+ tentei
128
+ teu
129
+ teve
130
+ tipo
131
+ tive
132
+ todos
133
+ trabalhar
134
+ trabalho
135
+ tu
136
+ um
137
+ uma
138
+ umas
139
+ uns
140
+ usa
141
+ usar
142
+ valor
143
+ veja
144
+ ver
145
+ verdade
146
+ verdadeiro
147
+ você