Support overriding oslo localedir too
Part of fixing bug #995287 Libraries need to translate strings according to their translation domain but they should not override the default _() builtin (which should only be installed by the top-level script) and instead should gettextutils._(). To support the case where message catalogs are installed in a non-default (and perhaps project-specific) location, we allow the default localedir to be override with a project-specific environment variable e.g. QUANTUMCLIENT_LOCALEDIR. The code makes it seem like OSLO_LOCALEDIR is the env variable we're adding but, in fact, update.py magically replaces 'oslo' with the project name. Change-Id: I62b66892a4e27892ee488d2884ffd2f40ab467ee
This commit is contained in:
parent
6072f65d5e
commit
1540e94987
|
@ -26,12 +26,12 @@ Usual usage in an openstack.common module:
|
|||
import gettext
|
||||
import os
|
||||
|
||||
|
||||
t = gettext.translation('oslo', 'locale', fallback=True)
|
||||
_localedir = os.environ.get('oslo'.upper() + '_LOCALEDIR')
|
||||
_t = gettext.translation('oslo', localedir=_localedir, fallback=True)
|
||||
|
||||
|
||||
def _(msg):
|
||||
return t.ugettext(msg)
|
||||
return _t.ugettext(msg)
|
||||
|
||||
|
||||
def install(domain):
|
||||
|
|
Loading…
Reference in New Issue