random-words 1.0.5 → 1.0.6

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 (173) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec_status +148 -39
  3. data/.rubocop.yml +1 -0
  4. data/CHANGELOG.md +42 -0
  5. data/Gemfile.lock +4 -1
  6. data/README.md +153 -4
  7. data/bin/randw +195 -49
  8. data/lib/random-words/array.rb +51 -0
  9. data/lib/random-words/config.rb +248 -0
  10. data/lib/random-words/generator.rb +239 -93
  11. data/lib/random-words/hash.rb +16 -0
  12. data/lib/random-words/html2markdown.rb +205 -0
  13. data/lib/random-words/lorem-markdown.rb +398 -0
  14. data/lib/random-words/number-to-word.rb +137 -0
  15. data/lib/random-words/source.rb +105 -0
  16. data/lib/random-words/string.rb +221 -47
  17. data/lib/random-words/table-cleanup.rb +210 -0
  18. data/lib/random-words/version.rb +1 -1
  19. data/lib/random-words/words/1984/adjectives.txt +103 -0
  20. data/lib/random-words/words/1984/adverbs.txt +92 -0
  21. data/lib/random-words/words/1984/articles-plural.txt +10 -0
  22. data/lib/random-words/words/1984/articles-singular.txt +10 -0
  23. data/lib/random-words/words/1984/clauses.txt +79 -0
  24. data/lib/random-words/words/1984/config.yml +4 -0
  25. data/lib/random-words/words/1984/conjunctions-coordinating.txt +20 -0
  26. data/lib/random-words/words/1984/conjunctions-subordinate.txt +29 -0
  27. data/lib/random-words/words/1984/names.txt +74 -0
  28. data/lib/random-words/words/1984/nouns-plural.txt +89 -0
  29. data/lib/random-words/words/1984/nouns-singular.txt +74 -0
  30. data/lib/random-words/words/1984/numbers.yml +5 -0
  31. data/lib/random-words/words/1984/prepositions.txt +89 -0
  32. data/lib/random-words/words/1984/terminators.txt +16 -0
  33. data/lib/random-words/words/1984/verbs-passive.txt +83 -0
  34. data/lib/random-words/words/1984/verbs-plural.txt +91 -0
  35. data/lib/random-words/words/1984/verbs-singular.txt +110 -0
  36. data/lib/random-words/words/alice/adjectives.txt +80 -0
  37. data/lib/random-words/words/alice/adverbs.txt +87 -0
  38. data/lib/random-words/words/alice/articles-plural.txt +10 -0
  39. data/lib/random-words/words/alice/articles-singular.txt +10 -0
  40. data/lib/random-words/words/alice/clauses.txt +81 -0
  41. data/lib/random-words/words/alice/config.yml +4 -0
  42. data/lib/random-words/words/alice/conjunctions-coordinating.txt +20 -0
  43. data/lib/random-words/words/alice/conjunctions-subordinate.txt +29 -0
  44. data/lib/random-words/words/alice/names.txt +74 -0
  45. data/lib/random-words/words/alice/nouns-plural.txt +95 -0
  46. data/lib/random-words/words/alice/nouns-singular.txt +82 -0
  47. data/lib/random-words/words/alice/numbers.yml +5 -0
  48. data/lib/random-words/words/alice/prepositions.txt +45 -0
  49. data/lib/random-words/words/alice/terminators.txt +16 -0
  50. data/lib/random-words/words/alice/verbs-passive.txt +495 -0
  51. data/lib/random-words/words/alice/verbs-plural.txt +115 -0
  52. data/lib/random-words/words/alice/verbs-singular.txt +97 -0
  53. data/lib/random-words/words/bacon/clauses.txt +592 -592
  54. data/lib/random-words/words/bacon/config.yml +4 -0
  55. data/lib/random-words/words/bacon/conjunctions-coordinating.txt +20 -0
  56. data/lib/random-words/words/bacon/names.txt +74 -0
  57. data/lib/random-words/words/bacon/numbers.yml +5 -0
  58. data/lib/random-words/words/bacon/prepositions.txt +45 -0
  59. data/lib/random-words/words/bacon/terminators.txt +16 -0
  60. data/lib/random-words/words/corporate/config.yml +4 -0
  61. data/lib/random-words/words/corporate/conjunctions-coordinating.txt +20 -0
  62. data/lib/random-words/words/corporate/names.txt +74 -0
  63. data/lib/random-words/words/corporate/numbers.yml +5 -0
  64. data/lib/random-words/words/corporate/prepositions.txt +45 -0
  65. data/lib/random-words/words/corporate/terminators.txt +16 -0
  66. data/lib/random-words/words/doctor/adjectives.txt +92 -0
  67. data/lib/random-words/words/doctor/adverbs.txt +92 -0
  68. data/lib/random-words/words/doctor/articles-plural.txt +10 -0
  69. data/lib/random-words/words/doctor/articles-singular.txt +10 -0
  70. data/lib/random-words/words/doctor/clauses.txt +83 -0
  71. data/lib/random-words/words/doctor/config.yml +10 -0
  72. data/lib/random-words/words/doctor/conjunctions-coordinating.txt +20 -0
  73. data/lib/random-words/words/doctor/conjunctions-subordinate.txt +29 -0
  74. data/lib/random-words/words/doctor/names.txt +74 -0
  75. data/lib/random-words/words/doctor/nouns-plural.txt +84 -0
  76. data/lib/random-words/words/doctor/nouns-singular.txt +84 -0
  77. data/lib/random-words/words/doctor/numbers.yml +5 -0
  78. data/lib/random-words/words/doctor/prepositions.txt +45 -0
  79. data/lib/random-words/words/doctor/terminators.txt +16 -0
  80. data/lib/random-words/words/doctor/verbs-passive.txt +83 -0
  81. data/lib/random-words/words/doctor/verbs-plural.txt +88 -0
  82. data/lib/random-words/words/doctor/verbs-singular.txt +83 -0
  83. data/lib/random-words/words/english/clauses.txt +592 -592
  84. data/lib/random-words/words/english/config.yml +4 -0
  85. data/lib/random-words/words/english/conjunctions-coordinating.txt +20 -0
  86. data/lib/random-words/words/english/names.txt +74 -0
  87. data/lib/random-words/words/english/numbers.yml +5 -0
  88. data/lib/random-words/words/english/prepositions.txt +45 -0
  89. data/lib/random-words/words/english/terminators.txt +16 -0
  90. data/lib/random-words/words/english/verbs-plural.txt +1 -0
  91. data/lib/random-words/words/english/verbs-singular.txt +1 -0
  92. data/lib/random-words/words/foulmouth/adjectives.txt +89 -0
  93. data/lib/random-words/words/foulmouth/adverbs.txt +97 -0
  94. data/lib/random-words/words/foulmouth/articles-plural.txt +10 -0
  95. data/lib/random-words/words/foulmouth/articles-singular.txt +10 -0
  96. data/lib/random-words/words/foulmouth/clauses.txt +74 -0
  97. data/lib/random-words/words/foulmouth/config.yml +4 -0
  98. data/lib/random-words/words/foulmouth/conjunctions-coordinating.txt +20 -0
  99. data/lib/random-words/words/foulmouth/conjunctions-subordinate.txt +29 -0
  100. data/lib/random-words/words/foulmouth/names.txt +74 -0
  101. data/lib/random-words/words/foulmouth/nouns-plural.txt +96 -0
  102. data/lib/random-words/words/foulmouth/nouns-singular.txt +99 -0
  103. data/lib/random-words/words/foulmouth/numbers.yml +5 -0
  104. data/lib/random-words/words/foulmouth/prepositions.txt +35 -0
  105. data/lib/random-words/words/foulmouth/terminators.txt +16 -0
  106. data/lib/random-words/words/foulmouth/verbs-passive.txt +143 -0
  107. data/lib/random-words/words/foulmouth/verbs-plural.txt +91 -0
  108. data/lib/random-words/words/foulmouth/verbs-singular.txt +104 -0
  109. data/lib/random-words/words/hipster/adjectives.txt +100 -0
  110. data/lib/random-words/words/hipster/adverbs.txt +89 -0
  111. data/lib/random-words/words/hipster/articles-plural.txt +10 -0
  112. data/lib/random-words/words/hipster/articles-singular.txt +10 -0
  113. data/lib/random-words/words/hipster/clauses.txt +180 -0
  114. data/lib/random-words/words/hipster/config.yml +4 -0
  115. data/lib/random-words/words/hipster/conjunctions-coordinating.txt +20 -0
  116. data/lib/random-words/words/hipster/conjunctions-subordinate.txt +29 -0
  117. data/lib/random-words/words/hipster/names.txt +74 -0
  118. data/lib/random-words/words/hipster/nouns-plural.txt +96 -0
  119. data/lib/random-words/words/hipster/nouns-singular.txt +100 -0
  120. data/lib/random-words/words/hipster/numbers.yml +5 -0
  121. data/lib/random-words/words/hipster/prepositions.txt +45 -0
  122. data/lib/random-words/words/hipster/terminators.txt +16 -0
  123. data/lib/random-words/words/hipster/verbs-passive.txt +88 -0
  124. data/lib/random-words/words/hipster/verbs-plural.txt +106 -0
  125. data/lib/random-words/words/hipster/verbs-singular.txt +114 -0
  126. data/lib/random-words/words/latin/config.yml +4 -0
  127. data/lib/random-words/words/latin/conjunctions-coordinating.txt +15 -0
  128. data/lib/random-words/words/latin/names.txt +74 -0
  129. data/lib/random-words/words/latin/numbers.yml +5 -0
  130. data/lib/random-words/words/latin/prepositions.txt +18 -0
  131. data/lib/random-words/words/latin/terminators.txt +16 -0
  132. data/lib/random-words/words/spanish/adjectives.txt +81 -0
  133. data/lib/random-words/words/spanish/adverbs.txt +87 -0
  134. data/lib/random-words/words/spanish/articles-plural.txt +4 -0
  135. data/lib/random-words/words/spanish/articles-singular.txt +4 -0
  136. data/lib/random-words/words/spanish/clauses.txt +74 -0
  137. data/lib/random-words/words/spanish/config.yml +4 -0
  138. data/lib/random-words/words/spanish/conjunctions-coordinating.txt +8 -0
  139. data/lib/random-words/words/spanish/conjunctions-subordinate.txt +16 -0
  140. data/lib/random-words/words/spanish/names.txt +74 -0
  141. data/lib/random-words/words/spanish/nouns-plural.txt +92 -0
  142. data/lib/random-words/words/spanish/nouns-singular.txt +125 -0
  143. data/lib/random-words/words/spanish/numbers.yml +5 -0
  144. data/lib/random-words/words/spanish/prepositions.txt +31 -0
  145. data/lib/random-words/words/spanish/terminators.txt +17 -0
  146. data/lib/random-words/words/spanish/verbs-passive.txt +495 -0
  147. data/lib/random-words/words/spanish/verbs-plural.txt +326 -0
  148. data/lib/random-words/words/spanish/verbs-singular.txt +351 -0
  149. data/lib/random-words/words/veggie/adjectives.txt +111 -0
  150. data/lib/random-words/words/veggie/adverbs.txt +81 -0
  151. data/lib/random-words/words/veggie/articles-plural.txt +10 -0
  152. data/lib/random-words/words/veggie/articles-singular.txt +10 -0
  153. data/lib/random-words/words/veggie/clauses.txt +57 -0
  154. data/lib/random-words/words/veggie/config.yml +4 -0
  155. data/lib/random-words/words/veggie/conjunctions-coordinating.txt +20 -0
  156. data/lib/random-words/words/veggie/conjunctions-subordinate.txt +29 -0
  157. data/lib/random-words/words/veggie/names.txt +74 -0
  158. data/lib/random-words/words/veggie/nouns-plural.txt +78 -0
  159. data/lib/random-words/words/veggie/nouns-singular.txt +105 -0
  160. data/lib/random-words/words/veggie/numbers.yml +5 -0
  161. data/lib/random-words/words/veggie/prepositions.txt +45 -0
  162. data/lib/random-words/words/veggie/terminators.txt +16 -0
  163. data/lib/random-words/words/veggie/verbs-passive.txt +56 -0
  164. data/lib/random-words/words/veggie/verbs-plural.txt +79 -0
  165. data/lib/random-words/words/veggie/verbs-singular.txt +79 -0
  166. data/lib/random-words.rb +28 -0
  167. data/random-words.gemspec +2 -0
  168. data/src/_README.md +153 -4
  169. metadata +168 -7
  170. data/lib/random-words/words/bacon/numbers.txt +0 -21
  171. data/lib/random-words/words/corporate/numbers.txt +0 -21
  172. data/lib/random-words/words/english/numbers.txt +0 -21
  173. data/lib/random-words/words/latin/numbers.txt +0 -21
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c1422c6aec433ac2d914761363e469403476d7dd95ada1506dedab19c8824b15
4
- data.tar.gz: dbc0c6de7230b951269455ca632f32249e2b08e22a6ac5bb8b3f0279951fb3f0
3
+ metadata.gz: 93fe5e094ab5456c93398e2e51af865c0a0c6a8846ed5fcf21a47a4369ca8932
4
+ data.tar.gz: 2971b34d0df1683753112843eacbef9f1412f4241434739ef59197fa259d5290
5
5
  SHA512:
