Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
from epitran.flite import FliteLexLookup
from epitran.puncnorm import PuncNorm
from epitran.simple import SimpleEpitran
from epitran.xsampa import XSampa
if sys.version_info[0] == 3:
def unicode(x):
return x
logging.disable(logging.DEBUG)
class Epitran(object):
"""Unified interface for IPA transliteration/transcription"""
special = {'eng-Latn': FliteLexLookup,
'cmn-Hans': Epihan,
'cmn-Hant': EpihanTraditional}
def __init__(self, code, preproc=True, postproc=True, ligatures=False, cedict_file=None,
rev=False, rev_preproc=True, rev_postproc=True):
"""Construct Epitran transliteration/transcription object
Args:
code (str): ISO 639-3 plus "-" plus ISO 15924 code of the
language/script pair that should be loaded
preproc (bool): apply preprocessors
postproc (bool): apply prostprocessors
ligatures (bool): use precomposed ligatures instead of standard IPA
cedict_filename (str): path to file containing the CC-CEDict
dictionary; relevant only for Chinese
rev (boolean): if True, load reverse transliteration
rev_preproc (bool): if True, apply preprocessor when reverse transliterating
rev_postproc (bool): if True, apply postprocessor when reverse transliterating