ting 0.9.0 → 0.10.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +6 -5
- data/Gemfile.lock +8 -1
- data/README.md +1 -1
- data/Rakefile +1 -1
- data/code_of_conduct.md +32 -0
- data/examples/hello.rb +4 -4
- data/lib/ting.rb +2 -0
- data/lib/ting/data/final.csv +2 -2
- data/lib/ting/groundwork.rb +2 -2
- data/lib/ting/hanyu_pinyin_parser.rb +41 -0
- data/lib/ting/memoize_call.rb +14 -0
- data/lib/ting/procable.rb +4 -0
- data/lib/ting/tones/accents.rb +13 -12
- data/lib/ting/version.rb +1 -1
- data/spec/jruby_csv_spec.rb +1 -2
- data/spec/ting_spec.rb +4 -4
- data/test/test_comparison.rb +1 -1
- data/test/test_odd_syllables.rb +28 -0
- data/ting.gemspec +2 -2
- metadata +33 -18
- data/lib/ting/string.rb +0 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6d7dbea414f62b23124a52f7eb9be4fed2997b92
|
4
|
+
data.tar.gz: 1e179823cb2b4c37c17642d1afe165993ccb0489
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5aad8f773d7731e222ea7c4c6324af8742954480b9258673a2a6e442b689bbed5b4e8bedbbbcfe058672a6d66782d37ea14be7457cff3a5581cce42e693f16ea
|
7
|
+
data.tar.gz: 35ead7e81254b5294d7bce9c8dcaca965d661780e02702762060e5ab3dd6f15b863909f698627afa8cc6366de8d5941a118507fc59fb8306509d2a461f0927fd
|
data/.travis.yml
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
language: ruby
|
2
2
|
rvm:
|
3
|
-
- 1.9.3
|
4
3
|
- 2.0.0
|
5
|
-
- 2.1.
|
6
|
-
-
|
7
|
-
-
|
4
|
+
- 2.1.1
|
5
|
+
- 2.2.5
|
6
|
+
- 2.3.4
|
7
|
+
- 2.4.2
|
8
|
+
- jruby
|
8
9
|
- ruby-head
|
9
10
|
- jruby-head
|
10
11
|
matrix:
|
11
12
|
allow_failures:
|
12
13
|
- rvm: ruby-head
|
13
|
-
- rvm: jruby-head
|
14
|
+
- rvm: jruby-head
|
data/Gemfile.lock
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
ting (0.
|
4
|
+
ting (0.10.0)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
9
|
diff-lcs (1.2.5)
|
10
10
|
ffi2-generators (0.1.1)
|
11
|
+
power_assert (0.4.1)
|
11
12
|
psych (2.0.4)
|
12
13
|
racc (1.4.11)
|
13
14
|
rake (10.1.1)
|
@@ -221,6 +222,8 @@ GEM
|
|
221
222
|
rubysl-xmlrpc (2.0.0)
|
222
223
|
rubysl-yaml (2.0.4)
|
223
224
|
rubysl-zlib (2.0.1)
|
225
|
+
test-unit (3.2.3)
|
226
|
+
power_assert
|
224
227
|
|
225
228
|
PLATFORMS
|
226
229
|
java
|
@@ -232,4 +235,8 @@ DEPENDENCIES
|
|
232
235
|
rake (~> 10.1)
|
233
236
|
rspec (~> 2.14)
|
234
237
|
rubysl (~> 2.0)
|
238
|
+
test-unit
|
235
239
|
ting!
|
240
|
+
|
241
|
+
BUNDLED WITH
|
242
|
+
1.15.4
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
[![Build Status](https://travis-ci.org/arnebrasseur/ting.png)](https://travis-ci.org/
|
1
|
+
[![Build Status](https://travis-ci.org/arnebrasseur/ting.png)](https://travis-ci.org/plexus/ting) [![Code Climate](https://codeclimate.com/github/arnebrasseur/ting.png)](https://codeclimate.com/github/plexus/ting)
|
2
2
|
|
3
3
|
# Ting
|
4
4
|
|
data/Rakefile
CHANGED
data/code_of_conduct.md
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
# Contributor Code of Conduct
|
2
|
+
|
3
|
+
As contributors and maintainers of this project, we pledge to respect
|
4
|
+
all people who contribute through reporting issues, posting feature
|
5
|
+
requests, updating documentation, submitting pull requests or patches,
|
6
|
+
and other activities.
|
7
|
+
|
8
|
+
We are committed to making participation in this project a
|
9
|
+
harassment-free experience for everyone, regardless of level of
|
10
|
+
experience, gender, gender identity and expression, sexual
|
11
|
+
orientation, disability, personal appearance, body size, race, age, or
|
12
|
+
religion.
|
13
|
+
|
14
|
+
Examples of unacceptable behavior by participants include the use of
|
15
|
+
sexual language or imagery, derogatory comments or personal attacks,
|
16
|
+
trolling, public or private harassment, insults, or other
|
17
|
+
unprofessional conduct.
|
18
|
+
|
19
|
+
Project maintainers have the right and responsibility to remove, edit,
|
20
|
+
or reject comments, commits, code, wiki edits, issues, and other
|
21
|
+
contributions that are not aligned to this Code of Conduct. Project
|
22
|
+
maintainers who do not follow the Code of Conduct may be removed from
|
23
|
+
the project team.
|
24
|
+
|
25
|
+
Instances of abusive, harassing, or otherwise unacceptable behavior
|
26
|
+
may be reported by opening an issue or contacting one or more of the
|
27
|
+
project maintainers.
|
28
|
+
|
29
|
+
This Code of Conduct is adapted from the
|
30
|
+
[Contributor Covenant](http:contributor-covenant.org), version 1.0.0,
|
31
|
+
available at
|
32
|
+
[http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/)
|
data/examples/hello.rb
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
$: << File.join(File.dirname(__FILE__), '../lib')
|
2
2
|
|
3
|
-
require '
|
3
|
+
require 'ting'
|
4
4
|
|
5
|
-
conv1 =
|
6
|
-
conv2 =
|
5
|
+
conv1 = Ting::Converter.new(:hanyu, :numbers, :wadegiles, :accents)
|
6
|
+
conv2 = Ting::Converter.new(:wadegiles, :accents, :zhuyin, :marks)
|
7
7
|
|
8
|
-
pinyin = 'wo3
|
8
|
+
pinyin = 'wo3 de peng2 you3 shi4 dai4 fu'
|
9
9
|
wadegiles = conv1 << pinyin
|
10
10
|
zhuyin = conv2 << wadegiles
|
11
11
|
|
data/lib/ting.rb
CHANGED
data/lib/ting/data/final.csv
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
"tongyong","ih","a","o","e",,"ai","ei","ao","ou","an","en","ang","eng","ong",,"i","ia",,"ie",,"iao","iou","ian","in","iang","ing","u","ua","uo","uai","uei","uan","un","uang",,"yu","yue","yuan","yun","yong"
|
7
7
|
"tongyong_standalone",,"a","o","e","ê","ai","ei","ao","ou","an","en","ang","eng",,"er","yi","ya","yo","ye","yai","yao","you","yan","yin","yang","ying","wu","wa","wo","wai","wei","wan","wun","wang","wong","yu","yue","yuan","yun","yong"
|
8
8
|
"wadegiles","ih","a","o","e",,"ai","ei","ao","ou","an","en","ang","eng","ung","erh","i","ia",,"ieh",,"iao","iu","ien","in","iang","ing","u","ua","uo","uai","ui","uan","un","uang",,"ü","üeh","üan","ün","iung"
|
9
|
-
"wadegiles_standalone",,,,,,,,,,,,,,,,,"ya"
|
10
|
-
"zhuyin",,"ㄚ","ㄛ","ㄜ","ㄝ","ㄞ","ㄟ","ㄠ","ㄡ","ㄢ","ㄣ","ㄤ","ㄥ","ㄨㄥ","ㄦ","ㄧ","ㄧㄚ"
|
9
|
+
"wadegiles_standalone",,,,,,,,,,,,,,,,,"ya","yo","yeh","yai","yao","yu","yan","yin","yang","ying","wu","wa","wo","wai","wei","wan","wen","wang","weng","yü","yüeh","yüan","yün","yung"
|
10
|
+
"zhuyin",,"ㄚ","ㄛ","ㄜ","ㄝ","ㄞ","ㄟ","ㄠ","ㄡ","ㄢ","ㄣ","ㄤ","ㄥ","ㄨㄥ","ㄦ","ㄧ","ㄧㄚ","ㄧㄛ","ㄧㄝ","ㄧㄞ","ㄧㄠ","ㄧㄡ","ㄧㄢ","ㄧㄣ","ㄧㄤ","ㄧㄥ","ㄨ","ㄨㄚ","ㄨㄛ","ㄨㄞ","ㄨㄟ","ㄨㄢ","ㄨㄣ","ㄨㄤ","ㄨㄥ","ㄩ","ㄩㄝ","ㄩㄢ","ㄩㄣ","ㄩㄥ"
|
11
11
|
"palladin","и","а","о","э",,"ай","эй","ао","оу","ань","энь","ан","эн","ун","эр","и","я","ё","е","яй","яо","ю","янь","инь","ян","ин","у","уа","уо","уай","уй","уaнь","унь","уaн","вэн","юй","юэ","юaнь","юнь","юн"
|
12
12
|
"palladin_standalone",,,,,,,,,,,,,,"вэн",,,,,,,,,,,,,,"ва","во","вай","вэй","вaнь","вэнь","вaн",,,,,
|
data/lib/ting/groundwork.rb
CHANGED
@@ -157,7 +157,7 @@ module Ting
|
|
157
157
|
#
|
158
158
|
|
159
159
|
def valid_combinations( &blk )
|
160
|
-
return to_enum(
|
160
|
+
return to_enum(__method__) unless block_given?
|
161
161
|
inp = YAML::load(IO.read(File.join(File.dirname(__FILE__), 'data', 'valid_pinyin.yaml')))
|
162
162
|
inp.each do |final, initials|
|
163
163
|
final = Final.const_get(final)
|
@@ -169,7 +169,7 @@ module Ting
|
|
169
169
|
end
|
170
170
|
|
171
171
|
def all_syllables( &blk )
|
172
|
-
return to_enum(
|
172
|
+
return to_enum(__method__) unless block_given?
|
173
173
|
valid_combinations.map do |i,f|
|
174
174
|
1.upto(5) do |t|
|
175
175
|
yield Syllable.new(i,f,t,false)
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module Ting
|
2
|
+
class HanyuPinyinParser
|
3
|
+
include Procable
|
4
|
+
|
5
|
+
def hanyu_writer
|
6
|
+
@hanyu_writer ||= Ting.writer(:hanyu, :accents)
|
7
|
+
end
|
8
|
+
|
9
|
+
def hanyu_reader
|
10
|
+
@hanyu_reader ||= Ting.reader(:hanyu, :accents)
|
11
|
+
end
|
12
|
+
|
13
|
+
def all_syllables
|
14
|
+
@all_syllables ||= Ting.all_syllables.map(&hanyu_writer).sort_by(&:length).reverse
|
15
|
+
end
|
16
|
+
|
17
|
+
def sylls_with_erhua
|
18
|
+
@with_erhua ||= all_syllables.map{|p| p + 'r'}
|
19
|
+
end
|
20
|
+
|
21
|
+
def pinyin_regexp
|
22
|
+
@pinyin_regexp ||= Regexp.union(*sylls_with_erhua, *all_syllables)
|
23
|
+
end
|
24
|
+
|
25
|
+
def split_pinyin(pinyin)
|
26
|
+
pinyin.scan(pinyin_regexp).flat_map do |syll|
|
27
|
+
if sylls_with_erhua.include?(syll) && ! all_syllables.include?(syll)
|
28
|
+
[ syll[0..-2], 'er']
|
29
|
+
else
|
30
|
+
[ syll ]
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
def parse(pinyin)
|
36
|
+
split_pinyin(pinyin).map(&hanyu_reader)
|
37
|
+
end
|
38
|
+
alias call parse
|
39
|
+
|
40
|
+
end
|
41
|
+
end
|
data/lib/ting/procable.rb
CHANGED
data/lib/ting/tones/accents.rb
CHANGED
@@ -22,7 +22,7 @@ module Ting
|
|
22
22
|
|
23
23
|
def add_tone(syll, tone)
|
24
24
|
syll = syll.sub('ü','v')
|
25
|
-
tone
|
25
|
+
tone = tone % MAX_TONE
|
26
26
|
case syll
|
27
27
|
when /a/
|
28
28
|
syll.sub(/a/, tone_glyph(:a,tone))
|
@@ -40,29 +40,30 @@ module Ting
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def peek_tone(syll)
|
43
|
-
|
44
|
-
|
45
|
-
tone_glyph=unpacked.find {|t| tones.include?(t)}
|
43
|
+
candidates = each_tone_glyph.map do |vowel, tones|
|
44
|
+
tone_glyph = syll.codepoints.find {|t| tones.include?(t)}
|
46
45
|
normalize( tones.index(tone_glyph) ) if tone_glyph
|
47
|
-
end
|
46
|
+
end.compact
|
47
|
+
candidates.reject {|tone| tone == 5}.first || candidates.first
|
48
48
|
end
|
49
49
|
|
50
50
|
# returns [ tone number, syllable without tone ]
|
51
51
|
# e.g. ni3 => [ 3, 'ni' ]
|
52
52
|
def pop_tone(syll)
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
53
|
+
tone = peek_tone(syll)
|
54
|
+
unpacked = syll.codepoints.to_a
|
55
|
+
each_tone_glyph do |vowel, tone_glyph_codepoints|
|
56
|
+
tone_glyph_cp = tone_glyph_codepoints[tone % MAX_TONE]
|
57
|
+
if unpacked.include? tone_glyph_cp
|
58
|
+
unpacked[unpacked.index(tone_glyph_cp)] = vowel.to_s.unpack('U').first
|
59
|
+
return [normalize(tone_glyph_codepoints.index(tone_glyph_cp)), unpacked.pack('U*').sub('v', 'ü')]
|
59
60
|
end
|
60
|
-
|
61
61
|
end
|
62
62
|
end
|
63
63
|
|
64
64
|
private
|
65
65
|
def each_tone_glyph
|
66
|
+
return to_enum(__method__) unless block_given?
|
66
67
|
[:a,:e,:i,:o,:u,:v].each do |v| #Order is significant
|
67
68
|
vowel, tones = v, UNICODE_TONE_GLYPHS[v]
|
68
69
|
yield vowel,tones
|
data/lib/ting/version.rb
CHANGED
data/spec/jruby_csv_spec.rb
CHANGED
data/spec/ting_spec.rb
CHANGED
@@ -6,14 +6,14 @@ describe Ting do
|
|
6
6
|
let(:bopomofo) { 'ㄉㄠˋ ㄎㄜˇ ㄉㄠˋ ㄈㄟ ㄔㄤˊ ㄉㄠˋ'.force_encoding('UTF-8') }
|
7
7
|
|
8
8
|
it 'should convert from Hany Pinyin to Bopomofo' do
|
9
|
-
Ting.from(:hanyu, :numbers).to(:zhuyin, :marks).convert(pinyin).
|
9
|
+
expect(Ting.from(:hanyu, :numbers).to(:zhuyin, :marks).convert(pinyin)).to eq(bopomofo)
|
10
10
|
end
|
11
11
|
|
12
|
-
it
|
13
|
-
Ting::Reader.new(:hanyu, :numbers).parse('Bei3').first.
|
12
|
+
it 'should parse' do
|
13
|
+
expect(Ting::Reader.new(:hanyu, :numbers).parse('Bei3').first).to eq(Ting::Syllable.new( Ting::Initial::Bo, Ting::Final::Ei, 3, true ))
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'should respect capitalization' do
|
17
|
-
Ting.from(:hanyu, :numbers).to(:hanyu, :accents).convert('Bei3 jing1').
|
17
|
+
expect(Ting.from(:hanyu, :numbers).to(:hanyu, :accents).convert('Bei3 jing1')).to eq('Běi jīng')
|
18
18
|
end
|
19
19
|
end
|
data/test/test_comparison.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'ting'
|
2
2
|
require 'test/unit'
|
3
3
|
|
4
|
-
# This test uses the chart from
|
4
|
+
# This test uses the chart from pinyin.info to compare all implemented conversion types
|
5
5
|
# Since I can't find another reference of the hanyu pinyin 'lo', I have removed it from the table
|
6
6
|
|
7
7
|
class TestCompare < Test::Unit::TestCase
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require 'ting'
|
2
|
+
require 'test/unit'
|
3
|
+
|
4
|
+
class TestOddSyllables < Test::Unit::TestCase
|
5
|
+
def test_zhuyin_conversion
|
6
|
+
pinyin_to_zhuyin = Ting::Converter.new(:hanyu, :numbers, :zhuyin, :marks)
|
7
|
+
zhuyin_to_pinyin = Ting::Converter.new(:zhuyin, :marks, :hanyu, :numbers)
|
8
|
+
|
9
|
+
# These syllable could not be converted to Zhuyin in Ting 0.9.
|
10
|
+
%w(yo1 yai2).each do |pinyin|
|
11
|
+
zhuyin = pinyin_to_zhuyin.convert(pinyin)
|
12
|
+
pinyin2 = zhuyin_to_pinyin.convert(zhuyin)
|
13
|
+
assert_equal pinyin, pinyin2
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_wg_conversion
|
18
|
+
pinyin_to_wg = Ting::Converter.new(:hanyu, :numbers, :wadegiles, :numbers)
|
19
|
+
wg_to_pinyin = Ting::Converter.new(:wadegiles, :numbers, :hanyu, :numbers)
|
20
|
+
|
21
|
+
# These syllable could not be converted to Wade-Giles in Ting 0.9.
|
22
|
+
%w(yo1 yai2).each do |pinyin|
|
23
|
+
wg = pinyin_to_wg.convert(pinyin)
|
24
|
+
pinyin2 = wg_to_pinyin.convert(wg)
|
25
|
+
assert_equal pinyin, pinyin2
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/ting.gemspec
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
|
2
1
|
require File.expand_path('../lib/ting/version', __FILE__)
|
3
2
|
|
4
3
|
Gem::Specification.new do |gem|
|
@@ -6,7 +5,7 @@ Gem::Specification.new do |gem|
|
|
6
5
|
gem.version = Ting::VERSION
|
7
6
|
gem.authors = [ 'Arne Brasseur' ]
|
8
7
|
gem.email = [ 'arne@arnebrasseur.net' ]
|
9
|
-
gem.homepage = '
|
8
|
+
gem.homepage = 'https://github.com/plexus/ting'
|
10
9
|
gem.license = 'GPL-3.0'
|
11
10
|
gem.platform = Gem::Platform::RUBY
|
12
11
|
|
@@ -20,4 +19,5 @@ Gem::Specification.new do |gem|
|
|
20
19
|
|
21
20
|
gem.add_development_dependency 'rake', '~> 10.1'
|
22
21
|
gem.add_development_dependency 'rspec', '~> 2.14'
|
22
|
+
gem.add_development_dependency 'test-unit'
|
23
23
|
end
|
metadata
CHANGED
@@ -1,46 +1,58 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ting
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Arne Brasseur
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-10-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name: rake
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
16
15
|
requirements:
|
17
16
|
- - "~>"
|
18
17
|
- !ruby/object:Gem::Version
|
19
18
|
version: '10.1'
|
20
|
-
|
19
|
+
name: rake
|
21
20
|
prerelease: false
|
21
|
+
type: :development
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '10.1'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name: rspec
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
30
29
|
requirements:
|
31
30
|
- - "~>"
|
32
31
|
- !ruby/object:Gem::Version
|
33
32
|
version: '2.14'
|
34
|
-
|
33
|
+
name: rspec
|
35
34
|
prerelease: false
|
35
|
+
type: :development
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '2.14'
|
41
|
-
|
42
|
-
|
43
|
-
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '0'
|
47
|
+
name: test-unit
|
48
|
+
prerelease: false
|
49
|
+
type: :development
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
description: Ting can convert between various phonetic representations of Mandarin Chinese. It can also handle various representation of tones, so it can be used to convert pinyin with numbers to pinyin with tones.
|
44
56
|
email:
|
45
57
|
- arne@arnebrasseur.net
|
46
58
|
executables: []
|
@@ -59,6 +71,7 @@ files:
|
|
59
71
|
- README.md
|
60
72
|
- Rakefile
|
61
73
|
- TODO
|
74
|
+
- code_of_conduct.md
|
62
75
|
- examples/hello.rb
|
63
76
|
- lib/ting.rb
|
64
77
|
- lib/ting/conversion.rb
|
@@ -73,9 +86,10 @@ files:
|
|
73
86
|
- lib/ting/data/valid_pinyin.yaml
|
74
87
|
- lib/ting/exception.rb
|
75
88
|
- lib/ting/groundwork.rb
|
89
|
+
- lib/ting/hanyu_pinyin_parser.rb
|
90
|
+
- lib/ting/memoize_call.rb
|
76
91
|
- lib/ting/procable.rb
|
77
92
|
- lib/ting/reader.rb
|
78
|
-
- lib/ting/string.rb
|
79
93
|
- lib/ting/tones.rb
|
80
94
|
- lib/ting/tones/accents.rb
|
81
95
|
- lib/ting/tones/ipa.rb
|
@@ -90,12 +104,13 @@ files:
|
|
90
104
|
- spec/ting_spec.rb
|
91
105
|
- test/test_comparison.rb
|
92
106
|
- test/test_hanyu_coverage.rb
|
107
|
+
- test/test_odd_syllables.rb
|
93
108
|
- ting.gemspec
|
94
|
-
homepage:
|
109
|
+
homepage: https://github.com/plexus/ting
|
95
110
|
licenses:
|
96
111
|
- GPL-3.0
|
97
112
|
metadata: {}
|
98
|
-
post_install_message:
|
113
|
+
post_install_message:
|
99
114
|
rdoc_options: []
|
100
115
|
require_paths:
|
101
116
|
- lib
|
@@ -110,15 +125,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
110
125
|
- !ruby/object:Gem::Version
|
111
126
|
version: '0'
|
112
127
|
requirements: []
|
113
|
-
rubyforge_project:
|
114
|
-
rubygems_version: 2.
|
115
|
-
signing_key:
|
128
|
+
rubyforge_project:
|
129
|
+
rubygems_version: 2.4.8
|
130
|
+
signing_key:
|
116
131
|
specification_version: 4
|
117
|
-
summary: A conversion library for Chinese transcription methods like Hanyu Pinyin,
|
118
|
-
Bopomofo and Wade-Giles.
|
132
|
+
summary: A conversion library for Chinese transcription methods like Hanyu Pinyin, Bopomofo and Wade-Giles.
|
119
133
|
test_files:
|
120
134
|
- spec/jruby_csv_spec.rb
|
121
135
|
- spec/spec_helper.rb
|
122
136
|
- spec/ting_spec.rb
|
123
137
|
- test/test_comparison.rb
|
124
138
|
- test/test_hanyu_coverage.rb
|
139
|
+
- test/test_odd_syllables.rb
|
data/lib/ting/string.rb
DELETED