haiku_gadget 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 688c2e392f62223bb9d6c3a72d9d7bdf2632c60b
4
- data.tar.gz: 54337eccdae51547fd4dbcdd460a71eabad02804
3
+ metadata.gz: 2a15537f69f3e149171a2514415edb876eab3510
4
+ data.tar.gz: bd8706dfbb15420681f2faeaed23cfddd5b03b14
5
5
  SHA512:
6
- metadata.gz: 329a5108ca7082ab7d6b605c10c6214abd80db2a3f1fa3c22d61edb4ec9c73c5a33b5ca151ac209dac8592acda241d25ec51f1d04ad8132d4f875a157db7a33c
7
- data.tar.gz: e0e851e0bb1df0e2a0681a822de438e3762b90ee59dff66961bc8b0adc761ae5b770d54010ed9feb5089902d63491278a946304cbe782bfc2196834017fd8c7c
6
+ metadata.gz: 323b3add5c00b3a07b77855ace907b81520cb7956385e322d56910c3df208265572566ef174aaf8d93eb984a10c68dd6e88094cf099c93505f9e469f08c847db
7
+ data.tar.gz: aff4b7a9ef98cd22d1d71df7f5ddc2de9d48a476a4397ee1ed6bf5482d3403deb12d3ef8d4e175f8320666d3be345e8c3f04158236e1d2bd795b00ede0f97173
data/README.md CHANGED
@@ -4,6 +4,8 @@ Generate random haikus!
4
4
 
5
5
  Uses an algorithm, a custom dictionary, some grammar rules, and a team of hamsters running in wheels.
6
6
 
7
+ ### Play with it at [haikugadget.com](http://www.haikugadget.com/)
8
+
7
9
  ## What is a haiku?
8
10
 
9
11
  A short poem consisting of three lines:
@@ -1,5 +1,5 @@
1
- require File.expand_path('word_template.rb', File.dirname(__FILE__))
2
1
  require File.expand_path('dictionary.rb', File.dirname(__FILE__))
2
+ require File.expand_path('line_templates.rb', File.dirname(__FILE__))
3
3
 
4
4
  module HaikuGadget
5
5
 
@@ -7,88 +7,13 @@ module HaikuGadget
7
7
 
8
8
  attr_reader :template_matrix
9
9
 
10
- COMMON_LINES = [
11
- [
12
- WordTemplate.new(:determiner, 0, :any, 1),
13
- WordTemplate.new(:noun, 1, :any, 1),
14
- WordTemplate.new(:verb, 1, :any, 1),
15
- WordTemplate.new(:mass_noun_determiner),
16
- WordTemplate.new(:mass_noun, 1)
17
- ], [
18
- WordTemplate.new(:adverb, 2),
19
- WordTemplate.new(:verb, 1, :plural),
20
- WordTemplate.new(:adjective, 0, :plural),
21
- WordTemplate.new(:noun, 1, :plural)
22
- ], [
23
- WordTemplate.new(:mass_noun_determiner),
24
- WordTemplate.new(:adjective, 0, :common),
25
- WordTemplate.new(:mass_noun, 1),
26
- WordTemplate.new(:to_be, 1, :singular),
27
- WordTemplate.new(:adjective, 1, :any)
28
- ], [
29
- WordTemplate.new(:determiner, 0, :any, 1),
30
- WordTemplate.new(:noun, 1, :any, 1),
31
- WordTemplate.new(:verb, 1, :any, 1),
32
- WordTemplate.new(:determiner, 0, :any, 2),
33
- WordTemplate.new(:noun, 1, :any, 2)
34
- ], [
35
- WordTemplate.new(:determiner, 0, :any, 1),
36
- WordTemplate.new(:adjective, 0, :any, 1),
37
- WordTemplate.new(:noun, 1, :any, 1),
38
- WordTemplate.custom('of', 1),
39
- WordTemplate.new(:mass_noun, 1),
40
- WordTemplate.new(:verb_self, 1, :any, 1)
41
- ], [
42
- WordTemplate.custom(%w(i we they), 1),
43
- WordTemplate.new(:verb, 1, :plural),
44
- WordTemplate.new(:determiner, 0, :any, 2),
45
- WordTemplate.new(:adjective, 0, :any, 2),
46
- WordTemplate.new(:noun, 1, :any, 2),
47
- WordTemplate.new(:adverb)
48
- ]
49
- ]
50
-
51
- MIDDLE_LINES = [
52
- [
53
- WordTemplate.new(:transition_join),
54
- WordTemplate.new(:determiner, 0, :any, 1),
55
- WordTemplate.new(:adjective, 0, :any, 1),
56
- WordTemplate.new(:noun, 1, :any, 1),
57
- WordTemplate.new(:verb_self, 1, :any, 1),
58
- WordTemplate.new(:adverb)
59
- ]
60
- ]
61
-
62
- BOTTOM_LINES = [
63
- [
64
- WordTemplate.new(:transition_join),
65
- WordTemplate.new(:adjective, 0, :plural, 1),
66
- WordTemplate.new(:noun, 1, :plural, 1),
67
- WordTemplate.new(:verb_self, 1, :plural, 1)
68
- ]
69
- ]
70
-
71
- ALL_TOP_LINES = [
72
- COMMON_LINES
73
- ].flatten(1)
74
-
75
- ALL_MIDDLE_LINES = [
76
- COMMON_LINES,
77
- MIDDLE_LINES
78
- ].flatten(1)
79
-
80
- ALL_BOTTOM_LINES = [
81
- COMMON_LINES,
82
- BOTTOM_LINES
83
- ].flatten(1)
84
-
85
10
  def initialize(template_matrix = nil)
