Difference between revisions of "Translating with Pootle/Administration"
(→Add a new language to an existing project) |
|||
Line 35: | Line 35: | ||
</pre> | </pre> | ||
− | If you are creating a language that doesn't already exist for some other country, then just use en_US as a base. | + | If you are creating a language that doesn't already exist for some other country, then just use en_US as a base (in the example above substitute 'es' with 'en_US'). |
+ | |||
+ | Since you've just added a new language, this is also a good time to add a translatable string for the language name itself. This is done by using the steps outlined above in '''Add a new string'''. Using the example above, you should add the following to ./i18n/trunk/master/cc_org.po: | ||
+ | <pre> | ||
+ | msgid lang.es_PR | ||
+ | msgstr "Spanish (Puerto Rico)" | ||
+ | </pre> | ||
== Change an English string == | == Change an English string == |
Revision as of 17:18, 18 November 2008
So you're an admin of some kind, and you want to:
All of this assumes you have a read/write checkout of svn+ssh://svn@code.creativecommons.org/svnroot/i18n/trunk. One other important note is that CC uses two different types of PO files: The "normal" PO files with English keys, used by Pootle, and also PO files with logical keys, which are used by cc.engine to actually render the site.
- ./i18n/trunk/po = English-key PO files
- ./i18n/trunk/i18n = logical-key PO files (CC-style)
Contents
Add a new string
./i18n/trunk/master/cc_org.po
As the directory name implies, this is the "master" PO file. This is a CC-style PO file. You add your new strings to this file using whatever naming rules might be in effect for the type of string you are adding. Commit your change.
./i18n/trunk/bin/sync
Once you have added your new string(s) you must run ./bin/sync with no arguments. This will propagate the new string(s) to all of the English-key PO files. Commit the many changes which should be visible in the ./i18n/trunk/po/ directory.
Make new string(s) available to Pootle
$ ssh translate.creativecommons.org $ cd /var/www/translate.creativecommons.org/po/ $ svn up
Add a new language to an existing project
If you are adding a language which already exists for another country (e.g. Spanish), then the easiest thing to do is, for example:
$ ssh translate.creativecommons.org $ cd /var/www/translate.creativecommons.org/po/<project name> $ sudo su pootle $ cp -a es es_PR $ rm -rf es_PR/.svn $ rm ./es_PR/*.stats ./es_PR/*.prefs ./es_PR/*.pending $ svn add es_PR $ svn ci -m "Created Puerto Rico PO directory using Spain's as a base" es_PR
If you are creating a language that doesn't already exist for some other country, then just use en_US as a base (in the example above substitute 'es' with 'en_US').
Since you've just added a new language, this is also a good time to add a translatable string for the language name itself. This is done by using the steps outlined above in Add a new string. Using the example above, you should add the following to ./i18n/trunk/master/cc_org.po:
msgid lang.es_PR msgstr "Spanish (Puerto Rico)"