jelegante 1.1.0 → 1.2.0

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.
Files changed (5) hide show
  1. data/Gemfile +1 -1
  2. data/VERSION +1 -1
  3. data/jelegante.gemspec +3 -6
  4. data/lib/jelegante.rb +9 -3
  5. metadata +4 -15
data/Gemfile CHANGED
@@ -10,5 +10,5 @@ group :development do
10
10
  gem "rspec", "~> 2.3.0"
11
11
  gem "bundler", "~> 1.0.0"
12
12
  gem "jeweler", "~> 1.6.4"
13
- gem "rcov", ">= 0"
13
+ # gem "rcov", ">= 0"
14
14
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.0
1
+ 1.2.0
data/jelegante.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "jelegante"
8
- s.version = "1.1.0"
8
+ s.version = "1.2.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["lpm11"]
12
- s.date = "2011-10-17"
12
+ s.date = "2012-09-18"
13
13
  s.description = "Guess whether text is japanese or not heuristically."
14
14
  s.email = "lpm11r@gmail.com"
15
15
  s.extra_rdoc_files = [
@@ -33,7 +33,7 @@ Gem::Specification.new do |s|
33
33
  s.homepage = "http://github.com/lpm11/jelegante"
34
34
  s.licenses = ["MIT"]
35
35
  s.require_paths = ["lib"]
36
- s.rubygems_version = "1.8.10"
36
+ s.rubygems_version = "1.8.15"
37
37
  s.summary = "Guess whether text is japanese or not heuristically."
38
38
 
39
39
  if s.respond_to? :specification_version then
@@ -44,20 +44,17 @@ Gem::Specification.new do |s|
44
44
  s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
45
45
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
46
46
  s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
47
- s.add_development_dependency(%q<rcov>, [">= 0"])
48
47
  else
49
48
  s.add_dependency(%q<unicode-block>, [">= 1.1.0"])
50
49
  s.add_dependency(%q<rspec>, ["~> 2.3.0"])
51
50
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
52
51
  s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
53
- s.add_dependency(%q<rcov>, [">= 0"])
54
52
  end
55
53
  else
56
54
  s.add_dependency(%q<unicode-block>, [">= 1.1.0"])
57
55
  s.add_dependency(%q<rspec>, ["~> 2.3.0"])
58
56
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
59
57
  s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
60
- s.add_dependency(%q<rcov>, [">= 0"])
61
58
  end
62
59
  end
63
60
 
data/lib/jelegante.rb CHANGED
@@ -174,6 +174,8 @@ class Jelegante
174
174
  撹 攪 麹 麴 鹸 鹼 噛 嚙 繍 繡 蒋 蔣 醤 醬 曽 曾 掻 搔 痩 瘦 祷 禱 屏 屛 并
175
175
  幷 桝 枡 麺 麵 沪 濾 芦 蘆 蝋 蠟 弯 彎
176
176
  ].sort();
177
+
178
+ POPULAR_KANJI_LIST = (JYOUYOU_KANJI_LIST + JINMEI_KANJI_LIST + HYOUGAI_KANJI_LIST).sort();
177
179
 
178
180
  HIRAGANA_PROP = "\\p{Hiragana}";
179
181
  KATAKANA_PROP = "\\p{Katakana}";
@@ -181,7 +183,7 @@ class Jelegante
181
183
  JYOUYOU_PROP = "#{JYOUYOU_KANJI_LIST.join('')}";
182
184
  JINMEI_PROP = "#{JINMEI_KANJI_LIST.join('')}";
183
185
  HYOUGAI_PROP = "#{HYOUGAI_KANJI_LIST.join('')}";
184
- POPULAR_KANJI_PROP = "#{JYOUYOU_PROP}#{JINMEI_PROP}#{HYOUGAI_PROP}"
186
+ POPULAR_KANJI_PROP = "#{POPULAR_KANJI_LIST.join('')}"
185
187
 
186
188
  HIRAGANA_REGEX = /\p{Hiragana}/;
187
189
  KATAKANA_REGEX = /\p{Katakana}/;
@@ -209,7 +211,11 @@ class Jelegante
209
211
  # ・漢字を含むが、常用漢字・人名漢字・表外漢字以外の漢字を含まない
210
212
  def self.japanese?(text)
211
213
  return true if (self.include_hiragana?(text) || self.include_katakana?(text));
212
- return true if (text.gsub(NO_KANJI_REGEX,"") =~ /^[#{POPULAR_KANJI_PROP}]+$/);
213
- return false;
214
+
215
+ # return true if (text.gsub(NO_KANJI_REGEX,"") =~ /^[#{POPULAR_KANJI_PROP}]+$/);
216
+ kanjis = text.gsub(NO_KANJI_REGEX,"");
217
+ return false if (kanjis.empty?);
218
+ kanjis.each_char { |c| return false if (!POPULAR_KANJI_LIST.include?(c)); }
219
+ return true;
214
220
  end
215
221
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: jelegante
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.1.0
5
+ version: 1.2.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - lpm11
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-10-17 00:00:00 Z
13
+ date: 2012-09-18 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: unicode-block
@@ -56,17 +56,6 @@ dependencies:
56
56
  type: :development
57
57
  prerelease: false
58
58
  version_requirements: *id004
59
- - !ruby/object:Gem::Dependency
60
- name: rcov
61
- requirement: &id005 !ruby/object:Gem::Requirement
62
- none: false
63
- requirements:
64
- - - ">="
65
- - !ruby/object:Gem::Version
66
- version: "0"
67
- type: :development
68
- prerelease: false
69
- version_requirements: *id005
70
59
  description: Guess whether text is japanese or not heuristically.
71
60
  email: lpm11r@gmail.com
72
61
  executables: []
@@ -102,7 +91,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
102
91
  requirements:
103
92
  - - ">="
104
93
  - !ruby/object:Gem::Version
105
- hash: 127203842517963343
94
+ hash: 1722093530685843826
106
95
  segments:
107
96
  - 0
108
97
  version: "0"
@@ -115,7 +104,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
115
104
  requirements: []
116
105
 
117
106
  rubyforge_project:
118
- rubygems_version: 1.8.10
107
+ rubygems_version: 1.8.15
119
108
  signing_key:
120
109
  specification_version: 3
121
110
  summary: Guess whether text is japanese or not heuristically.