roka 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 02632783441d4e5f6caf8359f1f2a23e8d0a5428
4
- data.tar.gz: 2d804b50461edd3d58e586d62fde8006e0758fee
3
+ metadata.gz: c5b03c99642104fcc2ee586f44645f5dd3d84337
4
+ data.tar.gz: aa61f986330206847f80a697adc9c4bd4e7300b8
5
5
  SHA512:
6
- metadata.gz: d0ab9cf3cd68b533c6488f63c5f71e9aab9726b4639627cc04decda2b3c80c4728cc54ba0421a2d59d0a548c183ca95c03bd0270a95999a04f15a2443df00940
7
- data.tar.gz: 5b1405191a2acf30dfd49239f8c958d48c84d3dd2d3d7672444037a7b33ab23f180ad36a2e4b91c5be2dfae824a2d4585a70816779f36d7c431af6e1fad6f796
6
+ metadata.gz: febb2458359017575a2a8212144ef6ea14f5e182bd9e4243ba2c4a46ac501812b84de0f4a6dfc50766db2b766b2a8a0536776cbac2073d81d491a5606ed859fa
7
+ data.tar.gz: 76376adc9fd50284e8b5cf9d626395c703db659357679d4017ac4f1733c2c7209cf0a7dc487da647522c03994cd2df3441def66f544efdb49ed1156e55b61a45
@@ -5,7 +5,7 @@ class Roka::Converter
5
5
  VOWELS_INDEX = %w[a i u e o ]
6
6
  VOWELS_KANA = %w[ア イ ウ エ オ]
7
7
 
8
- PREFIX_CHANGES = {
8
+ SOUND_CHANGES = {
9
9
  'ts' => %w[ツァ ツィ ツ ツェ ツォ],
10
10
 
11
11
  'xy' => %w[ャ ィ ュ ェ ョ ],
@@ -35,10 +35,11 @@ class Roka::Converter
35
35
  'c' => %w[カ シ ク セ コ ],
36
36
  }
37
37
 
38
- PATTERN_CHANGES = {
38
+ PREFIX_CHANGES = {
39
39
  /^([kg])w([aeiou])/ => '\1ux\2',
40
40
  /^([td])w([aeiou])/ => '\1ox\2',
41
- /^([sc])h([aeiou])/ => '\1ixy\2',
41
+ /^sh([aeiou])/ => 'sixy\1',
42
+ /^ch([aeiou])/ => 'tixy\1',
42
43
  /^([kgszjtcdnhbpmrl])y([aeiou])/ => '\1ixy\2',
43
44
  /^([td])h([aeiou])/ => '\1exy\2',
44
45
  /^([^aeioun])\1/ => 'xtu\1',
@@ -71,8 +72,8 @@ class Roka::Converter
71
72
 
72
73
  def parse
73
74
  parse_exception \
74
- || parse_pattern \
75
75
  || parse_prefix \
76
+ || parse_sound \
76
77
  || parse_vowel \
77
78
  || parse_last
78
79
  end
@@ -88,8 +89,8 @@ class Roka::Converter
88
89
  false
89
90
  end
90
91
 
91
- def parse_pattern
92
- PATTERN_CHANGES.each do |pattern, replacement|
92
+ def parse_prefix
93
+ PREFIX_CHANGES.each do |pattern, replacement|
93
94
  buffer = @buffer.sub(pattern, replacement)
94
95
 
95
96
  unless buffer == @buffer
@@ -101,8 +102,8 @@ class Roka::Converter
101
102
  false
102
103
  end
103
104
 
104
- def parse_prefix
105
- PREFIX_CHANGES.each do |prefix, changes|
105
+ def parse_sound
106
+ SOUND_CHANGES.each do |prefix, changes|
106
107
  if @buffer.start_with?(prefix)
107
108
  l = prefix.size
108
109
  vowel = @buffer[l]
@@ -137,7 +138,7 @@ class Roka::Converter
137
138
  if 'n' == @buffer[0]
138
139
  consume(1, 'ン')
139
140
  else
140
- consume(1)
141
+ consume(1, @buffer[0])
141
142
  end
142
143
  end
143
144
 
@@ -187,7 +188,7 @@ class Roka::Converter
187
188
  end
188
189
 
189
190
  def regulate(str)
190
- NKF.nkf('-m0 -Z1 -w', str.to_s.downcase).gsub(/[^a-z-]+/, ' ')
191
+ NKF.nkf('-m0 -Z1 -w', str.to_s.downcase)
191
192
  end
192
193
 
193
194
  def peak(_buffer = nil)
@@ -1,3 +1,3 @@
1
1
  module Roka
2
- VERSION = '0.1.3'
2
+ VERSION = '0.1.4'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roka
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yuki Iwanaga
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-05-02 00:00:00.000000000 Z
11
+ date: 2016-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -94,7 +94,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
94
94
  version: '0'
95
95
  requirements: []
96
96
  rubyforge_project:
97
- rubygems_version: 2.5.1
97
+ rubygems_version: 2.6.6
98
98
  signing_key:
99
99
  specification_version: 4
100
100
  summary: Romaji to kana converter