lyracyst 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (8) hide show
  1. checksums.yaml +7 -0
  2. data/bin/lyracyst +186 -0
  3. data/changelog.md +12 -0
  4. data/lib/lyracyst.rb +186 -0
  5. data/license.md +22 -0
  6. data/readme.md +87 -0
  7. data/scaffold.md +14 -0
  8. metadata +110 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 58a980e0fde9e3c2924a28c3a7e72968564aa7be
4
+ data.tar.gz: 600427e32f40f28b791473e20d391e76c8368e75
5
+ SHA512:
6
+ metadata.gz: 00f2d7c0a6753333c51600dd6b4614bc80652e6bdd0df08bce169965468d3c1abe0210922424dd609163a0a70a784e3d2ae261dbd009303b957a73fc34aa0e76
7
+ data.tar.gz: ff477c269a4f9bcd9aad42aa2c27b0dd2c40596f8f7227873e879007faadf37e3af4010766584938b02e8bc313a7d8de2857de878cdb768aae4ca8b3b4e4f1fc
data/bin/lyracyst ADDED
@@ -0,0 +1,186 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'commander/import'
5
+ #require 'configatron'
6
+ require 'multi_json'
7
+ #require 'nokogiri'
8
+ require 'open-uri/cached'
9
+ require 'wordnik'
10
+ OpenURI::Cache.cache_path = 'tmp/open-uri' #transparent caching
11
+ environment='ruby'
12
+ result=''
13
+ program :name, 'lyracyst'
14
+ program :version, '0.0.1'
15
+ program :description, 'A powerful word search tool that fetches definitions, related words, and rhymes.'
16
+ #search='test' # (urlencoded string)
17
+ #print "Enter a word: " #change commenting here to convert between command line and test modes
18
+ class Fetch
19
+ def search(url, result)
20
+ result=open(url).read #submit search query
21
+ end
22
+ def update(dateint, querycount)
23
+ qct={'date' => dateint, 'querycount' => querycount}
24
+ fo=File.open("json/synqc.json", "w+")
25
+ tofile=MultiJson.dump(qct)
26
+ fo.print tofile
27
+ fo.close
28
+ end
29
+ def rel(x, y, resulta)
30
+ while x <= y
31
+ resultl=resulta[x]
32
+ list=resultl['list']
33
+ cat=list['category'].gsub(/\(|\)/, '')
34
+ puts "Related words: #{list['category']} - #{list['synonyms']}"
35
+ x+=1
36
+ end
37
+ end
38
+ def submit(search, dateint, result, environment, querycount)
39
+ urlprefix='http://thesaurus.altervista.org/thesaurus/v1'
40
+ #apikey=File.readlines('keys/thesaurus.key') #search API key, get one at http://thesaurus.altervista.org/mykey
41
+ #apikey=apikey[0].chomp
42
+ apikey=ENV['THESAURUS'] #access thru ENV vars for safe Travis builds
43
+ searchlang='en_US' # it_IT, fr_FR, de_DE, en_US, el_GR, es_ES, de_DE, no_NO, pt_PT, ro_RO, ru_RU, sk_SK
44
+ dataoutput='json' # xml or json (default xml)
45
+ url="#{urlprefix}?key=#{apikey}&word=#{search}&language=#{searchlang}&output=#{dataoutput}"
46
+ if environment == 'javascript' # (requires output=json)
47
+ url="#{url}&callback=synonymSearch"
48
+ end
49
+ f=Fetch.new()
50
+ resultj=f.search(url, result) #submit search query
51
+ resultp=MultiJson.load(resultj)
52
+ resulta=resultp['response']
53
+ x=0
54
+ y=resulta.length-1
55
+ f.rel(x, y, resulta)
56
+ querycount+=1 #increment daily queries
57
+ f.update(dateint, querycount)
58
+ end
59
+ def parse(x, y, parse)
60
+ while x <= y
61
+ if parse[x] =~ / \d/
62
+ fix=parse[x]
63
+ parse[x]=fix.gsub(/ \d/ , "")
64
+ end
65
+ if parse[x] =~ / /
66
+ fix=parse[x]
67
+ parse[x]=fix.gsub(' ', "'")
68
+ end
69
+ print "#{parse[x]} "
70
+ x+=1
71
+ end
72
+ end
73
+ end
74
+ class Search
75
+ def related(search, result) # Each thesaurus.altervista.org application can perform upto 5000 queries per day.
76
+ environment='ruby'; maxqueries=5000; querycount=0; t=Time.now; y=t.year.to_s; m=t.month; d=t.day; #declarations
77
+ if m < 10 then m="0#{m}" else m=m.to_s; end #2-digits #FIXME < not valid?
78
+ if d < 10 then d="0#{d}" else d=d.to_s; end
79
+ date="#{y}#{m}#{d}"
80
+ dateint=date.to_i
81
+ #pd=Date.parse(date)
82
+ if File.exist?("json/synqc.json") == true
83
+ rl=File.readlines("json/synqc.json")
84
+ rl=rl[0]
85
+ loadrl=MultiJson.load(rl)
86
+ testdate=loadrl['date']
87
+ testcount=loadrl['querycount']
88
+ pdateint=testdate.to_i
89
+ if dateint > pdateint == true #track date changes
90
+ f=Fetch.new()
91
+ f.update(dateint, querycount)
92
+ end
93
+ else
94
+ testcount=0
95
+ end
96
+ if testcount < maxqueries #make sure we don't abuse the service
97
+ f=Fetch.new()
98
+ f.submit(search, dateint, result, environment, querycount)
99
+ else
100
+ puts "Max queries per day has been reached."
101
+ end
102
+ end
103
+ def define(search)
104
+ #apikey=File.readlines('keys/wordnik.key') #search API key, get one at http://developer.wordnik.com/
105
+ #apikey=apikey[0].chomp
106
+ apikey=ENV['WORDNIK'] #access thru ENV vars for safe Travis builds
107
+ Wordnik.configure do |cfg|
108
+ cfg.api_key=apikey
109
+ cfg.response_format='json'
110
+ cfg.logger = Logger.new('/dev/null') #defaults to Rails.logger or Logger.new(STDOUT). Set to Logger.new('/dev/null') to disable logging.
111
+ end
112
+ define=Wordnik.word.get_definitions(search)
113
+ define.map { |defi|
114
+ text=defi['text']; att=defi['attributionText']; part=defi['partOfSpeech'];
115
+ puts "Definition: #{part} - #{text}"
116
+ #puts "Definition: #{part} - #{text} - #{att}" #With attribution to source
117
+ }
118
+ end
119
+ def rhyme(search)
120
+ url="http://arpabet.heroku.com/words/#{search}"
121
+ f=Fetch.new()
122
+ result=f.search(url, result) #submit search query
123
+ parse=MultiJson.load(result)
124
+ print "Rhymes with: "
125
+ x=0
126
+ y=parse.length - 1
127
+ f.parse(x, y, parse)
128
+ print "\n"
129
+ end
130
+ end
131
+
132
+ command :get do |c|
133
+ c.syntax = 'lyracyst get [options]'
134
+ c.summary = 'Fetches all sources'
135
+ c.description = 'Searches definitions, related words, and rhymes for a given query'
136
+ c.example 'Searches definitions, related words, and rhymes for a given query', 'lyracyst get test'
137
+ c.action do |args, options|
138
+ search=args[0]
139
+ s=Search.new
140
+ puts "Searching for [#{search}]:"
141
+ s.define(search)
142
+ s.related(search, result)
143
+ s.rhyme(search)
144
+ end
145
+ end
146
+
147
+ command :define do |c|
148
+ c.syntax = 'lyracyst define [options]'
149
+ c.summary = 'Fetches definitions'
150
+ c.description = 'Uses the Wordnik API to get definitions'
151
+ c.example 'Uses the Wordnik API to get definitions', 'lyracyst define test'
152
+ c.action do |args, options|
153
+ search=args[0]
154
+ s=Search.new
155
+ puts "Searching for [#{search}]:"
156
+ s.define(search)
157
+ end
158
+ end
159
+
160
+ command :related do |c|
161
+ c.syntax = 'lyracyst related [options]'
162
+ c.summary = 'Fetches related words'
163
+ c.description = 'Uses the Altervista API to get related words'
164
+ c.example 'Uses the Altervista API to get related words', 'lyracyst related test'
165
+ #c.option '--some-switch', 'Some switch that does something' # it_IT, fr_FR, de_DE, en_US, el_GR, es_ES, de_DE, no_NO, pt_PT, ro_RO, ru_RU, sk_SK
166
+ c.action do |args, options|
167
+ search=args[0]
168
+ s=Search.new
169
+ puts "Searching for [#{search}]:"
170
+ s.related(search)
171
+ end
172
+ end
173
+
174
+ command :rhyme do |c|
175
+ c.syntax = 'lyracyst rhyme [options]'
176
+ c.summary = 'Fetches rhymes'
177
+ c.description = 'Uses the ARPABET system to get rhymes'
178
+ c.example 'Uses the ARPABET system to get rhymes', 'lyracyst rhyme test'
179
+ c.action do |args, options|
180
+ search=args[0]
181
+ s=Search.new
182
+ puts "Searching for [#{search}]:"
183
+ s.rhyme(search)
184
+ end
185
+ end
186
+
data/changelog.md ADDED
@@ -0,0 +1,12 @@
1
+ Changelog
2
+ ===
3
+
4
+ Version 0.0.1 - Feature complete
5
+ - Ruby environment works
6
+ - Secure Travis build works
7
+ - JSON data handling works
8
+ - Definitions work
9
+ - Related words work
10
+ - Thesaurus daily query limit enforced
11
+ - Rhymes work
12
+ - Improved Code Climate
data/lib/lyracyst.rb ADDED
@@ -0,0 +1,186 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rubygems'
4
+ require 'commander/import'
5
+ #require 'configatron'
6
+ require 'multi_json'
7
+ #require 'nokogiri'
8
+ require 'open-uri/cached'
9
+ require 'wordnik'
10
+ OpenURI::Cache.cache_path = 'tmp/open-uri' #transparent caching
11
+ environment='ruby'
12
+ result=''
13
+ program :name, 'lyracyst'
14
+ program :version, '0.0.1'
15
+ program :description, 'A powerful word search tool that fetches definitions, related words, and rhymes.'
16
+ #search='test' # (urlencoded string)
17
+ #print "Enter a word: " #change commenting here to convert between command line and test modes
18
+ class Fetch
19
+ def search(url, result)
20
+ result=open(url).read #submit search query
21
+ end
22
+ def update(dateint, querycount)
23
+ qct={'date' => dateint, 'querycount' => querycount}
24
+ fo=File.open("json/synqc.json", "w+")
25
+ tofile=MultiJson.dump(qct)
26
+ fo.print tofile
27
+ fo.close
28
+ end
29
+ def rel(x, y, resulta)
30
+ while x <= y
31
+ resultl=resulta[x]
32
+ list=resultl['list']
33
+ cat=list['category'].gsub(/\(|\)/, '')
34
+ puts "Related words: #{list['category']} - #{list['synonyms']}"
35
+ x+=1
36
+ end
37
+ end
38
+ def submit(search, dateint, result, environment, querycount)
39
+ urlprefix='http://thesaurus.altervista.org/thesaurus/v1'
40
+ #apikey=File.readlines('keys/thesaurus.key') #search API key, get one at http://thesaurus.altervista.org/mykey
41
+ #apikey=apikey[0].chomp
42
+ apikey=ENV['THESAURUS'] #access thru ENV vars for safe Travis builds
43
+ searchlang='en_US' # it_IT, fr_FR, de_DE, en_US, el_GR, es_ES, de_DE, no_NO, pt_PT, ro_RO, ru_RU, sk_SK
44
+ dataoutput='json' # xml or json (default xml)
45
+ url="#{urlprefix}?key=#{apikey}&word=#{search}&language=#{searchlang}&output=#{dataoutput}"
46
+ if environment == 'javascript' # (requires output=json)
47
+ url="#{url}&callback=synonymSearch"
48
+ end
49
+ f=Fetch.new()
50
+ resultj=f.search(url, result) #submit search query
51
+ resultp=MultiJson.load(resultj)
52
+ resulta=resultp['response']
53
+ x=0
54
+ y=resulta.length-1
55
+ f.rel(x, y, resulta)
56
+ querycount+=1 #increment daily queries
57
+ f.update(dateint, querycount)
58
+ end
59
+ def parse(x, y, parse)
60
+ while x <= y
61
+ if parse[x] =~ / \d/
62
+ fix=parse[x]
63
+ parse[x]=fix.gsub(/ \d/ , "")
64
+ end
65
+ if parse[x] =~ / /
66
+ fix=parse[x]
67
+ parse[x]=fix.gsub(' ', "'")
68
+ end
69
+ print "#{parse[x]} "
70
+ x+=1
71
+ end
72
+ end
73
+ end
74
+ class Search
75
+ def related(search, result) # Each thesaurus.altervista.org application can perform upto 5000 queries per day.
76
+ environment='ruby'; maxqueries=5000; querycount=0; t=Time.now; y=t.year.to_s; m=t.month; d=t.day; #declarations
77
+ if m < 10 then m="0#{m}" else m=m.to_s; end #2-digits #FIXME < not valid?
78
+ if d < 10 then d="0#{d}" else d=d.to_s; end
79
+ date="#{y}#{m}#{d}"
80
+ dateint=date.to_i
81
+ #pd=Date.parse(date)
82
+ if File.exist?("json/synqc.json") == true
83
+ rl=File.readlines("json/synqc.json")
84
+ rl=rl[0]
85
+ loadrl=MultiJson.load(rl)
86
+ testdate=loadrl['date']
87
+ testcount=loadrl['querycount']
88
+ pdateint=testdate.to_i
89
+ if dateint > pdateint == true #track date changes
90
+ f=Fetch.new()
91
+ f.update(dateint, querycount)
92
+ end
93
+ else
94
+ testcount=0
95
+ end
96
+ if testcount < maxqueries #make sure we don't abuse the service
97
+ f=Fetch.new()
98
+ f.submit(search, dateint, result, environment, querycount)
99
+ else
100
+ puts "Max queries per day has been reached."
101
+ end
102
+ end
103
+ def define(search)
104
+ #apikey=File.readlines('keys/wordnik.key') #search API key, get one at http://developer.wordnik.com/
105
+ #apikey=apikey[0].chomp
106
+ apikey=ENV['WORDNIK'] #access thru ENV vars for safe Travis builds
107
+ Wordnik.configure do |cfg|
108
+ cfg.api_key=apikey
109
+ cfg.response_format='json'
110
+ cfg.logger = Logger.new('/dev/null') #defaults to Rails.logger or Logger.new(STDOUT). Set to Logger.new('/dev/null') to disable logging.
111
+ end
112
+ define=Wordnik.word.get_definitions(search)
113
+ define.map { |defi|
114
+ text=defi['text']; att=defi['attributionText']; part=defi['partOfSpeech'];
115
+ puts "Definition: #{part} - #{text}"
116
+ #puts "Definition: #{part} - #{text} - #{att}" #With attribution to source
117
+ }
118
+ end
119
+ def rhyme(search)
120
+ url="http://arpabet.heroku.com/words/#{search}"
121
+ f=Fetch.new()
122
+ result=f.search(url, result) #submit search query
123
+ parse=MultiJson.load(result)
124
+ print "Rhymes with: "
125
+ x=0
126
+ y=parse.length - 1
127
+ f.parse(x, y, parse)
128
+ print "\n"
129
+ end
130
+ end
131
+
132
+ command :get do |c|
133
+ c.syntax = 'lyracyst get [options]'
134
+ c.summary = 'Fetches all sources'
135
+ c.description = 'Searches definitions, related words, and rhymes for a given query'
136
+ c.example 'Searches definitions, related words, and rhymes for a given query', 'lyracyst get test'
137
+ c.action do |args, options|
138
+ search=args[0]
139
+ s=Search.new
140
+ puts "Searching for [#{search}]:"
141
+ s.define(search)
142
+ s.related(search, result)
143
+ s.rhyme(search)
144
+ end
145
+ end
146
+
147
+ command :define do |c|
148
+ c.syntax = 'lyracyst define [options]'
149
+ c.summary = 'Fetches definitions'
150
+ c.description = 'Uses the Wordnik API to get definitions'
151
+ c.example 'Uses the Wordnik API to get definitions', 'lyracyst define test'
152
+ c.action do |args, options|
153
+ search=args[0]
154
+ s=Search.new
155
+ puts "Searching for [#{search}]:"
156
+ s.define(search)
157
+ end
158
+ end
159
+
160
+ command :related do |c|
161
+ c.syntax = 'lyracyst related [options]'
162
+ c.summary = 'Fetches related words'
163
+ c.description = 'Uses the Altervista API to get related words'
164
+ c.example 'Uses the Altervista API to get related words', 'lyracyst related test'
165
+ #c.option '--some-switch', 'Some switch that does something' # it_IT, fr_FR, de_DE, en_US, el_GR, es_ES, de_DE, no_NO, pt_PT, ro_RO, ru_RU, sk_SK
166
+ c.action do |args, options|
167
+ search=args[0]
168
+ s=Search.new
169
+ puts "Searching for [#{search}]:"
170
+ s.related(search)
171
+ end
172
+ end
173
+
174
+ command :rhyme do |c|
175
+ c.syntax = 'lyracyst rhyme [options]'
176
+ c.summary = 'Fetches rhymes'
177
+ c.description = 'Uses the ARPABET system to get rhymes'
178
+ c.example 'Uses the ARPABET system to get rhymes', 'lyracyst rhyme test'
179
+ c.action do |args, options|
180
+ search=args[0]
181
+ s=Search.new
182
+ puts "Searching for [#{search}]:"
183
+ s.rhyme(search)
184
+ end
185
+ end
186
+
data/license.md ADDED
@@ -0,0 +1,22 @@
1
+ The MIT License (MIT)
2
+ ========
3
+
4
+ **Copyright (c) 2014 Drew Prentice**
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in all
14
+ copies or substantial portions of the Software.
15
+
16
+ **THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
+ SOFTWARE.**
data/readme.md ADDED
@@ -0,0 +1,87 @@
1
+ lyracyst
2
+ ===
3
+
4
+ [![lyracyst](lyra.jpg)](http://en.wikipedia.org/wiki/File:Lyra_constellation_detail_long_exposure.jpg)
5
+
6
+ Constellation Lyra photo by [Scott Roy Atwood](http://en.wikipedia.org/wiki/File:Lyra_constellation_detail_long_exposure.jpg)
7
+
8
+ [![Build Status](https://travis-ci.org/weirdpercent/lyracyst.png?branch=master)](https://travis-ci.org/weirdpercent/lyracyst)[![Dependency Status](https://gemnasium.com/weirdpercent/lyracyst.png)](https://gemnasium.com/weirdpercent/lyracyst)[![Code Climate](https://codeclimate.com/github/weirdpercent/lyracyst.png)](https://codeclimate.com/github/weirdpercent/lyracyst)
9
+
10
+ A powerful word search tool for writers of all kinds.
11
+
12
+ ### Synopsis
13
+
14
+ Search [Wordnik](http://www.wordnik.com/), [thesaurus.altervista.org](http://thesaurus.altervista.org/), and [Arpabet](http://en.wikipedia.org/wiki/Arpabet) from the command line.
15
+
16
+ ### Features
17
+
18
+ - Open URI fetching w/ transparent caching
19
+ - Definitions from Wordnik
20
+ - Rhymes from arpabet.heroku.com
21
+ - Related words from thesaurus.altervista.org
22
+ - XML & JSON parsing
23
+ - Export wordlists matching search criteria
24
+
25
+ ### Usage
26
+
27
+ bundle install
28
+ rake
29
+
30
+ ### Code Example
31
+
32
+ s=Search.new
33
+ s.nik(search) # Wordnik definitions
34
+ s.syn(search) # Altervista synonyms
35
+ s.rhy(search) # Arpabet rhymes
36
+
37
+ ### Motivation
38
+
39
+ I do a lot of writing and I wanted a tool for constructing song lyrics, poetry, and stories that rock.
40
+
41
+ ### Tests
42
+
43
+ TODO
44
+
45
+ ### Contributing workflow
46
+
47
+ Here’s how we suggest you go about proposing a change to this project:
48
+
49
+ 1. [Fork this project][fork] to your account.
50
+ 2. [Create a branch][branch] for the change you intend to make.
51
+ 3. Make your changes to your fork.
52
+ 4. [Send a pull request][pr] from your fork’s branch to our `master` branch.
53
+
54
+ Using the web-based interface to make changes is fine too, and will help you
55
+ by automatically forking the project and prompting to send a pull request too.
56
+
57
+ [fork]: http://help.github.com/forking/
58
+ [branch]: https://help.github.com/articles/creating-and-deleting-branches-within-your-repository
59
+ [pr]: http://help.github.com/pull-requests/
60
+
61
+ ### License
62
+
63
+ The MIT License (MIT)
64
+
65
+ **Copyright (c) 2014 Drew Prentice**
66
+
67
+ Permission is hereby granted, free of charge, to any person obtaining a copy
68
+ of this software and associated documentation files (the "Software"), to deal
69
+ in the Software without restriction, including without limitation the rights
70
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
71
+ copies of the Software, and to permit persons to whom the Software is
72
+ furnished to do so, subject to the following conditions:
73
+
74
+ The above copyright notice and this permission notice shall be included in all
75
+ copies or substantial portions of the Software.
76
+
77
+ **THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
78
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
79
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
80
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
81
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
82
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
83
+ SOFTWARE.**
84
+
85
+ ### Gratitude
86
+
87
+ Many thanks to all contributors to the gems used in this project!
data/scaffold.md ADDED
@@ -0,0 +1,14 @@
1
+ ### Generate eye-popping scaffolds for rails
2
+
3
+ rails g beautiful_scaffold scaffoldname title:string id:integer calc:float about:text cost:price rainbow:color doc:richtext markup:wysiwyg
4
+
5
+ Types available:
6
+
7
+ - integer
8
+ - float
9
+ - text
10
+ - string
11
+ - price
12
+ - color
13
+ - richtext
14
+ - wysiwyg
metadata ADDED
@@ -0,0 +1,110 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: lyracyst
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Drew Prentice
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-04-05 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: commander
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: multi_json
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.9'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.9'
41
+ - !ruby/object:Gem::Dependency
42
+ name: open-uri-cached
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '0.0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '0.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: wordnik
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '4.12'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '4.12'
69
+ description: Search Wordnik, thesaurus.altervista.org, and Arpabet from the command
70
+ line.
71
+ email:
72
+ - weirdpercent@gmail.com
73
+ executables:
74
+ - lyracyst
75
+ extensions: []
76
+ extra_rdoc_files: []
77
+ files:
78
+ - bin/lyracyst
79
+ - changelog.md
80
+ - lib/lyracyst.rb
81
+ - license.md
82
+ - readme.md
83
+ - scaffold.md
84
+ homepage: http://github.com/weirdpercent/lyracyst
85
+ licenses:
86
+ - MIT
87
+ metadata: {}
88
+ post_install_message:
89
+ rdoc_options: []
90
+ require_paths:
91
+ - lib
92
+ required_ruby_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ required_rubygems_version: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ version: 2.2.2
102
+ requirements: []
103
+ rubyforge_project:
104
+ rubygems_version: 2.2.2
105
+ signing_key:
106
+ specification_version: 4
107
+ summary: A powerful word search tool that fetches definitions, related words, and
108
+ rhymes.
109
+ test_files: []
110
+ has_rdoc: