Confirmed users
1,209
edits
No edit summary |
|||
Line 1: | Line 1: | ||
= Localizing 101 = | = Localizing 101 = | ||
''Note:'' Expressions are converted to tags according to the standards mentioned at the end of the page (<code>error_blah</code> and such) so that multiple occurances of the same expression only have to be localized once. | ''Note:'' Expressions are converted to tags according to the standards mentioned at the end of the page (<code>error_blah</code> and such) so that multiple occurances of the same expression only have to be localized once. | ||
''Note 2:'' I assume you have the GNU gettext tools installed, otherwise the scripts won't work and, more importantly, the wrath of the merciless babelfish[TM] will come upon you. | |||
== PHP and gettext == | == PHP and gettext == | ||
Line 24: | Line 26: | ||
: <code>./locale/merge-po.sh messages.po ./locale</code> | : <code>./locale/merge-po.sh messages.po ./locale</code> | ||
: where <code>messages.po</code> is the file created by the extraction step and <code>./locale</code> is the directory in which all the locales lie. The merge script will merge the new strings from messages.po into every *.po file underneath ./locale, then. | : where <code>messages.po</code> is the file created by the extraction step and <code>./locale</code> is the directory in which all the locales lie. The merge script will merge the new strings from messages.po into every *.po file underneath ./locale, then. | ||
=== "compiling" === | |||
After translation, plain text .po files (PO = portable object) have to be translated into binary .mo files (MO = machine object). There's a third script you can run for that: | |||
: <code>./locale/compile-mo.sh ./locale</code> | |||
This will make a .mo file in the same directory of every .po file. | |||
== L10n standards == | == L10n standards == |