86
11
  # generate a template_matrix randomly if one was not provided
87
12
  if template_matrix.nil?
88
13
  template_matrix = [
89
- HaikuTemplate.random_template(ALL_TOP_LINES),
90
- HaikuTemplate.random_template(ALL_MIDDLE_LINES),
91
- HaikuTemplate.random_template(ALL_BOTTOM_LINES)
14
+ HaikuTemplate.random_template(LineTemplates::ALL_TOP_LINES),
15
+ HaikuTemplate.random_template(LineTemplates::ALL_MIDDLE_LINES),
16
+ HaikuTemplate.random_template(LineTemplates::ALL_BOTTOM_LINES)
92
17
  ]
93
18
  end
94
19
  # clone the two-dimensional array (so syllable counts can be changed)
@@ -0,0 +1,163 @@
1
+ require File.expand_path('word_template.rb', File.dirname(__FILE__))
2
+
3
+ module HaikuGadget
4
+
5
+ module LineTemplates
6
+
7
+ COMMON_LINES = [
8
+ [
9
+ # noun(s) act on mass/abstract noun
10
+ WordTemplate.new(:determiner, 0, :any, 1),
11
+ WordTemplate.new(:noun, 1, :any, 1),
12
+ WordTemplate.new(:verb, 1, :any, 1),
13
+ WordTemplate.new(:mass_noun_determiner),
14
+ WordTemplate.new(:mass_noun, 1)
15
+ ], [
16
+ # imperative action (command)
17
+ WordTemplate.new(:adverb, 2),
18
+ WordTemplate.new(:verb, 1, :plural),
19
+ WordTemplate.new(:determiner, 0, :plural),
20
+ WordTemplate.new(:adjective, 0, :plural),
21
+ WordTemplate.new(:noun, 1, :plural)
22
+ ], [
23
+ # mass/abstract noun is adj
24
+ WordTemplate.new(:mass_noun_determiner),
25
+ WordTemplate.new(:adjective, 0, :common),
26
+ WordTemplate.new(:mass_noun, 1),
27
+ WordTemplate.new(:to_be, 1, :singular),
28
+ WordTemplate.new(:adjective, 1, :any)
29
+ ], [
30
+ # noun(s) of mass/abstract noun acts
31
+ WordTemplate.new(:determiner, 0, :any, 1),
32
+ WordTemplate.new(:adjective, 0, :any, 1),
33
+ WordTemplate.new(:noun, 1, :any, 1),
34
+ WordTemplate.custom('of', 1),
35
+ WordTemplate.new(:mass_noun, 1),
36
+ WordTemplate.new(:verb_self, 1, :any, 1)
37
+ ], [
38
+ # adj noun is adj
39
+ WordTemplate.new(:adjective, 0, :any, 1),
40
+ WordTemplate.new(:noun, 1, :any, 1),
41
+ WordTemplate.new(:to_be, 1, :any, 1),
42
+ WordTemplate.new(:adjective, 1, :any, 1)
43
+ ], [
44
+ # metaphors
45
+ [
46
+ WordTemplate.new(:adjective, 0, :common),
47
+ WordTemplate.new(:mass_noun, 1),
48
+ WordTemplate.custom('is like', 2),
49
+ WordTemplate.new(:adjective, 0, :common),
50
+ WordTemplate.new(:mass_noun, 1)
51
+ ], [
52
+ WordTemplate.new(:adjective, 0, :plural),
53
+ WordTemplate.new(:noun, 1, :plural),
54
+ WordTemplate.custom('are like', 2),
55
+ WordTemplate.new(:adjective, 0, :common),
56
+ WordTemplate.new(:mass_noun, 1)
57
+ ], [
58
+ WordTemplate.new(:determiner, 1, :singular, 1),
59
+ WordTemplate.new(:adjective, 0, :singular, 1),
60
+ WordTemplate.new(:noun, 1, :singular, 1),
61
+ WordTemplate.custom('is like', 2),
62
+ WordTemplate.new(:determiner, 1, :singular, 2),
63
+ WordTemplate.new(:adjective, 0, :singular, 2),
64
+ WordTemplate.new(:noun, 1, :singular, 2)
65
+ ], [
66
+ WordTemplate.new(:adjective, 0, :plural, 1),
67
+ WordTemplate.new(:noun, 1, :plural, 1),
68
+ WordTemplate.custom('are like', 2),
69
+ WordTemplate.new(:adjective, 0, :plural, 2),
70
+ WordTemplate.new(:noun, 1, :plural, 2)
71
+ ]
72
+ ], [
73
+ # i/we/they act on noun(s)
74
+ [
75
+ WordTemplate.custom(%w(i we they), 1),
76
+ WordTemplate.new(:verb, 1, :plural),
77
+ WordTemplate.new(:determiner, 1, :singular, 2),
78
+ WordTemplate.new(:adjective, 0, :singular, 2),
79
+ WordTemplate.new(:noun, 1, :singular, 2),
80
+ WordTemplate.new(:adverb)
81
+ ], [
82
+ WordTemplate.custom(%w(i we they), 1),
83
+ WordTemplate.new(:verb, 1, :plural),
84
+ WordTemplate.new(:determiner, 0, :plural, 2),
85
+ WordTemplate.new(:adjective, 0, :plural, 2),
86
+ WordTemplate.new(:noun, 1, :plural, 2),
87
+ WordTemplate.new(:adverb)
88
+ ]
89
+ ], [
90
+ # noun(s) act on noun(s)
91
+ [
92
+ WordTemplate.new(:determiner, 0, :any, 1),
93
+ WordTemplate.new(:noun, 1, :any, 1),
94
+ WordTemplate.new(:verb, 1, :any, 1),
95
+ WordTemplate.new(:determiner, 1, :singular, 2),
96
+ WordTemplate.new(:noun, 1, :singular, 2)
97
+ ], [
98
+ WordTemplate.new(:determiner, 0, :any, 1),
99
+ WordTemplate.new(:noun, 1, :any, 1),
100
+ WordTemplate.new(:verb, 1, :any, 1),
101
+ WordTemplate.new(:determiner, 0, :plural, 2),
102
+ WordTemplate.new(:noun, 1, :plural, 2)
103
+ ]
104
+ ]
105
+ ]
106
+
107
+ MIDDLE_LINES = [
108
+ [
109
+ # (and) noun(s) act
110
+ [
111
+ WordTemplate.new(:transition_join),
112
+ WordTemplate.new(:determiner, 1, :singular, 1),
113
+ WordTemplate.new(:adjective, 0, :singular, 1),
114
+ WordTemplate.new(:noun, 1, :singular, 1),
115
+ WordTemplate.new(:verb_self, 1, :singularß, 1),
116
+ WordTemplate.new(:adverb)
117
+ ], [
118
+ WordTemplate.new(:transition_join),
119
+ WordTemplate.new(:determiner, 0, :plural, 1),
120
+ WordTemplate.new(:adjective, 0, :plural, 1),
121
+ WordTemplate.new(:noun, 1, :plural, 1),
122
+ WordTemplate.new(:verb_self, 1, :plural, 1),
123
+ WordTemplate.new(:adverb)
124
+ ]
125
+ ]
126
+ ]
127
+
128
+ BOTTOM_LINES = [
129
+ [
130
+ # (and) noun(s) act
131
+ [
132
+ WordTemplate.new(:transition_join),
133
+ WordTemplate.new(:determiner, 1, :singular, 1),
134
+ WordTemplate.new(:adjective, 0, :singular, 1),
135
+ WordTemplate.new(:noun, 1, :singular, 1),
136
+ WordTemplate.new(:verb_self, 1, :singular, 1)
137
+ ], [
138
+ WordTemplate.new(:transition_join),
139
+ WordTemplate.new(:determiner, 0, :plural, 1),
140
+ WordTemplate.new(:adjective, 0, :plural, 1),
141
+ WordTemplate.new(:noun, 1, :plural, 1),
142
+ WordTemplate.new(:verb_self, 1, :plural, 1)
143
+ ]
144
+ ]
145
+ ]
146
+
147
+ ALL_TOP_LINES = [
148
+ COMMON_LINES
149
+ ].flatten(1)
150
+
151
+ ALL_MIDDLE_LINES = [
152
+ COMMON_LINES,
153
+ MIDDLE_LINES
154
+ ].flatten(1)
155
+
156
+ ALL_BOTTOM_LINES = [
157
+ COMMON_LINES,
158
+ BOTTOM_LINES
159
+ ].flatten(1)
160
+
161
+ end
162
+
163
+ end
@@ -1,5 +1,5 @@
1
1
  module HaikuGadget
