diff options
author | Aleksey Lim <alsroot@member.fsf.org> | 2011-01-23 02:18:38 (GMT) |
---|---|---|
committer | Aleksey Lim <alsroot@member.fsf.org> | 2011-01-23 02:18:38 (GMT) |
commit | c1ed87ea33099de7d95225b238a9feb0b234fe77 (patch) | |
tree | feaa978f647aac2cbf8b4ddafcd045dbb53d53ce | |
parent | e8933b8d1d93db5a80a210d1da40b2a557f2f715 (diff) |
Translate only first part of voice names (ie language name), use these short names while choosing language for Robot tab
-rw-r--r-- | activity.py | 6 | ||||
-rw-r--r-- | voice.py | 6 |
2 files changed, 8 insertions, 4 deletions
diff --git a/activity.py b/activity.py index 8d4a29e..3e32255 100644 --- a/activity.py +++ b/activity.py @@ -437,12 +437,14 @@ class SpeakActivity(SharedActivity): old_voice = self.voices.props.value self.voices.set_model(voices_model) - if not [i for i in voices_model if i[0] == old_voice]: + new_voice = [i[0] for i in voices_model + if i[0].short_name == old_voice.short_name] + if not new_voice: new_voice = brain.get_default_voice() sorry = _("Sorry, I can't speak %s, let's speak %s instead.") % \ (old_voice.friendlyname, new_voice.friendlyname) else: - new_voice = old_voice + new_voice = new_voice[0] sorry = None self._set_voice(new_voice) @@ -81,8 +81,10 @@ class Voice: friendlyname = friendlyname.replace('_test','') friendlyname = friendlyname.replace('en-','') friendlyname = friendlyname.replace('english-wisper','whisper') - friendlyname = friendlyname.capitalize() - self.friendlyname = _(friendlyname) + + parts = re.split('[ -]', friendlyname) + self.short_name = _(parts[0].capitalize()) + self.friendlyname = ' '.join([self.short_name] + parts[1:]) def __cmp__(self, other): return cmp(self.friendlyname, other.friendlyname if other else '') |