સોમવાર, 3 જાન્યુઆરી, 2011

Gnome Localization Process


Gnome localization process for new members:


What is Gnome?
Gnome (GNU Network Object Model Environment) is a complete desktop environment created using free software. It is part of the GNU project.
http://en.wikipedia.org/wiki/GNOME

Translation is a major part of this localization process. The bulk of GNOME translations are performed by native speakers on a volunteer basis. They take sentences in the original English, supply the appropriate translation, and add the file containing this information to the Gnome git repository so that the next release of the software contains the new language.

Really want to translate Gnome?

Finding your team first: first of all, anyone is working on your language already?then go to this page http://l10n.gnome.org/teams contacting them is the firs t step. You may also want to take a look at the http://l10n.gnome.org/languages/

If you have found your team at this page for the language, but there is no response from them please contact the http://mail.gnome.org/mailman/listinfo/gnome-i18n somebody will advice you what to do next.

if in case there is not available team for your language , you should also contact the mailing list, in which case you will likely be invited to become the coordinator for that language.


What is the role of coordinator?
As the coordinator for your team, you act as a primary person for your team and are responsible for organizing the other translators, and also coordinator need to keep their page at l10n.gnome.org up to date.

What is the procedure to create account for submission?
First subscribe to the gnome-i18n@gnome.org mailing list to see how things are working. Second go to this page http://l10n.gnome.org/languages/ for your language and there are two parts one Documentation and Interface modules. To grab the file, click on the small green arrow sign to the left of the module name and save it to your local disk, Before to get Git repository access you will need to have contributed some translations first. You will need to translate the more than one files then give it to coordinator or other members for your language for review, all steps has to do manually before being eligible for an account. See http://live.gnome.org/TranslationProject/RequestingAnAccount for details.

Git repository access allows the team members to push the commits directly into
the Git repository. Generally, the coordinator and a few other members have
this privilege. However, it depends upon each team. All translators in the
language team can update their translations for review at l10n.gnome.org with
their log-ins. Reviewed translations are then committed into the GIT repository
by the members with access to the repository.

How do i get the account?
The details are here: http://live.gnome.org/NewAccounts .Follow them carefully.


File should be which format and which translation tools stands for this format?
It's .po file and you can use gtranslator, kBabel, lokalize , etc.

How do i translate this file?
The files will contain message catalog entries with the format:

please dont touch part of msgid “” it should be in english, you will have to consider only “msgstr” part.

msgid "Gujarati"
msgstr ""

once got the git access then how does this git works?

1.Checkout:

    git clone <repository-name>
  • $ git clone ssh://<username>@git.gnome.org/git/<gnome-packagename>
    For example:
    $ git clone ssh://swetak@git.gnome.org/git/<gnome-packagename>

Important:
  • The entire repository would be pulled with the above command.
  • Only cloning the po directory is not possible due to the configurations in the GNOME GIT.
  • Branches in the cloned repository are also cloned with this command. (These are marked with the prefix origin. e.g origin/master, origin/gnome-2-26)
2.Adding
  • $ git add <filename>
For example:
$ git add gu.po



3.Updating/syncing with Gnome Git
  • $ git pull
  • $ git pull -rebase (within branches)
4. Removing
  • $ git remove <filename>
For example:
$ git remove gu.po~
5.committing
  • $ git commit -m “<message>” <filename>
For example:
$ git commit -m “Updated Gujarati Translations” gu.po


6.Committing to Gnome Git
  • $ git push


Important information about Branches:
  • Branches in the original GNOME repository will automatically be replicated when the repository is being cloned locally with the git clone command
  • The master is the default local branch created locally when the repository is cloned
  • All the branches of the GNOME repository that are replicated would generally be prefixed with the word origin. E.g. origin/master, origin/gnome-2-26
  • The orignal branches are not directly editable as they are the copies in the GNOME GIT
  • To commit to branches from the local repository, new branches have to be created in the local repository and mapped to a relevant branch in the GNOME GIT to update/commit/synchronise. E.g. gnome-2-26 would map to origin/gnome-2-26.
  • The master and origin/master are automatically synced as master is the default branch created for a repository
  • Commits and modifications can only be made in an active local branch.
  • At any point of time only one branch in the repository would be active. The active branch can be check with the git branch command.
  • The active branch would be marked with an asterix (*) symbol
1.Creating a branch
  • $ git checkout –track -b <local-branch-name> <original-branch-to-be-tracked>
For example:
$ git checkout --track -b gnome-2-26 origin/gnome-2-26
2.Checking the active branch
  • $ git branch- List only local branches, marks active branch with asterix sign (*)
  • $ git branch -a- List local and remote branches, marks active branch with asterix sign (*)
  • $ git branch –color- List local branches, marks active branch with color and asterix sign (*)
3.Activating a different branch
  • $ git checkout <local-branch-name>
  • $ git checkout gnome-2-26
Note: then follow the above operations to commit the file (Updating, Adding, Removing, committing, etc....)


Are there any other important files?



















3 ટિપ્પણીઓ: