openstack team mailing list archive
Mailing list archive
Re: i18n support in nova
2010/12/2 Tushar Patil <tpatil@xxxxxxxxxxxx>:
> 1) Using gettext module. Wrapping _() for all the logging messages.
> This has a huge impact on the code. On the other hand in my
> understanding we would benefit by translation of strings in different
> languages using launchpad translation process. Currently Launchad is not
> enabled for translation management.
> We would need this very soon.
This is how we should do it.
> 2) automatically call _() on log messages with the nova/log.py that is
> in lp:~xtoddx/nova/newlog
> Minimal change in the code. But I am not sure if in this case it is
> possible to use launchpad translation process.
> xtoddx : Is it possible to call _()?
It's certainly possible, but it makes it /extremely/ tedious to
discover all the strings that need translation. That's why you put _()
at the place where the string is defined. Then there are tools that
can extract the strings and put them into a pot file.
> In bexar release, we are planning to support i18n changes only related
> to the logging messages.
> In future, this would be extended to the exception handling messages and
> responses to the client request.
I don't understand this prioritisation. I would have done it
completely opposite. When you catch an exception and output something,
that's when you're trying to communicate something directly to a user.
Log messages are rarely interesting, and when they are, there's a lot
of value in being able to take the logs and post them somewhere so
other people can see them, but if they're in a foreign language (or
even script), it's of no use.
> This message was sent from Launchpad by
> Tushar Patil (https://launchpad.net/~tpatil)
> to each member of the Nova team using the "Contact this team" link on the
> Nova team page (https://launchpad.net/~nova).
> For more information see
Please don't do this. If you want to discuss something, post to the
Ubuntu Developer http://www.ubuntu.com/
OpenStack Developer http://www.openstack.org/