6
- metadata.gz: fdb6f7b4779aa9c27c07df7d77ffd02a1f8715c5987f89da4bdeb666fc6f548c9ce9f795874125cda44da9fa89fc0629cdd1865ed4f1121340b1c8af68e4ea51
7
- data.tar.gz: b565c7dc5d1f8c97130225e5b3aa5b79b839421bc74ff333fd3ce476c8aaf604d80e16a9453dcef31d4c4809c92df437b9440455ab6eeb66e14d5f12bad24706
6
+ metadata.gz: d839ddb848ab02efb2ecd3e8c46ebd9b5f37c01537612d0e297d779fc67b109fd8c8f8456aaf3b7686fb98e5a35717ca22331df2dc37eaebe6cdbc6636eb91d6
7
+ data.tar.gz: 8549612fa5fd2b237a775783a18fda7c58737fcc48434cfdd8d69567d69c158325738073606e2599b656dc3847d2caef38df50902876a44bd8c80aa47d853f45
data/.rspec_status CHANGED
@@ -1,39 +1,148 @@
1
- example_id | status | run_time |
2
- ---------------------------------- | ------ | --------------- |
3
- ./spec/generator_spec.rb[1:1:1] | passed | 0.00343 seconds |
4
- ./spec/generator_spec.rb[1:2:1] | passed | 0.00242 seconds |
5
- ./spec/generator_spec.rb[1:3:1] | passed | 0.0016 seconds |
6
- ./spec/generator_spec.rb[1:4:1] | passed | 0.00094 seconds |
7
- ./spec/generator_spec.rb[1:5:1] | passed | 0.00259 seconds |
8
- ./spec/generator_spec.rb[1:5:2] | passed | 0.00107 seconds |
9
- ./spec/generator_spec.rb[1:5:3] | passed | 0.00061 seconds |
10
- ./spec/generator_spec.rb[1:5:4] | passed | 0.00099 seconds |
11
- ./spec/generator_spec.rb[1:5:5] | passed | 0.00092 seconds |
12
- ./spec/generator_spec.rb[1:6:1] | passed | 0.00113 seconds |
13
- ./spec/generator_spec.rb[1:7:1] | passed | 0.00059 seconds |
14
- ./spec/generator_spec.rb[1:7:2] | passed | 0.00129 seconds |
15
- ./spec/generator_spec.rb[1:7:3] | passed | 0.00067 seconds |
16
- ./spec/generator_spec.rb[1:8:1] | passed | 0.00103 seconds |
17
- ./spec/generator_spec.rb[1:9:1] | passed | 0.00069 seconds |
18
- ./spec/generator_spec.rb[1:10:1] | passed | 0.00071 seconds |
19
- ./spec/generator_spec.rb[1:11:1] | passed | 0.0005 seconds |
20
- ./spec/generator_spec.rb[1:12:1] | passed | 0.00224 seconds |
21
- ./spec/generator_spec.rb[1:13:1] | passed | 0.0005 seconds |
22
- ./spec/generator_spec.rb[1:13:2] | passed | 0.00055 seconds |
23
- ./spec/generator_spec.rb[1:14:1] | passed | 0.0005 seconds |
24
- ./spec/generator_spec.rb[1:14:2] | passed | 0.00077 seconds |
25
- ./spec/hello_world_spec.rb[1:1] | passed | 0.00003 seconds |
26
- ./spec/initialize_spec.rb[1:1:1] | passed | 0.00052 seconds |
27
- ./spec/initialize_spec.rb[1:1:2] | passed | 0.00049 seconds |
28
- ./spec/initialize_spec.rb[1:1:3] | passed | 0.00048 seconds |
29
- ./spec/initialize_spec.rb[1:1:4] | passed | 0.00043 seconds |
30
- ./spec/initialize_spec.rb[1:1:5:1] | passed | 0.00073 seconds |
31
- ./spec/initialize_spec.rb[1:1:6:1] | passed | 0.00054 seconds |
32
- ./spec/module_spec.rb[1:1] | passed | 0.00059 seconds |
33
- ./spec/string_spec.rb[1:1:1] | passed | 0.00003 seconds |
34
- ./spec/string_spec.rb[1:2:1] | passed | 0.00002 seconds |
35
- ./spec/string_spec.rb[1:2:2] | passed | 0.00002 seconds |
36
- ./spec/string_spec.rb[1:2:3] | passed | 0.00002 seconds |
37
- ./spec/string_spec.rb[1:3:1] | passed | 0.00005 seconds |
38
- ./spec/string_spec.rb[1:4:1] | passed | 0.00002 seconds |
39
- ./spec/string_spec.rb[1:5:1] | passed | 0.00003 seconds |
1
+ example_id | status | run_time |
2
+ -------------------------------------- | ------ | --------------- |
3
+ ./spec/config_spec.rb[1:1:1:1] | passed | 0.0023 seconds |
4
+ ./spec/config_spec.rb[1:1:1:2] | passed | 0.00077 seconds |
5
+ ./spec/config_spec.rb[1:1:2:1] | passed | 0.00302 seconds |
6
+ ./spec/config_spec.rb[1:2:1:1] | passed | 0.0046 seconds |
7
+ ./spec/config_spec.rb[1:2:1:2] | passed | 0.00346 seconds |
8
+ ./spec/config_spec.rb[1:2:1:3] | passed | 0.00448 seconds |
9
+ ./spec/config_spec.rb[1:3:1] | passed | 0.0204 seconds |
10
+ ./spec/config_spec.rb[1:3:2] | passed | 0.01628 seconds |
11
+ ./spec/config_spec.rb[1:3:3] | passed | 0.01354 seconds |
12
+ ./spec/config_spec.rb[1:4:1:1] | passed | 0.0041 seconds |
13
+ ./spec/config_spec.rb[1:4:2:1] | passed | 0.00745 seconds |
14
+ ./spec/config_spec.rb[1:4:3:1] | passed | 0.00364 seconds |
15
+ ./spec/config_spec.rb[1:5:1:1] | passed | 0.0102 seconds |
16
+ ./spec/config_spec.rb[1:5:2:1] | passed | 0.01021 seconds |
17
+ ./spec/config_spec.rb[1:6:1:1] | passed | 0.0015 seconds |
18
+ ./spec/config_spec.rb[1:6:2:1] | passed | 0.00163 seconds |
19
+ ./spec/generator_spec.rb[1:1:1] | passed | 0.00742 seconds |
20
+ ./spec/generator_spec.rb[1:1:2] | passed | 0.00709 seconds |
21
+ ./spec/generator_spec.rb[1:2:1] | passed | 0.00834 seconds |
22
+ ./spec/generator_spec.rb[1:3:1] | passed | 0.0077 seconds |
23
+ ./spec/generator_spec.rb[1:4:1] | passed | 0.00719 seconds |
24
+ ./spec/generator_spec.rb[1:4:2] | passed | 0.00756 seconds |
25
+ ./spec/generator_spec.rb[1:4:3] | passed | 0.00744 seconds |
26
+ ./spec/generator_spec.rb[1:4:4] | passed | 0.0082 seconds |
27
+ ./spec/generator_spec.rb[1:4:5] | passed | 0.00691 seconds |
28
+ ./spec/generator_spec.rb[1:5:1] | passed | 0.00697 seconds |
29
+ ./spec/generator_spec.rb[1:6:1] | passed | 0.00765 seconds |
30
+ ./spec/generator_spec.rb[1:6:2] | passed | 0.00823 seconds |
31
+ ./spec/generator_spec.rb[1:6:3] | passed | 0.00667 seconds |
32
+ ./spec/generator_spec.rb[1:7:1] | passed | 0.02583 seconds |
33
+ ./spec/generator_spec.rb[1:8:1] | passed | 0.03449 seconds |
34
+ ./spec/generator_spec.rb[1:9:1] | passed | 0.0082 seconds |
35
+ ./spec/generator_spec.rb[1:10:1] | passed | 0.00917 seconds |
36
+ ./spec/generator_spec.rb[1:11:1] | passed | 0.01607 seconds |
37
+ ./spec/generator_spec.rb[1:12:1] | passed | 0.00828 seconds |
38
+ ./spec/generator_spec.rb[1:12:2] | passed | 0.00896 seconds |
39
+ ./spec/generator_spec.rb[1:13:1] | passed | 0.01007 seconds |
40
+ ./spec/generator_spec.rb[1:13:2] | passed | 0.00948 seconds |
41
+ ./spec/generator_spec.rb[1:14:1] | passed | 0.01335 seconds |
42
+ ./spec/generator_spec.rb[1:15:1] | passed | 0.02646 seconds |
43
+ ./spec/generator_spec.rb[1:15:2] | passed | 0.01 seconds |
44
+ ./spec/generator_spec.rb[1:15:3] | passed | 0.00972 seconds |
45
+ ./spec/generator_spec.rb[1:15:4] | passed | 0.0307 seconds |
46
+ ./spec/generator_spec.rb[1:15:5] | passed | 0.02688 seconds |
47
+ ./spec/generator_spec.rb[1:16:1] | passed | 0.00983 seconds |
48
+ ./spec/generator_spec.rb[1:16:2] | passed | 0.01314 seconds |
49
+ ./spec/generator_spec.rb[1:16:3] | passed | 0.01308 seconds |
50
+ ./spec/hash_spec.rb[1:1:1] | passed | 0.00005 seconds |
51
+ ./spec/hash_spec.rb[1:1:2] | passed | 0.00004 seconds |
52
+ ./spec/hash_spec.rb[1:2:1] | passed | 0.00003 seconds |
53
+ ./spec/hash_spec.rb[1:2:2] | passed | 0.00002 seconds |
54
+ ./spec/hello_world_spec.rb[1:1] | passed | 0.00002 seconds |
55
+ ./spec/html2markdown_spec.rb[1:1:1] | passed | 0.00015 seconds |
56
+ ./spec/html2markdown_spec.rb[1:1:2] | passed | 0.00006 seconds |
57
+ ./spec/html2markdown_spec.rb[1:1:3] | passed | 0.00144 seconds |
58
+ ./spec/html2markdown_spec.rb[1:2:1] | passed | 0.00007 seconds |
59
+ ./spec/html2markdown_spec.rb[1:2:2] | passed | 0.00004 seconds |
60
+ ./spec/html2markdown_spec.rb[1:2:3] | passed | 0.00006 seconds |
61
+ ./spec/html2markdown_spec.rb[1:2:4] | passed | 0.00004 seconds |
62
+ ./spec/html2markdown_spec.rb[1:2:5] | passed | 0.00004 seconds |
63
+ ./spec/html2markdown_spec.rb[1:2:6] | passed | 0.00005 seconds |
64
+ ./spec/html2markdown_spec.rb[1:2:7] | passed | 0.00004 seconds |
65
+ ./spec/html2markdown_spec.rb[1:3:1] | passed | 0.00006 seconds |
66
+ ./spec/html2markdown_spec.rb[1:3:2] | passed | 0.00006 seconds |
67
+ ./spec/html2markdown_spec.rb[1:4:1] | passed | 0.00005 seconds |
68
+ ./spec/initialize_spec.rb[1:1:1] | passed | 0.01003 seconds |
69
+ ./spec/initialize_spec.rb[1:1:2] | passed | 0.00886 seconds |
70
+ ./spec/initialize_spec.rb[1:1:3] | passed | 0.00738 seconds |
71
+ ./spec/initialize_spec.rb[1:1:4] | passed | 0.00817 seconds |
72
+ ./spec/initialize_spec.rb[1:1:5:1] | passed | 0.00948 seconds |
73
+ ./spec/initialize_spec.rb[1:1:6:1] | passed | 0.0086 seconds |
74
+ ./spec/integer_spec.rb[1:1:1] | passed | 0.00005 seconds |
75
+ ./spec/integer_spec.rb[1:1:2] | passed | 0.00003 seconds |
76
+ ./spec/integer_spec.rb[1:1:3] | passed | 0.00003 seconds |
77
+ ./spec/integer_spec.rb[1:1:4] | passed | 0.00003 seconds |
78
+ ./spec/integer_spec.rb[1:1:5] | passed | 0.00004 seconds |
79
+ ./spec/integer_spec.rb[1:1:6] | passed | 0.00002 seconds |
80
+ ./spec/integer_spec.rb[1:2:1] | passed | 0.00004 seconds |
81
+ ./spec/lorem_markdown_spec.rb[1:1:1] | passed | 0.01022 seconds |
82
+ ./spec/lorem_markdown_spec.rb[1:1:2:1] | passed | 0.01036 seconds |
83
+ ./spec/lorem_markdown_spec.rb[1:2:1] | passed | 0.01048 seconds |
84
+ ./spec/lorem_markdown_spec.rb[1:2:2] | passed | 0.01073 seconds |
85
+ ./spec/lorem_markdown_spec.rb[1:2:3] | passed | 0.01021 seconds |
86
+ ./spec/lorem_markdown_spec.rb[1:2:4] | passed | 0.00935 seconds |
87
+ ./spec/lorem_markdown_spec.rb[1:2:5] | passed | 0.00986 seconds |
88
+ ./spec/lorem_markdown_spec.rb[1:2:6] | passed | 0.00911 seconds |
89
+ ./spec/module_spec.rb[1:1] | passed | 0.00004 seconds |
90
+ ./spec/source_spec.rb[1:1:1] | passed | 0.00129 seconds |
91
+ ./spec/source_spec.rb[1:2:1] | passed | 0.00012 seconds |
92
+ ./spec/source_spec.rb[1:3:1] | passed | 0.001 seconds |
93
+ ./spec/source_spec.rb[1:4:1] | passed | 0.00104 seconds |
94
+ ./spec/source_spec.rb[1:4:2] | passed | 0.00094 seconds |
95
+ ./spec/source_spec.rb[1:4:3:1] | passed | 0.00092 seconds |
96
+ ./spec/string_spec.rb[1:1:1] | passed | 0.00003 seconds |
97
+ ./spec/string_spec.rb[1:2:1] | passed | 0.00002 seconds |
98
+ ./spec/string_spec.rb[1:2:2] | passed | 0.00002 seconds |
99
+ ./spec/string_spec.rb[1:2:3] | passed | 0.00002 seconds |
100
+ ./spec/string_spec.rb[1:3:1] | passed | 0.00002 seconds |
101
+ ./spec/string_spec.rb[1:4:1] | passed | 0.00003 seconds |
102
+ ./spec/string_spec.rb[1:5:1] | passed | 0.00003 seconds |
103
+ ./spec/string_spec.rb[1:6:1] | passed | 0.00003 seconds |
104
+ ./spec/string_spec.rb[1:7:1] | passed | 0.00004 seconds |
105
+ ./spec/string_spec.rb[1:7:2] | passed | 0.00002 seconds |
106
+ ./spec/string_spec.rb[1:7:3] | passed | 0.00002 seconds |
107
+ ./spec/string_spec.rb[1:8:1] | passed | 0.00002 seconds |
108
+ ./spec/string_spec.rb[1:8:2] | passed | 0.00002 seconds |
109
+ ./spec/string_spec.rb[1:8:3] | passed | 0.00002 seconds |
110
+ ./spec/string_spec.rb[1:9:1] | passed | 0.00002 seconds |
111
+ ./spec/string_spec.rb[1:9:2] | passed | 0.00002 seconds |
112
+ ./spec/string_spec.rb[1:10:1] | passed | 0.00002 seconds |
113
+ ./spec/string_spec.rb[1:10:2] | passed | 0.00002 seconds |
114
+ ./spec/string_spec.rb[1:10:3] | passed | 0.00006 seconds |
115
+ ./spec/string_spec.rb[1:10:4] | passed | 0.00002 seconds |
116
+ ./spec/string_spec.rb[1:10:5] | passed | 0.00002 seconds |
117
+ ./spec/string_spec.rb[1:11:1] | passed | 0.00002 seconds |
118
+ ./spec/string_spec.rb[1:11:2] | passed | 0.00002 seconds |
119
+ ./spec/string_spec.rb[1:11:3] | passed | 0.00002 seconds |
120
+ ./spec/string_spec.rb[1:11:4] | passed | 0.00002 seconds |
121
+ ./spec/string_spec.rb[1:11:5] | passed | 0.00002 seconds |
122
+ ./spec/string_spec.rb[1:12:1] | passed | 0.00029 seconds |
123
+ ./spec/string_spec.rb[1:12:2] | passed | 0.00014 seconds |
124
+ ./spec/string_spec.rb[1:12:3] | passed | 0.00016 seconds |
125
+ ./spec/string_spec.rb[1:13:1] | passed | 0.00004 seconds |
126
+ ./spec/string_spec.rb[1:13:2] | passed | 0.00002 seconds |
127
+ ./spec/string_spec.rb[1:13:3] | passed | 0.00002 seconds |
128
+ ./spec/string_spec.rb[1:13:4] | passed | 0.00003 seconds |
129
+ ./spec/string_spec.rb[1:14:1] | passed | 0.00002 seconds |
130
+ ./spec/string_spec.rb[1:14:2] | passed | 0.00002 seconds |
131
+ ./spec/string_spec.rb[1:14:3] | passed | 0.00002 seconds |
132
+ ./spec/string_spec.rb[1:14:4] | passed | 0.00002 seconds |
133
+ ./spec/string_spec.rb[1:14:5] | passed | 0.00002 seconds |
134
+ ./spec/string_spec.rb[1:15:1] | passed | 0.00002 seconds |
135
+ ./spec/string_spec.rb[1:15:2] | passed | 0.00002 seconds |
136
+ ./spec/string_spec.rb[1:15:3] | passed | 0.00002 seconds |
137
+ ./spec/string_spec.rb[1:15:4] | passed | 0.00002 seconds |
138
+ ./spec/string_spec.rb[1:16:1] | passed | 0.00002 seconds |
139
+ ./spec/string_spec.rb[1:16:2] | passed | 0.00002 seconds |
140
+ ./spec/string_spec.rb[1:16:3] | passed | 0.00002 seconds |
141
+ ./spec/table_cleanup_spec.rb[1:1:1] | passed | 0.00006 seconds |
142
+ ./spec/table_cleanup_spec.rb[1:1:2] | passed | 0.00003 seconds |
143
+ ./spec/table_cleanup_spec.rb[1:2:1] | passed | 0.00002 seconds |
144
+ ./spec/table_cleanup_spec.rb[1:3:1] | passed | 0.00002 seconds |
145
+ ./spec/table_cleanup_spec.rb[1:3:2] | passed | 0.00002 seconds |
146
+ ./spec/table_cleanup_spec.rb[1:3:3] | passed | 0.00002 seconds |
147
+ ./spec/table_cleanup_spec.rb[1:4:1] | passed | 0.00008 seconds |
148
+ ./spec/table_cleanup_spec.rb[1:4:2] | passed | 0.00006 seconds |
data/.rubocop.yml CHANGED
@@ -62,3 +62,4 @@ Style/SpecialGlobalVars:
62
62
  # URISchemes: http, https
