phoneme 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: f1924dca4e7208387bfd52d85c1d56f3f1af8a40
4
- data.tar.gz: 2f3ce69f3261409a036d4cded5f803a43be9f1c6
3
+ metadata.gz: 892ce9b25534b32c6dd943fe2c8b44e2e9465739
4
+ data.tar.gz: 65f0324b60013aa95a5b370a44a2876fcb03993a
5
5
  SHA512:
6
- metadata.gz: f7dd7c91e89f885b399c6bdd8f63f7fa536ca4c4a962438f9554cb85583f416c46231d1d8d88d723d5192fe781c00ca1b8168b90004a6ae3c0ab57f676625b75
7
- data.tar.gz: e0d5da7a55cc6829bb1de99321985762a4e40ca5ec929a3d14380a4dab84efffb6cd12cab9f95e06fe65aed91c647641e8f4970132013865b3f5acb3b9b14ba0
6
+ metadata.gz: 3536b5bd2c71347a9196c2b6cf7c980b106f481dce33cb54b142c2c8754c92c9cadd9387837759df17a1f2234cc20d708790a95afd11b171aae36a7e1ca02b25
7
+ data.tar.gz: caf9b07d998c6d38e72ee827ad9f230197d5b46e908f382d170d86b82d26a58c72c02ec95fdb2dab6d9dee3f1c563e4b6dfaec2185ab9b96ff30cfa671a92582
Binary file
data.tar.gz.sig CHANGED
@@ -1,3 +1 @@
1
- -�׷0 `�
2
- ��{]� ��������Q�+�|��I�Z��u�i�B� �<D��)Et�)?�9G��l,��ܛ�'�(��� ť� �3mZ�Ҫ@��o�ܟ��
3
- (3@�F���^"8����⫡��n�,̭��URA,u�^��,馏f��gF��N$�s�܌�L�C���G�d�2R��U���]�W�� �'�p��׆�
1
+ �~��wE�3�ꯘYs��[Dx�a�Rx�؉S�k��� �رa ����b$��8=("���󈥅�*m�{��A��e˴C�>���h�-�-��f��
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # * https://github.com/chrisvfritz/isabella
9
9
  # * http://www.speech.cs.cmu.edu/tools/lmtool-new.html
10
+ # * http://www.speech.cs.cmu.edu/cgi-bin/cmudict
10
11
  #
11
12
 
12
13
  class Phoneme
@@ -16,49 +17,52 @@ class Phoneme
16
17
  def initialize(s)
17
18
 
18
19
  @a = [
19
- {ey: /^a.[eo]/, ah: /^a$/, ae: /^a.*/ },
20
+ {:'ey k ah n' => /^(acon)$/, ey: /^a.[eo]/, ah: /^a$|^al$/, ae: /^a.*/ },
20
21
  :b,
21
- {:'s k' => /^(sc)/},
22
- {k: /^ca|^co|^(ck)/, ch: /^(ch)/,s: /^ce|^c.*/},
23
- {d: /^(d[de])$|^d.*/},
24
- {iy: /^(e[eayi])|^e$/, eh: /^e.*/},
22
+ {:'s k' => /^(sc)/},
23
+ {:'s ih r iy' => /^(cere)/ },
24
+ {:'k l ow' => /^(clo)/, k: /^c[oal]|^(ck)/, ch: /^(ch)/,s: /^ce|^c.*/},
25
+ {dz: /^(ds)/, d: /^(d[de])$|^d.*/},
26
+ {:'iy z' => /^(eese)$/, iy: /^(e[eayi])|^e$/},
27
+ {:'eh k s' => /^x$|^(ex)/, eh: /^e.*/},
25
28
  :f,
26
29
  {jh: /^ge/, :'' => /^(gh)/, g: /^g.*/},
27
30
  {hh: /^h.*/},
28
31
  {ay: /^i$|^(ie)|^igh|^i.e/, ih: /^i.*/},
29
32
  :jh,
30
- {n: /^(kn)/, k: /^k.*/},
33
+ {n: /^(kn)/, k: /^(ke)$|^k.*/},
31
34
  {l: /^(le)$|^l.*/},
32
35
  {m: /^me$|^(me)|^m/},
33
- {ng: /^(ng)/, n: /^n.*/},
36
+ {ng: /^(ng)/, nz: /^(ns)/, n: /^n.*/},
34
37
  {ow: /^(oa)|^o$/, oy: /^(oy)/, uh: /^(oo)/, ao: /^(ou)/,
35
38
  aw: /^(o[uw])/, ah: /^om|^pl/, aa: /^(o).*/},
36
39
  {p: /^p.*/},
37
40
  :q,
41
+ {:'r ah t' => /(rrot)/, :'r ay n' => /^(rin)d/},
38
42
  :r,
39
- {sh: /^(sh)/, z: /^(se)$/, s: /^s.*/},
43
+ {sh: /^(sh)/, s: /^(s[es])$|^s.*/},
40
44
  {:'t ah l' => /(t?tle)$/},
41
45
  {th: /^(th)/},
42
46
  {:'ch er' => /(ture)/},
43
- {t: /^(te)$|^t.*/},
47
+ {:'t er' => /^(ter)/, t: /^(te)$|^t.*/},
44
48
  {:'y uw' => /^ut[eu]/},
45
49
  {uw: /^(u)b|^(u)de/, er: /^(ure?)/, ah: /^u.*/},
46
50
  :v,
47
51
  {uw: /^(wo)/, w: /^(wh)|^w.*/},
48
- {z: /^xy/, e: /^x.*/},
52
+ {z: /^xy/, e: /^x.*/},
49
53
  :y,
50
54
  {zh: /^zu/, z: /^z.*/}
51
55
  ]
52
56
 
53
57
  @to_s = phonemize(s.downcase)\
54
- .sub(/ m iy$/,' m').sub(/th( iy)$/,'dh\1')\
55
- .sub(/th eh t /, 'th ey t ').sub(/^(y )ay( l )/,'\1iy\2').rstrip.upcase
58
+ .sub(/ ([mn]) iy$/,' \1').sub(/th( iy)$/,'dh\1')\
59
+ .sub(/th eh t /, 'th ey t ').sub(/^([y] )ay( l )/,'\1iy\2').rstrip.upcase
56
60
  end
57
61
 
58
62
  private
59
63
 
60
64
  def phonemize(s)
61
-
65
+ #puts 's: ' + s.inspect
62
66
  s2 = s[0..3]
63
67
 
64
68
  r3 = ''
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phoneme
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
  - James Robertson
metadata.gz.sig CHANGED
Binary file