Vitaliy Filippov
8432b888fe
Languages are put into i18n/<lang>/ and consist of: * messages.pl - messages for translating templates, substituted at compile time * runtime.pl - messages that are needed in runtime, setup/strings.txt.pl is moved here * messages.js - messages for JavaScripts Templates aren't subdivided into languages anymore; the single 'template/localized' directory is used, and [% L('Message text') %] or [% L('Message $1 text is $2', 'Param1', 'Param2') %] is used in the templates. Both forms are substituted at template compile time. Localised templates are auto-generated from English ones by the contrib/extract-strings.pl script which also uses i18n/en/blacklist.pl to determine what strings shouldn't be translated. So, the commit includes: * contrib/extract-strings.pl -- script for translating TT templates * i18n/en/blacklist.pl -- blacklist of messages that should not be auto-extracted * Template adjustments for more correct string extraction (for example, TT does not allow expressions in hash keys) * Template adjustments for string extraction from JavaScript blocks * js/*.js adjustments for using i18n messages * Compile-time i18n message substitution implementation * Bugzilla::Language class that manages loading of i18n messages |
||
---|---|---|
.. | ||
en | ||
.htaccess |