natto 0.0.8 → 0.0.9
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.
- data/README.md +5 -1
- data/lib/natto.rb +1 -1
- data/lib/natto/version.rb +11 -41
- data/test/test_natto.rb +14 -1
- metadata +4 -4
data/README.md
CHANGED
@@ -55,6 +55,10 @@ e.g., for Cygwin
|
|
55
55
|
|
56
56
|
## Changelog
|
57
57
|
|
58
|
+
- __2011/01/13: 0.0.9 release.
|
59
|
+
- Further development and testing for mecab dictionary access/destruction
|
60
|
+
- Continuing update of documentation
|
61
|
+
|
58
62
|
- __2011/01/07__: 0.0.8 release.
|
59
63
|
- Adding support for accessing dictionaries
|
60
64
|
- Further tweaking of documentation with markdown
|
@@ -87,4 +91,4 @@ e.g., for Cygwin
|
|
87
91
|
|
88
92
|
## Copyright
|
89
93
|
|
90
|
-
natto © 2010-2013 by Brooke M. Fujita, licensed under the new BSD license. Please see the [LICENSE](
|
94
|
+
natto © 2010-2013 by Brooke M. Fujita, licensed under the new BSD license. Please see the [LICENSE](LICENSE) document for further details.
|
data/lib/natto.rb
CHANGED
@@ -110,7 +110,7 @@ module Natto
|
|
110
110
|
# Returns a <tt>Proc</tt> that is registered to be invoked
|
111
111
|
# after the object owning <tt>ptr</tt> has been destroyed.
|
112
112
|
#
|
113
|
-
# @param [FFI::
|
113
|
+
# @param [FFI::Pointer] ptr
|
114
114
|
# @return [Proc] to release <tt>mecab</tt> resources properly
|
115
115
|
def self.create_free_proc(ptr)
|
116
116
|
Proc.new do
|
data/lib/natto/version.rb
CHANGED
@@ -1,50 +1,20 @@
|
|
1
1
|
# coding: utf-8
|
2
2
|
|
3
|
-
#
|
4
|
-
# the
|
5
|
-
# Japanese language.
|
6
|
-
#
|
7
|
-
# ## Requirements
|
8
|
-
# natto requires the following:
|
3
|
+
# <tt>Natto</tt> is the namespace for objects that provide
|
4
|
+
# a binding to the <tt>mecab</tt> parser and related resources.
|
9
5
|
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
# - Ruby _1.8.7 or greater_
|
6
|
+
# <tt>Natto::MeCab</tt> is a wrapper class for the <tt>mecab</tt>
|
7
|
+
# parser.
|
13
8
|
#
|
14
|
-
#
|
15
|
-
#
|
16
|
-
# gem install natto
|
9
|
+
# <tt>Natto::DictionaryInfo</tt> is a wrapper for a <tt>Natto::MeCab</tt>
|
10
|
+
# instance's related dictionary information.
|
17
11
|
#
|
18
|
-
#
|
19
|
-
#
|
20
|
-
# - In case of <tt>LoadError</tt>, please set the <tt>MECAB_PATH</tt> environment variable to the exact name/path to your <tt>mecab</tt> library.
|
12
|
+
# <tt>Natto::MeCabError</tt> is a general error class for the
|
13
|
+
# <tt>Natto</tt> module.
|
21
14
|
#
|
22
|
-
#
|
23
|
-
#
|
24
|
-
# e.g., on Windows
|
25
|
-
# set MECAB_PATH=C:\Program Files\MeCab\bin\libmecab.dll
|
26
|
-
# e.g., for Cygwin
|
27
|
-
# export MECAB_PATH=cygmecab-1
|
28
|
-
#
|
29
|
-
# ## Usage
|
30
|
-
#
|
31
|
-
# require 'natto'
|
32
|
-
#
|
33
|
-
# m = Natto::MeCab.new
|
34
|
-
# => #<Natto::MeCab:0x28d93dd4 @options={}, \
|
35
|
-
# @dicts=[#<Natto::DictionaryInfo:0x28d93d34>], \
|
36
|
-
# @ptr=#<FFI::Pointer address=0x28af3e58>>
|
37
|
-
# puts m.parse("すもももももももものうち")
|
38
|
-
# すもも 名詞,一般,*,*,*,*,すもも,スモモ,スモモ
|
39
|
-
# も 助詞,係助詞,*,*,*,*,も,モ,モ
|
40
|
-
# もも 名詞,一般,*,*,*,*,もも,モモ,モモ
|
41
|
-
# も 助詞,係助詞,*,*,*,*,も,モ,モ
|
42
|
-
# もも 名詞,一般,*,*,*,*,もも,モモ,モモ
|
43
|
-
# の 助詞,連体化,*,*,*,*,の,ノ,ノ
|
44
|
-
# うち 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
|
45
|
-
# EOS
|
46
|
-
# => nil
|
15
|
+
# Module <tt>Natto::Binding</tt> encapsulates methods and behavior
|
16
|
+
# which are made available via <tt>FFI</tt> bindings to <tt>mecab</tt>.
|
47
17
|
module Natto
|
48
18
|
# Version string for this Rubygem.
|
49
|
-
VERSION = "0.0.
|
19
|
+
VERSION = "0.0.9"
|
50
20
|
end
|
data/test/test_natto.rb
CHANGED
@@ -1,9 +1,11 @@
|
|
1
|
-
#
|
1
|
+
# coding: utf-8
|
2
2
|
$:.unshift('lib')
|
3
3
|
require 'rubygems' if RUBY_VERSION.to_f < 1.9
|
4
4
|
require 'test/unit'
|
5
5
|
require 'natto'
|
6
6
|
|
7
|
+
# TestNatto encapsulates tests for the basic
|
8
|
+
# behavior of natto.
|
7
9
|
class TestNatto < Test::Unit::TestCase
|
8
10
|
def setup
|
9
11
|
@klass = Class.new do
|
@@ -12,12 +14,15 @@ class TestNatto < Test::Unit::TestCase
|
|
12
14
|
end
|
13
15
|
|
14
16
|
def teardown
|
17
|
+
@klass = nil
|
15
18
|
end
|
16
19
|
|
20
|
+
# Tests the class methods include callback.
|
17
21
|
def test_classmethods_include
|
18
22
|
assert_equal('0.98', @klass.mecab_version)
|
19
23
|
end
|
20
24
|
|
25
|
+
# Tests the build_options_str function.
|
21
26
|
def test_build_options_str
|
22
27
|
res = Natto::MeCab.build_options_str
|
23
28
|
assert_equal('', res)
|
@@ -82,6 +87,8 @@ class TestNatto < Test::Unit::TestCase
|
|
82
87
|
|
83
88
|
end
|
84
89
|
|
90
|
+
# Tests the state of a Natto::MeCab instance
|
91
|
+
# after construction.
|
85
92
|
def test_construction
|
86
93
|
m = nil
|
87
94
|
assert_nothing_raised do
|
@@ -102,6 +109,8 @@ class TestNatto < Test::Unit::TestCase
|
|
102
109
|
assert_equal(opts, m.options)
|
103
110
|
end
|
104
111
|
|
112
|
+
# Tests the initialize method for error cases for
|
113
|
+
# erroneous mecab options.
|
105
114
|
def test_initialize_with_errors
|
106
115
|
assert_raise Natto::MeCabError do
|
107
116
|
Natto::MeCab.new(:output_format_type=>'not_defined_anywhere')
|
@@ -120,6 +129,10 @@ class TestNatto < Test::Unit::TestCase
|
|
120
129
|
end
|
121
130
|
end
|
122
131
|
|
132
|
+
# Tests the dictionary accessor method.
|
133
|
+
# Assumes that:
|
134
|
+
# a) system dictionary is /usr/local/lib/mecab/dic/ipadic/sys.dic
|
135
|
+
# b) system dictionary encoding is utf-8
|
123
136
|
def test_dictionary_accessor
|
124
137
|
m = Natto::MeCab.new
|
125
138
|
dicts = m.dicts
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
version: 0.0.
|
8
|
+
- 9
|
9
|
+
version: 0.0.9
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Brooke M. Fujita
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2011-01-
|
17
|
+
date: 2011-01-13 00:00:00 +09:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -57,7 +57,7 @@ rdoc_options:
|
|
57
57
|
- --title
|
58
58
|
- "natto #{Natto::VERSION} -- Ruby-Mecab binding"
|
59
59
|
- --main
|
60
|
-
- README
|
60
|
+
- README.md
|
61
61
|
- -c UTF-8
|
62
62
|
require_paths:
|
63
63
|
- lib
|