2
2
 
3
- VERSION = '1.0.1'
3
+ VERSION = '1.0.2'
4
4
 
5
5
  end
@@ -41,4 +41,4 @@ module HaikuGadget
41
41
 
42
42
  end
43
43
 
44
- end
44
+ end
data/lib/words.yml CHANGED
@@ -23,8 +23,8 @@
23
23
  ]
24
24
 
25
25
  :adjective_common: [
26
- [red, fresh, weird, burnt, white, flat, round, weak, old, new, young, swell, sweet, dazed, vague, warmed, cool, strong, blue, clear, soft, hard, black, big, small, tight, loose, long, short, wry, young, green, bold, good, bad, kind, mean, wet, dry, free, light, dark, dim, wise, grim, huge, worn, numb, wild, tall, short, hot, cold, sad, gray, green, gold, raw, rich, poor, bored, dull, calm, smart, dumb, grand, keen, bright, bent, foul, close, chrome, low, last, first, next, fun, high, late, quaint, side, top, lost, cute, real, strict, silk, [north, west, south, east]],
27
- [orange, mental, tired, gloomy, murky, salty, doomed, ecstatic, balanced, frayed, frosted, confused, opened, tasty, frozen, boiling, slimy, failed, crazed, oblong, broken, silver, faulty, limestone, opaque, silly, spinning, busted, lazy, flying, awesome, folded, rhythmic, floating, smoking, twisted, wispy, uncooked, complex, bubbly, immobile, bankrupt, moving, crispy, laundered, rounded, cleaned, ample, dirty, catered, constrained, cosmic, choking, ballistic, red-faced, bizarre, sanded, roasted, inverted, spastic, dapper, swanky, able, fabled, stable, leaning, correct, staggered, wrong, curved, open, evil, closed, edgy, pricey, costly, fancy, stranded, meager, modest, humble, slimy, simple, unkind, unwound, teenage, heavy, standard, hollow, eager, rotten, unwise, grounded, boring, crazy, major, minor, naive, valid, random, happy, endless, human, splendid, certain, somber, livid, lonely, jealous, dreary, lovely, cheerful, secure, renowned, spicy, drunken, bulky, breaded, better, shorter, smaller, larger, smarter, faster, longer, distant, wealthy, dismayed, vital, colored, abstract, vivid, ancient, bitter, sour, airy, timely, sunny, current, funky, skinny, bloody, girly, boyish, roomy, royal, marine, varied, fuzzy, helpful, crafty, silky, plastic, laser, [northern, western, southern, eastern]],
26
+ [red, fresh, weird, burnt, white, flat, round, weak, old, new, young, swell, sweet, dazed, vague, warmed, cool, strong, blue, clear, soft, hard, black, big, small, tight, loose, long, short, wry, young, green, bold, good, bad, kind, mean, wet, dry, free, light, dark, dim, wise, grim, huge, worn, numb, wild, tall, short, hot, cold, sad, gray, green, gold, raw, rich, poor, bored, dull, calm, smart, dumb, grand, keen, bright, bent, foul, close, chrome, low, last, first, next, fun, high, late, quaint, top, lost, cute, real, strict, fast, slow, rough, damp, smooth, [north, west, south, east]],
27
+ [orange, mental, tired, gloomy, murky, salty, doomed, ecstatic, balanced, frayed, frosted, confused, opened, tasty, frozen, boiling, slimy, failed, crazed, oblong, broken, silver, faulty, limestone, opaque, silly, spinning, busted, lazy, flying, awesome, folded, rhythmic, floating, smoking, twisted, wispy, uncooked, complex, bubbly, immobile, bankrupt, moving, crispy, laundered, rounded, cleaned, ample, dirty, catered, constrained, cosmic, choking, ballistic, red-faced, bizarre, sanded, roasted, inverted, spastic, dapper, swanky, able, fabled, stable, leaning, correct, staggered, wrong, curved, open, evil, closed, edgy, pricey, costly, fancy, stranded, meager, modest, humble, slimy, simple, unkind, unwound, teenage, heavy, standard, hollow, eager, rotten, unwise, grounded, boring, crazy, major, minor, naive, valid, random, happy, endless, human, splendid, certain, somber, livid, lonely, jealous, dreary, lovely, cheerful, secure, renowned, spicy, drunken, bulky, breaded, better, shorter, smaller, larger, smarter, faster, longer, distant, wealthy, dismayed, vital, colored, abstract, vivid, ancient, bitter, sour, airy, timely, sunny, current, funky, skinny, bloody, girly, boyish, roomy, royal, marine, varied, fuzzy, helpful, crafty, silky, plastic, laser, upper, lower, cloudy, [northern, western, southern, eastern]],
28
28
  [redundant, respected, uncovered, populous, required, unstable, communist, communal, religious, circular, feminine, masculine, incorrect, underwater, embarrassed, misshapen, glorious, hovering, uncaring, expanded, insulted, discovered, commissioned, considered, opulent, casual, ultimate, imminent, exacting, creative, furious, destructive, modulated, digital, analog, essential, albino, nuclear, atomic, chocolate, overweight, invalid, possible, advertised, natural, terrific, pot-bellied, amazing, confident, exacting, finished, primary, lunatic, satisfied, impressive, lunatic, noteworthy, suitable, musical, eternal, skydiving, expected, parallel],
29
29
  [undulating, incredible, unforgiving, acceptable, elaborate, necessary, stimulated, measurable, recommended, mandatory, honorable, identical, overstated, altruistic, generated, extraneous, aluminum, obfuscated, appropriate, symbiotic, calculated, mysterious, unknowable, beautiful, contemplative, incapable, overbearing, high quality, low quality, microbial, questionable, knowledgeable, elemental, hilarious, inferior, meticulous]
30
30
  ]
