roka 0.1.3 → 0.1.4

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.
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