From c1ed87ea33099de7d95225b238a9feb0b234fe77 Mon Sep 17 00:00:00 2001 From: Aleksey Lim Date: Sun, 23 Jan 2011 02:18:38 +0000 Subject: Translate only first part of voice names (ie language name), use these short names while choosing language for Robot tab --- 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) diff --git a/voice.py b/voice.py index be4366b..101a182 100644 --- a/voice.py +++ b/voice.py @@ -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 '') -- cgit v0.9.1