@@ -38,7 +38,7 @@
38
38
  ]
39
39
 
40
40
  :noun_common: [
41
- [thing, bug, head, toe, eye, phone, web, ball, hand, ear, sheet, bed, car, truck, plane, brain, day, sun, square, bike, lake, creek, stone, moon, shoe, yacht, field, task, thought, sword, wig, boy, girl, prince, kid, pet, fig, moth, dog, bun, cat, bat, oar, lip, grain, soul, ape, duck, ray, beam, leg, rat, bear, boar, boat, door, goon, gob, plank, brick, stake, cube, ant, cord, bowl, chord, crate, wire, wreath, spear, isle, tree, wheel, hut, hat, gnat, spot, pond, cork, star, tribe, wine, beer, drink, film, bum, cup, rock, hook, path, king, queen, jack, mob, skill, job, house, cow, chair, disk, pit, hole, card, face, hill, mound, knob, zoo, light, fool, pill, quark, cloud, glove, sock, boot, slave, shrub, cook, pie, bird, snake, worm, tank, pen, weed, flute, nest, pot, bee, pan, gem, mom, dad, son, jeep, train, nun, pal, month, year, week, poem, shark, yak, joke, owl, skunk, worm, egg, cake, pea, grape, bean, spore, seed, fruit, wing, fire, world, heart, rod, board, nail, end, ring, sea, key, god, word, night, knight, bone, room, toy, side, top, book, name, game, ship, test, park, time, bag, school, clone, shop, store, war],
41
+ [thing, bug, head, toe, eye, phone, web, ball, hand, ear, sheet, bed, car, truck, plane, brain, day, sun, square, bike, lake, creek, stone, moon, shoe, yacht, field, task, thought, sword, wig, boy, girl, prince, kid, pet, fig, moth, dog, bun, cat, bat, oar, lip, grain, soul, ape, duck, ray, beam, leg, rat, bear, boar, boat, door, goon, gob, plank, brick, stake, cube, ant, cord, bowl, chord, crate, wire, wreath, spear, isle, tree, wheel, hut, hat, gnat, spot, pond, cork, star, tribe, wine, beer, drink, film, bum, cup, rock, hook, path, king, queen, jack, mob, skill, job, house, cow, chair, disk, pit, hole, card, face, hill, mound, knob, zoo, light, fool, pill, quark, cloud, glove, sock, boot, slave, shrub, cook, pie, bird, snake, worm, tank, pen, weed, flute, nest, pot, bee, pan, gem, mom, dad, son, jeep, train, nun, pal, month, year, week, poem, shark, yak, joke, owl, skunk, worm, egg, cake, pea, grape, bean, spore, seed, fruit, wing, fire, world, heart, rod, board, nail, end, ring, sea, key, god, word, night, knight, bone, room, toy, side, top, book, name, game, ship, test, park, time, bag, school, clone, shop, store, war, whale, frog, trail],
42
42
  [zombie, ninja, pirate, monkey, robot, hot dog, space ship, rain drop, circle, tv, flower, typhoon, garden, cookie, taco, gyro, mountain, painting, river, meadow, island, message, morsel, marble, mitten, trombone, nugget, chicken, donkey, llama, hamster, raisin, nation, rocket, bottle, anvil, sunset, muskrat, treasure, coastline, building, lighthouse, concept, forest, python, dinner, hammer, robber, jacket, singer, puppet, valley, comet, scooter, joker, pebble, kayak, gorilla, airplane, table, atom, movie, poster, fountain, missile, pimple, player, shovel, window, rooster, biscuit, raven, eagle, question, vampire, peon, otter, camel, suburb, towel, turkey, pencil, planet, viking, squirrel, snowboard, dweller, lemon, photo, item, skillet, mother, father, brother, sister, elder, aardvark, apple, object, pickle, staple, wizard, raccoon, tadpole, spigot, daughter, mantra, pizza, calzone, vision, haiku, pixel, onion, glacier, penguin, cobra, dolphin, spider, trumpet, donut, ion, aura, geezer, freedom, attempt, pigeon, teacher, battle, laser, [sunday, monday, tuesday, wednesday, thursday, friday, saturday]],
43
43
  [samurai, spatula, tornado, hurricane, restaurant, computer, radio, stereo, commuter, newspaper, hairdryer, photograph, sombrero, burrito, telephone, animal, bicycle, dinosaur, iguana, kangaroo, umbrella, hiking boot, dishwasher, asteroid, meteor, cruise liner, oil tanker, apple pie, gorilla, tricycle, artichoke, musician, visitor, universe, disaster, piano, canteloupe, pyramid, article, location, banana],
44
44
  [fortune cookie, ecosystem, obligation, generator, generation, ambassador, elevator, watermelon, convertible, calculator, harmonica, operation, invitation, kindergarten, helicopter, alligator, caterpillar, constellation, germination, politician, corporation, advertisement, declaration, astronomer, variation, civilization, perimeter, population, denominator, semicircle, operator, aquarium, disappointment, kaleidoscope, television, orangutan, washing machine, environment]
@@ -61,9 +61,9 @@
61
61
  ]
