From 78e6fea854db08bfabc7c8349f4bc998ace5bcac Mon Sep 17 00:00:00 2001 From: Michael Hudson-Doyle Date: Thu, 19 Apr 2018 10:26:59 +1200 Subject: [PATCH] work around strange behaviour of _("") --- subiquitycore/i18n.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/subiquitycore/i18n.py b/subiquitycore/i18n.py index 8c925a6b..245d36e0 100644 --- a/subiquitycore/i18n.py +++ b/subiquitycore/i18n.py @@ -29,11 +29,16 @@ syslog.syslog('Final localedir is ' + localedir) def switch_language(code='en_US'): if code != 'en_US' and 'FAKE_TRANSLATE' in os.environ: - import builtins - builtins.__dict__['_'] = lambda a: '_(%s)' % a + def my_gettext(message): + return "_(%s)" % message elif code: translation = gettext.translation('subiquity', localedir=localedir, languages=[code]) - translation.install() + def my_gettext(message): + if not message: + return message + return translation.gettext(message) + import builtins + builtins.__dict__['_'] = my_gettext switch_language()