(→Clone Project Source) |
(→Clone Project Translations) |
||
| Line 105: | Line 105: | ||
You are now using the new project for the translations you want to work on. To see the list of files in QtCreator, change the "Projects" pane to "File System" and you will see the list of .ts files available to work on. | You are now using the new project for the translations you want to work on. To see the list of files in QtCreator, change the "Projects" pane to "File System" and you will see the list of .ts files available to work on. | ||
| - | Now | + | Now let's get to editing and saving your work. |
| + | |||
| + | ==Edit a Translation File== | ||
| + | * Open the .ts file to work on (double-click its entry in the "File System" list) | ||
| + | * Open a file in the ([[#Set External Editor|previously configured]]) external editor by selecting "Open in External Editor" from the "Edit" -> "Advanced" menu: | ||
| + | *:''Alternatively, press <alt-v><alt-i> on the keyboard'' | ||
| + | |||
| + | :[[Image:QtCreator-Open-External.png]] | ||
| + | |||
| + | * Linguist should now launch, with the file opened above loaded and ready for translation. | ||
| + | |||
| + | :[[Image:QtCreator-External-Linguist.png]] | ||
| + | |||
| + | * Begin your translation work and proceed to [[#Publish Changes]] when ready to save and push your changes to the upstream translation project. | ||
| + | |||
| + | ==Publish Changes== | ||
| + | ===Sync Changes to QtCreator=== | ||
| + | Now that you have completed a set of changes, you must save them and re-sync QtCreator to be aware the file has changed. | ||
| + | * Select "Save" (or "Exit") from the "File" menu to save your changes (and, optionally, exit Linguist) | ||
| + | * QtCreator will notice that the file has changed and ask if you want to reload the changes: | ||
| + | |||
| + | :[[Image:QtCreator-File-Changed.png]] | ||
| + | |||
| + | * Select "Yes" | ||
| + | * You should now see the changes reflected in the source view panel in QtCreator. | ||
| + | |||
| + | ===Commit Changes to GIT=== | ||
| + | Assuming you want to keep these changes, you must "commit" them to your local clone of the translation git tree: | ||
| + | * Select "Commit" from the "Tool" -> "Git" menu: | ||
| + | |||
| + | :[[Image:QtCreator-Git-Commit.png]] | ||
| + | |||
| + | * Provide details about the changes you are about to commit: | ||
| + | *: Commit Information: | ||
| + | *:: Please use your '''Full Name''' and '''valid email''' address | ||
| + | *: Description: | ||
| + | *:: A complete and detailed description is best, though for initial translations, simply stating so is enough | ||
| + | *: Files: | ||
| + | *:: Don't forget to "check" the file(s) in the list that are associated with the above set of changes. If you do not, changes to files not "checked" will not get published! | ||
| + | * Click "Commit" | ||
| + | |||
| + | :[[Image:QtCreator-Git-Commit-Options.png]] | ||
| + | |||
| + | * Confirm the commit (un-check the "Prompt to Submit" if you want to avoid this dialog in the future): | ||
| + | |||
| + | :[[Image:QtCreator-Git-Commit-Confirm.png]] | ||
| + | |||
| + | ===Push Commits Upstream=== | ||
| + | Finally, in order for these changes to be visible to others, especially those responsible for packaging new versions, you must "push" (publish) them back to the upstream git tree | ||
| + | ** Select "Push" from the "Tool" -> "Git" menu: | ||
| + | |||
| + | :[[Image:QtCreator-Git-Commit-Push.png]] | ||
| + | |||
| + | '''NOTE:''' The process for getting updated translations packaged and published in the MeeGo RPM repos is beyond the scope of this document. | ||
Category [[Localization]] | Category [[Localization]] | ||
Here is a proposed process for translating qt-based software until we have Transifex working.
Contents |
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:
This process assumes the following environment will be used to perform translations:
It is also assumed that the translator is:
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.
The basic process, detailed below is:
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.
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.
Now you must open a new project that is a clone of the above projects' translation sources.
You are now using the new project for the translations you want to work on. To see the list of files in QtCreator, change the "Projects" pane to "File System" and you will see the list of .ts files available to work on.
Now let's get to editing and saving your work.
Now that you have completed a set of changes, you must save them and re-sync QtCreator to be aware the file has changed.
Assuming you want to keep these changes, you must "commit" them to your local clone of the translation git tree:
Finally, in order for these changes to be visible to others, especially those responsible for packaging new versions, you must "push" (publish) them back to the upstream git tree
NOTE: The process for getting updated translations packaged and published in the MeeGo RPM repos is beyond the scope of this document.
Category Localization