Enabling RCP applications to work with different locales is an essential requirement for server-side Eclipse setups. Multiple users are accessing the same instance of a running application concurrently, and each one should see the UI in his preferred language. Providing a server-side platform, the RAP project faced this problem too and we needed to find solutions to support multiple locales.
Recently I had the chance to discuss with Jeff McAffer how these changes could be integrated into Equinox. There are a number of subtasks to solve:
- The NLS class must support different locales. Currently, translated strings are kept in static fields.
- The extension registry must support reading in different locales. Currently, translatable strings in extensions are resolved once at startup and the results are cached.
- There must be a mechanism to obtain the default locale for the current user and/or API to request a string in a certain locale.
I opened a new bug for the overall multi-locale topic and added patches to these bugs. Currently, comments show that there is no consensus on the suggested solution yet. These patches solve the requirements related to RAP, however, other projects may have different needs. If you have use cases related to multi-locale, please share your comments on the bug.
At any rate, multi-locale support is needed and it would be great to have it even in Eclipse 3.6.
So please comment on the bugs and help to push on this topic!