63
63
  Layout/LineLength:
64
64
  Max: 135
65
+ Exclude: bin/randw
data/CHANGELOG.md CHANGED
@@ -1,3 +1,45 @@
1
+ ### 1.0.6
2
+
3
+ 2025-04-14 08:45
4
+
5
+ #### NEW
6
+
7
+ - Add dirtywords
8
+ - Markdown generator with table cleanup
9
+
10
+ #### FIXED
11
+
12
+ - Better use of conjunctions
13
+
14
+ ### 1.0.5
15
+
16
+ 2025-04-13 08:36
17
+
18
+ #### NEW
19
+
20
+ - 1984 dictionary
21
+ - Doctor dictionary
22
+ - Added Alice in Wonderland dictionary
23
+ - Add Spanish
24
+
25
+ #### IMPROVED
26
+
27
+ - Config methods
28
+ - Convert integers to strings using a basic places configuration file instead of requiring each line in a config file to spell out a number
29
+ - CLI test uses all languages
30
+ - Add prepositions
31
+ - Capitalize first letter only, igoring opening punctuation
32
+ - Terminators configuration allows for opening and closing terminators
33
+ - More tests
34
+ - Make extended punctuation like quotes optional
35
+ - Expand documentation
36
+ - Expand test coverage
37
+
38
+ #### FIXED
39
+
40
+ - Capitalize method on empty string
41
+ - Fix_caps method on empty string
42
+
1
43
  ### 1.0.3
