Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael Ortiz <rafael@activitycentral.com>2011-07-13 05:06:28 (GMT)
committer Rafael Ortiz <rafael@activitycentral.com>2011-07-13 05:06:28 (GMT)
commita0bddc2fc5e444f6100dbc9b618ff14b48c52a38 (patch)
treeb18f67a5cff38ea41cecb1ec76ab569e9d8916eb
parentc9cfc5ca3c8662d965bf0e1e3921145bd490a1a0 (diff)
friendly names for english accents
-rw-r--r--speak/voice.py40
1 files changed, 36 insertions, 4 deletions
diff --git a/speak/voice.py b/speak/voice.py
index 1e984db..c7ba6d5 100644
--- a/speak/voice.py
+++ b/speak/voice.py
@@ -82,8 +82,38 @@ class Voice:
friendlyname = friendlyname.replace('_test','')
friendlyname = friendlyname.replace('en-','')
friendlyname = friendlyname.replace('english-wisper','whisper')
- friendlyname = friendlyname.capitalize()
- self.friendlyname = _(friendlyname)
+ friendlyname = friendlyname.replace('english-us', 'us')
+
+
+ friendlynameRP = name # friendlyname for RP
+ friendlynameRP = friendlynameRP.replace('english_rp', 'rp')
+ friendlynameRP = friendlynameRP.replace('english_wmids', 'wmids')
+
+ parts = re.split('[ _-]', friendlyname)
+ partsRP = re.split('[ _]', friendlynameRP) #RE for english_RP
+ self.short_name = _(parts[0].capitalize())
+ self.friendlyname = ' '.join([self.short_name] + parts[1:])
+
+ friendlynameRP1 = None
+ if friendlynameRP == 'rp':
+
+ friendlynameRP1 = 'English (Required Pronunciation)'
+ self.friendlyname = 'English (Required Pronunciation)'
+
+ friendlynameUS = None
+ if friendlyname == 'us':
+ friendlynameUS = 'English (USA)'
+ self.friendlyname = 'English (USA)'
+
+ friendlynameWMIDS = None
+ if friendlynameRP == 'wmids':
+ friendlynameWMIDS = 'English (West Midlands)'
+ self.friendlyname = 'English (West Midlands)'
+
+
+ def __cmp__(self, other):
+ return cmp(self.friendlyname, other.friendlyname if other else '')
+
def allVoices():
if _allVoices:
@@ -92,14 +122,16 @@ def allVoices():
for language, name in espeak.voices():
voice = Voice(language, name)
_allVoices[voice.friendlyname] = voice
-
+
return _allVoices
+
def by_name(name):
return allVoices().get(name, defaultVoice())
+
def defaultVoice():
- """Try to figure out the default voice, from the current locale ($LANG).
+ """Try to figure ofuft the default voice, from the current locale ($LANG).
Fall back to espeak's voice called Default."""
global _defaultVoice