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 +4 -4
- data/README.md +2 -0
- data/lib/haiku_gadget/haiku_template.rb +4 -79
- data/lib/haiku_gadget/line_templates.rb +163 -0
- data/lib/haiku_gadget/version.rb +1 -1
- data/lib/haiku_gadget/word_template.rb +1 -1
- data/lib/words.yml +8 -8
- data/test_haiku.rb +8 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2a15537f69f3e149171a2514415edb876eab3510
|
4
|
+
data.tar.gz: bd8706dfbb15420681f2faeaed23cfddd5b03b14
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
data/lib/haiku_gadget/version.rb
CHANGED
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,
|
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
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.
|
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-
|
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
|