62
62
 
63
63
  :mass_noun: [
64
- [fun, love, snow, funk, earth, space, home, dust, pain, life, health, death, loss, thought, beer, wine, dirt, fire, flame, style, lore, wind, force, fog, haze, time, war, peace, doom, food, art, gloom, hope, ice, oil, gold, light, cheese, grass, breath, steel, iron, stone, zen, stuff, hair, soup, sense, air, gas, ground, foam, glass, wealth, slime, cloth, tea, juice, fruit, jazz, heat, speed, glue, noise, wood, milk, cake, rice, work, grief, fish, lust, sleep, heart, night, skin, blood, sand, math, rain, youth, lore, grace, corn, bread, glee, mist, jive, help, trash, cream],
64
+ [fun, love, snow, funk, earth, space, home, dust, pain, life, health, death, loss, thought, beer, wine, dirt, fire, flame, style, lore, wind, force, fog, haze, time, war, peace, doom, food, art, gloom, hope, ice, oil, gold, light, cheese, grass, breath, steel, iron, stone, zen, stuff, hair, soup, sense, air, gas, ground, foam, glass, wealth, slime, cloth, tea, juice, fruit, jazz, heat, speed, glue, noise, wood, milk, cake, rice, work, grief, fish, lust, sleep, heart, night, skin, blood, sand, math, rain, youth, lore, grace, corn, bread, glee, mist, jive, help, trash, cream, silk],
65
65
  [metal, essence, power, magic, evil, peril, disease, vapor, butter, sugar, darkness, fortune, soda, success, failure, water, passion, wonder, beauty, reason, fabric, lava, jello, ketchup, coffee, jelly, ice cream, sadness, goodness, physics, money, ethics, traffic, plastic, dancing, anger, danger, softness, friendship, trouble, culture, virtue, fuel, music, freedom, cornbread, lightning, sorrow, mustard, fluid, liquid, knowledge, silver, plasma],
66
- [happiness, gravity, desire, misfortune, pestilence, certainty, mystery, energy, chocolate, honesty, poverty, laziness, chemistry, furniture, equipment, violence, liberty, jealousy, gelato, intention, religion, cookie dough],
66
+ [happiness, gravity, desire, misfortune, pestilence, certainty, mystery, energy, chocolate, honesty, poverty, laziness, chemistry, furniture, equipment, violence, liberty, jealousy, gelato, intention, religion, cookie dough, atmosphere],
67
67
  [society, community, contemplation, inconvenience, humanity, morality, information, intelligence, stupidity, geometry]
68
68
  ]
