Meego Wiki
Views

QtInternationalizationOld

From MeeGo wiki
Revision as of 22:52, 22 September 2010 by Margie (Talk | contribs)
Jump to: navigation, search

Here is a proposed process for translating qt-based software until we have Transifex working.

Contents

Purpose

The goal of this document is to educate translators to use QtCreator and Linguist with the Qt/MTF-based MeeGo reference applications that have followed the MeeGo Internationalization wiki. This will not apply to all applications or libraries. The need for these steps is driven by the recommended steps for internationalization of the Qt/MTF-based MeeGo Reference Applications. Please read those instructions for any necessary context or explanation as to why it is the way it is.

As of the writing of this HOWTO (Septemper 22, 2010) the list of applications with translation projects already created include:

Assumptions

This process assumes the following environment will be used to perform translations:

  • The project to be translated is structured according to the Internationalization wiki
  • Translation is happening on a Linux OS (MeeGo and Ubuntu were tested, Fedora should work too)
  • QtCreator package is installed
  • Linguist package is installed
  • The xdg-utils package is installed
  • Git package is installed

It is also assumed that the translator is:

  • Completely familiar with Linquist. It is beyond the scope of this document to help with the use of Linquist.
  • Familiar with Linux-based OSes and how to install packages into the Linux OS they are using
  • Familiar in principle with the basic concepts of Version Control Systems, in particular, Git.
  • Has the necessary accounts and rights to push changes to source trees for translations hosted on gitorious.org

Finally, it is assumed that once Transifex has support for Qt projects and Linguist, this process will become obsolete and all further translations will occur through Transifex.

Process Summary

The basic process, detailed below is:

  1. Customize QtCreator to launch Linguist
  2. Check out project sources (read-only) to provide code context. This step is optional, but recommended
  3. Check out project translations (read-write)
  4. Make changes to .ts files
  5. Publish updated translations back to upstream translation project

Set External Editor

  1. Start QtCreator
  2. Select "Options..." from the "Tools" menu:
QtCreator-Tools-Options.png
  1. Select "Environment" -> "General" option
  2. Change the value of "External Editor:" as follows:
    1. Erase the default setting (can be restored by clicking the "Back Arrow" button to the right)
    2. Type in "xdg-open %f"
      • Assumes you have the xdg-utils package installed
      •  %f will be replaced with the file name to be opened
    3. Click "OK"
QtCreator-Tools-Options-Environment-General.png

Clone Project Source

For Qt/MTF-based projects that used the MeeGo Internationalization wiki to prepare their code for translation, you must first clone the base project sources if you want Linguist to be able to load the code in the context pane while translating.

  • Start QtCreator (if not already running)
  • Select "New File or Project" from the "File" menu:
QtCreator-New.png
  • Select "Git Repository Clone"
QtCreator-New-Git.png
  • Click "OK"
  • Set clone options as follows:
    • Clone URL example: git://gitorious.org/meego-handset-ux/meego-handset-dialer.git
    • NOTE: We are using the "git" protocol here since we really do not want to be able to push changes to this project. It is only being cloned for contextual reference
    • Checkout Directory: meego-handset-dialer
    • Path: ~/dev/translations/
QtCreator-New-Git-Clone-Options.png
  • Press "Next"
  • Press "Finish"

You will now have a new project opened that is cloned from the upstream sources. For translation purposes, there is never any need to edit any of these files, so for simplicity sake, and to avoid confusion, it would be safest to close this project now.

Clone Project Translations

Now you must open a new project that is a clone of the above projects' translation sources (for more context as to why please refer to the MeeGo Internationalization wiki)

  1. Start QtCreator (if not already running)
  2. Select "New File or Project" from the "File" menu:
QtCreator-New.png
  1. Select "Git Repository Clone"
    QtCreator-New-Git.png
  2. Press "OK"
  3. Set clone options as follows:
      • Clone URL example: git@gitorious.org:meego-handset-ux/meego-handset-dialer-translations.git
      NOTE: We are using the "ssh" protocol here since we do want to be able to push changes to this project.
      This assumes you've properly configured your local system's git configuration to work with gitorious.org and it's ssh key based authentication, which is beyond the scope of this document.
      • Checkout Directory: meego-handset-dialer-translations
      • Path: ~/dev/translations/
    File:QtCreator-New-Git-Clone-Options-2.png
  4. Press "Next"
  5. Press "Finish"

You are now using the newly open project for the translations you want to work on. To see the list of files in QtCreator, change the "Projects" pane to be "File System" and you will see the list of .ts files available to work on.

Now lets get to editing and saving your work...


Category Localization

Personal tools