Re: [vassalengine-devel] Module I18n stage 2
Brought to you by:
rodneykinney,
uckelman
From: Brent E. <b.e...@ex...> - 2007-03-31 21:57:17
|
>You can construct ResourceBundles explicitly as a PropertyResourceBundle. >It has a load(InputStream) method and a setParent(ResourceBundle) method >that you can use to set the order of precedence, You could chain multiple >translations for the same Locale this way. Perfect! I had missed that. > The order of extensions with translations for the same Locale would be= arbitrary, but it basically has to be arbitrary anyway. Yes, that's right. If people translate the same string differently in= different extensions, tough. >That's a good idea. We move the 'Module Language' parameter up to the >module component under 'Version Number' and handle adding/removing= translations >in the translations window. >> >> What about extensions though? > >Good point. I guess the reason you're tracking these Translations is to >populate the language drop-down in the TranslateWindow, right? Yep. I will leave the Translations as a component, but I will still add a= 'Create new translation' option to the translate window. >I am thinking of moving to a 'context' based translation rather than key >> based. It is much more difficult to carry the keys around for the >counters. > > >I see two possibilities. 1: Each GamePiece provides its own translation >context so you don't have namespace collisions, but how do you attach the >context to the GamePiece in the buildFile? 2: Let translators extract= the >common terms (such as 'Delete') and store those keys globally. This is >nice because translators don't have to translate the same string over and= over >in GamePiece after GamePiece, although Prototypes also take care of that= to >some extent. Still working on all this, it is starting to come together. ____________________________________________________________ Brent Easton Analyst/Programmer University of Western Sydney Email: b.e...@uw... |