69
69
 
@@ -74,17 +74,17 @@
74
74
  ]
75
75
  :verb_singular: [
76
76
  [soothes],
77
- [eases, nudges, uses, raises, slices, falls on, dreams of, jumps over, looks at, looks for, studies, tosses, touches, coaxes, pushes, reaches, punches, cares for, ties up, sticks to, goes to, swarms on, flails at, cooks for, kisses, smooches, speaks to, quests for, raves about, sits on, waves to, shines on, mixes, watches, copies, marries, senses, closes, sings to, smiles at, asks for, hopes for, toys with, plays with, floats on, lives with, steps on, jives with, hops on, washes],
77
+ [eases, nudges, uses, raises, slices, falls on, dreams of, jumps over, looks at, looks for, studies, tosses, touches, coaxes, pushes, reaches, punches, cares for, ties up, sticks to, goes to, swarms on, flails at, cooks for, kisses, smooches, speaks to, quests for, raves about, sits on, waves to, shines on, mixes, watches, copies, marries, senses, closes, sings to, smiles at, asks for, hopes for, toys with, plays with, floats on, lives with, steps on, jives with, hops on, washes, sounds like],
78
78
  [amazes, cares about, notifies, objects to, condenses, beautifies, glorifies, liquefies, nullifies, occupies, purifies, satisfies, stupefies, wishes for, thinks about, writes about]
79
79
  ]
