translations.txt 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. ## Instructions for helping translate text for Vidalia, TorButton
  2. ## and TorCheck
  3. ## ( More translation information for Tor related apps will accumulate here )
  4. Our translations are handled in one of two places. The Tor Translation Portal
  5. handles all of the translations for Vidalia, Torbutton and TorCheck. The Tor
  6. website itself is currently handled by hand translations using subversion.
  7. -------------------------------------------------------------------------
  8. For the Tor website, you'll need a Tor SVN account.
  9. If you do not have one and you need one, please run this command with your
  10. desired username in place of 'USERNAME':
  11. htdigest -c passwd.tmp "Tor subversion repository" USERNAME
  12. and send us the contents of passwd.tmp.
  13. -------------------------------------------------------------------------
  14. For the Portal-based projects, all three check in their respective .po
  15. files into the following subversion urls:
  16. https://tor-svn.freehaven.net/svn/translation/trunk/projects/torbutton
  17. https://tor-svn.freehaven.net/svn/translation/trunk/projects/torcheck
  18. https://svn.vidalia-project.net/svn/vidalia/trunk/src/vidalia/i18n/
  19. The current pootle configuration is checked into subversion as well:
  20. https://tor-svn.freehaven.net/svn/translation/trunk/pootle
  21. ---------------------------- TorCheck -------------------------------
  22. TorCheck uses our translation portal to accept translations. Users use
  23. the portal to check in their changes. To make use of the translations
  24. that users have commited to the translations/ subversion module, you'll
  25. need to ensure that you have a current checked out copy of TorCheck:
  26. cd check/trunk/i18n/
  27. check/trunk/i18n$ svn up
  28. You should see something like the following:
  29. Fetching external item into 'pootle'
  30. External at revision 15300.
  31. At revision 15300.
  32. Now if you had changes, you'd simply want to move the newly updated .po files
  33. into the current stable directory. Moving the .po files from
  34. 'check/trunk/i18n/pootle/' into 'check/trunk/i18n' properly naming the files
  35. for their respective locale.
  36. Here's an example of how to move all of the current pootle translations into
  37. the svn trunk area of TorCheck:
  38. cd check/trunk/i18n/
  39. for locale in `ls -1 pootle/|grep -v template`;
  40. do
  41. mv -v pootle/$locale/TorCheck_$locale.po TorCheck_$locale.po;
  42. done
  43. Now check the differences (ensure the output looks reasonable):
  44. svn diff
  45. Ensure that msgfmt has no errors:
  46. msgfmt -C *.po
  47. And finally check in the changes:
  48. svn commit
  49. ---------------------------- Torbutton -------------------------------
  50. Torbutton uses our translation portal to accept translations. Users use
  51. the portal to check in their changes.
  52. To make use of the translations that users have commited to the translations/
  53. subversion module, you'll need to ensure that you have a current checked out
  54. copy of Torbutton:
  55. cd torbutton/trans_tools
  56. torbutton/trans_tools$ svn up
  57. You should see something like the following:
  58. Fetching external item into 'pootle'
  59. External at revision 15300.
  60. At revision 15300.
  61. Now if you had changes, you need to convert from .po and move
  62. the newly updated mozilla files into the current stable locale
  63. directory. First convert them with the 'mkmoz.sh' script and then
  64. move the proper mozilla files from 'torbutton/trans_tools/moz/' into
  65. 'torbutton/src/chrome/locale/' directory while properly naming the files
  66. for their respective locale.
  67. Here's an example of how to move all of the current pootle translations into
  68. the svn trunk area of Torbutton:
  69. cd torbutton/trans_tools
  70. ./mkmoz.sh
  71. for locale in `ls -1 moz/`;
  72. do
  73. mv -v moz/$locale/*.{dtd,properties} ../src/chrome/locale/$locale/;
  74. done
  75. Now check the differences (ensure the output looks reasonable):
  76. svn diff
  77. And finally check in the changes:
  78. svn commit
  79. If you make changes to strings in Torbutton, you need to rebuild the
  80. templates in torbutton/trans_tools/pootle/templates. This is done via:
  81. moz2po -P -i torbutton/src/chrome/locale/en/ -o torbutton/trans_tools/templates/
  82. You now have two options:
  83. Option 1 (The Pootle Web UI Way):
  84. View then commit the changes to the template with:
  85. svn diff torbutton/trans_tools/templates/
  86. svn commit torbutton/trans_tools/templates/
  87. Then poke Jake to 'svn up' on the Pootle side. If you do this enough
  88. times, he may give you a button to click to update templates in Pootle,
  89. or maybe even an account on the Pootle server. Persistence is a virtue.
  90. You then need to go to the Pootle website and click the checkbox next to
  91. every language on:
  92. https://translation.torproject.org/projects/torbutton/admin.html
  93. and then click "Update Languages" at the bottom.
  94. You then need to go to each language and go to "Editing Options" and click
  95. "Commit" for each one.
  96. You then need to 'svn up' locally, and follow the procedure above for
  97. rebuilding your .dtd and .properties files.
  98. Yes, this sucks. :/
  99. Option 2 (Use your own msgmerge: YMMV, may change .po flags and formatting):
  100. Run msgmerge yourself for each language:
  101. cd torbutton/trans_tools
  102. for i in `ls -1 pootle`
  103. do
  104. msgmerge -U ./pootle/$i/torbutton.dtd.po ./pootle/templates/torbutton.dtd.pot
  105. msgmerge -U ./pootle/$i/torbutton.properties.po ./pootle/templates/torbutton.properties.pot
  106. done
  107. svn diff pootle
  108. svn commit pootle
  109. Then poke Jake to 'svn up' on the Pootle side. If you do this enough times,
  110. he may give you a button on Pootle, or maybe even an account on the Pootle
  111. server. Persistence is a virtue.
  112. You may notice that some .po file flags and string formatting have changed
  113. with this method, depending on your gettext version. It is unclear if this
  114. is a problem. Please update this doc if you hit a landmine and everything
  115. breaks :)
  116. After this process is done, you then need to regenerate the mozilla
  117. .dtd and .properties files as specified above.
  118. ---------------------------- Vidalia -------------------------------
  119. Vidalia uses our translation portal to accept translations. Users use the
  120. portal to check in their changes. No conversion or moving is required other
  121. than normal pootle usage.