On Sep 18, 2009, at 10:36 AM, Vincent Massol wrote:
Hi,
We now used $msg.get() eveywhere in the default XAR. IMO this is bad
for the following reasons:
* Our search no longer returns hits since it searches on the page
content in the database (web search). BTW this is why some REST
tests were failing since the content no longer existed for it (it
does a hibernate search).
* Users get to see $msg.get() everywhere in document titles when
they edit XE pages, which is ugly and not understandable for simple
users (for ex check Main.WebHome).
* It's not a good way to translate apps since we bundle app
translations keys in the core jar! Apps should be self-standing
What should we do instead?
Proposal:
* Use the xwiki page translation feature...
* Provide a XAR with all languages (and possibly a XAR per
language). If the user configures his wiki for one language he'll
see only that language (make sure all translations are imported even
when in mono language)
* Refactor existing pages to separate content from code. Move code
to separate pages included from content pages. Never put content in
code pages, have it passed to velocity macros for example.
On the technical side we need to verify it can work but this is way
better and would address the shortcomings listed above.
It also makes translating stuff much easier since you don't need to
find where a given key is used in the content...
-Vincent
Thanks
-Vincent