Hi Sergiu, Good initiative! I've now taken the time to read your proposal. Some comments: * Regarding the change of key format, I believe this requires a separate VOTE email since the previous format was already voted (and the result is documented at http://dev.xwiki.org/xwiki/bin/view/Community/DevelopmentPractices#HTranslat... ). The VOTE would also needs to mention what we do for existing keys and how do we ensure the new format would be used properly (it's quite complex). I also believe we should maybe not put the top level module as prefix since we now have a single product which is platform/XE and having this prefix makes the key more brittle. For the same reason that we don't use "platform" as a prefix in the package name for java classes. In your VOTE email also explain more in detail when to use camel case vs a dot. For example: error.invalidFormat vs error.format.invalid. * The rest seems ok to me with good practices * One note: we already have some rules regarding deprecations, see http://dev.xwiki.org/xwiki/bin/view/Community/DevelopmentPractices#HTranslat... * Your proposal is missing a section about deciding when to use translations keys and when to use translated documents. For example if I have a page like this: " <2 sentences here> {{velocity}} #if ($hasAdmin) // do something here #end {{/velocity}} <some other sentence> " Should it be using translations keys or translation documents with possibly a refactoring to move the velocity code in another document, resulting in minimal macro usage: " <2 sentences here> {{include reference="document containing the code"/}} <some other sentence> " ? Also note that I've moved your proposal to http://dev.xwiki.org/xwiki/bin/view/Drafts/L10N+Conventions since you had put it in the documentation place for established practices while it's only a proposal ATM and it goes against an existing voted rule. Thanks a lot for working on this. Thanks -Vincent On Nov 24, 2012, at 3:55 AM, Sergiu Dumitriu <[email protected]> wrote:
Hi devs,
I've written some conventions for translation messages at http://dev.xwiki.org/xwiki/bin/view/Community/L10N+Conventions
Please provide feedback, since we terribly lack some proper rules here, and there aren't two applications that use the same conventions. Now that we have support for modular translation documents, it's a good time to clean up translations and move things out of ApplicationProperties into each application.