Migrating Docs to new Transifex server

Dimitris Glezos glezos at indifex.com
Sat Feb 19 17:17:29 UTC 2011


Hey all.

As many of you already heard, we are migrating our Transifex server to
fedora.transifex.net. For more info, please refer to the logistics and
translation lists.

We have already manually migrated the core Fedora apps (ones we are
upstream and are affected by the string freeze). The Docs projects
will need to migrate its projects as well.

Compared to our old setup, we have changed the way project maintainers
interact with Transifex. We now have a command-line client to push
source files (POT) & pull translations (PO). Here are the instructions
on how to manage your docs project.


Create your project
===================

As an example, I already migrated the release notes:

  http://www.transifex.net/projects/p/fedora-release-notes/

To create your project and setup your client, run the following. This
only needs to be run once:

- Login or Create account on Transifex.net
- Create project:
  Transifex → Projects → Create → MyProjectName
- Share teams with Fedora Project:
  Transifex → MyProjectName → Access Control → Outsource → "Fedora Project"
- Push existing translations to the server:

    $ git clone http://git.fedorahosted.org/git/anaconda.git
    $ cd anaconda
    $ tx init
    $ tx set --auto-local -r anaconda.master 'po/<lang>.po' \
      --source-lang en --source-file po/anaconda.pot

Especially for docs, which have a bunch of POT files, we'll need
multiple "tx set" commands like this, which we get by running the
following:

  for POTFILE in `ls pot`; do
    FILE=$(basename "$POTFILE" .pot)
    tx set --auto-local -r fedora-docs-relnotes.$FILE --source-language=en \
    --source-file pot/$FILE.pot "<lang>/$FILE.po" --execute
  done

These commands will create a file called '.tx/config', which tells the
client what translations to pull from the server and in which local
files to put them. This will be needed by other Docs people to test,
so you should commit this file in your repo. Feel free to open it,
modify and check whether things look correct.


Pushing source languages & pulling translations
===============================================

Now we can simply push our source files to the server:

  $ tx push --source
  Pushing translations for resource fedora-docs-relnotes.Amateur_Radio:
  Pushing source file (pot/Amateur_Radio.pot)
  ...

Since we want to pre-populate our translations too from our existing
ones, we do this.

  $ tx push --translations
  Pushing translations for resource fedora-docs-relnotes.Amateur_Radio:
  Pushing 'da-DK' translations (file: da-DK/Amateur_Radio.po)
  ...

Because Publican generates a bunch of unneeded (mostly empty) translation
files, your push will take a million years and make our server hate you
forever.

When you are ready to publish a document, you'll need to pull fresh
translations. To do this, simply run 'tx pull'.

More info:
http://help.transifex.net/user-guide/client/client-0.4.html#for-developers


Your project in the Fedora 15 release
=====================================

We track the Fedora 15 release here:

  http://www.transifex.net/projects/p/fedora/r/fedora-15/

To include your project in the Fedora 15 release (or a separate Fedora Docs),
a Fedora L10n admin needs to do the following. If you're not a member of the
Fedora L10n Admin team, just ping us and we'll include your project in the
release.

  Transifex → Fedora Project → Release 15 → Edit → Resources → MyProject


Downloading translations of a whole release
===========================================

We encourage translators to translate using the online editor, since
it offers many additional features than the offline one. However, we
sometimes prefer to download translation files, either for offline
translation or for backup. Translators can pull only the translation
files they want for a whole release, without worrying about source
code or other languages (including English). Here's how:

  $ cd my-translations
  $ tx set --auto-remote http://www.transifex.net/projects/p/fedora/r/fedora-15/
  $ tx pull --language el
  $ ll translations/*/el.po
  translations/anaconda.master/el.po
  translations/usermode.master/el.po

More info:
http://help.transifex.net/user-guide/client/client-0.4.html#auto-remote
http://help.transifex.net/user-guide/client/client-0.4.html#for-translators


Hope this helps!

-d


-- 
Dimitris Glezos

Transifex: The Multilingual Publishing Revolution
http://www.transifex.net/ -- http://www.indifex.com/


More information about the docs mailing list