80
80
  :verb_plural: [
81
81
  [ease, nudge, use, raise, slice, study, toss, touch, coax, push, reach, punch, kiss, smooch, mix, watch, copy, sense, soothe, close, wash],
82
- [amaze, fall on, dream of, jump over, look at, look for, finish, care for, approach, tie up, stick to, go to, swarm on, flail at, cook for, dance with, dance for, speak to, quest for, rave about, sit on, wave to, shine on, condense, marry, advise, sing to, smile at, ask for, hope for, wish for, toy with, play with, think about, float on, lives on, step on, jive with, hop on],
82
+ [amaze, fall on, dream of, jump over, look at, look for, finish, care for, approach, tie up, stick to, go to, swarm on, flail at, cook for, dance with, dance for, speak to, quest for, rave about, sit on, wave to, shine on, condense, marry, advise, sing to, smile at, ask for, hope for, wish for, toy with, play with, think about, float on, lives on, step on, jive with, hop on, sound like],
83
83
  [care about, notify, object to, beautify, glorify, liquefy, nullify, occupy, purify, satisfy, stupefy, vandalize, vaporize, minimize, maximize, encourage, equalize, pulverize, write about]
84
84
  ]
85
85
 
86
86
  :verb_self_common: [
87
- [wake, jump, speed, climb, live, hope, fail, float, fall, slow, creep, sleep, groan, moan, coast, suck, walk, run, wait, think, land, scream, crawl, play, smile, glow, wave, dream, yell, work, feel, nap, quake, whine, trek, learn, weep, sob, speak, hide, pose, laugh, bathe, burn, grow, shrink, feast, warn, stray, peek, creak, flow, come, feed, cope, heal, race, read, dig, dwell, move, pray, gawk, breed, sag, spit, stand, stop, swerve, eat, lust, shine, end, bleed, drop, open, shake, start, fart, tear, turn, sail, sing, ask, sin, point, ail, flail, fold, die, smell, groove, shout, lie, dine, win, write, train, drive, know, jive, hop, shop, paint, drink, bend, spread, sulk],
87
+ [wake, jump, speed, climb, live, hope, fail, float, fall, slow, creep, sleep, groan, moan, coast, suck, walk, run, wait, think, land, scream, crawl, play, smile, glow, wave, dream, yell, work, feel, nap, quake, whine, trek, learn, weep, sob, speak, hide, pose, laugh, bathe, burn, grow, shrink, feast, warn, stray, peek, creak, flow, come, feed, cope, heal, race, read, dig, dwell, move, pray, gawk, breed, sag, spit, stand, stop, swerve, eat, lust, shine, end, bleed, drop, open, shake, start, fart, tear, turn, sail, sing, ask, sin, point, ail, flail, fold, die, smell, groove, shout, lie, dine, win, write, train, drive, know, jive, hop, shop, paint, drink, bend, spread, sulk, wail, tire],
88
88
  [survive, ponder, wonder, travel, transform, falter, wallow, improve, believe, boogie, crumble, giggle, complain, forget, persist, explore, exist, arrive, await, agree, connect, engage, haggle, return, rotate, resist, dabble, murmur, mature, protest, gossip, growl, begin, approve, clamber, attack, perform, abide, achieve, succeed, explode, constrict, topple, dazzle, question],
89
89
  [concentrate, speculate, hesitate, meditate, calculate, celebrate, co-exist, consider, continue, deviate, disagree, disbelieve, disconnect, elevate, imagine, meander, navigate, overact, postulate, propagate, radiate, recover, replicate, duplicate, surrender, terminate, understand, undulate, hibernate, self-destruct]
90
90
  ]
data/test_haiku.rb ADDED
@@ -0,0 +1,8 @@
1
+ require File.expand_path('lib/haiku_gadget.rb', File.dirname(__FILE__))
2
+
3
+ 10.times do
4
+
5
+ puts HaikuGadget.haiku "\n"
6
+ puts "\n"
7
+
8
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: haiku_gadget
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Balay
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-30 00:00:00.000000000 Z
11
+ date: 2014-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -71,6 +71,7 @@ files:
71
71
  - lib/haiku_gadget/dictionary.rb
72
72
  - lib/haiku_gadget/haiku_gadget.rb
73
73
  - lib/haiku_gadget/haiku_template.rb
74
+ - lib/haiku_gadget/line_templates.rb
74
75
  - lib/haiku_gadget/version.rb
75
76
  - lib/haiku_gadget/word_template.rb
76
77
  - lib/haiku_gadget/word_type.rb
@@ -81,6 +82,7 @@ files:
81
82
  - spec/spec_helper.rb
82
83
  - spec/test_words_nested.yml
83
84
  - spec/test_words_single.yml
85
+ - test_haiku.rb
84
86
  homepage: http://github.com/zenblender/haiku_gadget
85
87
  licenses:
86
88
  - MIT