words 0.3.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
data/README.markdown CHANGED
@@ -4,6 +4,9 @@
4
4
 
5
5
  Words implements a fast interface to [Wordnet®](http://wordnet.princeton.edu) which provides both a pure ruby and an FFI powered backend over the same easy-to-use API. The FFI backend makes use of [Tokyo Cabinet](http://1978th.net/tokyocabinet/) and the FFI interface, [rufus-tokyo](http://github.com/jmettraux/rufus-tokyo), to provide cross ruby distribution compatability and blistering speed. The pure ruby interface operates on a special ruby optimised index along with the basic dictionary files provided by WordNet®. I have attempted to provide ease of use in the form of a simple yet powerful api and installation is a sintch!
6
6
 
7
+ * Version 0.2 Introduced Pure Ruby Backend
8
+ * Version 0.3 Introduced Evocation Support (see examples & below) as developed by the [Wordnet® Evocation Project](http://wordnet.cs.princeton.edu/downloads/evocation/release-0.4/README.TXT)
9
+
7
10
  ## Pre-Installation ##
8
11
 
9
12
  First ensure you have a copy of the wordnet data files. This is generally available from your Linux/OSX package manager:
@@ -55,13 +58,16 @@ Then your ready to rock and roll. :)
55
58
 
56
59
  To build the wordnet dataset (or index for pure) file yourself, from the original wordnet files, you can use the bundled "build_wordnet" command
57
60
 
58
- build_wordnet -h # this will give you the usage information
61
+ build_wordnet -h # this will give you the usage information & additional options/features
59
62
 
60
63
  # this would attempt to build the tokyo backend data locating the original wordnet files through a search...
61
64
  sudo build_wordnet -v --build-tokyo
62
65
 
63
66
  # this would attempt to build the pure backend index locating the original wordnet files through a search...
64
67
  sudo build_wordnet -v --build-pure
68
+
69
+ # this would attempt to build the tokyo backend index as above but also builds the evocations information into the dataset
70
+ sudo build_wordnet -v --build-pure --build-evocations
65
71
 
66
72
  ## Usage ##
67
73
 
@@ -107,6 +113,9 @@ Heres a few little examples of using words within your programs.
107
113
  sense.derivationally_related_forms.first.destination_word # => "bat"
108
114
  sense.derivationally_related_forms.first.destination # => the synset of v01413191
109
115
 
116
+ data.find("broadcast").senses.first.evocations # => sense relevant evocations
117
+ data.find("broadcast").senses.first.evocations[1] # => the evocation at index 1
118
+
110
119
  These and more examples are available from within the examples.rb file!
111
120
 
112
121
  ## Note on Patches/Pull Requests ##
data/Rakefile CHANGED
@@ -11,7 +11,6 @@ begin
11
11
  gem.homepage = "http://github.com/roja/words"
12
12
  gem.authors = ["Roja Buck"]
13
13
  gem.add_dependency "trollop", ">= 1.15"
14
- gem.add_dependency 'rufus-tokyo', '>= 1.0.5'
15
14
  gem.executables = [ "build_wordnet" ]
16
15
  gem.default_executable = "build_wordnet"
17
16
  gem.rubyforge_project = 'words'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.0
1
+ 0.3.1
data/bin/build_wordnet CHANGED
@@ -6,7 +6,6 @@ require 'pathname'
6
6
  # gem includes
7
7
  require 'rubygems'
8
8
  require 'trollop'
9
- require 'rufus-tokyo'
10
9
  require 'zlib'
11
10
  require 'net/http'
12
11
 
@@ -33,6 +32,8 @@ end
33
32
  Trollop::die :build_tokyo, "You need to specify whether tokyo dataset or pure ruby index building is required" if !opts[:build_tokyo] && !opts[:build_pure]
34
33
  puts "Verbose mode enabled" if (VERBOSE = opts[:verbose])
35
34
 
35
+ require 'rufus-tokyo' if opts[:build_tokyo]
36
+
36
37
  gem_path = Pathname.new "#{File.dirname(__FILE__)}/.."
37
38
  abort "Ensure you run the command using sudo or as a Superuser / Administrator" unless gem_path.writable?
38
39
  data_path = gem_path + "data/"
data/lib/words.rb CHANGED
@@ -4,7 +4,7 @@ require 'set'
4
4
 
5
5
  # gem includes
6
6
  require 'rubygems'
7
- require 'rufus-tokyo'
7
+ require 'rufus-tokyo' if Gem.available?('rufus-tokyo')
8
8
 
9
9
  module Words
10
10
 
@@ -21,6 +21,7 @@ module Words
21
21
 
22
22
  if @data_path.exist?
23
23
  if @connection_type == :tokyo
24
+ raise "Coulden't find the rufus-tokyo gem. Please ensure it's installed." unless Gem.available?('rufus-tokyo')
24
25
  @connection = Rufus::Tokyo::Table.new(@data_path.to_s, :mode => 'r')
25
26
  @connected = true
26
27
  elsif @connection_type == :pure
@@ -384,6 +385,8 @@ module Words
384
385
  @to_s
385
386
  end
386
387
 
388
+ alias word lemma
389
+
387
390
  end
388
391
 
389
392
  class Homographs
data/words.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{words}
8
- s.version = "0.3.0"
8
+ s.version = "0.3.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Roja Buck"]
12
- s.date = %q{2010-01-17}
12
+ s.date = %q{2010-01-18}
13
13
  s.default_executable = %q{build_wordnet}
