mecab-ext 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.coveralls.yml +1 -0
- data/Changelog.md +6 -0
- data/README.md +9 -1
- data/lib/mecab/ext/parser.rb +2 -1
- data/lib/mecab/ext/version.rb +1 -1
- data/mecab-ext.gemspec +2 -0
- data/spec/node_spec.rb +3 -3
- data/spec/parser_spec.rb +6 -6
- data/spec/spec_helper.rb +9 -0
- metadata +33 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 30aa05a8c36f15c3943dcdd7351249b6b73b1b4d
|
4
|
+
data.tar.gz: 5b7627075f9c251ee7e802e9d506a0dd16e8a6fd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f30b5cc6fe4a204da4e9d3d6f450cddec077f50eb2fb5ef3d59628e2e166dc35dc46c2a77a86811ec43fda30a221661566b0f6cc4b87deaebbe0681292333cae
|
7
|
+
data.tar.gz: 083f0b1d509658458d2506246672dd4fd2be844d1600ac67e8a37e47f1e308b191508d72b769ca37e3fe2e70f8585bf399589de1c5627a1539680294949959d5
|
data/.coveralls.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
service_name: travis-ci
|
data/Changelog.md
ADDED
@@ -0,0 +1,6 @@
|
|
1
|
+
### 1.0.1 / 2013-05-19
|
2
|
+
[full changelog](http://github.com/taiki45/mecab-ext/compare/v1.0.1...master)
|
3
|
+
|
4
|
+
Bug fixes
|
5
|
+
|
6
|
+
* While MeCab::Node instance is living and in use, a Tagger which generates these nodes should not be deleted because it causes inner inconsistency. When the tagger is deleted, its corresponding inner data seem to be also deleted, then trying to access to node's data causes SEGV. (osak a.k.a @osa_k)
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# mecab-ext [![Build Status](https://travis-ci.org/taiki45/mecab-ext.png?branch=master)](https://travis-ci.org/taiki45/mecab-ext)
|
1
|
+
# mecab-ext [![Build Status](https://travis-ci.org/taiki45/mecab-ext.png?branch=master)](https://travis-ci.org/taiki45/mecab-ext) [![Coverage Status](https://coveralls.io/repos/taiki45/mecab-ext/badge.png?branch=master)](https://coveralls.io/r/taiki45/mecab-ext?branch=master) [![Code Climate](https://codeclimate.com/github/taiki45/mecab-ext.png)](https://codeclimate.com/github/taiki45/mecab-ext) [![Gem Version](https://badge.fury.io/rb/mecab-ext.png)](http://badge.fury.io/rb/mecab-ext)
|
2
2
|
A handy extensions for mecab-ruby.
|
3
3
|
|
4
4
|
## Installation
|
@@ -31,6 +31,7 @@ MeCab #=> for original ruby-mecab
|
|
31
31
|
nodes = Mecab::Ext::Parser.parse("テスト文章")
|
32
32
|
nodes.class #=> Mecab::Ext::Node
|
33
33
|
|
34
|
+
|
34
35
|
# Call Mecab::Ext::Node#each to get each MeCab::Node object
|
35
36
|
nodes.each {|node| p node }
|
36
37
|
|
@@ -50,6 +51,13 @@ nodes.surfaces.select {|surface| surface == "テスト" }
|
|
50
51
|
nodes.respond_to? name #=> true
|
51
52
|
end
|
52
53
|
|
54
|
+
|
55
|
+
# This gem solved original mecab's Node overridden problem
|
56
|
+
n1 = Mecab::Ext::Parser.parse "今日の天気"
|
57
|
+
n2 = Mecab::Ext::Parser.parse "赤い花"
|
58
|
+
n1.each_surface(&:display)
|
59
|
+
n2.each_surface(&:display)
|
60
|
+
|
53
61
|
# mecab-ext cuts beginning of line node and end of line node for handiness
|
54
62
|
nodes.count #=> 2
|
55
63
|
```
|
data/lib/mecab/ext/parser.rb
CHANGED
data/lib/mecab/ext/version.rb
CHANGED
data/mecab-ext.gemspec
CHANGED
@@ -23,4 +23,6 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_development_dependency "bundler", "~> 1.3"
|
24
24
|
spec.add_development_dependency "rake"
|
25
25
|
spec.add_development_dependency "rspec", "~> 2.13.0"
|
26
|
+
spec.add_development_dependency "simplecov", "~> 0.7.1"
|
27
|
+
spec.add_development_dependency "coveralls", "~> 0.6.7"
|
26
28
|
end
|
data/spec/node_spec.rb
CHANGED
@@ -72,7 +72,7 @@ describe Mecab::Ext::Node do
|
|
72
72
|
|
73
73
|
context %(with mecab nodes which given "test string"), mecab: :nodes do
|
74
74
|
it "yields nodes" do
|
75
|
-
subject.each {|node| expect(node).to
|
75
|
+
subject.each {|node| expect(node).to be_a RSpec::Mocks::Mock }
|
76
76
|
end
|
77
77
|
|
78
78
|
it "yields 2 nodes" do
|
@@ -122,7 +122,7 @@ describe Mecab::Ext::Node do
|
|
122
122
|
|
123
123
|
describe "#surfaces" do
|
124
124
|
it "returns enumerator" do
|
125
|
-
expect(subject.surfaces).to
|
125
|
+
expect(subject.surfaces).to be_a Enumerator
|
126
126
|
end
|
127
127
|
|
128
128
|
it "iterates nodes surfaces" do
|
@@ -140,7 +140,7 @@ describe Mecab::Ext::Node do
|
|
140
140
|
%w(features lengths ids char_types isbests wcosts costs).each do |name|
|
141
141
|
describe "##{name}" do
|
142
142
|
it "iterates #{name}" do
|
143
|
-
expect(subject.send(name)).to
|
143
|
+
expect(subject.send(name)).to be_a Enumerator
|
144
144
|
end
|
145
145
|
|
146
146
|
it "iterates #{name.singularize} value" do
|
data/spec/parser_spec.rb
CHANGED
@@ -6,22 +6,22 @@ describe Mecab::Ext::Parser do
|
|
6
6
|
subject { described_class.parse("test string") }
|
7
7
|
|
8
8
|
it "should return Node instance" do
|
9
|
-
|
9
|
+
should be_a Mecab::Ext::Node
|
10
10
|
end
|
11
11
|
|
12
12
|
it "should call Node.new" do
|
13
|
-
Mecab::Ext::Node.stub(:new).and_return(
|
14
|
-
|
13
|
+
Mecab::Ext::Node.stub(:new).and_return(:called)
|
14
|
+
should be :called
|
15
15
|
end
|
16
16
|
|
17
17
|
it "should pass proc to Node#initialize" do
|
18
18
|
Mecab::Ext::Node.should_receive(:new) do |arg|
|
19
|
-
expect(arg).to
|
19
|
+
expect(arg).to be_a Proc
|
20
20
|
end
|
21
21
|
subject
|
22
22
|
end
|
23
23
|
|
24
|
-
it "should pass callable obj" do
|
24
|
+
it "should pass callable obj to Node.new" do
|
25
25
|
Mecab::Ext::Node.should_receive(:new) do |arg|
|
26
26
|
expect(arg).to be_respond_to :call
|
27
27
|
end
|
@@ -36,7 +36,7 @@ describe Mecab::Ext::Parser do
|
|
36
36
|
|
37
37
|
describe ".parse_to_node" do
|
38
38
|
subject { described_class.method(:parse_to_node) }
|
39
|
-
it { should eq described_class.method(:
|
39
|
+
it { should eq described_class.method(:parse) }
|
40
40
|
end
|
41
41
|
|
42
42
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -9,4 +9,13 @@ end
|
|
9
9
|
$LOAD_PATH.unshift File.expand_path("../", __FILE__)
|
10
10
|
$LOAD_PATH.unshift File.expand_path("../../lib", __FILE__)
|
11
11
|
|
12
|
+
require 'coveralls'
|
13
|
+
require 'simplecov'
|
14
|
+
|
15
|
+
Coveralls.wear!
|
16
|
+
SimpleCov.formatter = Coveralls::SimpleCov::Formatter
|
17
|
+
SimpleCov.start do
|
18
|
+
add_filter 'spec'
|
19
|
+
end
|
20
|
+
|
12
21
|
require 'mecab/ext'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mecab-ext
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Taiki ONO
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-05-
|
11
|
+
date: 2013-05-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -66,6 +66,34 @@ dependencies:
|
|
66
66
|
- - ~>
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 2.13.0
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: simplecov
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ~>
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 0.7.1
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ~>
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 0.7.1
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: coveralls
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ~>
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.6.7
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ~>
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.6.7
|
69
97
|
description: Make mecab-ruby more handy for most of rubyist.
|
70
98
|
email:
|
71
99
|
- taiks.4559@gmail.com
|
@@ -73,9 +101,11 @@ executables: []
|
|
73
101
|
extensions: []
|
74
102
|
extra_rdoc_files: []
|
75
103
|
files:
|
104
|
+
- .coveralls.yml
|
76
105
|
- .gitignore
|
77
106
|
- .rspec
|
78
107
|
- .travis.yml
|
108
|
+
- Changelog.md
|
79
109
|
- Gemfile
|
80
110
|
- README.md
|
81
111
|
- Rakefile
|
@@ -108,7 +138,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
108
138
|
version: '0'
|
109
139
|
requirements: []
|
110
140
|
rubyforge_project:
|
111
|
-
rubygems_version: 2.0.
|
141
|
+
rubygems_version: 2.0.2
|
112
142
|
signing_key:
|
113
143
|
specification_version: 4
|
114
144
|
summary: extensions for mecab-ruby
|