2
44
 
3
45
  2025-04-09 09:00
data/Gemfile.lock CHANGED
@@ -1,7 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- random-words (1.0.5)
4
+ random-words (1.0.6)
5
+ nokogiri (~> 1.12)
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
@@ -16,6 +17,8 @@ GEM
16
17
  language_server-protocol (3.17.0.4)
17
18
  lint_roller (1.1.0)
18
19
  multi_json (1.15.0)
20
+ nokogiri (1.18.1-arm64-darwin)
21
+ racc (~> 1.4)
19
22
  parallel (1.26.3)
20
23
  parse_gemspec (1.0.0)
21
24
  parse_gemspec-cli (1.0.0)
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
 
3
- [![RubyGems.org](https://img.shields.io/gem/v/snibbets)](https://rubygems.org/gems/snibbets)
3
+ [![RubyGems.org](https://img.shields.io/gem/v/random-words)](https://rubygems.org/gems/random-words)
4
4
 
5
5
  A random text (Lorem Ipsum) generator.
6
6
 
@@ -8,7 +8,11 @@ A random text (Lorem Ipsum) generator.
8
8
 
9
9
  gem install random-words
10
10
 
11
- Depending on your setup, you may need `gem install --user-install random-words`, or in worst case scenario, `sudo gem install random-words`. You can also use `brew gem install random-words` if you use [Homebrew](https://brew.sh).
11
+ Depending on your setup, you may need
12
+ `gem install --user-install random-words`, or in
13
+ worst case scenario, `sudo gem install random-words`.
14
+ You can also use `brew gem install random-words` if
15
+ you use [Homebrew](https://brew.sh).
12
16
 
13
17
  ### CLI
14
18
 
@@ -16,24 +20,169 @@ The gem installs a binary `randw`. It can generate random characters, sentences,
16
20
 
17
21
  ```console
18
22
  Usage: randw [options]
19
- Options:
23
+ OPTIONS:
20
24
  -S, --source [SOURCE] Specify the source language (default: latin)
21
25
  -l [short|medium|long|very_long],
22
26
  --length Specify the length of the sentence
23
27
  --graf-length [NUMBER] Specify the number of sentences in a paragraph
24
28
  -s, --sentences [NUMBER] Generate random sentences
29
+ GENERATORS:
25
30
  -p, --paragraphs [NUMBER] Generate random paragraphs
26
31
  -w, --words [NUMBER] Generate random words
27
32
  -c, --characters [NUMBER] Generate random characters
33
+ -m, --markdown SETTINGS Generate random markdown text, comma separated string like "latin,10,all"
28
34
  --password Generate a random password
35
+ PASSWORD OPTIONS:
29
36
  --separator [CHAR] Specify the separator character for the password
30
- -n, --no-whitespace Specify whether to remove whitespace in generated text (characters only)
37
+ --[no-]extended Specify whether to use extended punctuation in generated text
38
+ -n, --[no-]whitespace Specify whether to remove whitespace in generated text (characters only)
39
+ DICTIONARIES:
40
+ --list-dictionaries List available dictionaries
41
+ --create-dictionary [NAME] Create a new dictionary
42
+ OTHER OPTIONS:
31
43
  -d, --debug Enable debug mode, displays sentence/word/character counts
32
44
  -h, --help Display this help message
33
45
  -v, --version Display the version
34
46
  -t, --test Run the full debug test
35
47
  ```
36
48
 
49
+ #### Generating Markdown text
50
+
51
+ The `--markdown` flag takes a SETTINGS argument. This is a
52
+ comma- or slash-separated string that determines the
53
+ elements to include.
54
+
55
+ First, the source language (defaults to latin), then the
56
+ length of paragraphs and tables: e.g. `english/medium`. You
57
+ can add any digits to determine how many paragraps are
58
+ generated (default 5), e.g. `corporate/medium/10`.
59
+
60
+ Then you can add individual elements, or use `/all` to
61
+ trigger all elements. The elements available are:
62
+
63
+ | trigger | element |
64
+ | :------ | :------------------------ |
65
+ | dec | add em and strong |
66
+ | link | add links |
67
+ | ul | add unordered lists |
68
+ | ol | add ordered lists |
69
+ | dl | add definition lists |
70
+ | bq | add block quotes |
71
+ | code | add code spans and blocks |
72
+ | mark | add ==highlights== |
73
+ | headers | add headlines |
74
+ | image | add images |
75
+ | table | add tables |
76
+
77
+ The number of elements inserted depends on the length you specify.
78
+
79
+ Example commands:
80
+
81
+ $ randw -m "latin/10/ol/dl/table"
82
+ $ randw -m "english/5/all"
83
+
84
+
85
+ #### Creating A New Dictionary
86
+
87
+ You can add your own sources for generating your random
88
+ text. A dictionary is a directory containing several text
89
+ files, one for each part of speech that RandomWords uses.
90
+ All of the parts must exist. The directory name is the same
91
+ as the name of the dictionary.
92
+
93
+ User dictionaries must be stored in `~/.config/random-words/words/[NAME]`.
94
+
95
+ The easiest way to generate a new language is to use the CLI:
96
+
97
+ ```console
98
+ randw --create-dictionary [NAME]
99
+ ```
100
+
101
+ Once this command is run, a new directory in
102
+ `~/.config/random-words/words` will be created containing
103
+ all of the necessary files with English defaults. Simply
104
+ edit these files, and then you'll be able to call the
105
+ language by its name (or triggers defined in the config, see
106
+ below). If a language of the same name exists, missing files
107
+ will be filled in, but existing files will not be
108
+ overwritten.
109
+
110
+ The necessary files are:
111
+
112
+ ```console
113
+ adjectives.txt
114
+ adverbs.txt
115
+ articles-plural.txt
116
+ articles-singular.txt
117
+ clauses.txt
118
+ config.yml
119
+ conjunctions-coordinating.txt
120
+ conjunctions-subordinate.txt
121
+ nouns-plural.txt
122
+ nouns-singular.txt
123
+ numbers.txt
124
+ prepositions.txt
125
+ terminators.txt
126
+ verbs-passive.txt
127
+ verbs-plural.txt
128
+ verbs-singular.txt
129
+ ```
130
+
131
+ The `terminators.txt` file contains pairs of punctuation,
132
+ separated by commas, one per line. If a sentene terminator
133
+ doesn't have opening punctuation, start the line with a
134
+ comma. More than one character can be used in either side of
135
+ the pair. For example, to create a double quoted sentence
136
+ with a period inside the closing quote, you would use:
137
+
138
+ ",."
139
+
140
+ A blank line (or any line not containing a comma) will
141
+ separate regular punctuation from extended punctuation. In
142
+ the default file, `.`, `?`, and `!` are considered regular
143
+ punctuation, and parenthesis and quotes are considered
144
+ extended punctuation. Extended punctuation is off by
145
+ default, but in the CLI can be enabled with `--extended`,
146
+ and using the library you can include
147
+ `use_extended_punctuation: true` in the options when
148
+ initializing, or use `@rw.use_extended_punctuation = true`
149
+ to set it after initializing.
150
+
151
+ Repeating words or terminators more than once in the config
152
+ files increases their likelihood of being used. In the
153
+ default terminator.txt files, the period, question mark, and
154
+ exclamation point are repeated multiple times to make them
155
+ the most likely to be used.
156
+
157
+
158
+ ##### Language Configuration
159
+
160
+ The `config.yml` file in a language directory is a simple
161
+ YAML configuration. It contains the keys:
162
+
163
+ ```yaml
164
+ ---
165
+ name: english
166
+ description: English words
167
+ triggers: [english]
168
+ ```
169
+
170
+ A default configuration file will be created when running `--create-dictionary` with the CLI.
171
+
172
+ - `name`: The name of the dictionary
173
+
174
+ This should be the same as the directory name in most cases
175
+ - `description`: Just used for display when running `--list-dictionaries`
176
+ - `triggers`: An array of triggers that can be used to trigger the language.
177
+
178
+ For example, the `bacon` language has the triggers `[bacon, meat, carnivore]`, so you can use `randw -S meat` on the command line (or with the library).
179
+
180
+ > RandomWords loosely uses English rules for sentence construction, so non-English languages will likely generate even more nonsensical strings.
181
+
182
+ If you create a fun dictionary, please let me know (or make a PR) and I'll gladly include (most) new dictionaries in the main distribution.
183
+
184
+ > The easiest way to get words is with AI. A ChatGPT prompt like "give me 100 plural nouns related to the medical profession, in plain text, one per line, sorted alphabetically" will get you a good list of words you can then just paste into `nouns-plural.txt` in your dictionary.
185
+
37
186
  ### Library
38
187
 
39
188
  ```ruby