123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182 |
- ## Instructions for helping translate text for Vidalia, TorButton
- ## and TorCheck
- ## ( More translation information for Tor related apps will accumulate here )
- Our translations are handled in one of two places. The Tor Translation Portal
- handles all of the translations for Vidalia, Torbutton and TorCheck. The Tor
- website itself is currently handled by hand translations using subversion.
- -------------------------------------------------------------------------
- For the Tor website, you'll need a Tor SVN account.
- If you do not have one and you need one, please run this command with your
- desired username in place of 'USERNAME':
- htdigest -c passwd.tmp "Tor subversion repository" USERNAME
- and send us the contents of passwd.tmp.
- -------------------------------------------------------------------------
- For the Portal-based projects, all three check in their respective .po
- files into the following subversion urls:
- https://tor-svn.freehaven.net/svn/translation/trunk/projects/torbutton
- https://tor-svn.freehaven.net/svn/translation/trunk/projects/torcheck
- https://svn.vidalia-project.net/svn/vidalia/trunk/src/vidalia/i18n/
- The current pootle configuration is checked into subversion as well:
- https://tor-svn.freehaven.net/svn/translation/trunk/pootle
- ---------------------------- TorCheck -------------------------------
- TorCheck uses our translation portal to accept translations. Users use
- the portal to check in their changes. To make use of the translations
- that users have commited to the translations/ subversion module, you'll
- need to ensure that you have a current checked out copy of TorCheck:
- cd check/trunk/i18n/
- check/trunk/i18n$ svn up
- You should see something like the following:
- Fetching external item into 'pootle'
- External at revision 15300.
- At revision 15300.
- Now if you had changes, you'd simply want to move the newly updated .po files
- into the current stable directory. Moving the .po files from
- 'check/trunk/i18n/pootle/' into 'check/trunk/i18n' properly naming the files
- for their respective locale.
- Here's an example of how to move all of the current pootle translations into
- the svn trunk area of TorCheck:
- cd check/trunk/i18n/
- for locale in `ls -1 pootle/|grep -v template`;
- do
- mv -v pootle/$locale/TorCheck_$locale.po TorCheck_$locale.po;
- done
- Now check the differences (ensure the output looks reasonable):
- svn diff
- Ensure that msgfmt has no errors:
- msgfmt -C *.po
- And finally check in the changes:
- svn commit
- ---------------------------- Torbutton -------------------------------
- Torbutton uses our translation portal to accept translations. Users use
- the portal to check in their changes.
- To make use of the translations that users have commited to the translations/
- subversion module, you'll need to ensure that you have a current checked out
- copy of them in your torbutton git checkout:
- cd torbutton.git/trans_tools
- torbutton.git/trans_tools$ svn co https://tor-svn.freehaven.net/svn/translation/trunk/projects/torbutton pootle
- You should see something like the following:
- Checked out revision 21092.
- If you made changes to strings in Torbutton, you need to rebuild the
- templates in torbutton.git/trans_tools/pootle/templates. This is done with
- the following command from within the torbutton.git checkout directory:
- moz2po -P -i src/chrome/locale/en/ -o trans_tools/pootle/templates/
- You now have two options:
- Option 1 (The [shitty] Pootle Web UI Way):
- View then commit the changes to the template with:
- cd trans_tools/pootle
- svn diff templates
- svn commit templates
- Then poke Jake to 'svn up' on the Pootle side. If you do this enough
- times, he may give you a button to click to update templates in Pootle,
- or maybe even an account on the Pootle server. Persistence is a virtue.
- You then need to go to the Pootle website and click the checkbox next to
- every language on:
- https://translation.torproject.org/projects/torbutton/admin.html
- and then click "Update Languages" at the bottom.
- You then need to go to each language and go to "Editing Options" and click
- "Commit" for each one.
- You then need to 'svn up' locally, and follow the procedure above for
- rebuilding your .dtd and .properties files.
- Yes, this sucks. :/
- Option 2 (Use your own msgmerge: YMMV, may change .po flags and formatting):
- Run msgmerge yourself for each language:
- cd trans_tools
- for i in `ls -1 pootle`
- do
- msgmerge -U ./pootle/$i/torbutton.dtd.po ./pootle/templates/torbutton.dtd.pot
- msgmerge -U ./pootle/$i/torbutton.properties.po ./pootle/templates/torbutton.properties.pot
- done
- svn diff pootle
- svn commit pootle
- Then poke Jake to 'svn up' on the Pootle side. If you do this enough times,
- he may give you a button on Pootle, or maybe even an account on the Pootle
- server. Persistence is a virtue.
- You may notice that some .po file flags and string formatting have changed
- with this method, depending on your gettext version. It is unclear if this
- is a problem. Please update this doc if you hit a landmine and everything
- breaks :)
- After this process is done, you then need to regenerate the mozilla
- .dtd and .properties files as specified above.
- Regardless of wether or not you had changes in the torbutton strings, if there
- were updated strings in pootle that you checked out from svn you now need to
- convert from .po and move the newly updated mozilla files into the current
- stable locale directory. First convert them with the 'mkmoz.sh' script and
- then move the proper mozilla files from 'torbutton.git/trans_tools/moz/' into
- 'torbutton.git/src/chrome/locale/' directory while properly naming the files
- for their respective locale.
- Here's an example of how to move all of the current pootle translations into
- the svn trunk area of Torbutton:
- cd trans_tools
- ./mkmoz.sh
- for locale in `ls -1 moz/`;
- do
- mv -v moz/$locale/*.{dtd,properties} ../src/chrome/locale/$locale/
- done
- Now check the differences to your git branch to ensure the output looks
- reasonable:
- cd ..
- git diff
- And finally check in the changes:
- cd src/chrome/locale
- git commit .
- ---------------------------- Vidalia -------------------------------
- Vidalia uses our translation portal to accept translations. Users use the
- portal to check in their changes. No conversion or moving is required other
- than normal pootle usage.
|