fonemas 0.0.9 → 0.0.10

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NTMxNDZkYTJhMWU0M2VkZWUwYWJhNDllNmRhNjNlMzM5Zjk0NTQzNg==
4
+ M2FjNzFmNThmNGE4NmEyNzExOTM5MDU5NTE5NzVlN2FkOTE4YWJjYg==
5
5
  data.tar.gz: !binary |-
6
- NzhhOGI5ZTg3M2NjMWFhYjA1YTkzNzk3MThjODliMmM2M2IwODEwMA==
6
+ Y2ZmNDMzNmRkN2ZjZjc4NTgyMThkOTk3MDcyNzNiMzUyODY0M2NjZg==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- MGQ2ZjcyNDY4NjFlZjlhYTUyNWFlZGI5OThkYjBiNWJiMzUxN2EwOGJiMDA0
10
- MTRhZTk2ZTlmOTRjNzM4MGUxOWNiNDYyNjE3M2IyODU1MjAyMmRlOTU0NjBk
11
- YTBhNDFhZTIxMGJmN2EyZmNkNDAzYmMwZDJjNzQ0MDllYzllN2E=
9
+ MzFkNmU3NmZiYWM1MzhlNmUzMzlkMTViMzQzY2YyM2Y2ZmQ5NTI2NjNhMjZj
10
+ NTYwYWNmODBlYzI5NzZiNTk0OTJmNzk1N2M2YmYxMWI4Y2ZiNmRjOTY2MzI5
11
+ NGMyYmExODA5ZGRkN2VkMWE2NzFkYWRjZmEwYzg0MzJjNzJmMDk=
12
12
  data.tar.gz: !binary |-
13
- N2ZmOGE0NGQ1MWE3OWExNmM0YTZkZjRkNGIxMTI5NjJlNGExMGZlZDI2ZDAy
14
- NDJiNDc2ZDY2NGNkOGNhM2IwNDBlZWFlNTcwODk1ZjkxODhjYTQ5YThjMzM3
15
- ZmRjYThiN2VhNzEyMWZkNGY3MWZjYzFjNjQ2MzgzZDY1MDA2YjM=
13
+ Yzk3ZDhiNDYxZWU2NGI4MWJhZWE0MTg5NmI0YjY1OGYyMTViOWUwNzQ5MGZm
14
+ ZDZmOTUzZjk3ZWQ5ODQ1YWY0NjEyNzQzYTMzZTBiMjgzNDc4Y2M1NjZkNzlj
15
+ NWY1MzZlOGQ1ZjA0YzE0Nzc2YzlkOGIxODRhYTNiYTEzZGVlZGY=
@@ -1,3 +1,3 @@
1
1
  module Fonemas
2
- VERSION = "0.0.9"
2
+ VERSION = "0.0.10"
3
3
  end
data/lib/fonemas.rb CHANGED
@@ -16,6 +16,17 @@ module Fonemas
16
16
  return s
17
17
  end
18
18
 
19
+ def self.lastVocal(word,from)
20
+ for i in 1..from
21
+ #puts i
22
+ #puts word[from-i]
23
+ if word[from-i] =~ /[aeiou]/
24
+ return word[from-i]
25
+ end
26
+ end
27
+ return false
28
+ end
29
+
19
30
  def self.isTonica(word,i)
20
31
  #falta considerar las palabras que poseen acento pero no tilde
21
32
  tildes = %w(á é í ó ú)
@@ -25,6 +36,7 @@ module Fonemas
25
36
  else
26
37
  es = Text::Hyphen.new(:language => "es", :left => 0, :right => 1)
27
38
  p = es.hyphenate(w)
39
+ #puts es.visualize(w)
28
40
  hh = es.visualize(w).split("-")
29
41
  if word =~ /áéíóú/
30
42
  #acento ya existe en otra silaba
@@ -38,20 +50,22 @@ module Fonemas
38
50
  if w =~ /[nsaeiou]$/
39
51
  #termina en n s y vocal y no tiene tilde
40
52
  #por lo tanto es grave
41
- if i < p[0]
53
+ # puts "#{lastVocal(w,p[0])} == #{word[i]} #{word[i].class.name}"
54
+ if i < p[0] and lastVocal(w,p[0]) == word[i]
42
55
  return true
43
56
  else
44
57
  return false
45
58
  end
46
59
  end
47
60
  elsif hh.size >= 3
61
+ #puts hh.join("-")
48
62
  if i > p[p.size-1]
49
63
  if w =~ /[nsaeiou]$/
50
64
  return false
51
65
  else
52
66
  return true
53
67
  end
54
- elsif i > p[p.size-2] and w =~ /[nsaeiou]$/
68
+ elsif i > p[p.size-2] and i <= p[p.size-1] and w =~ /[nsaeiou]$/
55
69
  return true
56
70
  else
57
71
  return false
@@ -5,6 +5,8 @@ describe Fonemas do
5
5
  Fonemas.fonemas('hasta')[0].should eql("aa s t a")
6
6
  Fonemas.fonemas('torta')[0].should eql("t oo r t a")
7
7
  Fonemas.fonemas('ungüento')[0].should eql("u n g u ee n t o")
8
+ Fonemas.fonemas('abuela').should include('a g u ee l a')
9
+
8
10
  for i in Fonemas.fonemas('adskribir')
9
11
  i.should end_with('ii r')
10
12
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fonemas
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Manuel Bahamondez Honores