solucionada discrepancia con algunas reglas recientes en disptongos/triptongos
This commit is contained in:
parent
c89f1b753e
commit
efa0a8abdb
1
README
1
README
|
@ -18,6 +18,7 @@ http://www.galeon.com/la-poesia/ortograf.pdf
|
|||
http://es.wikipedia.org/wiki/Di%C3%A9resis
|
||||
http://es.wikipedia.org/wiki/Diptongo
|
||||
http://es.wikipedia.org/wiki/Triptongo
|
||||
http://www.rae.es/consultas/palabras-como-guion-truhan-fie-liais-etc-se-escriben-sin-tilde (gracias a Marta Lamela)
|
||||
|
||||
- Configuración de nginx:
|
||||
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
http://es.wikipedia.org/wiki/Di%C3%A9resis
|
||||
http://es.wikipedia.org/wiki/Diptongo
|
||||
http://es.wikipedia.org/wiki/Triptongo
|
||||
http://www.rae.es/consultas/palabras-como-guion-truhan-fie-liais-etc-se-escriben-sin-tilde
|
||||
|
||||
"""
|
||||
|
||||
|
@ -28,19 +29,21 @@ def silabas(palabra):
|
|||
salto = 0
|
||||
|
||||
if consonante(palabra[letra]):
|
||||
if ataque_complejo(palabra[letra:letra+2]):
|
||||
if guegui(palabra[letra+salto:]): # esto es una chapu, pero no tengo otra forma por ahora :(
|
||||
salto += 2
|
||||
elif ataque_complejo(palabra[letra:letra+2]):
|
||||
salto += 2
|
||||
else:
|
||||
salto += 1
|
||||
else:
|
||||
salto += 0 # vocal
|
||||
|
||||
if diptongo_con_h(palabra[letra+salto:]):
|
||||
if triptongo(palabra[letra+salto:]):
|
||||
salto += 3
|
||||
elif diptongo_con_h(palabra[letra+salto:]):
|
||||
salto += 3
|
||||
elif diptongo(palabra[letra+salto:]):
|
||||
salto += 2
|
||||
elif triptongo(palabra[letra+salto:]):
|
||||
salto += 3
|
||||
elif dieresis(palabra[letra+salto:]):
|
||||
salto += 2
|
||||
else:
|
||||
|
@ -77,6 +80,11 @@ def ataque_complejo(c):
|
|||
return True if (c[0] in [u'b', u'c', u'f', u'g', u'p', u't'] and c[1] in [u'l', u'r'] and c != u"dl") or c in [u'dr', u'kr', u'll', u'rr'] else False
|
||||
|
||||
|
||||
def guegui(c):
|
||||
if len(c) < 3: return False
|
||||
return True if (c[0:1] == u'g' and c[1] == u'u' and c[2] in [u'e', u'i']) else False
|
||||
|
||||
|
||||
def diptongo(trozo):
|
||||
if len(trozo) < 2: return False
|
||||
if trozo[0:2] in [u'ai', u'au', u'ei', u'eu', u'io', u'ou', u'ia', u'ua', u'ie', u'ue', u'oi', u'uo', u'ui', u'iu']: return True
|
||||
|
@ -106,7 +114,7 @@ def diptongo_con_h(trozo):
|
|||
|
||||
def triptongo(trozo):
|
||||
if len(trozo) < 3: return False
|
||||
return True if trozo[0:3] in [u'iai', u'iei', u'uai', u'uei', u'uau', u'iau', u'uay', u'uey'] else False
|
||||
return True if trozo[0:3] in [u'iai', u'iei', u'uai', u'uei', u'uau', u'iau', u'iái', u'iéi', u'uái', u'uéi', u'uáu', u'iáu', u'uay', u'uey'] else False
|
||||
|
||||
|
||||
def coda(trozo):
|
||||
|
@ -135,7 +143,8 @@ def minusculas(texto):
|
|||
|
||||
if __name__ == '__main__':
|
||||
palabras = ""
|
||||
palabras += u"onomatopeya"
|
||||
palabras += u"guiais"
|
||||
#palabras += u"onomatopeya"
|
||||
#palabras += u"hipopotomonstrosesquipedaliofobia"
|
||||
#palabras += u"aorta héroe almohada línea mediterráneo cohete alcohol "
|
||||
#palabras += u"deshora deshielo "
|
||||
|
|
Loading…
Reference in New Issue