14
14
  s.description = %q{Words, with both pure ruby & tokyo-cabinate backends, implements a fast interface to Wordnet® over the same easy-to-use API. The FFI backend makes use of Tokyo Cabinet and the FFI interface, rufus-tokyo, to provide cross ruby distribution compatability and blistering speed. The pure ruby interface operates on a special ruby optimised index along with the basic dictionary files provided by WordNet®. I have attempted to provide ease of use in the form of a simple yet powerful api and installation is a sintch!}
15
15
  s.email = %q{roja@arbia.co.uk}
@@ -48,14 +48,11 @@ Gem::Specification.new do |s|
48
48
 
49
49
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
50
50
  s.add_runtime_dependency(%q<trollop>, [">= 1.15"])
51
- s.add_runtime_dependency(%q<rufus-tokyo>, [">= 1.0.5"])
52
51
  else
53
52
  s.add_dependency(%q<trollop>, [">= 1.15"])
54
- s.add_dependency(%q<rufus-tokyo>, [">= 1.0.5"])
55
53
  end
56
54
  else
57
55
  s.add_dependency(%q<trollop>, [">= 1.15"])
58
- s.add_dependency(%q<rufus-tokyo>, [">= 1.0.5"])
59
56
  end
60
57
  end
61
58
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: words
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roja Buck
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-01-17 00:00:00 +00:00
12
+ date: 2010-01-18 00:00:00 +00:00
13
13
  default_executable: build_wordnet
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -22,16 +22,6 @@ dependencies:
22
22
  - !ruby/object:Gem::Version
23
23
  version: "1.15"
24
24
  version:
25
- - !ruby/object:Gem::Dependency
26
- name: rufus-tokyo
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 1.0.5
34
- version:
35
25
  description: "Words, with both pure ruby & tokyo-cabinate backends, implements a fast interface to Wordnet\xC2\xAE over the same easy-to-use API. The FFI backend makes use of Tokyo Cabinet and the FFI interface, rufus-tokyo, to provide cross ruby distribution compatability and blistering speed. The pure ruby interface operates on a special ruby optimised index along with the basic dictionary files provided by WordNet\xC2\xAE. I have attempted to provide ease of use in the form of a simple yet powerful api and installation is a sintch!"
36
26
  email: roja@arbia.co.uk
37
27
  executables: